微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – cURL真的很慢

有没有人知道为什么在PHP5下cURL即使在45s超时也无法缓慢失败,在speedO’light服务器上下载几个kb文件

代码在这里按要求提供(尽管我在执行过程中不会因脚本失败而更多地延长了超时时间,并将初始Chrome中的useragent更改为Mozilla / 4.0):

$ch = curl_init('http://www.somesite.com/' . $key);
curl_setopt($ch,CURLOPT_HEADER,false);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_REFERER,'http://www.somesite.com/somereferer/');
// curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/530.5 (KHTML,like Gecko) Chrome/2.0.172.39 Safari/530.5');
curl_setopt($ch,'Mozilla/4.0');
curl_setopt($ch,CURLOPT_TIMEOUT,120);
curl_setopt($ch,CURLOPT_DNS_CACHE_TIMEOUT,600);
嗯,可能是一些事情,也许一些详细的输出会有某种错误
curl_setopt($ch,CURLINFO_HEADER_OUT,CURLOPT_VERBOSE,true); // some output will go to stderr / error_log
curl_setopt($ch,10);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,5);
$response = curl_exec($ch);
$errStr = curl_error($ch);
$errNum = curl_errno($ch);
$head = curl_getinfo($ch,CURLINFO_HEADER_OUT);
$ci = curl_getinfo($ch);
print_r(array($head,$errStr,$errNum,$ci));

有时,用户代理会更改站点的响应方式,可能需要执行以下操作:

curl_setopt($ch,'Mozilla/5.001 (windows; U; NT4.0; en-US; rv:1.0) Gecko/25250101');

原文地址:https://www.jb51.cc/php/137436.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