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');

相关文章

Hessian开源的远程通讯,采用二进制 RPC的协议,基于 HTTP 传输。可以实现PHP调用Java,Python,C#等多语...
初识Mongodb的一些总结,在Mac Os X下真实搭建mongodb环境,以及分享个Mongodb管理工具,学习期间一些总结...
边看边操作,这样才能记得牢,实践是检验真理的唯一标准.光看不练假把式,光练不看傻把式,边看边练真把式....
在php中,结果输出一共有两种方式:echo和print,下面将对两种方式做一个比较。 echo与print的区别: (...
在安装好wampServer后,一直没有使用phpMyAdmin,今天用了一下,phpMyAdmin显示错误:The mbstring exte...
变量是用于存储数据的容器,与代数相似,可以给变量赋予某个确定的值(例如:$x=3)或者是赋予其它的变...