robots.txt 里的内容信号:34 个站里 7 个写了
内容信号声明的是「抓走之后能做什么」。Cloudflare 2025 年 9 月推出并自动给 380 万域名加上,我们在 34 个知名站里找到 7 个。

规则变动 · 2026-08-15 · Cloudflare Content Signals Policy
robots.txt 里的内容信号是三个新值——search、ai-input、ai-train——它们声明的是「抓走之后可以拿去做什么」,而不是「谁可以抓」。Cloudflare 在 2025 年 9 月 24 日推出这套策略,并自动给超过 380 万个域名加上了它。我们在 2026 年 8 月 15 日抓了 34 份知名站点的 robots.txt,7 份里有它。
三个信号各是什么意思
robots.txt 里其余一切管的都是访问。这三个管的是用途,是另一个问题,而且是过去任何指令都表达不了的。
| 信号 | Cloudflare 的定义 |
|---|---|
search | "building a search index and providing search results"(建搜索索引并提供搜索结果,例如返回链接和短摘要) |
ai-input | "inputting content into one or more AI models"(把内容送进 AI 模型,例如 RAG、grounding,或为生成式搜索答案实时取用) |
ai-train | "training or fine-tuning AI models"(训练或微调 AI 模型) |
中间那个才是真正的新东西。在它出现之前,没有办法表达「收录我、答案里引用我,但别拿去训练」——现有的令牌把这几件事捆在一起了。
写法
一行,逗号分隔,和你原有的规则放在一起。
Content-Signal: search=yes, ai-input=yes, ai-train=no
User-agent: *
Allow: /
robots.txt 里的内容信号:谁真的写了
2026 年 8 月 15 日,用 OAI-SearchBot 的 UA 抓了 35 个知名站点的 /robots.txt,34 个有响应,其中 7 个带 Content-Signal 行。
| 网站 | Content-Signal 的值 |
|---|---|
| vercel.com | search=yes, ai-input=yes, ai-train=no |
| supabase.com | ai-train=yes, search=yes, ai-input=yes |
| framer.com | ai-train=yes, search=yes, ai-input=yes |
| webflow.com | ai-train=yes, search=yes, ai-input=yes |
| cloudflare.com | ai-train=yes, search=yes, ai-input=yes |
| netlify.com | search=yes, ai-input=yes, ai-train=yes |
| patreon.com | search=yes,ai-train=no,use=reference |
这张表里有两处值得停一下
第一,patreon.com 带了第四个信号 use=reference,而它不在 Cloudflare 记录的那三个里。要么这套词汇已经长出了那份公告之外的东西,要么有人在写自己那一套——而一个只认三个值的解析器会静默跳过它。
第二,Cloudflare 自己的站写的是 ai-train=yes,而它给 380 万个域名部署的默认值是 ai-train=no。这不矛盾——给别人的默认是保守的那一个,自己做了不同的选择——但它很好地提醒了一件事:默认值不是建议。
有人必须遵守吗
没有,这一点要说清楚。它和 robots.txt 其余部分一样是一个偏好声明,没有任何爬虫运营方有义务照做。
它多出来的是一层法律框架,不是技术强制。策略文本里有一句 "ANY RESTRICTIONS EXPRESSED VIA CONTENT SIGNALS ARE EXPRESS RESERVATIONS OF RIGHTS"(通过内容信号表达的任何限制,均为明示的权利保留),指向的是欧盟版权法里的保留机制。这在哪里站得住脚是律师的问题,我们不假装能回答。
我们说不了的部分
有没有哪个 AI 运营方因为一条内容信号改变过行为。没有人公布这个,我们也没有任何加过它的站的服务器日志。我们量的是文件里写了什么,不是任何爬虫为此做了什么。
我们也说不清那 7 个站里有多少是自己想清楚才这么写的。其中 5 个跑在 Cloudflare 自己的基础设施上,而这套策略是被自动加到几百万个域名上的——这几行里,有些可能是没人读过的默认值。
常见问题
你们是怎么核实的
定义和 380 万这个部署数字引自 Cloudflare 自己的公告。采用率的数字是我们自己测的:每站一条 curl,一个匹配 Content-Signal 的正则。原始结果随文存了一份。
我该加吗
它只要一行,而且能表达一件别的指令表达不了的事。但加的时候要知道:它是一个没有强制力的偏好,而且它不替代「先决定放哪些爬虫进来」——那件事仍然在robots.txt 怎么写才管得住 AI 爬虫里。
不用 Cloudflare 也能写吗
能。那一行只是你 robots.txt 里的文本,任何托管都能写。至于有没有人读它,两边一样是个悬着的问题。
一句话
内容信号把「谁可以抓」和「抓走能做什么」分开了,这确实是一件过去说不出口的新东西——而将近一年之后,34 个知名站里有 7 个说了。想清楚你的取值、改掉、再推送收录,大约五分钟。



