检查访问状态与错误页,核心是先把“应该返回什么”写清楚,再逐项比对“实际返回了什么”。对网站建设与优化而言,验收对象不是页面好不好看,而是每个重要地址在正常、异常和跳转三种情况下,是否给出可解释的状态码、可读的错误页和可复现的记录。没有这份基准,看到 404、500 或空白页只能猜;有了基准,才能判断是配置问题、内容缺失还是服务端故障。
从交付结果倒推,第一步不是打开浏览器乱点,而是列出必须验证的地址清单。至少覆盖:首页、栏目页、内容详情页、搜索或筛选结果页、表单提交后的返回页、登录后页面、旧地址跳转目标、明显不存在的地址。每个地址后面写两列:预期状态码、预期去向。例如正常页面预期 200;已迁移的旧地址预期 301 并跳到新地址;不存在的地址预期 404 且展示站内错误页;无权限访问预期 403 或跳转到登录页。
这一步的适用条件是:你已经知道网站的基本结构。如果结构本身还在变,就先冻结一份待测地址表,否则后面记录无法对比。判断结果是:清单越具体,后面越容易区分“配置错误”和“内容尚未发布”。
浏览器能看页面,但不适合批量核对状态码。更稳妥的做法是用命令行或在线头信息工具逐条请求,并保存结果。下面是一个可执行的检查例子,把地址替换成你自己的待测地址:
curl -I -L https://example.com/old-page
-I 只取响应头,-L 跟随跳转。重点看三处:第一行状态码、Location 指向哪里、跳转链有几跳。如果一条旧地址连续跳多次才到目标,移动端和抓取都可能变慢,应记录跳转次数。若返回 200 但页面内容是“抱歉,页面不存在”,这属于软 404:状态码说正常,内容却是否定,需要让开发改成真正的 404。
检查项还包括:错误页是否返回正确状态码、是否包含返回首页或栏目入口、是否泄露服务器路径或堆栈信息。判断结果是:状态码与页面内容一致,才算通过;只改页面文案不改状态码,不算修复。
同一现象可能有多种解释,不能一看到打不开就断言服务器坏了。可以按下面顺序缩小范围:
把“可能原因”和“已经定位的原因”分开写。只有通过日志、响应头和复现步骤确认的那一条,才写成结论。例如:某地址返回 500,服务器日志显示数据库连接失败,才能写“已定位为数据库连接异常”,而不是笼统写“网站故障”。
错误页不是只写“404 Not Found”。从交付结果看,它至少要完成三件事:说明当前地址不可用、给出可继续访问的入口、保持与站点一致的基本样式。对 404 页面,检查是否有站内搜索、主要栏目链接或返回首页按钮;对 403 页面,检查是否说明需要登录或联系谁;对 500 页面,检查是否避免暴露内部错误细节,同时保留可记录的请求标识或时间。
适用条件是:错误页由站点自己控制。如果错误页由服务器或 CDN 默认生成,先确认能否自定义;不能自定义时,至少保证状态码正确,并记录这一限制。判断结果是:访问者不会停在死胡同,支持人员能根据页面信息定位请求。
一次检查结束后,应留下一张表:地址、预期状态码、实际状态码、跳转目标、错误页表现、复现步骤、初步判断、负责人。这样做的价值在于,网站建设与优化的验收不再依赖口头描述。下次同一地址再次异常时,可以直接对比历史记录,判断是回归问题还是新问题。
下一步,选十个最重要地址,按上面的命令逐条执行,把结果填进同一张表;遇到状态码与页面内容不一致的,优先交给开发确认,而不是先改文案。