网站迁移前,围绕HTML链接用法最该准备的记录是一份完整的URL台账:把旧站每个可访问页面的URL、它在站内被哪些页面用<a href>链接指向、它指向哪些目标、以及迁移后对应的新URL全部列出来。这份台账是后续做301跳转、修复内链和验证收录的基础。没有它,迁移后大量链接会指向404或旧地址,用户和搜索引擎都会迷路。
不要只导出URL列表,要按链接关系记录。建议每个旧URL一行,至少包含以下字段:
站内链接可以用爬虫工具抓取,也可以从模板和内容库里导出。关键是入链和出链都要有,因为迁移后最容易断的正是这些用<a href>写死的相对或绝对地址。
迁移时常见两种做法,适用条件不同。
方案一:规则化整站映射。适合URL结构有统一规律、页面数量大的站点。做法是用规则把旧路径批量映射到新路径,例如把/old-category/page-name映射到/new-category/page-name。判断依据是:抽样检查几十个URL,如果新旧路径的对应关系能用少数几条规则覆盖,就适合。优点是配置量小,缺点是例外页面容易被规则带错,需要单独列出例外清单。
方案二:逐页重定向。适合页面少、结构变动大、或大量页面被合并删除的站点。做法是给每个旧URL单独指定新目标。判断依据是:新旧路径没有稳定对应关系,或存在大量一对多合并。优点是精确,缺点是工作量大,且容易漏页。
实际操作中多数站点是混合:主结构用规则映射,例外页面逐页处理。无论选哪种,都必须在台账里给每个旧URL一个明确去向,不能留空。
本题最关键的一步是:在配置服务器跳转之前或同时,把站内所有<a href>直接改成新URL,而不是依赖跳转兜底。
原因是跳转是给外部链接和用户书签用的,站内链接如果继续指向旧地址,每次点击都要多一次跳转,增加延迟,也让爬虫反复走旧路径。正确顺序是:
相对路径的链接要特别检查。如果模板里写的是<a href="/old-path/">这类根相对路径,换域名或换目录后可能直接失效,应改为新路径。绝对路径链接则要确认域名和协议是否一致。
迁移上线后按以下清单验证:
发现问题时,先区分“可能原因”和“已定位的原因”。例如旧URL返回404,可能原因是跳转规则未生效,也可能是该页从未被纳入台账。前者查服务器配置,后者查台账完整性,不要直接断定是某一方的问题。
迁移不是一次性动作。后续新增、删除或改版页面时,继续在台账里更新URL和链接关系,并定期抓取站内<a href>,检查是否出现指向已删除地址的链接。可以设一个简单的检查习惯:每次发布新内容后,抽查其中的站内链接是否能直接打开,而不是绕经跳转。
下一步建议先导出当前站点的URL清单和站内链接关系,按上面的字段建好台账,再决定用规则映射还是逐页重定向。台账建完,迁移方案自然就清晰了。