网站开发入门:怎样检查访问状态与错误页

📍 WDQWDWQD987AAAAA:216.73.216.84
📱 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
🔗 /75c127632ef5.html
📄

网站开发入门:怎样检查访问状态与错误页

检查访问状态与错误页,核心是分层收集证据:先确认请求是否到达服务器,再看服务器返回的状态码,最后查看错误页内容与服务器日志。不要一看到页面打不开就重装环境或改代码,先按“网络→HTTP状态→应用日志”的顺序缩小范围,才能判断问题出在本地、网络、服务器配置还是程序本身。

先分清三类现象:连不上、有响应但状态异常、状态正常但内容不对

访问一个页面时,浏览器或命令行工具会给出不同反馈,先归类再排查,能省掉大量试错。

判断依据是“请求有没有得到 HTTP 响应”。有响应就优先查服务器和应用;没有响应就优先查网络和服务进程。

用命令行获取状态码,比只看浏览器更可靠

浏览器会隐藏部分细节,命令行工具能直接看到状态码和响应头。假设你在排查 http://localhost:3000 这个本地开发地址,可以执行:

curl -I http://localhost:3000

只看状态码时可以用:

curl -o /dev/null -s -w "%{http_code}\n" http://localhost:3000

结果解读:

适用条件是本机或可访问的网络环境。如果命令返回 000,先确认服务进程是否在运行,再确认端口是否被占用或防火墙是否拦截。

检查错误页本身:自定义页可能掩盖真实状态

很多项目会配置自定义 404 或 500 页面。这类页面看起来正常,但服务器返回的状态码可能仍是 200,这会干扰排查。检查项如下:

  1. 用命令行确认实际状态码,而不是只看页面外观。
  2. 访问一个明确不存在的路径,例如 /this-page-should-not-exist,看返回 404 还是 200。
  3. 若返回 200,说明错误页被当成了正常页面处理,需要检查服务器或框架的错误处理配置。
  4. 若返回 500,查看错误页是否暴露了堆栈信息;生产环境不应显示详细堆栈,但开发环境可以借助它定位问题。

判断结果是:错误页显示正常但状态码不对,属于配置问题;错误页显示异常且状态码为 500,属于程序运行问题。

查看日志,把状态码对应到具体原因

状态码只是结果,日志才说明原因。不同技术栈日志位置不同,但排查思路一致:

假设访问一个页面返回 500,访问日志显示该请求已到达,错误日志显示“数据库连接失败”。那么问题不在路由,而在数据库配置或服务状态。若访问日志里根本没有这条请求,则要回到网络层排查。

按顺序执行的最小排查步骤

  1. 确认服务是否启动:检查进程和监听端口。
  2. 用 curl 获取状态码,判断属于哪类现象。
  3. 若状态码为 4xx,检查路径、权限和路由配置。
  4. 若状态码为 5xx,查看应用错误日志中的异常信息。
  5. 若状态码为 200 但内容不对,检查浏览器控制台和资源加载。
  6. 若命令返回 000,检查域名解析、网络连通性和防火墙。

这套顺序的价值在于:每一步都排除一类可能原因,避免在无关层面反复修改。代价是需要能访问命令行和日志;如果只有浏览器可用,至少也要通过开发者工具的 Network 面板查看状态码。

下一步:打开你正在开发的页面,用浏览器开发者工具的 Network 面板记录第一个失败请求的状态码,再对照本文的分类判断它属于连不上、状态异常还是内容不对,然后只针对那一类去查对应日志。

图1 图2

nginx