robots.txt は検索避けには不十分な場合がある

この呟きを見ながら、前に読んだ記事を思い出したのでメモ。

検索エンジンのロボットのクローリングを拒否するために、robots.txtでブロックしたはずのページが、検索結果に出現することがあります。
…(中略)…
Googleは、決してrobots.txtを無視したり、理解できていなかったりするわけでありません。ある条件のもとでは、robots.txtでブロックされたページをSERPに表示することがあります。たいていの場合は、ブロックページに多くのリンクが張られている場合です。リンクが張られているということは、参照する(検索する)ユーザーが多いと考えられます。

Googleとしては、ユーザーが求めている情報を返すことが最重要です。robots.txtでブロックされているとはいえ、そのページがもっとも関連性が高いとリンクによって判断できるのなら、結果として提示したいのです。

そこで、妥協案としてページはクロールしない代わりに、URLだけを見せるようにしました。URLは、ページの中身を見なくてもリンクによって分かりますよね。

ページを見ないので、titleタグやmeta descriptionタグは読めません。

robots.txtでブロックしたページが検索結果に出るのはなぜ? | 海外SEO情報ブログ

Google検索エンジン(程度の差はあれ、Bing 等の他の検索エンジンもやっているとの事)は、「robots.txt でクロールを禁止されているが被リンクの多いページに関しては、URL だけ検索結果に表示する」と言う処理を行う事があるそうです。前に読んだ時も「うーん、どうなんだろう?*1」と言うもやもやとした感想を抱いたのですが、実際問題として、多くの検索エンジンはそう言った挙動を示しているようです。

Google に関しては、noindex を付与しておけばそのページは検索結果に反映しないそうなので、Google 検索結果に載せたくないページの場合は noindex も忘れずに書いた方が良いようです。

*1:挙動に対する妥当性に関する議論とか、サイト運営者への認知の徹底等のコンセンサスはどの程度取れているのか、とか。