robots.txtは本来「お願い」に近い仕組みで、守るかどうかはクローラー側の善意に依存します。ところがAIクローラーの増加により、コンテンツの無断取得・過負荷・再利用(要約や生成回答への転用)といったリスクが現実化しました。では、メディアは何を守り、どこまで制御できるのでしょうか。本記事では「robots.txtだけに頼らない」ことを前提に、実務で使える3つの防衛策を整理します。 まず押さえるべきは、robots.txtが「アクセス制御」ではない点です。Robots Exclusion Protocol(REP)はIETFでRFC 9309として仕様化されていますが、根本は「クローラーが参照するための慣習的なルール」です。つまり、robots.txt自体に強制力はありません。 結論:robots.txtは「守る事業者には効く」が、「守らない相手には効かない」。防衛の主軸に置くと事故が起きます。 検索エンジンのクロールは主にインデックス構築が目的でした。一方でAI領域では、学習用収集、ユーザーのリアルタイム取得、検索品質評価など目的が分岐し、同一ベンダー内でもボットが複数に分かれるケースが増えています。例えばOpenAIはGPTBot等を含むクローラー情報を公開し、サイト側がrobots.txtで制御できるよう案内しています。 現場では「robots.txtを見ない」「別UAに偽装する」「IPを変える」といった動きが問題になります。この場合、テキストの指示だけで防ぐのは困難です。ここからが本題で、実効性のある対策は“ネットワーク/アプリ側の制御”に寄ります。 最初の防衛策は「一律ブロック」ではなく、目的別に許可・不許可を切り分けることです。理由は2つあります。 robots.txtは「善意のクローラー」に対する入口制御として依然有効です。実務では、各社の公開しているUser-Agentトークンに対して、許可/禁止を明示します。robots.txtはもう限界?AIクローラー時代にメディアが取り得る3つの防衛策
この記事でわかること
robots.txtの限界
AIクローラーの目的が多様
守らない・偽装する相手
防衛策1 目的別に許可
robots.txtは最低限の整理
# 例:目的別に明示(方針例)
User-agent: GPTBot
Disallow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: ClaudeBot
Disallow: /
User-agent: Claude-User
Allow: /
注意:この設定は「守るクローラー」にのみ効きます。守らない相手への対策は、防衛策2・3が必要です。
OpenAIはクローラーの種類と制御方法をドキュメントで案内しています。Anthropic側もClaude系ボットの役割やブロック方法の整理を進めています(ボットが複数である点が重要です)。
防衛策2 エッジで実施
2つ目は、CDN/WAFなどエッジ側で「実際に止める」ことです。robots.txtはお願いですが、WAFは強制です。UA偽装・IPローテーションを前提に、挙動ベースの判定(レート、パスの深さ、ヘッダ整合性、TLS/JA3、リファラ有無など)を組み合わせます。
現実的なメニュー
- UAごとの許可/拒否(ただしUA偽装に弱い)
- アクセス頻度・同時接続数で制限(過負荷対策)
- 疑わしいトラフィックにチャレンジ(JSチャレンジ等)
- 特定のパス(/api/ /wp-json/ /search等)を保護
ポイント:目的は「完全遮断」よりも、(1)盗まれる量を減らす、(2)取り放題の状態をなくす、(3)証跡を残す、の3点です。
Content Signalsの活用
Cloudflareはrobots.txtに追記する形で、AI用途(学習、検索、入力)に関する意思表示を含む「Content Signals Policy」を提供しています。これは法的・契約的な議論の土台(権利留保の表明)としても使われやすく、運用上は「ポリシーの明文化」と「管理の統一」に効きます。
# 例:CloudflareのContent Signals(抜粋イメージ)
Content-signal: search=yes, ai-train=no防衛策3 取得面を設計
3つ目は、技術的に「取られにくくする」ではなく、取られても痛くない・価値が残る形に再設計することです。AIクローラーの完全排除は現実的に難しいため、メディア側のプロダクト設計で損失を抑えます。
有料領域と分離
代表例は、価値の中核(データベース、調査レポート、図表の高解像度版、更新差分)をログイン配下に寄せる設計です。公開記事は発見性を担い、深い価値は会員・購読で提供します。
配信形態を分ける
API、RSS、メール、アプリ内表示など、配信面を複線化すると、ブラウザ閲覧以外のリテンションを確保できます。結果として、検索流入に依存しすぎない体質になります。
llms.txtは期待値調整
/llms.txtは「LLM向けに参照してほしい情報を整理して置く」提案です。ドキュメントサイトでは有効な場面がありますが、標準化や主要クローラーの対応状況は流動的です。採用する場合は「AIに読ませる入口の整備」だと割り切り、権利保護の主手段にしないのが安全です。
3策の比較
最後に、3つの防衛策を「効く相手」「導入難易度」「副作用」で整理します。
| 防衛策 | 効く相手 | 導入難易度 | 副作用 |
|---|---|---|---|
| 目的別robots運用 | ルールを守るクローラー | 低 | 守らない相手には無力 |
| エッジ強制(WAF/CDN) | 守らない/偽装も含む | 中 | 誤検知でSEO/UXに影響 |
| 取得面の再設計 | すべて(構造で耐える) | 中〜高 | 編集・開発・課金設計が必要 |
導入の手順
実務で事故を減らす手順はシンプルです。「現状把握→段階導入→検証」の3段階で進めます。
ログで現状把握
- User-Agentごとのリクエスト数、ピーク時間、対象パスを集計
- 過負荷・404増・キャッシュミス増など影響を確認
- 編集/広告/課金への影響(PV、滞在、CV)を同時に見る
段階的に制御
- robots.txtを目的別に整理(まずは善意の相手から)
- エッジでレート制限・怪しい挙動を抑制
- 中核価値の会員化・配信面の複線化を設計
注意:エッジ側の制御を急に強めると、検索クローラーや正規ユーザーのアクセスまで巻き込むことがあります。変更は必ず段階的に行い、Search Console等の指標も併用して監視してください。
クローラー対策を設計しませんか?
robots.txtだけでは防げないAIクローラー対策は、ログ分析とエッジ制御の設計が肝です。現状の被害把握から運用設計まで相談できます。
まとめ
robots.txtは今でも必要ですが、「防衛の主力」ではありません。AIクローラー時代の現実解は、次の3点です。
- 目的別に許可:学習・検索・ユーザー取得を分けて方針を明示する
- エッジで実施:WAF/CDNで止める・絞る・証跡を残す
- 取得面を設計:公開/会員の切り分けで価値を守る
「何を守りたいか(学習か、要約再利用か、過負荷か)」を先に定義し、ログで検証しながら段階導入することが、最短で効果を出す近道です。