您的位置:首页 > 理论基础 > 计算机网络

PHP中cURL的curl_getinfo函数返回的CURLINFO_HTTP_CODE是0

2016-08-01 14:24 429 查看

分析

在PHP中使用cURL获取网页时,可以通过函数
curl_getinfo()
来获取http状态码。

$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);


我们期望的状态码是200,而且HTTP标准也对其它状态码做了一些定义。

总体范围已定义类别类别
100~199100~101信息
200~299200~206成功
300~399300~305重定向
400~499400~415客户端错误
500~599500~505服务端错误
但是
curl_getinfo()
有时候会给我们返回状态是0的状态码,原因如下,

如果你已经连接到服务器上了,那么你将会返回一个状态码;否则,将会失败并返回一个0。

所以,如果你连接到
www.google.com/lksdfk
时,你会收到一个400的状态码,如果你连接到
google.com
,你会收到一个302的状态码(如果继续访问的话,将会收到200的状态码,因为被重定向到了
www.google.com.hk
),如果你访问
googlecom
,你会收到一个0状态码,并提示找不到host。

错误的详细原因可以通过函数
curl_error()
进行查询。

参考

PHP cURL HTTP CODE return 0

HTTP权威指南
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php curl httpCode 状态码