ブログ一覧へ

CloudflareでAIクローラーを許可しても取得されない原因と対処法

AI Crawl ControlでAllowにしても、別のセキュリティ設定がAIクローラーを拒否することがあります。この記事では、Cloudflareのアクセス記録から拒否した設定を特定する方法と、WAFやボット対策の修正、変更後の確認手順を解説します。

公開日:
更新日:
Reading time
7 分で読めます

AllowにしてもWAFやボット対策の設定は残る

CloudflareのAI Crawl ControlでクローラーをAllowにしても、別のWAFルールやボット対策が記事へのアクセスを拒否することがあります。Allowが解除するのはAI Crawl Controlによるブロック で、他のWAFルールやボット対策による判定は続くためです。

AI Crawl Controlは、AIクローラーのアクセスを記録し、クローラーごとにAllowやBlockを指定できる機能です。WAFは、サイトへのリクエストをルールに照らして拒否する仕組みで、AI Crawl ControlのブロックにもWAFのカスタムルールが使われます。カスタムルールとは、サイト管理者が作成する判定ルールのことです。

AI Crawl Controlのルールより前に別のカスタムルールが拒否すると、Allowにしたクローラーも記事に到達できません。Cloudflareも、この状況では先に実行されるWAFルールを調べるよう案内しています。(Cloudflare Allowでもブロックされる原因)

本文を直す前に、アクセス記録から 拒否した機能名とルール を特定しましょう。拒否元が分かれば、変更する設定も絞れます。

Security Eventsで取得を妨げた機能を調べる

Cloudflareで顧客サイトのドメインを選び、AI Crawl Controlを開きます。調べるクローラー、記事のドメイン名、取得に失敗した時間帯で絞り、URLのパスも指定すると、その記事への応答を追えます。たとえばhttps://example.com/blog/articleなら、Hostnameにexample.com、Pathに/blog/articleを指定します。Metricsでは、成功やエラーなど応答の種類を表すHTTPステータスを確認できます。(Cloudflare AIクローラーのアクセス分析)

AI Crawl Controlに失敗の記録が見つからなくても、先に実行されたWAFルールが拒否していることがあります。そのときは、SecurityのAnalyticsにあるEventsを開き、同じ時間帯と記事のパスでアクセスを探してください。

イベントの詳細では、次の情報が設定を修正する手がかりになります。

  • Service:判定したセキュリティ機能
  • Action:BlockやManaged Challengeなど、実行した処理
  • ルール名・ID:修正するルールを特定する情報
  • IPアドレスとUser-Agent:クローラー提供元の公式情報とアクセス元を照合する材料

User-Agentは、アクセス元が名乗るブラウザーやボットの名称です。Managed Challengeは、アクセス元を検証する処理で、その過程では記事の本文に代わって検証用の画面が返ることがあります。Blockだけを探すと、この処理によって取得が止まっているアクセスを見落とします。(Cloudflare 検証画面とManaged Challengeの仕組み)

Security Eventsは、Cloudflareのセキュリティ機能が実行した処理を確認するための画面です。イベントを開いてServiceとActionを読むと、WAFの修正が必要なのか、ボット対策の設定を変更する必要があるのかを判断できます。(Cloudflare Security Events)

拒否したWAFルールの修正と除外設定

拒否や検証処理のイベントでServiceがカスタムルールを示していたら、Security rulesで該当するルール名・IDを探します。アクセス元の国、URLのパス、User-Agentなど、アクセスがどの記述に一致したのかを読むと、意図せず取得を妨げた理由が分かります。

国による制限で拒否されていたら、クローラーのアクセス元が、サイトへのアクセスを許可している国に含まれているかを確かめます。必要なクローラーが拒否されていたら、そのアクセスを既存ルールの拒否から除外する形で修正しましょう。AI Crawl ControlをAllowに変更するだけでは、このルールは残ります。

Perplexityのアクセスを除外する際は、ボット名と公式IPアドレスの両方 で識別します。提供元は、PerplexityBotやPerplexity-UserのUser-Agentと、公式に公開しているIP範囲を組み合わせる方法を案内しています。IP範囲は更新されるため、設定時には提供元の最新資料を参照してください。(Perplexity WAF設定と公式IP範囲)

BlockやManaged ChallengeのイベントでServiceがManaged Rulesを示していたら、Cloudflareが提供する既定の検査が取得を妨げています。この場合は、拒否したマネージドルールを指定した例外 を作成できます。許可するクローラーと記事のホスト名・パスを記述し、そのアクセスだけが該当する検査を受けないようにします。(Cloudflare マネージドルールの例外設定)

Skipは、指定した検査を実行しないアクションです。ただし、カスタムルールでAll remaining custom rulesを選ぶと、後続のカスタムルールも除外されます。一つのカスタムルールが原因なら、許可するアクセスをそのルールから除外する修正で、他のルールによる検査を継続できます。(Cloudflare Skipで除外できる検査)

