先给结论:不要为了“每个旧地址都有落点”而批量跳到首页或栏目页。判断标准只有一条——旧地址承载的意图是否仍由现有业务承接。承接得住就保留或改写,承接不住就让它返回 404/410 并退出索引,而不是用软跳转凑数。下面给出可操作的分流条件和验证动作。
旧地址与新地址的落差通常有三层:主题层、内容层、转化层。主题层指页面回答的问题是否同类;内容层指原有可读信息是否还在;转化层指用户到达后能否完成原来的动作。三层都缺,说明这个地址对应的业务已经退出;只缺内容层,往往可以改写;只缺转化层,通常保留并调整页面结构即可。
一个可用的验证动作:把旧地址的标题、H1、主要小节标题抄出来,与候选目标页逐条对照。如果三条以上核心小节在目标页找不到对应段落,就不要把它当作等价目标。这一步的结果直接决定下一步:找到承接页的进入改写流程,找不到的进入退出流程。
当业务仍在,但旧页面描述的产品名、型号、服务口径发生变化时,优先保留旧地址并改写内容,而不是新建地址再跳转。保留的好处是历史链接、外部引用和用户收藏都还能落在同一路径上,不必依赖跳转链路。
适用前提要同时满足:旧地址仍能返回 200;页面主体内容可以改写成当前口径;该路径没有被新的信息架构排除。如果旧地址本身是带参数的动态路径,或已被新结构明确取代,改写会制造两套并行入口,此时应改用跳转而非保留。
改写完成后,比较旧地址改写前后的主题一致性。假设某旧页原本讲 A 型号的安装步骤,改写后变成 B 型号的选型建议,那么外部链接带来的用户预期会落空。这种情况下,改写不如直接跳转到真正对应的新页,或者让旧地址退出。
跳转不是默认选项。它成立的条件是:目标页能回答旧页提出的问题,且用户不需要再点一次才能找到答案。如果旧地址有十个,目标只有一个首页,这不是等价关系,而是把差异转嫁给用户。
可以这样区分:旧页讲“某配件的更换周期”,新页讲“该配件的全部规格”,两者主题相关但意图不同,跳转会让用户多走一步;若新页里确实有一节完整讲更换周期,跳转才成立。判断依据是目标页是否存在可直接对应的段落,而不是两个页面是否同属一个栏目。
另外要注意,跳转只解决用户到达问题,不解决索引问题。旧地址仍可能被外部引用,跳转链路越长,中间环节出问题时暴露面越大。因此能用一次 301 完成的,不要串成两三次。
当旧地址对应的产品线、活动或服务已经不再提供,且没有同类页面承接,正确做法是让服务器返回 404 或 410,并停止在站点地图中列出这些地址。不要返回 200 的“已下线”提示页,也不要统一跳到首页,这两者都会让旧地址长期停留在可访问状态。
需要提醒的是,robots.txt 的抓取限制不等于可靠的索引移除。屏蔽抓取只是阻止后续访问,已经建立的索引记录不会因此自动清理,而且被屏蔽后抓取工具也无法读到页面上的 noindex 指令。因此对确定要退出的地址,优先用状态码表达,而不是用 robots.txt 掩盖。
站点地图同样不保证收录。把地址从站点地图移除,是减少发现路径的动作,不是删除动作。它必须和状态码处理配合,单靠移除站点地图不会让旧地址消失。
假设某站点迁移后,旧地址 A 讲“旧版套餐价格”,新站已无该套餐,但有“当前套餐对比”页;旧地址 B 讲“旧版套餐的开通流程”,新站有“当前套餐开通流程”页。A 的主题已被新页覆盖,可以跳转到对比页;B 的流程步骤已变,若新页步骤不同,跳转会让用户按旧步骤操作,此时应改写 B 或让 B 退出。这个对照说明:同属一个产品,也不能用同一个目标页统一处理。
把这几步做完,旧地址的处理就不再是“能不能都跳过去”的问题,而是每个地址各自对应哪一类决策的问题。决策清楚了,后续的页面改写、跳转配置和退出清理才有稳定依据。