当旧站退出、新站上线时,最稳妥的做法不是追求“每个旧地址都找到唯一新页”,而是先给旧地址分类:能一一对应的做精确映射,不能对应的用最接近的承接页兜底,确实无价值的才让它返回 404 或 410。判断依据是旧地址是否仍有外部链接、是否仍有用户会访问、以及旧内容在新结构里是否有等价物,而不是旧地址数量本身。
假设你有一个旧企业站,准备换成新结构。旧站里有三类地址:产品页 A、新闻页 B、活动页 C。新产品目录里 A 有明确的新页;B 的栏目还在,但单篇新闻已经不再维护;C 对应的活动已经结束,新站没有活动栏目。此时如果强行把 B 和 C 都指向首页,短期看似“没有死链”,实际会让访问者落在一个与预期完全无关的页面,也让后续判断哪些旧内容仍值得保留变得困难。
更合理的动作是先列一张映射表,每一行至少包含:旧地址、旧页面主题、是否仍有外部链接或访问需求、新站是否存在等价内容、决定采用哪种处理。这张表的作用不是追求完整,而是让每一个决定都有理由,方便下一轮复查。
当旧页和新页主题一致、内容主体仍然成立时,应做逐条精确映射。判断“仍然成立”的标准可以看三点:旧页讲的核心问题是否还在;新页是否真的回答了同一个问题;访问者从旧地址进入后,是否不需要再点一次就能获得答案。
假设旧产品页 A 讲的是某类设备的选型方法,新站同类页面保留了同样的选型逻辑,只是版式和参数表更新了,那么把 A 指向新页是成立的。执行时用服务器层面的 301 跳转,把旧地址永久指向新地址,而不是用前端脚本跳转。这样做的结果是:访问者进入旧地址后直接落到新页,后续你在检查访问日志时,也能把这次访问归到新页上,而不是归到一个中间页。
如果旧页和新页只是品类相同、具体问题不同,就不算一一对应。例如旧页讲的是安装步骤,新页讲的是产品参数,这种映射会把用户带到错误答案上,应改用下面更接近的承接方式。
旧新闻页 B 这类地址,往往数量多、单篇价值低,但栏目整体仍有意义。此时可以按主题分组,把同一栏目的旧地址统一指向新站对应栏目的列表页或专题页。条件是:该列表页确实能覆盖这些旧页的主题范围,访问者到达后能继续找到相近内容。
假设旧站有二十篇关于同一类问题的新闻,新站保留了这个主题的栏目页,那么把这二十个旧地址指向该栏目页,比全部指向首页更合理。执行后要观察两件事:一是访问者是否继续点击栏目内的内容,二是这些旧地址带来的访问是否集中在少数几个主题上。如果发现某一主题的访问明显集中,说明这部分内容仍有保留价值,下一步应考虑为它单独建页,而不是继续停留在栏目页兜底。
旧活动页 C 这类已经结束、新站没有等价内容、也没有外部链接指向的地址,可以直接返回 404 或 410。这里需要说明一个判断边界:访问量降为零、抓取量降为零,都不能单独证明处理正确,因为它们也可能是旧地址本来就没有人访问,或者抓取工具尚未重新访问。更可靠的依据是外部链接是否仍指向该地址、该地址是否还在站内被引用,以及它是否承载过需要长期保留的信息。
假设你按上面的分类完成了映射表,接下来不要只停留在表格里。选一组最有代表性的旧地址——比如访问最集中的旧栏目页——实际配置跳转,然后从旧地址访问一次,确认落点页面与旧页主题一致,并且落点页上能找到继续深入的入口。
这个动作的结果会直接影响下一步:如果落点页与旧页主题一致、访问者能继续点击,说明这组映射成立,可以按同样规则处理同类地址;如果落点页让人找不到相关内容,说明承接页选错了,应改为更具体的页面,或者为这部分旧内容单独建页。验证的对象是“落点是否解决问题”,而不是跳转是否返回了某个状态码。
映射不是一次性配置,而是新站结构的一部分。交付时应把规则写清楚:哪些旧地址做了精确映射、哪些按栏目兜底、哪些返回 404 或 410,以及后续新增旧地址时按哪条规则处理。这样当旧系统或旧合作关系继续退出时,接手的人不需要重新猜一遍,也能避免把仍有价值的旧地址误判为可丢弃。
最终要守住的原则是:映射的目标是让访问者落到最接近其预期的页面,而不是让旧地址数量在报表上归零。能对应的精确对应,不能对应的按主题承接,无价值且有依据的才让它自然失效。