Cloudflare AI 机器人默认设置与 Pay Per Crawl 新变化

Cloudflare 于 2026 年 9 月 15 日修订了 AI 机器人方案。本文说明新默认设置、Disallow AI Training、402 Pay Per Crawl 和 Pay Per Use 对训练爬虫、AI Agent 和内部价格监控分别意味着什么。

Cloudflare AI Bot Defaults and Pay Per Crawl: What Changed in 2026
本文目录

截至 2026 年 10 月,Cloudflare 的 AI 机器人默认设置主要针对的是那些表明身份的爬虫。对于所有者声明投放广告的新域名,现在一开始就拒绝 AI 训练、在广告页面上拦截 AI Agent,而搜索爬虫仍然放行。价格监控、SEO 审计等“Data Collection”(数据收集)流量不在这三个预设之内,仍按以前的机器人规则判断。对数据团队来说,真正重要的变化并不是多了一堵墙,而是有了更充分的理由去做一个表明身份的机器人——对于过去完全封闭的内容,现在有了付费通道(Pay Per Crawl,以及 9 月 30 日起的 Pay Per Use)。

你能找到的很多报道已经过时。Cloudflare 在 2026 年 7 月 1 日公布了一套方案,9 月 15 日上线的却是修订版。下面的时间线以 Cloudflare 自己的博客和文档所说的实际上线内容为准。

截至 2026 年 10 月,Cloudflare 的 AI 机器人默认设置是什么

简而言之:Search、Agent 和 Training 现在是三个独立开关,所有 Cloudflare 套餐(包括 Free)都有,每个都可以设为 Allow、Block on pages with ads 或 Block。Training 还有第四个选项 Disallow AI Training。新域名会根据所有者是否靠广告变现获得一个推荐预设。已有域名则保留其旧设置的效果。

日期变化来源
2025 年 7 月 1 日“Content Independence Day”:新域名默认拦截已知 AI 爬虫。Pay Per Crawl 以私测形式推出。Cloudflare 新闻稿
2025 年 8 月 4 日Cloudflare 记录到 Perplexity 使用通用的 macOS 版 Chrome User-Agent 并轮换 IP/ASN 进行未声明抓取,随后将其移出已验证机器人列表。Cloudflare 博客
2025 年 8 月 28 日推出“签名 Agent”(signed agents):由用户指挥、通过 Web Bot Auth 签名识别的 Agent。Cloudflare 博客
2026 年 7 月 1 日新分类法(Search / Agent / Training 外加另外八种行为)。Cloudflare 公布 9 月 15 日的默认设置:新域名在广告页面上拦截 Training 和 Agent,Googlebot 等多用途爬虫也会被 Training 拦截规则拦下。Cloudflare 博客、更新日志
2026 年 8 月 21 日Bot Preference Sync:根据 Search/Agent/Training 设置自动生成 robots.txt。Cloudflare 博客
2026 年 9 月 15 日修订版方案上线。新增“Disallow AI Training”,Apple、Google 和 Microsoft 获得“Accountable”标签,旧的“Block AI bots”和托管 robots.txt 被弃用。Cloudflare 博客
2026 年 9 月 30 日Pay Per Use 进入测试(按内容被使用付费,而不是按抓取付费)。Monetization Gateway 进入测试,支持按请求的 x402 支付。Cloudflare 博客

7 月的方案与 9 月 15 日实际上线的内容

7 月的公告称,只要客户拦截 Training,“Googlebot、Applebot 和 BingBot 等”多用途爬虫“都会被拦截”。这会让网站从搜索结果中消失。9 月 15 日的文章取代了这一方案。在 Disallow AI Training 下,Cloudflare 会在 robots.txt 中写入不允许训练的偏好声明。Accountable 多用途爬虫(Applebot、Bingbot、Googlebot)仍可为搜索而抓取,而“其他所有训练爬虫都会被拦截,包括 Amazon、Anthropic、Meta 和 OpenAI 运营的纯训练爬虫”。现在只有明确设置 Block 或 Block on pages with ads 才会拦下 Googlebot,同时也就失去了搜索收录。

