检查访问状态与错误页,核心是分别确认三件事:服务器有没有响应、响应状态码是什么、返回的页面内容是否符合预期。常见误解是“浏览器能打开就说明没问题”,实际上浏览器可能展示缓存页、跳转后的页面或自定义错误页,真实状态码仍可能是404或500。多人协作交付时,应把状态码、响应头和页面内容分开记录,而不是只看截图。
访问状态由HTTP状态码表达,例如200表示正常返回,301和302表示跳转,404表示资源未找到,500表示服务器内部错误。响应头中的Location、Content-Type、Cache-Control能说明跳转目标和内容类型。页面内容则是浏览器最终渲染出来的东西,它可能被自定义错误页替换,导致“看起来正常、实际是错误页”。
协作交付时建议按以下顺序检查:
在终端执行类似命令:curl -I https://example.com/page,只取响应头;若要跟随跳转,可用curl -IL https://example.com/page。假设某页面配置了跳转,第一次返回301,第二次返回200,说明跳转链正常;如果第一次返回301,最终返回404,说明跳转目标写错。这里的关键是看最终状态码,而不是中间某一跳。
检查错误页时,还要区分“服务器返回404但页面是友好提示”和“服务器返回200但内容是错误提示”。前者是标准错误处理,后者属于软404,容易被误判为正常页面。判断方法是看状态码,而不是看页面文案。若状态码是200但内容写着“页面不存在”,应记录为待修复项。
多人协作容易返工,往往是因为每个人检查的入口不同。交付前可固定一份检查表:
适用条件是:项目已部署到可访问环境,且各角色使用同一套地址。若还在本地开发环境,状态码可能因配置不同而失真,应等部署到测试环境后再做交付检查。
很多团队把自定义错误页做得很好看,却让服务器始终返回200。正确做法是:错误页负责展示,状态码负责表达结果,两者都要对。检查时先看状态码,再看页面内容。若状态码正确但页面没有返回入口,属于体验问题;若状态码错误但页面好看,属于技术问题,应优先修复。
下一步:把上述命令和检查项整理成一页交付清单,指定一名成员在每次部署后执行,并把状态码和最终地址记录在同一张表里。