ルールの順序も結果に影響します。BlockやManaged Challengeが実行されると後の判定へ進まないため、後ろに追加した除外ルールでは解決しません。除外処理が拒否するルールより先に実行されるかも確認してください。(Cloudflare セキュリティ機能の実行順序)

Bot Fight ModeとSuper Bot Fight Modeで異なる除外方法

取得を妨げたイベントのServiceにボット対策の機能名が表示されたら、その機能の設定を調べます。特に、Bot Fight ModeとSuper Bot Fight ModeはSkipの動作が異なる ため、機能名を省略せずに確認してください。

拒否した機能 必要なアクセスを通す方法
Super Bot Fight Mode 許可するアクセスを識別したカスタムルールで、この機能をSkipする
Bot Fight Mode WAFのSkipでは除外できないため、機能の無効化、または除外設定ができるボット対策への変更を検討する

Super Bot Fight Modeでは、カスタムルールのSkipでこの機能の検査を除外できます。記事を取得するクローラーに一致するルールを作り、Skipする検査にSuper Bot Fight Modeを指定します。(Cloudflare ボット対策の誤検知への対処)

Bot Fight Modeは別の仕組みで実行されるため、WAFのSkipルールを追加しても動作が変わりません。この機能が取得を妨げていると特定できたら、サイト管理者と他の防御設定を確認し、Bot Fight Modeを無効にするか、Super Bot Fight Modeなど除外設定ができる機能へ変更します。(Cloudflare Bot Fight Modeの設定と制約)

変更後は同じ記事への成功応答と本文を確認

設定を変えた後は、同じクローラーが同じ記事へアクセスした記録で、応答が変わったかを確かめましょう。AI Crawl ControlのAllowed requestsは、HTTPステータス 200〜299の成功応答 を受けたリクエストを表します。AI Crawl ControlのAction欄に表示されるAllowは設定値なので、実際に成功した回数とは区別して読みます。(Cloudflare 応答ステータスとAllowed requests)

記事ごとの確認では、クローラー、ホスト名、パスをそろえ、設定を変更した日時も残します。サイト全体の成功回数だけでは、直した記事にアクセスできたかが分かりません。

成功応答があっても、返した内容が記事本文か、ログイン画面や別ページかを確かめる必要があります。サイトの管理担当者と、クローラーへ配信するHTMLに記事の見出しと本文が含まれているかを点検してください。

robots.txtの許可設定も併せて確認しましょう。検索用ボットと学習用ボットの違い、記述方法は AIクローラーのrobots.txt設定 で詳しく説明しています。

設定変更後の記事を点検するならPlease Cite Me!

Allowでも取得されない問題は、アクセスを拒否した機能から調べると、修正するWAFルールやボット対策を特定できます。変更後の成功応答はCloudflareの記録で確かめ、記事の本文を配信できているかも点検しましょう。

Please Cite Me! は、ページが適切に公開されているか、ページの内容が充実しているかをチェックして結果を出力できるSEOエージェンシー向けのレポートツールです。

Cloudflareの設定を見直した記事の公開状態と、本文の説明不足を点検する際に、ぜひ使ってみてください!

Please Cite Me!でページを分析する →

著者紹介

岡本 侑馬

岡本 侑馬

Please Cite Me! 開発者・Abeam Tech株式会社 代表取締役

東京大学卒業。Webプロダクトの開発を行いながら、SEO・AI検索における情報設計や、Webコンテンツが検索エンジンやAIに正しく理解・引用されるための設計に取り組んでいます。

X / @okamoto_yuma_

よくある質問

robots.txtで許可すればCloudflareもアクセスを通しますか?

robots.txtの記述とCloudflareのセキュリティ設定は別に動作します。記事のクロールを許可していてもWAFやボット対策が拒否することがあるため、実際のアクセスに適用された設定をSecurity Eventsで調べます。

Bot Fight ModeをSkipするルールを作れば解決しますか?

WAFのSkipで除外できるのはSuper Bot Fight Modeです。Bot Fight Modeが取得を妨げていると特定できたら、無効化や除外設定ができる機能への変更を検討します。

Security Eventsに記録がないときはブロックされていませんか?

Sampled logsはイベントの一部を表示するため、記録がないだけで取得の成功・失敗は判断できません。確認する時間帯とパスを見直し、Cloudflareを経由したアクセスか、サーバー側のアクセスログに記録があるかも調べます。(Cloudflare Security Eventsのサンプリング)

User-AgentをAIボット名に変えたテストで許可を確認できますか?

公式IP範囲とボット名を組み合わせたルールでは、User-Agentだけを変えたアクセスは実際のクローラーと同じ判定になりません。テストの送信元と本物のクローラーを区別し、設定変更後の実際のアクセス記録で応答を確認してください。

Please Cite Me!

AIO・LLMO対策をURLから確認する

Please Cite Me!は、公開ページの技術状態と記事内容を分析し、根拠と改善優先度を一つのレポートにまとめます。

記事を診断する