robots.txtガイド

AIクローラー向けrobots.txt:検索・学習・アクセス制御の違い

AIクローラーをrobots.txtで制御する方法を解説。OAI-SearchBotとGPTBotの違い、noindexとの使い分け、安全な設定例を紹介します。

Robots.txt Tools Editorial Team による最終確認 2026-09-13約7分で読めます
AIクローラー向けrobots.txt:検索・学習・アクセス制御の違い

AIクローラーの設定で最初に分けるべきなのは、クロールを許可するか、検索や回答で見つけられたいか、提供元固有の学習用途を許可するかという3つの目的です。これらは同じ設定ではありません。AI関連のUser-agentを一括でDisallow: /にすると、意図せず検索での発見性まで失うことがあります。

OpenAIの現在の案内では、OAI-SearchBotGPTBotは別の目的で扱われます。ChatGPT検索でコンテンツを発見・要約・引用されたいサイトはOAI-SearchBotをブロックしないことが案内されています。一方、学習に使用される可能性のある対象から除外したい場合はGPTBotを拒否できます。

まず目的を決める

目的robots.txtでの考え方追加の制御
通常検索とAI検索の発見性を維持対象の検索クローラーをブロックしない検索結果に出したいページはindexableにする
AI検索は許可し、学習用クローラーだけ拒否検索用と学習用User-agentを分離提供元の最新ドキュメントを確認
公開ページを検索結果から除外robots.txtだけに依存しないクロールを許可してnoindexを読ませる
非公開情報を保護robots.txtをセキュリティとして使わない認証・認可を使う

RFC 9309のrobots.txtはクローラーへの指示であり、アクセス権限の仕組みではありません。DisallowしたURLでも、ルールを守らないソフトウェアからのアクセスを防ぐことはできません。

ChatGPT検索を許可しGPTBotを拒否する例

User-agent: OAI-SearchBot
Allow: /

User-agent: GPTBot
Disallow: /

User-agent: *
Allow: /

Sitemap: https://example.com/sitemap.xml

重要なのはテンプレートをそのままコピーすることではなく、目的ごとにグループを分けることです。クローラー名や方針は変更される可能性があるため、公開前には必ず提供元の最新資料を確認してください。

Disallowとnoindexは役割が違う

robots.txtのDisallowはクロール制御です。noindexは、対応する検索システムにインデックス登録をしないよう伝える指示です。ページをrobots.txtでブロックすると、クローラーがHTMLを取得できず、ページ内のnoindexを読めないことがあります。

たとえば次の組み合わせは注意が必要です。

User-agent: OAI-SearchBot
Disallow: /campaign-preview/
<meta name="robots" content="noindex">

公開ページを検索結果に出したくないだけなら、クローラーがページを取得できる状態でnoindexを返す方が目的に合います。本当に非公開にしたい情報は認証で保護してください。

AIボットの巨大なブロックリストを盲目的に使わない

AI関連User-agentの長い一覧は管理しにくく、すぐ古くなります。検索用、学習用、ユーザー操作による取得用など目的が異なるクローラーを混在させると、何をブロックしているのか説明できなくなります。

小さなルールセットにし、特殊なグループには理由をコメントで残す方が安全です。

# ChatGPT検索での発見を許可
User-agent: OAI-SearchBot
Allow: /

# 学習用途に関する方針
User-agent: GPTBot
Disallow: /

通常のサイト運用ルールと組み合わせる

AIクローラーを許可する場合でも、カート、アカウント、内部検索など低価値なアプリケーションパスを制御できます。

User-agent: OAI-SearchBot
Disallow: /account/
Disallow: /cart/
Allow: /

User-agent: GPTBot
Disallow: /

User-agent: *
Disallow: /account/
Disallow: /cart/
Allow: /

複数のルールが一致する場合は、行の上下ではなく、より具体的なパスが重要です。実際のURLをテスターで確認してください。

公開前チェック

  • /robots.txtが対象ホストのルートから200で取得できるか
  • GooglebotやBingbotの重要ページを誤ってブロックしていないか
  • AIクローラー名が最新の公式ドキュメントと一致しているか
  • 検索発見と学習用クローラーを必要に応じて分離しているか
  • noindexを読ませたいページがクロール可能か
  • 機密情報は認証・認可で保護しているか
  • Sitemapが正しいcanonical URLを含んでいるか
  • 代表URLでAllow/Disallowの判定を確認したか

robots.txtの変更は即時にすべてのクローラーへ反映されるとは限りません。公開後はライブファイル、HTTPステータス、アクセスログ、解析データを確認します。OpenAIはChatGPT検索からの参照URLにutm_source=chatgpt.comが付くと案内しているため、流入の確認にも利用できます。

長期的には、クローラーの目的ごとに方針を決め、必要最小限のルールを書き、公式資料を定期的に再確認するのが最も安全です。

関連ガイド