タグやX-Robots-Tagヘッダーの値を貼り付けるだけでディレクティブを一括検証。noindexとindexの併記など矛盾する指定や、max-snippet等の値の誤りを検出し、ディレクティブごとの内訳を一覧表示します。" />

robots metaタグ/X-Robots-Tag バリデーター

タグやX-Robots-Tagヘッダーの値を貼り付けるだけでディレクティブを一括検証。noindexとindexの併記など矛盾する指定や、max-snippet等の値の誤りを検出し、ディレクティブごとの内訳を一覧表示します。

Tips

  • noindexとrobots.txtのdisallowを同時に設定するのは避けましょう。disallowでクロール自体をブロックすると、クローラーはページ内のnoindexタグを読み取れず、インデックス削除が意図通りに進まないことがあります。
  • Googleは認識できないディレクティブ名をエラーにせず単に無視します。そのため未知のディレクティブが混ざっていても致命的ではありませんが、typoに気づけないままになるため確認は重要です。
  • max-snippet:-1・max-video-preview:-1は「無制限」を意味する特別な値です。0は「スニペットを一切表示しない」という別の意味になるため混同しないよう注意してください。
  • X-Robots-TagヘッダーはPDFや画像等、HTML以外のファイルにもnoindex等の指示を出せる唯一の方法です。metaタグはHTML文書にしか埋め込めません。
  • 複数のディレクティブを併記する場合はカンマ区切りで1つのcontent属性・ヘッダー値にまとめます。同じ名前のmetaタグを複数書いても後勝ちにはならず、両方が個別に評価されるため注意が必要です。

よくある質問

robots.txtはクローラーがそのURLを取得してよいかどうかをサイト単位・URLパターン単位で制御するファイルです。robots metaタグ(X-Robots-Tagヘッダー含む)はクロール済みのページをインデックスに登録してよいか・ページ内のリンクを辿ってよいかをページ単位で制御します。前者はクロールの可否、後者はインデックス・リンク追跡の可否という別の段階を担っています。

noindexは検索結果からそのページを除外するようGoogleに指示します。nofollowはそのページ内にあるリンクを辿らない(リンク先のクロールに使わない)よう指示します。両方を組み合わせると、ページ自体を検索結果に出さず、かつページ内リンクの評価も伝播させないという厳格な設定になります。

metaタグはHTML文書にしか埋め込めないため使えませんが、X-Robots-TagはHTTPレスポンスヘッダーとして返すため、PDF・画像・動画等どんな形式のファイルにも指定できます。Webサーバーの設定でファイル拡張子ごとに一括付与するのが一般的な運用方法です。

検索結果に表示される説明文(スニペット)の最大文字数を制御できます。ニュース記事の冒頭だけを見せたい、あるいは有料コンテンツの本文が丸ごと表示されるのを防ぎたいといったケースで、nosnippet(表示を完全にオフ)ほど厳しくせず表示量を細かく調整したいときに有用です。

設定自体は可能ですが期待通りに動作しません。robots.txtでdisallowするとクローラーはそのページを取得できなくなるため、ページ内に書いたnoindexタグを読み取る機会がなく、結果としてインデックスからの削除が進まないことがあります。ページを検索結果から除外したい場合は、クロールは許可したままnoindexだけを使うのが正しい方法です。
ツールくん

余談ですが ― robots.txtとrobots metaタグは何が違うのか ― クロールとインデックスの分業

robots.txtとrobots metaタグはどちらも検索エンジンへの指示に使われますが、担当する段階が異なります。robots.txtは「クロールしてよいか」をURLパターン単位で制御するファイルで、サイトのルートに設置する静的なテキストです。一方robots metaタグ(およびX-Robots-Tagヘッダー)は「クロール済みのページをインデックスしてよいか・リンクを辿ってよいか」をページ単位で細かく制御する仕組みで、両者は独立したレイヤーとして機能します。

この分業構造ゆえに、robots.txtでdisallowしたページにnoindexタグを書いても効果はありません。クローラーがそもそもそのページを取得できないため、ページ内に書かれたnoindexの指示を読み取る機会自体がないからです。ページを検索結果から除外したい場合は、クロール自体は許可したままnoindexディレクティブだけを使う必要があります。

X-Robots-Tagヘッダーは2007年頃にGoogleが導入した仕組みで、metaタグが使えないPDF・画像・動画等の非HTMLリソースに対しても同様の制御を可能にしました。Apache等のWebサーバー設定でファイル拡張子ごとに一括付与できるため、大量のPDFファイルを一括でnoindexにするといった運用にも向いています。

max-snippet・max-image-preview・max-video-previewといった値付きディレクティブは比較的新しく、2019年にGoogleが検索結果のスニペット表示に関するポリシーを整理した際に追加されました。それ以前はnosnippetで表示を完全にオフにするしかなかったため、表示量を細かく調整できるようになったのはパブリッシャーにとって歓迎すべき変更でした。