最終更新日: 2026/06/13

AIクローラのrobots.txt設定を今すぐ対策しよう

AIクローラのrobots.txt設定を今すぐ対策しよう

「自分のサイトのコンテンツがAIに学習されているかも…」そう気づいたとき、まず確認したいのがrobots.txtの設定です。GPTBot、Google-Extended、BingbotといったAIクローラは、あなたの許可なくサイトを巡回しコンテンツを収集しています。この記事では、robots.txtで各AIクローラを制御する具体的な書き方を、初心者でもすぐ使えるコピペ形式でまとめました。

AIクローラ向けrobots.txt設定の結論|まず「何を書けばいいか」を知ろう

AIクローラ向けrobots.txt設定の結論|まず「何を書

細かい説明より「とにかく今すぐ設定したい」という方のために、まず結論から紹介します。以下のH3セクションに、コピーしてそのまま使えるrobots.txtのテンプレートをパターン別にまとめました。

GPTBot・Google-Extended・Bingbotをブロックするrobots.txtのコピペ用テンプレート

主要なAIクローラをまとめてブロックしたい場合は、以下のコードをrobots.txtに貼り付けてください。

User-agent: GPTBot
Disallow: /

User-agent: Google-Extended
Disallow: /

User-agent: CCBot
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: Applebot-Extended
Disallow: /

これだけで、ChatGPT(OpenAI)・Google Gemini・Common Crawl・Claude(Anthropic)・Apple Intelligenceの5大AIクローラをブロックできます。Bingbotは通常の検索クローラと兼用のため、後述のパターン④を参照してください。

AIクローラを「すべて拒否」する場合の記述例

既知・未知すべてのクローラのアクセスを遮断したい場合は、ワイルドカード * を使います。

User-agent: *
Disallow: /

ただしこの書き方はGooglebotやBingbotなど検索エンジンのクローラも含めてすべてブロックします。検索結果にサイトが表示されなくなる恐れがあるため、通常の公開サイトへの使用は避けてください。開発環境や非公開サイトへの設定として使うのが一般的です。

AIクローラを「特定のものだけ拒否」する場合の記述例

「ChatGPTだけ拒否したい」「Google GeminiとClaudeだけ止めたい」といった場合は、拒否したいUser-agentだけを列挙します。

# GPTBotとClaudeBotだけブロックする例
User-agent: GPTBot
Disallow: /

User-agent: ClaudeBot
Disallow: /

# 検索エンジンクローラは通常どおり許可
User-agent: Googlebot
Allow: /

User-agent: Bingbot
Allow: /

# から始まる行はコメントとして扱われ、クローラには無視されます。記述の意図を残しておきたいときに便利です。

AIクローラを「すべて許可」する場合の記述例

AIクローラを制限せず、すべてのアクセスを許可するのがデフォルトの状態です。robots.txtに何も書かない、または以下のように明示することで許可を表現できます。

User-agent: *
Allow: /

AIへの学習を積極的に許容したい場合や、まだ方針が決まっていない場合はこの状態のままでも問題ありません。ただし「何も設定していない=許可している」ということを意識的に選んでいるのか、単に気づいていないのかは、今一度確認してみてください。

そもそもrobots.txtとは何か|初心者向けに3分で解説

そもそもrobots.txtとは何か|初心者向けに3分で解説

AIクローラの設定に入る前に、robots.txtの基本を押さえておきましょう。仕組みを知っておくと、設定ミスを防ぎやすくなります。

robots.txtの役割|クローラーに「来ていい場所・ダメな場所」を伝えるファイル

robots.txtとは、Webサイトのルートに置くテキストファイルで、クローラー(Webを自動で巡回するプログラム)に対してアクセスのルールを伝えるものです。

例えるなら、お店の入り口に貼る「スタッフ専用エリアにはお入りください」という張り紙のようなイメージです。クローラーはまずこのファイルを読み、どのページにアクセスしていいかを確認してから動きます。

robots.txtがなければクローラーはすべてのページを自由に巡回でき、AIクローラも同様にサイト全体のコンテンツを収集できてしまいます。

robots.txtでできること・できないこと

robots.txtを正しく使うために、できることとできないことをはっきり区別しておきましょう。

できること

  • 特定のクローラーのアクセスを拒否・許可する
  • 特定のディレクトリやファイルへのアクセスを制限する
  • サイトマップの場所をクローラーに伝える

できないこと

  • ページの検索結果への表示を直接コントロールする(それはnoindexの役割)
  • 悪意のあるbotや人間のアクセスをブロックする
  • ルールに従わないクローラーを強制的に排除する

