先给结论:如果旧地址承载的是可独立检索的内容,就应保留一个可访问的等价承接页,并让旧地址直接返回该页;如果旧地址只是参数、分页或已合并的重复入口,且没有任何独立检索价值,才适合让它返回404或410。判断依据不是“能不能跳转”,而是这个旧地址被访问时,用户和抓取程序是否还能得到与原来意图一致的内容。
迁移后最容易出问题的情况,是旧地址原来对应一篇完整文章、一个商品详情或一个独立栏目,但新站只把它跳到了首页、分类页或一个宽泛的聚合页。这种处理在样本量小时看似正常,因为少数旧地址仍能打开;规模化后,大量旧地址都指向同一个宽泛目标,抓取程序会把这些地址视为低价值或重复入口,收录失败就会集中出现。
此时应做的动作是:为旧地址建立可访问的承接页,页面主题与旧地址原意图一致,并在页面中提供指向新结构的链接。如果内容已经合并,就保留一段说明和指向新内容的链接,而不是只做一次跳转。这样做的结果是,旧地址不再是一个空壳入口,后续可以观察它是否被重新抓取;如果仍未被处理,下一步再检查内链和站点地图是否指向了这些承接页。
反过来,如果旧地址只是筛选参数、排序参数、会话参数或已经被合并的重复页,强行给它做一个承接页反而会制造新的重复内容。此时更合理的选择是让旧地址返回404或410,并确保站内不再有指向它的链接。这里要区分“抓取限制”和“索引移除”:robots.txt 可以阻止抓取,但不能可靠地让已经进入索引的地址消失;返回404或410是更明确的信号,但仍需要时间,不能因为某天请求量归零就断定处理正确,因为请求量下降也可能来自抓取预算转移、内链消失或服务器临时不可达。
实施时,先确认旧地址是否还有外部链接或站内入口。如果仍有大量外链,直接返回404会让这些链接价值落空;此时更稳妥的做法是保留一个简短承接页。如果外链极少且内容已完全被新地址覆盖,再返回410。这个动作的结果是,你可以把后续观察重点放在“旧地址是否还出现在站内链接和站点地图中”,而不是只盯请求日志。
要决定保留还是放弃,可以收集三类证据。第一类:旧地址是否还有独立的外部链接或站内入口。第二类:旧地址原来对应的内容,是否已经在新站有唯一且稳定的目标。第三类:旧地址被访问时,返回的是200、301、404还是410,以及页面可见内容是否与旧主题一致。
这些判断不依赖某个固定比例。假设一个迁移后样本中,100个旧地址里有20个仍有外链,另外80个只来自站内旧导航;那么前20个应优先保留承接页,后80个在确认新地址已覆盖后可以返回410。这个例子只说明比较方法,实际数量需要按站点自身数据替换。
个别样本成立但规模化后出现例外,通常不是因为规则错了,而是因为“等价”被理解得太宽。把旧地址跳到首页,不算等价;把旧地址跳到一个只包含部分内容的分类页,也不算等价。承接页至少要满足:主题一致、主要内容可访问、有明确的新目标链接、返回200状态码。若承接页本身依赖JavaScript才能显示主要内容,还要确认可见内容是否真的能被读取,不能只看浏览器里是否正常。
另一个例外是站点地图。把旧地址放进站点地图并不保证它会被收录,它只是提供发现入口。若旧地址已经返回410,却仍留在站点地图中,会形成冲突信号。此时应先把旧地址从站点地图和内链中移除,再观察后续抓取。HTTPS 也不等于安全无漏洞或排名保证,它只解决传输层的一部分问题,不能替代承接页和状态码处理。不同搜索引擎对404、410和跳转的处理节奏不同,需要分别核查,不能用一个平台的表现推断另一个平台。
按这个顺序处理,你就能在“保留承接页”和“返回404或410”之间做出有依据的选择,而不是把所有旧地址都跳向首页,也不是一遇到例外就全部放弃。