目前在接入新域名时,Cloudflare 提供的预设如下:

设置网站不投放广告网站靠广告变现
Bot Preference Sync(robots.txt)启用启用
SearchAllowAllow
TrainingAllowDisallow AI Training
AgentAllowBlock on pages with ads

对于已有域名,Cloudflare 的迁移说明称:从未开启旧版“Block AI bots”开关的域名,三项都映射为 Allow;开启过的域名则转为 Disallow AI Training。TechCrunch 7 月 1 日的报道称新默认设置也会覆盖“所有现有免费客户”,但 Cloudflare 自己 9 月 15 日的迁移表格中并没有这一点,所以无论哪种说法都别想当然,直接去检查目标网站。

Search、Agent、Training:请求是如何被分类的

Cloudflare 分类的是机器人,而不是孤立的请求。已知机器人会在 Cloudflare 的机器人目录 BotBase 中被打上一个或多个行为标签。根据 Block AI Bots 文档,每个预设会拦截“被归入该行为的已验证机器人,以及属于这些分类的其他未验证机器人”。

  • Search:为构建搜索索引或 RAG 数据库而抓取,供之后回答问题。
  • Agent:由用户指挥,通常是实时的:如 ChatGPT-User 这样的聊天抓取器,或驱动 Chrome 的 browser-use 类 Agent。
  • Training:为训练或微调模型而抓取。

已验证机器人页面还列出了另外八种不属于这三个 AI 预设的行为:Transact、Data Collection(“价格抓取、竞争情报收集和第三方分析”)、Security Testing、SEO、Ads Verification、Social/Link Preview、Feed Fetching,以及 Monitoring & Operations。有多种用途的爬虫现在会同时被归入所有对应类别,以匹配到的最严格规则为准。

身份来自以下三种途径之一:

  1. 已验证机器人或 Agent。运营方提交过申请,Cloudflare 以确定性方式核验身份,即 Web Bot Auth 签名(按 IETF 草案,Ed25519 公钥发布在 /.well-known/http-message-signatures-directory)、带稳定 User-Agent 的公开 IP 列表,或反向 DNS。自 2026 年 7 月 1 日起,签名 Agent 也算作 Verified,并被标为 Direct(单一运营方)或 Intermediary(由众多终端用户驱动的平台)。
  2. 已知但未验证。流量符合 Cloudflare 归于某个爬虫类别的模式,例如它在调查 Perplexity 之后加入的启发式规则。
  3. 其他所有流量。由通用机器人检测决定:机器人评分、指纹、验证挑战。这一层早在这些变化之前就已存在。我们的 Turnstile 内部机制解析介绍了验证挑战一侧如何给会话打分。

被验证不再意味着被放行。Cloudflare 在 2026 年 7 月 1 日重新定义了这一概念:Verified 机器人在站长允许的类别内是“可放行的”。诚实表明身份能让你被正确分类,但放不放行仍由站长决定。

“默认拦截”对一个具体请求意味着什么

这里的“拦截”最多涉及三种不同机制。碰到哪一种,决定了你的爬虫看到什么。

1. robots.txt 中的偏好声明

Bot Preference Sync(托管 robots.txt 的继任者)会把根据区域设置生成的规则加到现有 robots.txt 的前面,所以你自己写的 Disallow 行会保留。Cloudflare 文档示例中的托管文件包含一行 Content Signals 和针对各爬虫的禁止规则:

User-Agent: *
Content-signal: search=yes, ai-train=no, use=reference
Allow: /

User-agent: GPTBot
Disallow: /

User-agent: Google-Extended
Disallow: /

其前言称,这些信号是依据欧盟 DSM 版权指令(2019/790)第 4 条作出的“明确权利保留”。尽管 robots.txt 本身是自愿遵守的,这一声明在欧盟对文本与数据挖掘具有法律效力。

