今日も今日とてサイトのログを見ていたら(少々変な日課ですが)、
Googlebotがこんな挙動をしていました。
2007/07/18,10:10:32
66.249.85.131
/google***********.html(GoogleSitemapの確認ファイル)
200(ステータスコード)
Google-Sitemaps/1.0
2007/07/18,10:10:32
66.249.85.131
/noexist_**************.html(noexist_確認ファイルと同じファイル名)
404
Google-Sitemaps/1.0
上記はSEOの効果測定に有効と言われているGoogleウェブマスターツールのクローラーです。
Webマスターツールでは、エラー情報やリンク情報などを知るためにはGoogleが指定する確認ファイルのアップロードを行う必要があります。
そんな訳でこのサイトにもWebマスターツールの確認ファイルを入れてあるんですが、
noexist_うんたらとかいうファイルはWebウェブマスターツールにアップロードを指定されていないので当然アップしていません。
しかし実際クロールに来るGooglebotは必ず確認ファイルと一緒にnoexist_うんたらを拾いに来ます。
404を吐いているのにも関わらず毎回必ずセットでやってきます。
かなり前からこんな感じなので気にはなっていたんですが...。
ということで、ちょっと調べてみたところGoogleGroupsに回答がありました。
英語苦手なので曖昧ですが、どうやら「存在しないファイルに確実に404エラーを出すところかどうか」を見ているらしいとのこと。
存在しないファイルに対してGooglebotに存在していると思わせ・騙す行為を防ぐためのもの?とかどうとか...。
つまり、「ページが存在しない場合301リダイレクト等を使用してステータスコード200を返すページに自動的に移動する」行為がGooglebotのチェックにひっかかる様なサイトという事なのかなあ?
そう思うと、現在はやり(?)の「エラーページを独自で作る」のステータスコードはどうなっているんだろう?と疑問に思いました。
エラーページ自体は存在しているから200?だったらだめじゃん独自エラーページ!
というわけで更に調べたところ、.htaccessに以下の記述をすればいいらしい。
ErrorDocument 404 /404.html
...というか、普通に独自エラーページ作る時の記述なんですが...。
単に404エラーメッセージを404.htmlに置き換えているだけだからステータスコードに影響はないっぽい。
.htaccessにだけ書く場合はこれでも大丈夫みたいです。安心安心。