HTTP 状态码

📡 HTTP Status

📐 工作原理与说明
HTTP 状态码由三位数字组成,首位数字表示响应类别,用于告知客户端请求的处理结果。
  • 分类:1xx 信息、2xx 成功、3xx 重定向、4xx 客户端错误、5xx 服务端错误。
  • 常见码:200 成功、301/302 重定向、304 未修改、400 请求错误、401 未认证、403 无权限、404 不存在、500 服务端异常。
  • 重定向:301 为永久重定向(会被浏览器缓存),302 为临时重定向。
  • 用途:客户端据此决定重试、跳转或报错处理。

📚 深度解析:HTTP 状态码速查

💡 常见使用场景

  • 定位接口故障:看 4xx 与 5xx 的分界判断责任方——4xx 多半是请求参数或鉴权问题,5xx 说明服务端处理失败。
  • 核对重定向语义:确认 301(永久,会被浏览器长期缓存)与 302(临时)用对了地方,错误的 301 会导致用户长期跳到错误地址。
示例
200 OK、301 永久重定向、404 未找到、500 服务端错误。

❓ 常见问题(FAQ)

401 和 403 有什么区别?
401 Unauthorized 表示「未认证」——请求缺少或携带了无效凭据,通常应伴随 WWW-Authenticate 头提示认证方式;403 Forbidden 表示「已认证但无权限」,服务器认识你是谁,只是拒绝访问。混淆两者会让客户端无法判断该去登录还是该申请授权。
为什么 Nginx 日志里出现 499?
499 是 Nginx 自定义的状态码,表示客户端在服务器返回响应前主动关闭了连接(用户关页面、前端超时中断)。它不是标准 HTTP 状态码,排查时应看是不是后端响应过慢或前端超时设置过短,而不是去找 4xx 的错误处理逻辑。
⚠️ 使用说明与注意事项
📖关于「HTTP 状态码」 ▼

📝工具简介

Look up HTTP status codes with their meaning and typical use cases.