php获取facebook页面状态404

php获取facebook页面状态404,php,http-status-code-302,Php,Http Status Code 302,这不是重复的,因为我做了curl-follow重定向,输出是302http状态码 我有这个密码 <?php $url="http://www.facebook.com/thisfburldoesnotexist"; $handle = curl_init($url); curl_setopt($handle, CURLOPT_RETURNTRANSFER, TRUE); curl_exec($handle); $httpCode = curl_getinfo($handle, CUR

这不是重复的,因为我做了curl-follow重定向,输出是302http状态码

我有这个密码

<?php 

$url="http://www.facebook.com/thisfburldoesnotexist";
$handle = curl_init($url);
curl_setopt($handle,  CURLOPT_RETURNTRANSFER, TRUE);
curl_exec($handle);
$httpCode = curl_getinfo($handle, CURLINFO_HTTP_CODE);
echo $httpCode;
curl_close($handle);
?>

获取某些页面的状态代码,但当我尝试获取此
http://www.facebook.com/thisfburldoesnotexist
响应为302,但调试时Chrome报告http 404

如何在Chrome中报告实际的404


如果我用这个工具检查url,它会报告我想要的:404-未找到

发生的是,当你请求不存在的页面时,facebook会用状态代码302或307的页面进行响应。然后,它重定向到另一个页面,状态代码为404

因此,您需要添加这个curl选项,以便curl将遵循该重定向,并最终到达404页面

curl_setopt($handle,CURLOPT_FOLLOWLOCATION,1)

默认情况下,此参数设置为
0
,因此,与您的情况一样,它不遵循重定向,您得到的响应只是302或307或facebook决定作为第一个响应发送的任何内容。通过将其设置为
1
,它将遵循重定向

更多信息请点击此处:

刚刚注意到,你可以在截图中看到我在说什么。您得到的第一个响应是307


Chrome浏览器和该网站上的工具确实满足重定向请求,除非按照上述配置,否则curl不会满足此请求。

如果我要求您使用php获取404代码,您将如何使用php实现?我试过很多方法,但都不管用。。。