2. 边缘拦截

如果区域拦截了你所属的类别,请求会在到达源站之前就被 Cloudflare 边缘拒绝。Pay Per Crawl 文档把这种情况记为 HTTP 403 加 crawler-error: CrawlerForbidden。在 Block on pages with ads 设置下,同一个爬虫在同一域名的某个 URL 上可能拿到 200,在另一个 URL 上却被拦截。Cloudflare 会自动识别投放广告的页面,并表示这份列表“太大、变化太频繁,无法在 robots.txt 中逐一列出”。从外部无法预知哪些页面会被覆盖。

3. 价格:HTTP 402 与 Pay Per Crawl

在启用 Pay Per Crawl(截至 2026 年 10 月仍为封闭测试)的区域,没有表明付费意向的已验证爬虫会收到一个带价格的 402:

HTTP/2 402
crawler-price: USD 0.01

根据 Cloudflare 的 crawl-pages 文档,爬虫需要带上 crawler-exact-price(必须与 crawler-price 一致)或 crawler-max-price 二者之一重试。付款头必须包含在 Web Bot Auth 的 signature-input 组件中。付费成功的 200 响应会带有 crawler-charged: USD 0.01。失败时返回 crawler-error 头,错误码包括 MissingCrawlerPrice(402)、InvalidCrawlerMaxPrice(402)、ConflictingPriceHeaders(400)和 StrongAuthRequired(400)。只有已验证且签名的爬虫才能付费,匿名爬虫根本没有付费通道。此外,WAF 或 Bot Management 的拦截会覆盖“收费”动作。

如果你在运营爬虫,好习惯是把 402 当作数据,而不是需要绕过重试的失败。用 requests 的最简写法:

import requests

def fetch(url, session: requests.Session):
    r = session.get(url, timeout=30)
    if r.status_code == 402 and "crawler-price" in r.headers:
        # 付费内容:记录下来,留待授权/预算决策。
        return {"url": url, "status": 402, "price": r.headers["crawler-price"]}
    if r.status_code == 403 and r.headers.get("crawler-error") == "CrawlerForbidden":
        # 站长拒绝了这个爬虫。丢弃该 URL,不要换 IP 绕过。
        return {"url": url, "status": 403, "refused": True}
    r.raise_for_status()
    return {"url": url, "status": r.status_code, "body": r.text}

9 月 30 日推出测试的 Pay Per Use 机制不同,它不在请求时发生。买方定义一次“使用”(比如在 AI 搜索中返回一段摘录),发布方接受或拒绝报价,买方通过 Cloudflare API 自行上报每次使用,按月结算。据 TechCrunch 报道,首批公开的合作方是 Ceramic.ai 和 You.com。

谁受影响,谁不受影响

新默认设置对自称 AI 的爬虫影响最大,对从未归入 AI 类别的流量影响最小。规避行为不算豁免。

自我声明的训练爬虫(GPTBot、ClaudeBot、CCBot、Bytespider 等)是最明确的情况。在新的广告支持型域名上,它默认被拒;在许多其他区域,它被拦截或被定价。它可选的都是正当做法:遵守拒绝、在提供 Pay Per Crawl 或 Pay Per Use 的地方付费,或直接洽谈授权。

替用户抓取页面的 AI Agent 产品是新的目标。在新的广告支持型域名上,Agent 默认在广告页面被拦截。Agent 目前还没有“Disallow”选项,因为还不存在针对 Agent 的类似 robots.txt 的标准。Cloudflare 表示会随着 ai-prefs 等提案的成熟重新考虑。以签名 Agent 的身份对请求签名,至少能让你被归为 Agent,而不是匿名机器人,这在每个允许 Agent 的区域都有意义。

