验证永久重定向修复后的响应,核心是确认三件事:目标 URL 返回的状态码确实是 301、跳转链路没有多余的中间跳转、最终页面内容与预期一致。修复完成不等于验证通过,必须用可复现的检查记录交给协作者,否则下一轮改动很可能把问题带回来。
一次 301 修复可能只涉及一条规则,也可能牵动整条跳转链。验证前先确认范围,决定检查深度:
范围判断的依据是改动本身。如果只改了一个页面的规则,做全站扫描是浪费;如果改的是通用匹配规则,只测一条就可能漏掉边界情况。
最直接的验证方式是不跟随跳转,先看第一跳的响应头。以 curl 为例:
curl -I https://example.com/old-page
关注两行输出:HTTP/1.1 301 或 HTTP/2 301 表示永久重定向;Location: 后面的地址是跳转目标。如果状态码是 302、307 或 308,说明配置的不是永久重定向,需要回到规则里核对。
接着跟随跳转,看最终落点:
curl -IL https://example.com/old-page
输出里会依次列出每一跳的响应。判断标准是:中间不应出现 302 或其他临时跳转,最终一条应为 200,且请求的 URL 与业务预期一致。如果最终返回 404,说明目标地址写错或目标页面已不存在,这属于修复未完成。
交付清楚的关键是让协作者能独立复现。一条可用的验证记录至少包含:
如果只写“已验证通过”,协作者无法判断你测的是哪条规则、用的什么条件。返工往往就发生在这个信息缺口上。
状态码正确不代表跳转行为符合预期,以下几种情况需要单独确认:
/old-page 与 /old-page/ 可能命中不同规则,两者都要测。这些情况的共同点是:单测一条最干净的 URL 不会暴露问题。抽样时应有意识地覆盖这些变体。
验证通过后,把测试记录和规则变更一起归档,并在下一次规则改动前重新跑一遍同样的检查项。永久重定向一旦被客户端缓存,后续再改会变得更麻烦,所以每次改动都值得留下可对比的响应记录。如果站点有多个域名或子域参与跳转,按域名分别记录,不要用一次测试代表全部。