先给结论:当源站直连返回正常、但通过 CDN 或边缘节点访问百度蜘蛛时出现异常,你至少要保留四类证据——边缘节点对百度蜘蛛 UA 的响应头与状态码、源站同一时刻的直连响应、节点回源日志或回源请求记录、以及可复现的时间戳与请求 URL。缺少完整日志权限时,用 curl 或等价命令行工具从外部对边缘节点发请求、同时从源站侧发同一请求,是最小可执行动作。它只能证明“此刻边缘与源站响应不一致”,不能单独推出百度已降权、已停止抓取或收录必然受影响。
源站正常,指的是你直接访问源站 IP 或回源域名时,页面返回 200、内容完整。边缘节点异常,指的是请求先到 CDN 节点、再由节点回源或命中缓存时,百度蜘蛛拿到的响应与源站不一致。常见表现是边缘返回 403、503、空内容、旧缓存、跳转到验证页,而源站本身没有任何报错。
这两者可以同时成立,因为边缘节点有自己的缓存策略、WAF 规则、UA 黑名单、回源超时设置。源站监控通常只探源站,不探边缘,所以监控全绿也可能掩盖问题。判断时不要只看“网站能不能打开”,要看“百度蜘蛛 UA 从边缘拿到的响应是什么”。
没有 CDN 后台完整权限时,仍应尽量保留以下四项。它们构成一条可复查的证据链,而不是单点截图。
curl -A "Baiduspider" -I -H "Host: 你的域名" https://你的域名/目标路径,需要正文时去掉 -I。执行顺序建议:先固定一个异常 URL,再同时抓边缘与源站两组响应,最后补回源记录。这样得到的是一组可对比数据,而不是零散截图。
如果你只有发布权限,没有 CDN 和服务器日志权限,可执行的最小动作是:从外部对边缘节点发请求并保存输出,同时请有权限的同事在源站侧抓同一时刻的访问日志。两边时间对齐后,就能判断差异是否真实存在。
此时不能得出的结论包括:不能因为边缘对百度蜘蛛返回 403 就断定百度已移除收录;不能因为抓取日志里百度蜘蛛请求量下降就断定是边缘异常导致,因为抓取量还受配额、站点整体质量、URL 调度等因素影响;不能因为源站日志里没有百度蜘蛛记录就认定百度没来,请求可能停在边缘未回源。
一个假设例子:某 URL 边缘对百度蜘蛛返回 503,源站直连返回 200。若边缘回源日志显示该时段根本没有回源请求,说明请求在节点层就被拦截,问题在节点规则而非源站;若回源日志显示回源 200 但边缘仍返回 503,说明问题在节点缓存或响应改写。两种情况的下一步动作不同:前者查 WAF 与 UA 规则,后者查缓存与响应头处理。
证据指向不同原因,处理动作也不同。可按下面这条链推进:
每完成一步,把结果写回同一份记录:改了什么、改后边缘响应变成什么、源站是否同步变化。这样下一步判断才有依据,而不是反复猜测。
修复边缘异常后,如果百度蜘蛛抓取量回升,这只能说明时间上相关,不能单独证明是本次修复导致。抓取量还受 URL 重要性、站点整体更新、配额分配等影响。更稳妥的复查方式是:确认边缘对百度蜘蛛的响应已与源站一致,并持续观察该 URL 是否被正常抓取与处理,而不是只盯一个数字的涨跌。
另外两条边界要记住:robots.txt 的抓取限制不等于可靠的索引移除,站点地图也不保证收录。边缘修复解决的是“百度蜘蛛能否拿到正确响应”,它不承诺收录或排名结果。把证据留全、把差异说清、把动作和结果对应起来,才是这类问题里真正可复用的部分。