特定のサイトのウェブページの最終的なリダイレクトステータスコードを探したい。有効期限が過ぎると、このサイトはこれらのページを削除し、404のステータスコードでホームページにリダイレクトします。最終的なリダイレクトされたステータスコードをcurlで取得するPHP
私が行きたいページの1つがhttp://example.com/my-page
であり、このページはもう存在しないとしましょう。それで私はhttp://example.com/
にリダイレクトされます。私はクローム開発者のツールで確認し、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を取得する方法を説明していますが、ステータスコードは取得できません。ページのリダイレクトが完了したらステータスコードを取得するにはどうすればよいですか?