さまざまな URL で xml サイト マップの存在を確認しています。URL example.com/sitemap.xml を提供し、www.example.com/sitemap.xml への 301 がある場合、明らかに 301 が返されます。www.example.com/sitemap.xml が存在しない場合、404 は表示されません。したがって、301 を取得した場合は、別の cURL を実行して、www.example.com/sitemap.xml に対して 404 が返されるかどうかを確認します。しかし、理由により、ランダムな 404 および 303 ステータス コードが表示されます。
private function check_http_status($domain,$file){
$url = $domain . "/" . $file;
$curl = new Curl();
$curl->url = $url;
$curl->nobody = true;
$curl->userAgent = 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.1) Gecko/20060601 Firefox/2.0.0.1 (Ubuntu-edgy)';
$curl->execute();
$retcode = $curl->httpCode();
if ($retcode == 301 || $retcode == 302){
$url = "www." . $domain . "/" . $file;
$curl = new Curl();
$curl->url = $url;
$curl->nobody = true;
$curl->userAgent = 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.1) Gecko/20060601 Firefox/2.0.0.1 (Ubuntu-edgy)';
$curl->execute();
$retcode = $curl->httpCode();
}
return $retcode;
}