使用普通浏览器 User-Agent 的爬虫,只要 Cloudflare 没有把它归入某个 AI 类别,就不受“AI 预设”逻辑约束。但这并不意味着安全:它仍要面对机器人评分、JavaScript 验证和速率限制。如果它实际上是在为训练集或答案引擎供数,那它做的就是 Perplexity 在 2025 年被移出列表的那件事。Cloudflare 明确会拦截属于各类别的“其他未验证机器人”。我们不会帮任何人把 AI 爬虫伪装成人类访客。抛开道德不谈,一旦网络开始匹配你的行为,这就是一场注定会输的游戏。

内部价格监控属于 Data Collection,不在三个预设之列。单凭 9 月的变化,它的访问不会改变。决定因素是网站原本就在用的东西:Bot Fight Mode、Bot Management 规则、速率限制。我们的合规应对 Cloudflare 封锁指南逐一讲解了这些错误码。

数据团队决策表

先从你收集什么、为什么收集出发。这决定了你的类别,而类别决定了你的选项。

收集内容可能的 Cloudflare 类别2026 年的变化建议做法
用于预训练或微调的网页文本Training新的广告支持型域名默认拒绝;Block 现在也会拦下多用途爬虫运行一个单独、具名的训练爬虫;遵守 robots.txt 和 Content Signals;在提供的地方洽谈授权或使用 Pay Per Crawl/Use;不要把训练混进搜索机器人
为 RAG 或 AI 搜索产品建索引Search(如果是建索引并回链)默认仍放行;use=reference 是默认的内容使用级别与任何训练爬虫分开;坚持摘录加链接;通过 Web Bot Auth 申请 Verified 身份
为用户提示实时抓取的页面Agent新的广告支持型域名在广告页面上拦截以签名 Agent 身份签名请求;只抓取任务需要的内容;被拦截时提供备选方案;有官方 API 就用官方 API
竞品价格、库存、MAP 合规Data CollectionAI 预设未带来新默认值范围限定在商品页;遵守速率限制和 robots.txt;优先使用数据源/合作方 API;使用目标价格所在市场的出口
对自己或客户网站做 SEO 审计、排名检查SEO无新默认值在你控制的网站上把爬虫加入白名单;在其他网站上通过 User-Agent 表明身份
广告投放核查Ads Verification无新默认值;Cloudflare 将其列为站长可放行的类别使用已声明的核查爬虫;与发布方协调
RSS/新闻源Feed Fetching无新默认值轮询订阅源而不是 HTML;遵守 Cache-Control 和条件请求

关于价格监控那一行,补充两点。第一,“使用合适地区的出口”是指看到当地消费者看到的价格,而不是隐藏你的身份。在 ProxyHat 中这只是用户名里的一个参数,例如 http://USERNAME-country-DE:PASSWORD@gate.proxyhat.com:8080。我们的价格监控指南介绍了围绕它的整条流水线。第二,请求量仍然是最快被标记的原因。我们的速率限制详解介绍了网站能够容忍的退避策略。

广告支持型发布方为什么要这样做

广告只有在真人看到页面时才能赚钱。用 Cloudflare 的话说:“训练用一个答案取代了那次访问;Agent 抓取页面时,没有人在场看广告。”这就是广告页面预设更严格的原因。Cloudflare 9 月 15 日的文章给出了数据:其网站中不到 1% 拦截 Search 机器人,而 17% 启用了某种拦截训练的机制。发布方希望保持可被搜索到,但不想免费为模型提供内容;而在 9 月之前,他们无法在不失去 Google 搜索的前提下拦截 Googlebot 的训练用途。Disallow AI Training 和 Accountable 承诺是 Cloudflare 对这一困境的回答,Pay Per Use 则试图把“不行”变成“可以,但要付费”。

