先给结论:旧地址若存在内容相近但不等价的新页,优先做单页301到最接近的目标,并在该目标页补齐旧页承载的核心信息;若旧页是查询参数、分页或筛选组合,且新站结构不再保留同类入口,则让它404并清理指向它的内链,通常比强行跳到首页更安全。判断依据不是“能不能跳”,而是跳过去之后用户和抓取程序能否得到与旧地址意图一致的内容。
把待迁移的旧地址列成表,每行记录四件事:原URL、原页面主题、新站是否有同主题页、旧页有多少内链和外部链接指向它。这一步不依赖任何工具,用站点导出的URL清单加爬取结果就能完成。
关键动作是把“近似页”单独标出来。近似页是迁移中最容易出错的一类:跳过去看似成功,但用户落地后发现找不到原来的信息,会立刻返回搜索结果,这类行为会削弱这次重定向的实际价值。
当旧页和新页只是部分重合时,301之前先问三个问题:旧页最核心的那段信息,新页有没有;旧页面向的查询词,新页标题和正文是否覆盖;旧页上有没有独特的数据、参数或下载项。三个问题里只要有两个答案为否,就不要直接跳。
可行做法是先把旧页里新页缺失的部分合并进新页,再设置301。假设一个旧的产品对比页记录了三款型号的参数,新站只保留了其中两款,那么把第三款参数补进新页后再跳,用户和抓取程序得到的信息才接近原地址。如果第三款已经停产且不再销售,则把旧页301到该品类的栏目页,并在栏目页说明型号状态,比跳到某个具体产品页更符合用户预期。
这里有一个取舍:补齐内容会增加编辑成本,但能避免把旧页的链接权重和用户意图引到一个不匹配的落点。对于外链较多、长期有稳定访问的旧页,这个成本通常值得投入;对于几乎没有内链外链、访问量极低的旧页,直接404并清理内链更省事。
以下情况适合让旧地址返回404或410,而不是硬找一个目标跳过去:
决定404之后,第一件事是清理指向该地址的内链,包括导航、正文链接、相关推荐模块和站点地图。第二件事是检查外部链接:如果有质量较高的外部站点仍指向旧地址,可以联系对方更新,或保留一个指向最相关新页的301。只做404而不清理内链,会让抓取程序反复碰到死链,也会让用户在多步点击后走进死胡同。
需要说明的是,robots.txt 的抓取限制不等于可靠的索引移除。如果旧地址已经被收录,仅靠 robots.txt 禁止抓取,页面仍可能以无摘要形式出现在结果里,正确的做法是让地址返回404/410,或对确实有等价目标的地址做301。
把前面几步合成一张可执行清单,按行处理每个旧地址:
执行顺序建议先处理等价页,再处理近似页,最后处理无目标页。这样做的原因是:等价页的301可以直接配置并验证,近似页需要编辑介入,耗时更长;先把确定的部分做完,能更快让新站结构稳定下来,也方便后续对比处理前后的抓取和收录情况。站点地图可以帮助发现仍被引用的旧地址,但它本身不保证收录,不能替代对每个地址的逐一判断。
迁移完成后,旧地址访问量下降、抓取量变化,都不足以单独证明处理正确。可能的原因包括:新地址已经承接了访问、外部链接被更新、旧地址本身访问就低、抓取预算转移到新结构。要区分这些情况,需要同时看旧地址的返回状态、新目标页的访问来源、以及站内是否还有指向旧地址的链接。
一个可操作的验证方式是:对每个已处理的旧地址记录返回状态码和落地页,隔一段时间复查落地页是否仍返回200、内容是否仍与旧页意图一致。如果发现某个301落地页后来被改版或下线,需要重新指定目标,否则这条跳转就变成了新的问题入口。验证的目的不是确认某个数字归零,而是确认每个旧地址现在都有明确、稳定、与用户预期一致的落点。