不存在完美的一一对应。旧站改版时,历史地址数量往往多于新页,或结构被彻底打散,此时映射的目标不是“每个旧地址都找到唯一新页”,而是让有价值的旧地址落到最接近的新页,让无价值的旧地址干净地退出。下面用一个假设情境把决策过程走一遍。
假设某工具站有 8000 个历史地址,改版后新站只有 1200 个页面。如果逐条强行对应,会出现大量旧地址指向首页或栏目页,这等于把相关性信号稀释掉。更稳妥的做法是先分层。
判断依据来自可核验的记录:旧站访问日志、外链清单、站内搜索词。三者交叉后仍无法确定价值的地址,先归入“暂缓处理”,不要一次性全部重定向。
假设旧地址 /old/tool-a-2019 在新站对应 /tools/a/,但新页只覆盖了旧内容的一部分。这时策略选择取决于内容重合度。
边界在于:多对一在样本阶段看起来没问题,规模化后容易出现“几十个旧地址全指向同一页”。搜索引擎和用户都会把这种集中跳转视为低质量信号。因此多对一应设上限,超过阈值就说明新站信息架构缺页,需要补页而不是继续合并。
假设:某教程站改版,旧站 3000 个地址,新站 500 个页面。团队最初决定把所有旧地址 301 到最接近的栏目页,上线两周后发现部分旧地址的落地页跳出率明显偏高,而另一些旧地址几乎无人访问。
决策链可以这样走:
这个动作的结果会直接影响下一步:如果缺页清单很长,说明问题不在映射规则,而在新站内容覆盖不足,此时应先补页再谈映射;如果缺页很少但异常映射集中,说明规则需要按主题细分,而不是按 URL 字符串相似度匹配。
样本阶段成立的规则,放大到几千条时最容易在以下位置出问题。
/old/car-insurance 和 /old/car-repair 字符串相近,但主题完全不同。按相似度匹配会把用户送到错误页面。可操作的做法是:维护一张映射表,字段至少包含旧地址、新地址、处理类型(301/410/保留)、判断依据、复核日期。上线前用脚本检查是否存在链式跳转、是否有多对一超过阈值、是否有 301 指向 404。这些检查不需要依赖特定工具,用日志和映射表本身就能完成。
映射不是越多越好。当旧地址对应的主题在新站已无位置,且没有外链和访问价值时,返回 410 是合理选择。把这类地址全部 301 到首页,短期看似“没有 404”,长期会让首页承担大量无关入口,反而模糊了首页的主题定位。
因此,判断标准应回到用户意图:用户从旧地址进来,是想看那个旧主题,还是只想找这个站。如果答案是前者,就必须有主题承接页;如果答案是后者,且该地址确实无价值,410 比错误跳转更诚实。映射表复核完成后,缺页清单和异常映射清单就是下一轮内容与结构调整的输入。