目次
robots.txt は「クロール制御」の指示書
robots.txt は検索エンジンのクローラーに “どのURLをクロールしてよいか” を伝えるファイルです。
インデックス除外(検索結果から消す)用の仕組みではありません。
ページを検索結果から外したいなら noindex(メタタグ/HTTPヘッダー)や認証保護を使います。
どこに置く?設置ルールの基本
- ファイル名は
robots.txt(拡張子は .txt) - プロトコル+ホスト+ポート単位のルートに配置(例:
https://example.com/robots.txt)。 - サブディレクトリでは不可。
- サブドメインごとに別ファイルが必要。
主要ディレクティブ(書式と意味)
User-agent: <クローラー名 または * >
Disallow: <パス(先頭は/)>
Allow: <パス>
Sitemap: <絶対URL>
- User-agent: どのクローラー向けのルールか(
*は全クローラー)。 - Disallow: クロール禁止にするパスを 大文字小文字を区別して指定。空の値は「すべて許可」と同義。
- Allow: より具体的な許可で
Disallowを部分的に上書き(Google はAllowをサポート)。 - Sitemap: サイトマップの 絶対URL を記載。複数記載OK、別ホストのサイトマップも可。
補足:sitemap に列挙したURLが Disallow を上書きすることはありません。
まずはこの3パターン(テンプレそのまま使えます)
1) 基本:すべて許可+サイトマップ案内
User-agent: *
Disallow:
Sitemap: https://example.com/sitemap.xml
ポイント:Disallow: を空にする=全許可。Sitemap は絶対URLで。
2) 管理画面や検索結果ページを除外
User-agent: *
Disallow: /admin/
Disallow: /wp-admin/
Disallow: /search
Allow: /wp-admin/admin-ajax.php
Sitemap: https://example.com/sitemap.xml
ポイント:AJAXエンドポイントなど必要な資源を Allow で戻す。
Allow はより具体的な一致が優先されます。
3) ディレクトリ全体を除外しつつ、一部だけ許可
User-agent: *
Disallow: /members/
Allow: /members/public/
Sitemap: https://example.com/sitemap.xml
ポイント:ディレクトリ丸ごと禁止→配下の特定パスだけ許可、のよくある組み合わせ。
よくあるつまずき(初学者がハマりやすい順)
- インデックス除外と混同
Disallowは「クロール禁止」であって「検索結果から消す」ではありません。非公開にしたいならnoindexや認証を。 - sitemap を相対パスで書く
Sitemap: /sitemap.xmlはNG。必ず絶対URLで。複数・別ホストもOK。 - 大文字小文字のミス
/File.aspと/file.aspは別物。意図通りにブロックされません。 - 「全部禁止」をうっかり本番に適用
Disallow: /は全ブロック。メンテ時の一時設定をそのままデプロイしないように。 - AIクローラー対策を忘れる
昨今は各社のAIクローラーをUser-agent指定で弾く運用も増えています(ただしすべてのボットが robots を守るわけではない)。
いまの「正しい確認方法」:テスターの事情と代替手順
- 旧版の Search Console「robots.txt テスター」は終了。現在は URL 検査ツールで「このURLが robots でブロックされていないか」を確認するのが公式推奨です。さらに、Googleが公開しているrobots.txt オープンソースパーサーでローカル検証も可能。
- 外部の検証ツール(TechnicalSEO、Screaming Frog など)も補助として有用。
- Search Console の 設定>robots.txt レポートから、Google が見ている robots.txt の取得状況・到達性エラーも確認できます。
User-agent の粒度について(知っておくと安心)
Google には検索や広告品質確認など用途別のクローラーがあります(例:Googlebot、広告品質確認の AdsBot-Google-Mobile-Apps など)。
特定の用途だけ許可/禁止したいときは 対象の User-agent トークン名でグループを分けて記述します。
サイトマップとの付き合い方(2025年のベスト)
- CMS が自動生成するサイトマップを Search Console の「サイトマップ」から登録+
robots.txtにも絶対URLで併記。大規模サイトは インデックスサイトマップで分割。 - 別ホストにサイトマップを置いてクロスサブミットも可能(所有権検証が前提)。
実運用チェックリスト
https://example.com/robots.txtに到達できる- 本番環境に
Disallow: /を残していない - 重要ページや重要リソース(CSS/JS/画像)を誤ってブロックしていない
Sitemap:は絶対URL、複数あれば複数行で列挙- URL 検査ツールで要のURLをライブテスト
- (必要に応じて)主要AIクローラーのブロック行を追加し、ポリシーを文書化
まとめ
- robots.txt はクロールの交通整理。インデックス除外は別手段。
- 設置はルート直下、書式は大小区別・絶対URLのSitemapが基本。
- テストは URL 検査ツール+外部検証で堅実に。旧テスター前提の手順は更新しよう。
付録:AIクローラーをまとめて断る例(任意)
すべてのクローラーが順守するとは限りません。
スクレイパー対策は WAF 等と併用を。
User-agent: GPTBot
Disallow: /
User-agent: CCBot
Disallow: /
User-agent: anthropic-ai
Disallow: /
User-agent: PerplexityBot
Disallow: /
User-agent: *
Disallow:
Sitemap: https://example.com/sitemap.xml