robots.txtはあくまで「お願い」の仕組みです。ルールを守らないbotには効果がない点を覚えておいてください。

robots.txtとnoindexタグの違い

混同しやすいのが、robots.txtと<meta name="robots" content="noindex">(noindexタグ)の違いです。

項目

robots.txt

noindexタグ

設定場所

サーバー上のテキストファイル

HTMLのheadタグ内

主な役割

クロール(巡回)の制御

インデックス(検索結果への掲載)の制御

対象

特定クローラー全体

個別ページごと

robots.txtでクロールをブロックしたページには、Googlebotがそもそもアクセスしないためnoindexタグを読めません。そのため「クロールを拒否しつつ検索結果にも出したくない」という意図は、robots.txtだけでは達成できないのです。両者の役割をきちんと分けて使いましょう。

なぜAIクローラをrobots.txtで制御する必要があるのか

なぜAIクローラをrobots.txtで制御する必要があるの

「AIクローラって実際に何をしているの?」「ブロックしないとまずいの?」という疑問に答えます。背景を理解してから設定すると、自分のサイトに合った判断がしやすくなります。

AIクローラがやっていること|コンテンツを学習データとして収集している

GPTBotやGoogle-ExtendedといったAIクローラは、通常の検索エンジンクローラと同じようにWebページを巡回し、テキストや画像などのコンテンツを収集しています。ただし目的が異なり、収集したデータを生成AIモデルの学習データとして使うことが主な用途です。

たとえばChatGPTの回答や、Google Geminiの生成内容の一部は、こうして集めたWebコンテンツをもとに作られています。言い換えると、あなたが時間をかけて書いた記事や独自の情報が、AIサービスの応答生成に使われる可能性があるということです。

AIによるコンテンツ無断学習が問題になっている背景

2023年以降、生成AIの普及に伴い「自分のコンテンツが無断で学習されている」という声が世界中で広がりました。ニュースメディアや出版社、個人クリエイターがOpenAIやGoogleを相手に著作権侵害を訴える動きも続いています。

こうした状況を受け、OpenAIは2023年8月にGPTBotのUser-agent情報を公式に公開し「ブロックしたい場合はrobots.txtで設定できる」と明示しました(参考: OpenAI GPTBot公式ページ)。Googleも同様にGoogle-Extendedの情報を公開しています。

つまり「自分で設定しなければ、デフォルトで収集を許可した状態になる」という現実があります。

robots.txtでブロックしないとどうなるのか

robots.txtで何も設定していない場合、AIクローラはサイト全体を自由に巡回し、コンテンツを学習データとして収集し続けます。直ちに法的問題が起きるわけではありませんが、以下のような影響が考えられます。

  • 独自のノウハウや情報がAIの回答に反映され、参照元として表示されないまま活用される
  • 商業コンテンツやオリジナル記事の価値が薄れる可能性がある
  • 今後の法整備によっては、事後的にアクセス許可の有無が問われるケースもありうる

一方、すべてのAIクローラをブロックすることが必ずしもベストではない場合もあります。自社サービスの露出を増やしたい場合などは、むしろ許可する判断もあり得ます。まずは自分のサイトの目的に合わせて方針を決めることが大切です。

知っておきたいAIクローラの種類と各User-agent名の一覧

知っておきたいAIクローラの種類と各User-agent名の

robots.txtでAIクローラを制御するには、クローラーごとに異なるUser-agent名を正確に記述する必要があります。主要なAIクローラの名前と特徴を確認しておきましょう。

GPTBot|OpenAI(ChatGPT)のクローラー

User-agent名: GPTBot

OpenAIが運用するクローラーで、ChatGPTや今後のAIモデルの学習データ収集に使われます。2023年8月に公式ドキュメントが公開され、robots.txtでのブロック方法も案内されました。

IPアドレス範囲も公開されており、より厳密なアクセス制御をしたい場合はサーバー側のIPブロックとの組み合わせも可能です。まず対応を検討すべき代表的なAIクローラの一つです。

Google-Extended|Google Geminiなど生成AI向けのクローラー

User-agent名: Google-Extended

Googleが生成AI製品(Geminiなど)の学習・改善目的で使用するクローラーです。通常の検索インデックス用クローラー(Googlebot)とは別に動作するため、Google-Extended をブロックしても検索順位への影響はありません

Googleは検索クローラーとAI学習クローラーを分けて管理しており、この仕組みのおかげでSEOを維持しながらAI学習だけを断ることができます。

Bingbot|Microsoft Bing・Copilotのクローラー

User-agent名: Bingbot

