蜘蛛被拦分两种:一种能被日志看见,比如 403、429;另一种看不见,CDN 直接在边缘返回验证页或者在网络层丢弃,源站日志里一条记录都没有。第二种最要命,因为你在日志里找不到任何证据。
怎么发现
GSC 抓取统计里请求量突然归零,但站点本身访问正常,大概率是被拦了。百度搜索资源平台的抓取诊断会报"抓取失败",或者返回的内容不是你的页面。日志里 Googlebot UA 的请求数变成 0,而其他 UA 正常。最直接的验证方法:找一台海外 VPS,用 curl 带蜘蛛 UA 请求首页,看返回什么。
2025 年 11 月那次
一个客户上线新的 WAF,默认规则把 UA 里含 "bot" 的请求全部拦截。Google 抓取量三天内从每天 4000 次掉到 200 次,他们一直以为是"算法波动",第 6 周才找我们。恢复访问后两周抓取量回来,但掉下去的那批关键词排名过了两个月才补回来一部分。
白名单怎么配
Google 和 Bing 都提供官方 IP 段或者反向 DNS 验证方式,百度也有官方 IP 列表。别只按 UA 做白名单——UA 可以伪造,安全团队也不接受这种规则。用 IP 段加反向解析双重校验,既安全又不误伤。
Cloudflare 这类 CDN 有自己的"已验证机器人"机制,直接打开就行,别自己写规则。
一个排查清单
发现抓取量异常时,按这个顺序查:GSC 抓取统计是不是全站归零;百度抓取诊断能不能抓到;日志里蜘蛛 UA 的请求数;CDN 后台的拦截日志(很多厂商有这个报表);安全产品的拦截规则里有没有 bot、crawler 这类关键词。五步走完,基本能定位到是哪一层拦的。
如果是 CDN 厂商的默认防护拦的,让他们把已验证机器人放行;如果是自己配的规则,加 IP 段白名单。改完立刻用 curl 验证,别等第二天看数据。
上线安全产品前必须做的一件事
跑一次蜘蛛访问测试:用 Googlebot、Bingbot、Baiduspider 的 UA 和官方 IP 各请求一次核心页面,确认返回 200 和正常 HTML。这次测试要写进变更流程,和"上线后检查监控"同等重要。
立场
安全团队和 SEO 团队的矛盾不会消失,但可以靠流程解决:任何影响入口流量的变更,上线前必须验证蜘蛛可达。这一条比事后排查六周便宜太多。
元析智能
为软件公司做 SEO 和 GEO 优化