结论先给:如果一次修复同时动了抓取许可和索引信号,不要继续观察整体收录数,而要把“抓取—发现—索引—展示”拆成独立环节,每次只改一个环节并保留可回退状态。只有当修复仅涉及抓取许可、且站点地图与内链仍正常时,才适合先恢复抓取再等索引自行恢复;一旦修复同时改了canonical、noindex或URL结构,就必须先确认索引层是否被误伤,否则“收录恢复”会变成另一类异常的起点。
典型场景是:robots.txt误封了整站或某个目录,修复动作是把Disallow删除。抓取量随后回升,看起来问题解决。但如果误封期间有人为了让页面“先别被收录”,顺手加了noindex,或把canonical指向了备用页,抓取恢复后Google会重新读取这些页面,此时返回的仍是“不要索引”或“指向别的URL”。于是抓取曲线正常,索引曲线却继续下滑。
这不是修复失败,而是两个环节被绑在同一次变更里。抓取许可回答“能不能来”,索引指令回答“来了之后收不收”。把两者混在一条依赖链上,就会误判。
第一类是抓取许可:robots.txt、服务器状态码、防火墙与CDN拦截。第二类是发现路径:内链、站点地图、分页与导航。第三类是索引指令:meta robots、X-Robots-Tag、canonical、内容是否与另一URL重复。
noindex,或canonical指向非自身URL。这三类信号可以同时存在,但修复顺序不能颠倒。先确认抓取许可,再确认发现路径,最后才处理索引指令。若跳过前两步直接改canonical,可能把本来正确的页面指向错误目标。
假设站点曾因robots误封而修改了三处:删除Disallow、给部分页面加noindex、把canonical从A页改到B页。拆分方式如下。
noindex和canonical不动,观察目标URL是否重新被抓取。noindex,不要同时改canonical。noindex后索引仍异常,最后检查canonical是否指向了错误URL。这个动作的结果决定下一步:如果第2步后抓取没有恢复,问题可能不在robots,而在服务器拦截或发现路径,此时改索引指令没有意义。如果第2步抓取恢复、第3步索引恢复,说明canonical无需改动,应保留原状并继续观察展示层。
反例是:站点在误封期间完成了URL结构迁移,旧URL已301到新URL,且新URL本身尚未被抓取。此时只回退robots.txt不会让旧URL重新被索引,因为索引对象已经变成新URL;只移除noindex也可能无效,因为新URL的发现路径尚未建立。这种情况下依赖链的起点不是robots,而是URL迁移与内链更新。需要先确认新URL是否可抓取、是否出现在站点地图和内链中,再决定是否保留301或调整canonical。
另一个使结论失效的条件是:抓取量或索引量归零同时伴随服务器大面积5xx。此时统计归零可能来自服务不可用,而不是robots或索引指令,继续按上述顺序回退会掩盖真正原因。应先恢复服务可用性,再谈索引信号。
选定一个代表性URL,记录它当前的抓取状态、返回的索引指令和canonical目标。只改一层,等待下一次抓取证据出现后再决定是否改第二层。若证据显示抓取已恢复而索引指令仍阻止收录,就单独处理索引指令;若证据显示抓取未恢复,就回到服务器与发现路径排查。这样做的目的不是加快恢复,而是避免把“修复一个”变成“触发另一个”的连锁异常。