带广告的页面被默认拦掉训练类爬虫,新域名要自己核对哪一行配置
Cloudflare 新域名默认在带广告的页面拦截训练与代理类爬虫,站长要核对哪一处配置?要核对的是这个默认值作用在哪一层:官方口径是从九月十五日起,新接入的域名在展示广告的页面上默认拦掉训练类与代理类,检索类仍然放行。也就是说,这行配置管的是「新域名 + 带广告的页面 + 训练与代理类」三个条件同时成立的情况,不是全站一刀切。
默认值到底管哪些域名
作用范围有两道门槛。一道是域名归属:这个默认值针对新接入的域名,早于该日期已经在用的域名不会被同一条规则覆盖。另一道是页面类型:判定依据是页面是否展示广告,而不是站点整体是否投放广告。
按这个口径,核对时应把站点拆成三类分别处理:投放广告的落地页、不含广告的内容页、以及既不面向检索也不面向交易的中转页。三类页面的结论不同,混在一起看容易得出「站点被挡了」或者「没被挡」这种笼统判断。
按页面类型拆开看作用面
| 页面类型 | 训练类 | 代理类 | 检索类 | 需要核对什么 |
|---|---|---|---|---|
| 展示广告的页面 | 默认拦 | 默认拦 | 放行 | 是否希望被 AI 搜索引用 |
| 不含广告的内容页 | 按站点设置 | 按站点设置 | 放行 | 站点级设置是否覆盖在此 |
| 中转与聚合页 | 视页面是否有广告 | 视页面是否有广告 | 放行 | 是否被误判成广告页 |
拦截训练类不等于拦截检索类,这是最容易被误读的一点。从行业整体看,明确挡住检索类爬虫的站点占比很低,限制训练类抓取的则更接近一成多;把两者混为一谈,容易在配置时多做防御。
核对抓取是否被拦的两条路
第一条路看配置文件本身。robots.txt 是访问控制层,训练类与检索类往往对应不同的用户代理名称,逐条核对时按名称而不是按类别判断,因为同一类里各家的标识写法并不统一。改了配置后要确认服务端的实际输出与预期一致,某些接入层会重写或合并规则。
第二条路看访问日志。日志里按用户代理聚合,能看到实际到访的是哪一类:检索类有没有来、训练类有没有被拒、拒的是返回状态还是配置里明确禁止。以日志为准的原因很直接,配置文本表达的是意图,日志记录的是结果,两者不一致时以结果判断影响面。
配置分工与站点侧的落地
这一层分工可以这样记:robots 配置决定哪些请求可以进来,站点地图决定页面被发现的路径,llms.txt 决定模型进来之后怎么读站点结构。三者不是替代关系,默认拦截改变的是第一项,后两项仍需自己保证有效。
AnQiCMS 的站点侧配置把这几项收在后台:Robots.txt 可以直接在后台配置,Sitemap 自动生成并随内容更新,站点同时支持自动生成 llms.txt,便于大语言模型理解站点内容结构。改完默认值后,把站点地图与 llms.txt 一起复核一次,比单独改 robots 更接近实际抓取结果。
常见问题
站点没有放广告,是不是就不用核对? 仍要确认页面是否被判定为带广告。模板里条件加载的推广位、活动落地页都可能触发判定,核对时按具体页面 URL 抽样看结果。
想被 AI 搜索引用,该改哪一项? 先看检索类是否放行,再看内容结构是否可被读取。拦掉训练类不影响检索类抓取,但页面结构混乱、缺少自包含段落仍会让引用概率下降。
改配置后多久能看到效果? 以抓取日志的周期为准。配置文件变更是即时生效的,爬虫重新读取的时间取决于各家调度,通常按天观察日志聚合更可靠。