curl css 文件在 html 页面中工作时无法工作
curl a css file didn't work while it work in the html page
如果我尝试像这样 css 卷曲这个文件 https://web.archive.org/web/20170322073013cs_/http://afterschoolprograms.com/sites/all/themes/afterschoolprograms_dev/style.css?n ,它会 return 403 Forbidden 错误。
如果我尝试在浏览器中打开它 return 同样的错误
如果我打开这个页面 https://web.archive.org/web/20170322073013/http://afterschoolprograms.com/,这个 css 页面工作正常并且 return 302 导致工作 css 文件。
然后如果用浏览器再次打开相同的 css 文件,它工作正常。
如何始终卷曲此 css 文件和 return 导致工作 css 文件的 302 重定向?
这是我目前使用的 php 代码,它总是 return 403 禁止错误:
$url = "https://web.archive.org/web/20170322073013cs_/http://afterschoolprograms.com/sites/all/themes/afterschoolprograms_dev/style.css?n";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 30); //timeout in seconds
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // follow 301 redirection
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch,CURLOPT_USERAGENT,'waybackmachinedownloader');
$html = curl_exec($ch);
curl_close($ch);
按照 Cbroe 的建议,添加 referer
header 有效:
<?php
$url = 'https://web.archive.org/web/20170322073013cs_/http://afterschoolprograms.com/sites/all/themes/afterschoolprograms_dev/style.css?n';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_REFERER, 'https://web.archive.org/web/20170322073013/http://afterschoolprograms.com/');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$html = curl_exec($ch);
curl_close($ch);
var_dump($html);
?>
如果我尝试像这样 css 卷曲这个文件 https://web.archive.org/web/20170322073013cs_/http://afterschoolprograms.com/sites/all/themes/afterschoolprograms_dev/style.css?n ,它会 return 403 Forbidden 错误。 如果我尝试在浏览器中打开它 return 同样的错误
如果我打开这个页面 https://web.archive.org/web/20170322073013/http://afterschoolprograms.com/,这个 css 页面工作正常并且 return 302 导致工作 css 文件。
然后如果用浏览器再次打开相同的 css 文件,它工作正常。
如何始终卷曲此 css 文件和 return 导致工作 css 文件的 302 重定向?
这是我目前使用的 php 代码,它总是 return 403 禁止错误:
$url = "https://web.archive.org/web/20170322073013cs_/http://afterschoolprograms.com/sites/all/themes/afterschoolprograms_dev/style.css?n";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 30); //timeout in seconds
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // follow 301 redirection
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch,CURLOPT_USERAGENT,'waybackmachinedownloader');
$html = curl_exec($ch);
curl_close($ch);
按照 Cbroe 的建议,添加 referer
header 有效:
<?php
$url = 'https://web.archive.org/web/20170322073013cs_/http://afterschoolprograms.com/sites/all/themes/afterschoolprograms_dev/style.css?n';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_REFERER, 'https://web.archive.org/web/20170322073013/http://afterschoolprograms.com/');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$html = curl_exec($ch);
curl_close($ch);
var_dump($html);
?>