先给结论:不要追求把每个旧地址都精确指向一个内容等价的新页。更稳妥的做法是先把历史地址按“可判定归属、只能归到栏目、完全无归属”分成三层,再为每层设计不同的映射动作。判断是否成功的标准,不是旧地址全部返回200,而是访问者是否落到最接近其原意的页面,并且这一步的结果能决定下一批地址怎么处理。
某次改版后,运营同事认为旧地址只要还能打开就算处理完毕;内容编辑发现不少旧地址跳到了栏目首页,认为这等于没处理;开发同事则坚持按一对一重定向列表执行,凡是找不到对应页的地址就返回404。三方分歧的根源不是技术能力,而是对“对应”这个词的定义不同。
第一种解释:映射的目标是保住访问路径,只要地址不报错、能到达站内相关区域即可。第二种解释:映射的目标是保住内容意图,访问者必须看到与原来主题一致的页面。两种解释都成立,但适用的地址类型不同。如果混在一起讨论,就会陷入“到底该不该返回404”的无效争论。
要判断一个旧地址属于哪一层,可以核对三类证据,而不是凭印象争论。
/guide/return-policy 这类能看出内容的路径,与 /p/1032 这类纯编号路径,处理难度完全不同。假设一个旧地址是 /news/2019/0421,既没有可读主题词,也没有内容备份,但站外仍有若干链接指向它。此时把它硬塞给某个新页,反而会让访问者困惑;更合理的动作是让它落到新闻栏目页,并在该页顶部保留一句说明,提示内容已归档。这个动作的结果会告诉你:如果访问者在该栏目页继续点击的比例尚可,说明栏目级映射可接受;如果几乎立刻跳出,说明需要为这类地址单独保留摘要页。
第一层是可判定归属的地址。旧路径语义清晰、内容残留完整,就直接指向主题最接近的新页。判断标准是:新旧两页的核心主题是否可以用同一句话概括。如果不能,就不要勉强一对一。
第二层是只能归到栏目的地址。旧地址能看出大致分类,但具体内容已不可考。此时指向对应栏目页,并确保栏目页对该主题有实质覆盖,而不是一个空壳列表。
第三层是完全无归属的地址。既无语义、又无残留、也无外部引用,可以返回410或404。但要先确认它们确实没有外部引用,否则会损失已有访问。
这三层的划分结果直接决定下一步:第一层可以批量执行;第二层需要内容编辑确认栏目页是否够用;第三层需要先跑一次外链核对,再决定是否放弃。
与其开会争论“该不该返回404”,不如把每个旧地址变成一行可核对的记录,字段至少包含:旧地址、地址语义是否可读、内容残留是否存在、外部引用是否有、拟映射目标、映射层级、核对人。这样运营、编辑、开发看的是同一份事实,而不是各自的判断。
需要说明的是,访问量或抓取量下降本身不能单独证明映射做对了。它也可能来自季节波动、渠道调整或统计口径变化。真正能作为依据的,是访问者落到目标页后的下一步行为:是否继续浏览、是否返回、是否离开站点。这些信号配合层级划分,才能支撑下一批地址的处理决策。