先给结论:旧地址在迁移后找不到完全等价的新页面时,不要一律写成指向首页的跳转,也不要一律用robots.txt去挡。判断依据只有两条——旧地址是否还有独立搜索需求,以及它承载的链接和流量是否值得保留。两个条件都成立就做最接近的替代页并保留可抓取;都不成立才考虑用robots.txt限制抓取,同时接受它带来的收录残留风险。
迁移后旧地址没有完全等价目标,最常见的原因是栏目合并、产品线下线、内容改版。这时先看旧地址是否还在被搜索、被外部链接引用。如果有,直接跳首页会把用户带到与预期无关的位置,用户返回搜索结果的比例会上升,外部链接传递的信号也会被稀释。
可执行的动作是:为旧地址选一个主题最接近的存活页面,做301跳转,并在新页面上补充一段承接旧主题的内容,让落地页与旧标题的意图对得上。做完这一步,下一步应去查该旧地址的抓取与索引状态,确认跳转被识别,而不是立刻去改robots.txt。
例外:如果旧地址是一批结构相同、数量很大的失效页,逐个找替代页成本过高,可以按主题分组,每组指向一个汇总页,而不是全部指向首页。
如果旧地址属于一次性活动页、内部搜索参数页、已无任何外部引用和搜索需求的页面,且确认不会再恢复,才适合用robots.txt的Disallow限制抓取。这样做的目的是减少无效抓取,而不是把页面从索引中删除。
关键区别必须说清:robots.txt的抓取限制不等于可靠的索引移除。已被收录的旧地址,即使被Disallow,仍可能以无描述的形式出现在结果里,因为抓取被挡后,搜索引擎无法读取页面上的noindex。想真正移除,通常需要页面本身返回404或410,或在可抓取的前提下使用noindex。因此选择Disallow时,要接受“抓取减少但收录可能残留”这个结果。
实施动作:在robots.txt中按目录或路径规则屏蔽,而不是逐条列出成千上万个URL;屏蔽后观察服务器日志中这些路径的抓取请求是否下降。如果请求下降但结果中旧地址仍在,说明问题不在抓取层,下一步应转向状态码和noindex处理,而不是继续加Disallow规则。
不要凭感觉判断“这个页面还有没有用”。可以按下面几项收集证据,再决定:
注意,抓取量归零或某个统计下降,不能单独证明处理正确。抓取下降也可能来自站点整体权重变化、服务器响应变慢、站点地图未更新等合理解释。要把日志、搜索结果表现和服务器状态码放在一起看。
假设某站点迁移后,旧地址 /old-guide 没有等价新页,只剩一个主题相近的 /new-guide。若直接301到首页,用户和搜索引擎得到的落地内容与旧标题不匹配;若301到 /new-guide 并在该页补充旧主题段落,承接关系更清晰。若该旧地址其实是一个已停用的筛选参数页,既无外部链接也无搜索需求,则更合理的做法是让它返回410,并视情况在robots.txt中限制该参数目录的抓取。
两种选择的成立条件不同:有需求、有链接,选替代页并保留可抓取;无需求、无链接,选移除并限制抓取。判断错了方向,后续的监测和修复都会做在错误的层面上。
处理完成后,至少检查三件事:旧地址返回的状态码是否符合预期;替代页是否被正常抓取和索引;robots.txt规则是否误伤了同目录下仍需保留的页面。若发现替代页本身没有被收录,应先排查该页是否被其他规则挡住,而不是回头去改旧地址的跳转。站点地图不保证收录,提交新地址只能作为辅助信号,不能替代跳转和状态码的正确设置。
把旧地址的处理决策记录成一份清单,标注每个地址选的是替代页还是移除,以及对应的依据,这样在下一轮迁移或复查时,可以直接沿用同一套判断条件,而不必重新猜测。