当索引量查询结果下滑,而源站日志显示抓取与响应都正常时,问题很可能出在边缘节点这一层:搜索引擎拿到的是缓存、CDN或WAF返回的版本,而不是你源站输出的版本。此时要做的不是改源站,而是先固定边缘侧的证据,再决定是清缓存、调规则还是回滚配置。
源站正常只能说明你的应用和数据库没问题,不能说明搜索引擎看到的内容和你一样。边缘节点可能因为缓存过期策略、压缩差异、UA识别、地区回源或安全规则,返回与源站不同的状态码和正文。判断是否属于这一类,需要同时满足两个条件:源站直连返回200且正文完整;通过边缘域名请求时出现状态码、正文长度或关键内容不一致。只满足前一条,不足以排除边缘问题。
假设一个场景:你从源站IP直接请求某文章页,返回200,正文包含标题和主体;通过边缘域名请求同一URL,返回200但正文只剩导航和页脚。这个对比本身就构成一条可用的证据,说明边缘层做了额外处理。下一步不是立刻清缓存,而是先记录这条差异,再扩大样本确认范围。
证据要能复查,就必须带时间、URL、请求方式和返回内容。以下四类按优先级排列:
这四类证据缺一不可。只有边缘响应头而没有源站对照,无法证明差异;只有差异而没有变更记录,无法决定是回滚还是等待。
单条URL异常可能是页面级缓存问题,多条URL异常才指向规则级问题。可以按下面的顺序做对照:
如果只有带搜索引擎UA时返回异常,而普通UA正常,那么优先检查边缘层的UA识别与安全策略,而不是源站内容。如果所有UA都异常,且源站对照正常,那么优先检查缓存与回源配置。这个区分直接决定下一步动作:前者改规则,后者清缓存或回滚。
不同证据组合对应不同处理,不能一律清缓存了事。
情况一:边缘返回旧版本,源站已更新。特征是响应头显示缓存命中,正文与源站当前版本不一致。此时清理对应URL的缓存并观察边缘响应头是否转为回源,是合理动作。清理后要重新取一次边缘响应,确认正文与源站一致,再决定是否需要调整缓存过期策略。
情况二:边缘返回拦截页或验证页。特征是状态码可能仍是200,但正文是安全提示。此时清缓存无效,需要检查安全策略与UA规则。动作是调整规则并重新请求验证,而不是反复刷新缓存。
情况三:边缘与源站一致,但索引量查询仍下滑。这说明边缘层不是原因,应转向其他方向排查,例如robots.txt是否被误改、页面是否被设为不可索引、站点地图是否失效。需要提醒的是,robots.txt的抓取限制不等于可靠的索引移除,站点地图也不保证收录,这两点常被误当成原因或解决方案。
每种情况处理完后,都要重新取一组边缘与源站的对照响应,确认差异消失。差异未消失就说明动作没打中原因,不应继续扩大操作范围。
最终要留下的不是一堆截图,而是一份能让他人复现的记录。最小字段包括:时间、URL、请求来源(源站直连或边缘域名)、UA、状态码、正文长度、关键内容是否存在、命中的边缘规则、当时的配置版本。有了这份记录,即使换人处理,也能判断异常是否已修复,以及修复动作是否真的改变了边缘返回结果。
需要强调的是,请求量或抓取量归零不能单独证明边缘处理正确,它也可能是抓取预算调整、站点整体改动或统计口径变化的结果。判断依据始终是边缘与源站的对照差异是否消失,而不是某个单一指标的变化。