相关疑难解决方法(0)

PHP/Curl:HEAD请求在某些站点上需要很长时间

我有一个简单的代码,可以对URL执行头请求,然后打印响应头.我注意到在某些网站上,这可能需要很长时间才能完成.

例如,请求http://www.arstechnica.com大约需要两分钟.我使用另一个执行相同基本任务的网站尝试了相同的请求,并立即返回.所以我必须设置错误导致这种延迟的东西.

这是我的代码:

$ch = curl_init();
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 20);
curl_setopt ($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);

// Only calling the head
curl_setopt($ch, CURLOPT_HEADER, true); // header will be at output
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'HEAD'); // HTTP request is 'HEAD'

$content = curl_exec ($ch);
curl_close ($ch);
Run Code Online (Sandbox Code Playgroud)

以下是指向具有相同功能的网站的链接:http://www.seoconsultants.com/tools/headers.asp

上面的代码,至少在我的服务器上,需要两分钟才能检索到www.arstechnica.com,但上面链接中的服务会立即返回.

我错过了什么?

php performance curl header http-headers

25
推荐指数
2
解决办法
4万
查看次数

标签 统计

curl ×1

header ×1

http-headers ×1

performance ×1

php ×1