【发布时间】:2017-02-16 05:03:39
【问题描述】:
我想找到某个站点中网页的最终重定向状态代码。在给定的到期日期后,此站点将删除这些页面并将您重定向到其主页并显示 404 状态代码。
假设我要访问的页面之一是http://example.com/my-page,而该页面已不存在。所以它会将我重定向到http://example.com/。我检查了 chrome 开发者工具,它发送了一个 404 状态码。
现在问题来了。我想检查此页面是否为 404。我有以下 PHP 函数。
function findStatus($url)
{
$handle = curl_init($url);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, TRUE);
/* Check for 404 (file not found). */
$httpCode = curl_getinfo($handle, CURLINFO_HTTP_CODE);
curl_close($handle);
if ($httpCode == 404) {
return true;
} else {
return false;
}
}
当我使用上述功能检查相关页面时,我得到 302 进行永久重定向。我猜这个函数在重定向之前获取状态码。
This answer 描述了如何获取 URL,而不是状态码。页面重定向完成后如何获取状态码?
【问题讨论】:
标签: php .htaccess redirect curl