检查访问状态与错误页,核心是先用HTTP状态码确认“服务器是否正常回应”,再决定是修服务器配置,还是修页面内容。两种常见处理方案是:方案A,直接返回正确状态码并保留错误页;方案B,把错误页重定向到其他页面。前者适合页面确实不存在或暂时不可用的情况,后者只适合旧地址已经永久迁移、且新地址内容能替代旧页面的情况。判断依据是状态码与页面内容是否一致,而不是页面看起来是否“正常”。
浏览器能打开一个页面,不代表访问状态正确。错误页可能返回200,也可能返回404、410、500、503。检查时至少记录三项:请求地址、响应状态码、响应内容。
可以用浏览器开发者工具的“网络”面板查看状态码,也可以用命令行检查。例如:
curl -I https://example.com/old-page
如果返回HTTP/1.1 404 Not Found,说明服务器明确告知该地址不存在。如果返回HTTP/1.1 200 OK,但页面写着“找不到页面”,这就是状态码与内容不一致,需要修正。
适用前提:旧地址没有可替代的新页面,或者页面只是暂时不可访问。做法是让服务器对无效地址返回404或410,同时展示一个有用的错误页,包含返回首页、搜索入口或主要栏目链接。
验收信号:
如果页面只是临时维护,应返回503而不是404。404表示“没有这个地址”,503表示“暂时无法处理请求”,两者对访问者和后续处理的意义不同。
适用前提:旧地址已经永久迁移,新地址内容能覆盖旧页面主题,且用户访问旧地址时预期看到相近内容。此时用301跳转到新地址,比返回404更合适。
做法与检查项:
假设某教程页面从/old-guide迁移到/new-guide,可用以下方式观察跳转:
curl -I https://example.com/old-guide
若返回301且Location指向/new-guide,再请求新地址确认返回200,说明迁移链路基本正确。若返回302,则要确认这是临时调整还是配置错误;长期迁移一般应使用301。
比较依据不是“哪种更常见”,而是三个条件:地址是否永久迁移、新页面是否等价、访问者是否需要原内容。
验收时,随机抽取若干旧地址和错误地址,分别检查状态码、跳转目标、最终页面内容。若状态码与页面含义一致,跳转目标有效,错误页可操作,就可以认为访问状态处理基本合格。
把站内已知的失效地址、迁移地址和临时维护地址列成清单,逐条记录期望状态码、实际状态码、跳转目标和检查日期。每次改版或删除页面后,用同一张清单复查。这样能把“页面能不能打开”变成“访问状态是否正确”,也方便区分该修服务器、该修跳转,还是该补错误页内容。