先给结论:当源站返回正常、但边缘节点对 Googlebot 返回异常时,最该保留的不是“源站截图”,而是同一 URL、同一时间窗内、带请求身份和节点标识的边缘日志与响应头。因为源站正常只能证明后端没问题,不能证明 Googlebot 实际拿到的是什么。真正决定下一步是修缓存、改回源规则还是等节点恢复的,是边缘侧那几份能对齐时间戳的证据。
典型表现是:你在源站直接请求页面,返回 200 和完整 HTML;但 Search Console 的网址检查显示抓取异常、内容为空,或抓取统计里该路径的响应突然变了。此时有两个都说得通的解释。
解释一:边缘节点确实对 Googlebot 返回了非 200、空体或被拦截的响应,源站正常只是“你自己看到的那条路径正常”。解释二:边缘节点没问题,异常来自别处——比如 Googlebot 命中了旧缓存副本、请求被 WAF 按 UA 规则拦掉、DNS 解析到了另一个节点,或者抓取异常只是短时抖动。
这两种解释对应的动作完全相反:前者要动边缘配置,后者动配置可能把正常状态改坏。所以先别改,先取能区分两者的证据。
关键原则是让每条证据都能回答“哪个节点、对谁、在什么时间、返回了什么”。分散的证据无法对齐,就无法区分解释。
curl -I 或等效的响应头,重点看缓存状态、Age、Vary、Cache-Control 以及是否出现 WAF 或安全层的标记头。头信息能说明这次响应来自缓存还是回源。一个假设例子:假设某 URL 在节点 A 返回 200 但响应体 0 字节、缓存状态 HIT,节点 B 返回 200 且正文完整、缓存状态 MISS,源站返回 200 正文完整。这组数据把解释指向“节点 A 缓存了坏副本”,而不是源站故障。此时清除该节点缓存或调整缓存键,比改源站更对症。反过来,如果所有节点都返回完整正文,只有 Search Console 显示异常,那更可能是抓取侧短时问题,继续改边缘配置的收益很低。
取舍一:保留原始日志还是只留截图。截图方便沟通,但无法被他人复查,也无法做时间对齐。条件允许时应同时保留原始日志行和关键响应头;只有在无法导出日志时,才用带时间戳和节点标识的截图作为补充,并注明这是降级证据。
取舍二:立即清缓存还是先取证。清缓存能快速让异常消失,但会销毁“坏副本存在过”的证据,导致之后无法判断根因、也无法确认是否复发。更稳的顺序是先导出日志与响应头,再清缓存,然后用同一组请求复测并保存复测结果。这个动作的结果直接决定下一步:复测恢复正常,说明是缓存副本问题;复测仍异常,说明问题不在缓存层,需要继续查 WAF、回源规则或 DNS。
抓取量或请求量归零、某个统计突然下降,都不能单独证明边缘处理正确,也不能单独证明源站有问题。它们还有其他合理解释:抓取预算波动、URL 被合并、站点地图变化、抓取侧调度调整等。同理,robots.txt 里的抓取限制不等于可靠的索引移除,站点地图存在也不保证收录。这些信号只能作为线索,必须和上面的边缘日志、响应头、多节点复现结果交叉验证后再下判断。
把证据收齐后,判断链条会清晰很多:源站与边缘的差异定位到节点,节点日志与响应头定位到缓存或拦截,复测结果确认修复是否生效。按这个顺序走,你改的每一处配置都有对应证据支撑,而不是在源站正常的情况下盲目动边缘。