MicrosoftのBing検索エンジンが使うクローラーで、Microsoft CopilotのAI機能にも使われています。注意点は、BingbotはBing検索の通常のインデックス作業とCopilotのAI学習を同じUser-agent名で行っている点です。

そのためBingbotをrobots.txtでブロックすると、Bing検索からの流入も失う可能性があります。Bing経由の集客が重要なサイトでは、全面的なブロックより部分的な制限を検討するのが無難です。

ClaudeBot|Anthropic(Claude)のクローラー

User-agent名: ClaudeBot

Anthropicが開発する生成AI「Claude」の学習データ収集に使われるクローラーです。以前は anthropic-ai というUser-agent名も使われていたため、確実にブロックしたい場合は両方を記述しておくと安心です。

User-agent: ClaudeBot
Disallow: /

User-agent: anthropic-ai
Disallow: /

Applebot-Extended|Apple Intelligence向けのクローラー

User-agent名: Applebot-Extended

Appleが運用するクローラー「Applebot」のうち、Apple Intelligenceなど生成AI機能の学習・改善に特化したのがApplebot-Extendedです。通常の検索用クローラー(Applebot)とは分かれているため、Applebot-ExtendedだけをブロックしてもAppleの検索機能には影響しません。

Google-Extendedと同様の設計思想で、AI学習と検索クロールを分けて制御できる親切な仕組みになっています。

その他の主要AIクローラー一覧

上記以外にも、さまざまなAI関連クローラーが存在します。

User-agent名

運営元

用途

CCBot

Common Crawl

多数のAI企業が学習データとして利用する大規模Webアーカイブ

PerplexityBot

Perplexity AI

AI検索エンジンのデータ収集

Bytespider

ByteDance(TikTok親会社)

AI学習データ収集

YouBot

You.com

AI検索サービス向けデータ収集

cohere-ai

Cohere

企業向けAIモデルの学習

FacebookBot

Meta

Meta AI関連の学習データ収集

Common Crawl(CCBot)は特に多くのAI企業が学習データとして使用しているため、優先度高めで対応を検討してみてください。

robots.txtの基本的な書き方|構文ルールをやさしく解説

robots.txtの基本的な書き方|構文ルールをやさしく解

robots.txtはシンプルなテキストファイルですが、書き方にはルールがあります。間違った書き方では意図どおりに動かないため、基本的な構文をひとつずつ確認しましょう。

User-agentの書き方|対象クローラーを指定する方法

robots.txtの各ブロックは User-agent: から始めます。ここに指定するのがクローラーの名前(User-agent名)です。

User-agent: GPTBot

*(アスタリスク)を使うとすべてのクローラーに対してルールを適用できます。

User-agent: *

1つのDisallowAllowを複数のクローラーに適用したい場合は、User-agentを並べて書きます。

User-agent: GPTBot
User-agent: ClaudeBot
Disallow: /

User-agent名は大文字・小文字を区別するため、GPTBotgptbotは別物として扱われます。公式ドキュメントに記載された正確な名前を使いましょう。

Disallowの書き方|アクセスを拒否するパスの指定方法

Disallow: の後にクロールを拒否したいパス(URL)を書きます。

# サイト全体を拒否
User-agent: GPTBot
Disallow: /

# 特定のディレクトリだけ拒否
User-agent: GPTBot
Disallow: /private/

# 特定のファイルだけ拒否
User-agent: GPTBot
Disallow: /secret.html

Disallow: / はルート以下すべて(=サイト全体)を意味します。Disallow: の後に何も書かないか空白を置くと、逆に「すべて許可」という意味になるので注意してください。

Allowの書き方|Disallowの例外として許可する方法

Allow: はDisallowで拒否した範囲の中に「ここだけは許可する」という例外を作るときに使います。

User-agent: GPTBot
Disallow: /members/
Allow: /members/public/

この例では、/members/ 以下全体は拒否しつつ、/members/public/ だけはアクセスを許可しています。

AllowとDisallowが競合する場合、一般的にはより具体的なパス(文字数が長い方)が優先されます。ただしクローラーによって解釈が異なる場合もあるため、シンプルな構成を心がけるのがおすすめです。

ワイルドカード(*)の使い方

robots.txtではワイルドカードとして *(任意の文字列)と $(URLの末尾)が使えます。

