核心判断很简单:如果旧地址和新页之间是多对一(多个旧地址指向同一主题的新页),应该用301逐一映射到同一个新页;如果是一对多(一个旧地址的内容被拆成多个新页),不要硬选一个目标,而应让旧地址落到一个说明页或新页的上级栏目,再让用户继续选择。前者是收敛,后者是分发,方向不同,处理方式也不能混用。
很多新手只检查旧地址是否返回404,却忽略了一个更关键的条件:旧地址当初承载的是一个完整主题,还是主题下的一个片段。这个判断直接决定映射策略。
假设一个旧地址 /guide/basic 原来同时讲了建站流程、域名选择和内容规划三块内容,而新站把它们拆成了三个独立页面。如果强行把 /guide/basic 301到其中任意一个页面,用户会以为另外两块内容消失了,而且搜索引擎也只能看到一个窄目标。更合理的做法是把旧地址指向一个“建站入门”栏目页或总览页,由该页链接到三个新页面。这里的假设是:旧地址确实曾覆盖多个主题,而不是仅仅标题写得宽泛。
反过来,如果三个旧地址 /old/a、/old/b、/old/c 分别讲的是同一件事的不同版本,而新站只有一个合并后的页面,那么逐一301到该新页是成立的。判断依据不是旧地址数量,而是每个旧地址的实际内容边界。
选择:逐一做301映射,并且优先保留那些曾经有过外部链接或稳定访问的旧地址。动作上,先列出一张旧地址清单,给每个旧地址标注它原本的主题,再在新站找到唯一对应的新页。映射完成后,用浏览器访问旧地址,确认最终落到的新页标题与旧地址原主题一致,而不是落到首页。
结果如何影响下一步:如果多个旧地址都落到同一个新页,而该新页的标题只覆盖了其中一个旧主题,就需要回头修改新页标题或补充段落,让映射目标能承接所有旧地址的语义。否则映射虽然技术上通了,用户和搜索引擎仍会认为内容不匹配。
选择:不要做一对一301到某个新页,而是让旧地址返回一个包含去向说明的页面,或者301到新页的上级栏目。这个页面不需要复杂,只要列出“原来这里的内容现在分成了哪几页”并给出链接。动作上,先确认新站是否已经有一个能概括这些新页的栏目页;如果没有,就新建一个简单的导航页,再让旧地址指向它。
结果如何影响下一步:如果旧地址过去有较多外部链接,指向栏目页比指向单个新页更稳妥,因为栏目页可以同时链接到所有拆分后的新页。接下来应观察该栏目页的链接点击分布,如果多数用户只点其中一页,说明拆分可能过细,后续可以考虑合并部分新页。
有些旧地址是分页、筛选参数或临时活动页,它们本来就没有稳定的内容主题。这类地址不适合逐一寻找新页,也不适合全部301到首页。更实际的处理是:如果参数页没有独立价值,直接让它们返回404或410;如果它们曾参与站内导航,则在服务器层面统一跳转到对应的新栏目。这里的关键条件是:旧地址是否曾经作为独立入口被用户收藏或引用。没有这个条件,就不必为每个参数组合设计映射。
另一个例外是旧地址对应的内容已经彻底不再提供。此时不要为了“保住地址”而映射到一个不相关的新页,那只会让用户更快离开。让旧地址返回404,并在404页面提供搜索框或热门新页链接,比错误映射更诚实。
这套顺序的重点是:先判断语义关系,再决定跳转目标;跳转目标不匹配时,优先改目标页,而不是改跳转规则。只有把旧地址的内容边界和新页的覆盖范围对齐,映射才真正成立。