Php curl不返回内容长度头
尝试使用curl获取图像文件大小,但未返回内容长度标头:Php curl不返回内容长度头,php,curl,Php,Curl,尝试使用curl获取图像文件大小,但未返回内容长度标头: $url ="http://www.collegefashion.net/wp-content/plugins/feed-comments-number/image.php?1263"; $fp = curl_init(); curl_setopt($fp, CURLOPT_NOBODY, true); curl_setopt($fp, CURLOPT_RETURNTRANSFER, 1); curl_setopt($fp, CURLOP
$url ="http://www.collegefashion.net/wp-content/plugins/feed-comments-number/image.php?1263";
$fp = curl_init();
curl_setopt($fp, CURLOPT_NOBODY, true);
curl_setopt($fp, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($fp, CURLOPT_FAILONERROR,1);
curl_setopt($fp, CURLOPT_REFERER,'');
curl_setopt($fp, CURLOPT_URL, $url);
curl_setopt($fp, CURLOPT_HEADER,1);
curl_setopt($fp, CURLOPT_USERAGENT,'Mozilla/5.0');
$body = curl_exec($fp);
变量转储($body):
它通过ssh工作:
curl -i http://www.collegefashion.net/wp-content/plugins/feed-comments-number/image.php?1263
HTTP/1.1 200 OK
Date: Sun, 02 May 2010 03:38:43 GMT
Server: Apache/2.0.63 (CentOS)
X-Powered-By: W3 Total Cache/0.8.5.2
X-Pingback: http://www.collegefashion.net/xmlrpc.php
Cache-Control: no-cache, must-revalidate
Expires: Sat, 26 Jul 1997 05:00:00 GMT
Content-Length: 347
Content-Type: image/png
检查:
$size = curl_getinfo($fp, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
在curl\u exec()之后执行它
另一个选项是将CURLOPT_HEADER
设置为false
,只需执行strlen($body)
——忽略此选项,我没有注意到您正在使用CURLOPT_NOBODY
检查:
$size = curl_getinfo($fp, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
在curl\u exec()之后执行它
另一个选项是将CURLOPT_HEADER
设置为false
,只需执行strlen($body)
——忽略这一点,我没有注意到您正在使用CURLOPT_NOBODY
CURLOPT_NOBODY发出HEAD请求,而您的命令行-I是GET请求
如果在命令行版本中使用-I,它们会更相似。CURLOPT\u没有人发出HEAD请求,而在命令行中使用-I是GET请求
如果在命令行版本中使用-I,它们会更相似。谢谢!就这样。head请求不会返回该服务器的内容长度。只需补充:一些服务器只是拒绝head请求并返回405状态码(即“不允许使用方法”),谢谢!就这样。head请求不会返回该服务器的内容长度。只是补充一下:一些服务器只是拒绝head请求并返回405状态码(即“不允许使用方法”)