# 「.pdf」で終わるすべてのURLを拒否
User-agent: *
Disallow: /*.pdf$

# URLパラメータ「?」以降を含むページを拒否
User-agent: *
Disallow: /*?

# 「/blog/」以下のすべてのページを拒否
User-agent: *
Disallow: /blog/*

ただし、ワイルドカードの解釈はGooglebotなど主要クローラーでは概ね共通していますが、すべてのクローラーが同じ動作をするとは限りません。シンプルなパス指定で対応できる場合は、ワイルドカードに頼らないほうが安全です。

Sitemapディレクティブの書き方

Sitemap: ディレクティブを使うと、サイトマップのURLをクローラーに伝えられます。

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

この記述はUser-agentブロックの外(どのブロックにも属さない場所)に書くのが一般的です。複数のサイトマップがある場合は、行を重ねて書けます。

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

Sitemapディレクティブは省略しても動作に問題はありませんが、記述しておくとGooglebotなどが効率よくページを発見しやすくなるメリットがあります。

AIクローラ向けrobots.txtの設定パターンと記述例

AIクローラ向けrobots.txtの設定パターンと記述例

目的に合わせて選べるよう、AIクローラの制御パターンを6つ用意しました。自分のサイトの方針に近いものをコピーして活用してください。

パターン①|すべてのAIクローラをまとめてブロックする

「とにかくAI学習に使われたくない」という場合の記述例です。現時点で主要なAIクローラをまとめて拒否します。

User-agent: GPTBot
Disallow: /

User-agent: Google-Extended
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: anthropic-ai
Disallow: /

User-agent: CCBot
Disallow: /

User-agent: Applebot-Extended
Disallow: /

User-agent: PerplexityBot
Disallow: /

User-agent: Bytespider
Disallow: /

検索エンジン用クローラー(Googlebot・Bingbotなど)は記述していないため、SEOへの影響なく運用できます。

パターン②|GPTBotだけをブロックする

「ChatGPTへの学習だけ止めたい」という場合はこちらです。

User-agent: GPTBot
Disallow: /

たったこれだけです。シンプルですが、OpenAIのクローラーからサイト全体を守れます。他のAIクローラーは引き続きアクセスできる状態です。

パターン③|Google-Extendedだけをブロックする

「Google Geminiへの学習は止めたいが、Googleの検索インデックスには影響させたくない」という場合に使えます。

User-agent: Google-Extended
Disallow: /

GooglebotとGoogle-Extendedは別のUser-agentとして動作するため、この設定はGoogle検索の順位に影響しません。「検索SEOは守りながらAI学習だけ拒否する」という、現時点では多くのサイトにとって理にかなった設定です。

パターン④|BingbotのAI学習だけを制限する

Bingbotは前述のとおり、検索インデックスとCopilotのAI学習を同じUser-agentで行っています。Bingbot全体をブロックするとBing検索への影響が出るため、特定のパスだけ拒否する方法が現実的です。

# 学習に使わせたくない主要コンテンツエリアだけを制限する例
User-agent: Bingbot
Disallow: /blog/
Disallow: /knowledge/

Bing検索からの集客を維持しながら、核心的なコンテンツエリアだけを制限するイメージです。なお、Microsoftは将来的にAI学習専用クローラーを分離する可能性も示唆しているため、公式情報を定期的に確認するのがおすすめです。

パターン⑤|SEO向けクローラは許可しつつAI学習のみ制限する(推奨構成)

「SEOへの影響を出さずに、AI学習だけきちんと制限したい」という方に最もおすすめの構成です。

# 検索クローラーは通常どおり許可
User-agent: Googlebot
Allow: /

User-agent: Bingbot
Allow: /

# AIクローラーはブロック
User-agent: GPTBot
Disallow: /

User-agent: Google-Extended
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: anthropic-ai
Disallow: /

User-agent: CCBot
Disallow: /

User-agent: Applebot-Extended
Disallow: /

User-agent: PerplexityBot
Disallow: /

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

意図が明確でわかりやすく、今後クローラーが増えても追記しやすい構成です。

パターン⑥|特定のディレクトリだけAIクローラに見せない

「有料会員向けコンテンツや社外秘情報のあるディレクトリだけ制限したい」という場合の記述例です。

User-agent: GPTBot
Disallow: /premium/
Disallow: /member/
Disallow: /confidential/

User-agent: Google-Extended
Disallow: /premium/
Disallow: /member/
Disallow: /confidential/

User-agent: ClaudeBot
Disallow: /premium/
Disallow: /member/
Disallow: /confidential/

トップページや一般公開コンテンツはAIクローラからも見える状態にしつつ、特定の場所だけを守る設定です。情報の価値に応じて制限範囲を絞りたい方に向いています。

用途別robots.txt記述例|よくあるシーンへの対応方法

用途別robots.txt記述例|よくあるシーンへの対応方法

AIクローラ以外にも、robots.txtで対応したいシーンはいろいろあります。よくある場面ごとに具体的な記述例をまとめました。

管理画面・ログインページをクロールさせたくない場合

管理画面やログインページは、通常は検索結果に表示する必要がなく、公開用のコンテンツでもありません。そのため、robots.txtでクロールを制御したり、noindexや認証保護を組み合わせて、検索エンジンからのアクセスを制限するのが一般的です。

なお、robots.txtはあくまで「クロールの拒否」を伝えるものであり、「検索結果への表示を防ぐ」ことを保証するものではない点に注意してください。他サイトからのリンクがあったり、すでにインデックス済みの場合は、Disallowを設定していてもスニペットなしで検索結果に表示される可能性があります。インデックスを確実に防ぎたい場合は、noindexタグやSearch Consoleの削除ツールなど、別の手段も合わせて検討してみてください。

robots.txtでクロールを拒否したい場合は、次のように記述できます。

User-agent: *
Disallow: /admin/
Disallow: /login/
Disallow: /wp-admin/
Disallow: /dashboard/

WordPressサイトでは /wp-admin/ が管理画面のパスになります。ただし /wp-admin/admin-ajax.php はテーマやプラグインの動作に必要な場合があるため、除外することが多いです。

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php

なお、これはWordPressの場合の設定例です。他のCMSや独自実装のサイトでは、パスが異なる場合があるのでご注意ください。また、ログインが必要なページは、ログイン後のコンテンツをそもそも検索エンジンがクロールしにくい側面もあります。ログインフォーム自体をインデックスさせたくない場合は、robots.txtだけでなくnoindexの活用も視野に入れておくとよいでしょう。

GPTBotやGoogle-Extended、BingbotなどAIクローラ向けのrobots.txt設定でも、同じ考え方でパスを指定できます。セキュリティや運用方針に応じて、robots.txt・noindex・認証などを組み合わせて制御するのがおすすめです。

開発環境・テスト環境でサイト全体をブロックしたい場合

開発中や本番公開前のステージング環境は、検索エンジンにインデックスされないようにする必要があります。

User-agent: *
Disallow: /

これですべてのクローラーのアクセスを遮断できます。ただし、本番サイトへの適用を絶対に避けてください。本番環境にこのまま出してしまうとGoogleにインデックスされなくなります。後述のよくあるミスのセクションでも詳しく説明しています。

PDFや資料ファイルのクロールを制限したい場合

社内資料や提案書などのPDFファイルをクロールさせたくない場合は、ワイルドカードを使って対応できます。

User-agent: *
Disallow: /*.pdf$
Disallow: /documents/
Disallow: /assets/files/

$ を末尾に付けることで「.pdfで終わるURL」のみを対象にできます。ファイルをディレクトリにまとめている場合は、ディレクトリごと指定するほうがシンプルです。

URLパラメータ付きページのクロールを抑制したい場合

ECサイトや検索機能のあるサイトでは、?sort=price?page=2 のようにURLパラメータで大量のページが生成されることがあります。これらをクロールされると、クロールバジェット(クローラーが1日に巡回できるページ数の枠)が無駄に使われてしまいます。

User-agent: *
Disallow: /*?

ただし、現在はGoogle Search Consoleのパラメータ設定機能は廃止されているため、canonicalタグやnoindex、robots.txtなどを組み合わせて対応するほうが柔軟です。一律でブロックすると必要なページも除外される恐れがあるため、サイト構造を確認したうえで、canonicalタグやnoindex、robots.txtでの制御など複数の手段を組み合わせて設定してみてください。

画像ファイルのクロールを制限したい場合

Google画像検索に出したくない場合や、独自画像の無断利用を防ぎたい場合に有効です。

User-agent: Googlebot-Image
Disallow: /

Googlebotの画像専用クローラー Googlebot-Image を対象に指定することで、画像検索への掲載を防げます。特定の画像フォルダだけ制限したい場合はパスを指定します。

User-agent: Googlebot-Image
Disallow: /images/private/

サイトマップの場所をクローラーに伝えたい場合

robots.txtにSitemapディレクティブを記述すると、クローラーがサイトマップを見つけやすくなります。

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

この一行をrobots.txtの末尾(または任意の位置)に加えるだけです。WordPressでYoast SEOやAll in One SEOを使っている場合、サイトマップURLは自動生成されることが多いため、そのURLを確認して記述してください。

Google Search Consoleからサイトマップを直接送信することも可能で、この場合はrobots.txtへの記述は必須ではありません。ただし両方設定しておくと、さまざまなクローラーに対応できて安心です。

robots.txtの設置方法|ファイルの作成から公開までの手順

robots.txtの設置方法|ファイルの作成から公開までの

robots.txtの書き方が分かったら、次はファイルをサイトに設置します。作成・アップロード・確認の手順をステップごとに説明します。

robots.txtを設置する場所(ルートディレクトリとは)

robots.txtはWebサイトのルートディレクトリに置く必要があります。ルートディレクトリとは、URLの一番上の階層のことです。

正しい設置場所: https://example.com/robots.txt

このURLでアクセスできる位置に置かなければ、クローラーはrobots.txtを認識しません。https://example.com/subdir/robots.txt のようなサブディレクトリへの設置は無効です。

サーバー上では通常、公開フォルダ(public_htmlwwwhtdocs など)の直下がルートディレクトリにあたります。

robots.txtファイルの作成方法

robots.txtはメモ帳やテキストエディタで作れる、シンプルなテキストファイルです。

  1. テキストエディタ(メモ帳、VSCode、Atomなど)を開く
  2. 設定内容を入力する(前述のテンプレートをコピー)
  3. ファイル名を robots.txt として保存する
  4. 文字コードは UTF-8(BOMなし) で保存する

文字コードが誤っていると、クローラーが正しく読み取れない場合があります。保存時に文字コードを選べるエディタ(VSCodeなど)を使うのが安心です。

サーバーへのアップロード方法

作成したrobots.txtをサーバーのルートディレクトリにアップロードします。

一般的な方法はFTPクライアント(FileZilla等)を使う方法です。

  1. FTPクライアントでサーバーに接続する
  2. public_html(または wwwhtdocs)フォルダを開く
  3. robots.txtをドラッグ&ドロップでアップロードする
  4. ブラウザで https://yourdomain.com/robots.txt を開いて内容を確認する

すでにrobots.txtが存在する場合は、上書きする前に既存ファイルをバックアップしておくことをおすすめします。

WordPressでrobots.txtを編集する方法

WordPressでは、いくつかの方法でrobots.txtを管理できます。

方法A: SEOプラグインを使う(推奨)

Yoast SEOを使っている場合は、管理画面の「SEO」→「ツール」→「ファイルエディター」からrobots.txtを直接編集できます。All in One SEOでも同様の機能があります。

方法B: FTPで直接編集する

ルートディレクトリに robots.txt ファイルがあればFTPで上書き、なければ新規作成してアップロードします。

注意点: WordPressはデフォルトで仮想的なrobots.txtを生成しますが、実ファイルをルートに置くとそちらが優先されます。プラグインと実ファイルが競合しないよう、どちらか一方の方法に統一することをおすすめします。

robots.txtが正しく設定できているか確認する方法

robots.txtが正しく設定できているか確認する方法

設定後は必ず動作確認を行いましょう。ブラウザや無料ツールを使って簡単に確認できます。

ブラウザでrobots.txtの内容を確認する方法

最もシンプルな確認方法は、ブラウザで直接アクセスすることです。

アドレスバーに https://yourdomain.com/robots.txt と入力してEnterを押すだけです。記述した内容がそのまま表示されれば、ファイルは正しく設置されています。

404エラーが表示される場合はファイルが正しい場所に置かれていません。ルートディレクトリへのアップロードを再確認してください。ファイルの内容が意図どおりかも、この画面でチェックできます。

Google Search Consoleのrobots.txtレポートで確認する方法

Google Search Console(無料)を使うと、Googlebotがrobots.txtをどのように解釈しているかを確認できます。

  1. Google Search Console にログイン
  2. 左メニューの「設定」→「robots.txt」を選択
  3. 現在のrobots.txtの内容と解析結果が表示される

さらに「URLをテスト」機能を使うと、特定のURLがGooglebotからクロール可能かどうかをその場で確認できます。設定変更後は必ずこの機能で意図どおりに動いているか確かめましょう。

URL検査ツールでクロール可否を確認する方法

Google Search Consoleの「URL検査」ツールを使うと、個別ページのクロール状況を詳しく確認できます。

  1. Search Console上部の検索バーに確認したいURLを入力
  2. 「URL検査」結果が表示される
  3. 「カバレッジ」欄でクロール状況・インデックス状況を確認

「インデックス登録済み」「クロール済み」「robots.txtによってブロックされています」などのステータスが表示されます。意図的にブロックしたページが正しく「blocked by robots.txt」になっているか確認するのに使いましょう。

反映には時間がかかることがあるため、設定変更直後に検査しても以前の状態が表示される場合があります。

robots.txtのよくある設定ミスと注意点

robots.txtのよくある設定ミスと注意点

robots.txtはシンプルに見えて、ちょっとした書き方の違いで大きなトラブルを招くことがあります。よくある失敗パターンを知っておくだけで、多くのミスを防げます。

Disallowの範囲を広く書きすぎてサイト全体をブロックしてしまう

最もよくあるミスが User-agent: * / Disallow: / の誤用です。特定のAIクローラだけをブロックするつもりが、うっかり User-agent: * と書いてしまうと、Googlebotを含むすべてのクローラーを締め出してしまいます。

サイトがGoogle検索に表示されなくなるのは、ビジネスへの深刻なダメージになりかねません。変更後は必ずSearch Consoleで意図どおりの設定になっているか確認しましょう。

Allowを書けば必ず優先されると思っている

「AllowはDisallowより強い」と思っている方がいますが、正確には「より具体的なパスが優先される」という動作になります。

たとえば Disallow: /Allow: /page/ が競合する場合、/page/ のほうがパスが長い(具体的)ためAllowが優先されます。ただしGooglebot以外のクローラーはこのルールを独自の解釈で処理する場合もあるため、複雑なAllow/Disallowの組み合わせはなるべく避けてシンプルに書くことをおすすめします。

robots.txtだけでコンテンツを非公開にできると勘違いしている

robots.txtはあくまで「お願い」の仕組みです。悪意のあるbotや、robots.txtのルールを無視するクローラーにはまったく効果がありません。

また、robots.txtでクロールをブロックしても、他のサイトからリンクされているページはGoogleにインデックスされる場合があります。本当にページを非公開にしたい場合は、サーバーレベルの認証(Basic認証など)を使いましょう。robots.txtを「セキュリティの手段」として頼るのは危険です。

開発環境用のrobots.txtを本番サイトにそのまま出してしまう

ステージング環境では User-agent: * / Disallow: / と設定することが多いのですが、本番へのリリース時にそのまま持ってきてしまうというミスが実際に起きています。

対策としては、本番サイトのrobots.txtと開発環境のものをリポジトリで明確に分けて管理する、またはデプロイ前のチェックリストにrobots.txtの確認を入れておくのが有効です。リリース後は必ずブラウザで内容を確認する習慣をつけましょう。

noindexと組み合わせることで意図しない挙動が起きる

「クロールもインデックスも拒否したい」と考えてrobots.txtでクロールをブロックし、さらにnoindexタグもつけるという設定は実は逆効果になります。

Googlebotがrobots.txtでブロックされているページには、そもそもアクセスできません。noindexタグはHTMLのheadタグ内にあるため、ページを読みに来ないGooglebotはnoindexを読めないのです。その結果、外部リンクが存在するページが検索結果に「URLだけ」で表示されてしまう可能性があります。

noindexを使いたい場合はrobots.txtでのクロールブロックを外し、クロールは許可した上でnoindexを読ませる設定にしてください。

CSS・JavaScript・画像ファイルをブロックしてしまう

Googlebotはページのレンダリング(見た目の再現)のためにCSS・JavaScript・画像にもアクセスします。これらをブロックすると、Googleがページを正しく評価できず、SEOに悪影響が出ます。

# これはNG(CSSやJSをブロックしている)
User-agent: *
Disallow: /wp-content/

WordPressでは /wp-content/ にテーマのCSS・JSが入っているため、このディレクトリをブロックするのは避けてください。管理画面だけ守りたいなら /wp-admin/ の指定に留めましょう。

AIクローラをブロックするとSEOに悪影響が出ると誤解している

「AIクローラをブロックするとGoogleの評価が下がるのでは?」と心配する方がいますが、これは誤解です。

GPTBotやGoogle-Extended、ClaudeBotなどのAI学習クローラーは、GoogleやBingの検索インデックス用クローラーとは完全に別に動作しています。AI学習クローラーをブロックしても、検索ランキングには影響しません。Googleも公式にこの点を明確にしています。

安心してAIクローラだけを選択的にブロックしてください。

設定を変更しても反映に時間がかかることを知らない

robots.txtを更新しても、クローラーがすぐに新しい設定を読みに来るわけではありません。Googlebotは通常数日おきにrobots.txtを取得し直します。

そのため「設定を変えたのにまだクロールされている」という状況は珍しくありません。Google Search Consoleの「robots.txt」ページから手動でキャッシュの更新をリクエストすると、比較的早く反映されます。急ぎで特定ページのクロールを止めたい場合は、noindexタグやサーバー側の設定も組み合わせて対応しましょう。

まとめ

まとめ

AIクローラ向けrobots.txt設定のポイントをまとめます。

AIクローラー(GPTBot・Google-Extended・ClaudeBotなど)は、各サービスの公開ポリシーに従って巡回・収集されます。robots.txtはクローラーへの指示を与えるファイルであり、完全な遮断ではなくあくまでクローラーへの制御指示であることを理解しておきましょう。コンテンツをAI学習に使われたくない場合は、各クローラーのUser-agent名をrobots.txtに記述してクロールを制御する方法があります。あわせて利用規約や個別のオプトアウト手段も確認しておくのが、実務上の対応として安心です。

GPTBot/Google-Extended/Bingbotの制御を検討する際は、それぞれの用途の違いにも注意が必要です。Google-ExtendedはGoogle検索の通常クロールとは別ですが、ブロックするとAI関連機能で自社サイトの情報が使われる機会に影響する可能性があります。Applebot-Extendedについても、検索への影響がないとは断定できないため、用途ごとに公開ポリシーを確認しておくのが安心でしょう。Bingbotは主にBing検索のクロールに使われており、AI学習や生成AI関連の扱いはBingbotとは別のポリシーやクローラーとして確認する必要があります。

設定後はブラウザで yourdomain.com/robots.txt にアクセスして内容を確認し、必要に応じて各サービスの公式テスト手順やサーバーログでクローラーの挙動を確認してみてください。AIサービスの進化に合わせて新しいクローラーも登場するため、定期的に設定を見直す習慣もつけておけると安心でしょう。

AIクローラ向けrobots.txt設定|GPTBot/Google-Extended/Bingbotの制御についてよくある質問

AIクローラ向けrobots.txt設定|GPTBot/Go
  • robots.txtを設定していないと、AIクローラは自動的にサイトを学習しますか?
    • はい、robots.txtで制限していない限り、AIクローラはサイトを自由に巡回してコンテンツを収集できます。デフォルトの状態は「すべて許可」です。ブロックしたい場合は明示的にrobots.txtに記述する必要があります。
  • AIクローラをブロックすると、Google検索の順位に影響しますか?
    • Google-ExtendedやGPTBotなどのAI学習専用クローラーをブロックしても、Google検索の順位には影響しません。Googlebotとは別のクローラーとして動作しているためです。ただしGooglebot自体をブロックするとインデックスされなくなるため、クローラー名を正確に指定して記述してください。
  • robots.txtでブロックすれば、AIへのコンテンツ学習を完全に防げますか?
    • 残念ながら完全には防げません。robots.txtは「お願い」の仕組みであり、ルールを守るクローラーにしか効果がありません。また、すでに収集・学習されたコンテンツを削除させることもできません。あくまで今後の収集を制限する手段として活用してください。
  • WordPressサイトでrobots.txtを編集するにはどうすればいいですか?
    • Yoast SEOなどのSEOプラグインを使っている場合は、管理画面から直接編集できます。プラグインを使っていない場合は、FTPクライアントでサーバーのルートディレクトリにアクセスし、robots.txtを直接編集してアップロードしてください。
  • robots.txtに記述したクローラー名が間違っていた場合、どうなりますか?
    • クローラーはrobots.txtを読む際に自分のUser-agent名と一致するルールを探します。名前が間違っていると自分向けのルールとして認識されないため、設定が無効になります。User-agent名は大文字・小文字を区別するため、公式ドキュメントで正確な表記を確認してから記述してください。
中村 一浩

監修者紹介

中村 一浩

代表取締役CEO

株式会社ココログラフ 代表取締役CEO。1982年生まれ。高校卒業後に携帯販売業界にて、インターネットとハードウェアの急速な進化に触れた後、ウェブの面白さに惹かれ、2009年に株式会社ジオコードに入社。SEOを中心にウェブマーケティングを学び、同時にウェブ制作部門、システム開発部門のマネジメントも兼務。幅広いウェブ運用知識を有する。2018年に独立・起業し、検索エンジンだけでなく検索ユーザーにまで最適化する、SEOの上位互換サービスSUOを提供。SEO / SUOの独自レポートツール、サチコレポート開発者。著書『現場のプロが教えるSEOの最新常識』(Amazon: https://amzn.to/4wPgYEK )

■得意領域
ウェブサイト改善 / SEO対策 / コンテンツマーケティング

関連記事

600社の実績、継続率78%。
“見つかる”をつくるプロに、
まず相談。

“見つかる”をつくるその先に、お客様の成果がある。ココログラフはSEO・AIO・Web制作を通じて、その実現をお手伝いします。

03-6845-138010:00〜18:00(平日)