这些变化不会改变什么

  • 不在 Cloudflare 上的网站。Akamai、DataDome、HUMAN 和自建方案各有各的规则。
  • 通用机器人防御。机器人评分、Turnstile、速率限制和 WAF 规则照常工作,Data Collection 类爬虫仍可能被它们拦截。
  • 通过 robots.txt 让 Bing 不用于训练。Microsoft 正在开发 robots.txt 中的不训练支持,目标是 2027 年初。在此之前,Disallow AI Training 无法通过这种方式把偏好传达给 Bing。
  • 可预测性。广告页面识别没有公开文档,站长也可以随时更改预设。请阅读每个目标网站的 robots.txt 和响应头,不要依赖博客总结(包括本文)。
  • 你的法律处境。类别标签决定不了版权、合同或个人数据问题。无论你的机器人评分如何,Content Signals 的第 4 条权利保留在欧盟都适用。

下次抓取前的简短检查清单

  1. 写下每个爬虫的用途。如果一个机器人同时做搜索和训练,就把它拆开。Cloudflare 现在会追踪每一种用途,以最严格的规则为准。
  2. 使用诚实、稳定、带联系 URL 的 User-Agent。这不花任何成本,而且是通过验证的前提。
  3. 阅读 robots.txt 时包括 Content-signal。解析 ai-train、search、ai-input 和 use,而不只是 Disallow。
  4. 显式处理 402 和 crawler-error。记录价格;把拒绝的 URL 放进禁止抓取列表。
  5. 如果你大规模运营 Agent 或爬虫,考虑采用 Web Bot Auth。它是使用 Pay Per Crawl 的必要条件,也是获得 Verified 身份的途径。
  6. 对于拒绝免费抓取、而你又经常需要其内容的发布方,优先使用授权来源(API、数据合作、Pay Per Use)。

2026 年的变化指向同一个方向:表明身份和用途的爬虫比一年前拥有更多正当选择,伪装的爬虫则越来越少。如果你的团队正在这些规则下为 Agent 或 LLM 数据工作选择基础设施,我们的 AI Agent 代理指南介绍了代理在哪些地方有用、哪些地方没用。

常见问题

2026 年 Cloudflare 默认拦截 AI 爬虫吗?

对于所有者声明投放广告的新域名,是的:自 2026 年 9 月 15 日起,推荐预设把 Training 设为 Disallow AI Training,并在有广告的页面上拦截 Agent 流量,Search 仍放行。没有广告的网站三项都是 Allow。已有域名保留了此前设置的效果,因此具体表现因站而异。

Cloudflare 的 Disallow AI Training 会拦截 Googlebot 吗?

不会。Disallow AI Training 在 robots.txt 中发布不允许训练的偏好,Accountable 多用途爬虫(Googlebot、Applebot、Bingbot)仍可为搜索抓取,其他训练爬虫则被拦截。只有 Block 或 Block on pages with ads 设置才会拦下 Googlebot,而这也会让网站失去 Google 搜索抓取。

带 crawler-price 头的 HTTP 402 是什么意思?

说明该页面启用了 Cloudflare Pay Per Crawl,网站按请求向已验证的 AI 爬虫收费。爬虫可以带上 crawler-exact-price 或 crawler-max-price 头重试,并用 Web Bot Auth 签名;成功的响应会返回 crawler-charged。截至 2026 年 10 月,Pay Per Crawl 仍处于封闭测试阶段。

Cloudflare 的 AI 机器人新规会影响价格监控爬虫吗?

不会直接影响。Cloudflare 把价格抓取和竞争情报归为 Data Collection,它不属于 Search、Agent 或 Training 预设。这类爬虫仍受网站现有的机器人管理、验证挑战和速率限制约束。

Cloudflare 怎么知道一个机器人是 AI Agent 还是训练爬虫?

已验证机器人和签名 Agent 通过 Web Bot Auth 签名、公开 IP 段或反向 DNS 表明身份,Cloudflare 会给每个机器人打上一个或多个行为标签。每个预设还会拦截被 Cloudflare 检测归入该类别的未验证机器人,因此未声明的爬虫同样可能被识别。

抓取时你的代理被封了吗?

免费检测代理 — 几秒内查看封锁率、速度和匿名性。无需注册。

免费检测我的代理
← 返回博客