防火墙规则里加了 UA 校验,Googlebot 的请求开始返回 1020,抓取统计里 403 一天涨到八千条,收录同步变慢。

真正麻烦的地方在于,几个原因的现象几乎一样。规则按 UA 字符串匹配,官方 UA 带了版本后缀没命中;ASN 校验只放了旧网段,新网段被拦;1020 是自定义拦截页,蜘蛛把它当成 403;规则优先级高于已验证机器人放行。

动手时先确认蜘蛛拿到的状态码和页面

curl -sI -A 'Googlebot/2.1 (+http://www.google.com/bot.html)' https://www.example.com/

再往下按官方地址段放行并开启已验证机器人

https://developers.google.com/search/docs/crawling-indexing/verifying-googlebot

调整规则优先级

skip: cf.client.bot

末了清掉被缓存的拦截页

curl -X PURGE https://www.example.com/

同一份数据我导出了两份,一份留底,一份拿来试。

这类问题以前遇到过,但这次的触发条件和上次不一样。

改完先别撤,确认这几项。放行后蜘蛛请求恢复 200,抓取统计里的 403 一天内回落到个位数。

这里还有个坑。UA 可以伪造,地址段和反向解析才是可靠依据,放行规则尽量基于验证过的机器人。如果同一现象隔几天又出现,说明根因没找到,别当偶发处理。

作者 9823189