有没有人知道为什么在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');