检查访问状态与错误页,核心是逐条核对“请求是否到达服务器、服务器返回什么状态码、页面内容是否符合预期”。最直接的做法:打开浏览器开发者工具的 Network 面板,刷新目标页面,看每一条请求的 Status 列;再用命令行工具对关键 URL 发一次请求,确认返回码与响应头。两者结果一致,才能判断访问状态正常。
HTTP 状态码是判断访问状态的第一依据,按首位数字分组理解即可。
200,表示服务器正常返回了内容。看到 200 不代表页面一定正确,还要看内容是否是目标页面。301 是永久跳转,302 是临时跳转。需要确认跳转终点是期望的地址,而不是跳向无关页面或形成循环。404 表示资源不存在,403 表示服务器拒绝访问,500 表示服务器内部出错。4xx 多与地址、权限有关,5xx 多与服务端程序或配置有关。判断结果:如果目标 URL 返回 200 且内容正确,访问状态正常;返回 3xx 要看终点;返回 4xx 或 5xx 则需要按下面清单逐项排查。
curl -I 目标地址。结果说明:返回 200 表示主页面可访问;返回 404 表示地址错误或资源已移除;返回 500 表示服务端处理失败,需要查服务端日志。curl -IL 目标地址 跟随跳转,观察每一跳的 Location 头。结果说明:跳转次数过多或终点与预期不符,说明重定向配置有问题。目标域名/不存在的路径。结果说明:应返回 404 状态码并显示自定义错误页;如果返回 200 却显示“页面不存在”,说明错误页配置把状态码写成了成功,会影响后续判断。误区一:只看页面显示,不看状态码。 有些错误页视觉上很友好,但返回的是 200,这会让监控工具误判为正常。检查时必须同时看状态码和页面内容。
误区二:把 5xx 当成前端问题。 5xx 通常来自服务端程序异常、依赖服务不可用或配置错误。此时应先查服务端日志和最近一次变更,而不是反复修改前端代码。
适用条件:上述方法适用于常规 HTTP 网站。如果页面内容由前端脚本异步加载,主文档返回 200 只说明外壳可访问,数据接口的状态码需要单独在 Network 面板中查看。
每次检查后记录四项:请求 URL、返回状态码、跳转终点、检查时间。这样在问题复现或交接时,可以直接对比不同时间点的差异。假设某页面昨天返回 200、今天返回 500,记录能快速锁定变化发生在服务端而非访问方式。
下一步:挑出网站中三个最重要的页面——首页、一个栏目页、一个详情页,按上面的清单各查一遍,把状态码和异常项记下来,再决定是先修配置还是先查服务端日志。