meta noindexとrobots.txtによるクローラーの動きの違い

クローラビリティ
No

検索されたくないページに対して、metaタグのnoindex属性とrobots.txtで拒否する方法があります。metaタグはインデックスさせない、robots.txtはアクセス拒否のための記述です。その違いは考えてみればわかるのですが、改めてクローラーの動きを調べてみました。

使用するツール
Search ConsoleのFetch as Google
Fetch as Google

Fetch as GoogleでURLを送信すると指定したクローラーが巡回します。

Google Analyticsリアルタイム

このように指定したURL「/column/crawlability/199.html」にスマートフォン用のGooglebotがクロールします。

Googlebot(sp)が来訪

meta noindexの場合

テストページ

こちらはmeta noindexを記述したページです。

Fetch as Google

Fetch as Googleで入力すると「見つかりませんでした」と表示されます。しかし、クローラーは巡回しています。

Google Analytics

クロールした結果、meta noindexが記述されていることがわかります。クローリングまでかと思いきや、HTMLの解析も行っています。

パースも行う

クローリングし、HTMLの解析(パース)まで行うが、meta noindexが記述されているのでインデックスはしない、という動きです。

no index

「cache:URL」で調べたところ、404エラーとなりました。

robots.txtの場合

テストページ

次にrobots.txtでクローラーを拒否した場合です。こちらのページはrobots.txtでアクセスを拒否しています。

Fetch as Google

そしてFetch as Googleで入力します。ステータスは「ブロック」と表示されました。クローラー解析ツールには全く反応がありません。クローリングすらされていないことになります。

調査結果

結果を見ると当たり前と思われることでしょう。しかし、改めて調べてみると検索エンジンはルールに準拠して行動していることがわかりました。robots.txtの指示に従いクロールし、ページの指示に従いその後の行動を決めます。noindexでも解析まで行うがインデックスはしないという形でした。

西部俊宏
執筆者:西部俊宏
株式会社Webの間代表取締役。上場企業でのSEOやWebサイト構築実績多数。ECサイトのカスタマイズ経験も多数あり。
会社概要はこちら

「ECサイトをより便利にしたい」「もっと集客したい」ECカスタマイズはお任せください