HTTP 状态码速查

按编号、名称或场景关键词搜索 40 多个 HTTP 状态码,看含义、常见原因与处理建议。

支持编号、中文名、英文名与常见场景,例如「上传」「限流」「重定向」

按类别筛选

共 0 个状态码

使用说明

  1. 在搜索框输入状态码数字,或输入「跨域」「超时」「缓存」这类场景词快速定位。
  2. 点类别按钮只看 1xx 到 5xx 中的某一类,配合搜索可以进一步缩小范围。
  3. 展开任意一条,可以看到这个状态码的含义、常见原因与处理建议三段内容。
  4. 点条目里的「复制」把编号与名称复制走,贴进工单或聊天记录里。
  5. 状态码只是线索,排查时还要结合响应体、响应头与服务端日志一起看。

常见问题

4xx 和 5xx 到底该谁负责?
4xx 表示请求本身有问题,责任在客户端,比如参数错、没登录、权限不足。5xx 表示服务端处理失败,责任在服务端,比如代码异常、上游超时。分界线清楚,排查方向就不会跑偏。
为什么浏览器控制台看到的跨域错误没有状态码?
跨域请求被浏览器拦截时,响应可能根本没到 JavaScript 手里,控制台只显示 CORS 提示。真实状态码常在 Network 面板或服务端日志里,常见的是 403 或 200 但缺少 Access-Control-Allow-Origin。
301 和 302 对 SEO 有什么影响?
301 表示永久跳转,搜索引擎会把权重转移到新地址;302 表示临时跳转,原地址仍保留权重。确定不再使用的地址用 301,活动页或临时维护用 302 或 307。
304 是错误吗?
不是。304 Not Modified 表示缓存仍然有效,服务器让浏览器直接用自己的副本,响应体为空。出现 304 说明协商缓存工作正常,反而省流量。

使用步骤

  1. 按编号搜索

    知道 404、502 这类编号时直接输入数字,列表会实时过滤到对应条目,不用翻页。

  2. 按场景搜索

    只记得现象时输入「跨域」「上传」「超时」「缓存」这类词,关键词表覆盖了常见说法与英文名。

  3. 按类别筛选

    点 4xx 或 5xx 只看某一类,配合搜索可以快速定位「客户端参数问题」或「网关问题」。

  4. 展开看三段

    每条包含含义、常见原因与处理建议,展开后可以对照自己的场景逐条排查。

  5. 复制到工单

    点条目里的复制按钮,把编号与名称贴进工单、聊天或提交信息里,沟通时少一段解释。

工具详细介绍

HTTP 状态码是服务端给客户端的第一句回答。三个数字分成五段,1xx 表示还在处理,2xx 表示成功,3xx 表示去别处拿,4xx 表示请求方有问题,5xx 表示服务端出错。排查线上问题时,先看这一段属于哪一类,就能判断该翻前端代码还是服务端日志。方向对了能省下大量时间,方向错了越查越乱。状态码用错的地方,往往也是监控盲区,报错统计会跟着失真。

本页收录 45 个日常最常遇到的状态码,每条给出含义、常见原因与处理建议三段。数据写在页面脚本里,搜索与筛选都在本地完成,断网也能用,输入的关键词不会被记录。关键词表同时收录中文场景词与英文名称,输入「限流」能找到 429,输入 rate limit 也能。全部条目按编号排序,方便顺序浏览;打开一条会收起上一条,屏幕不会被撑长,页面也很轻。

原理与背景

状态码的语义写在 RFC 9110 里,数字的第一位决定类别,后两位只是编号。方法本身也有语义:GET、PUT、DELETE 应当是幂等的,重复调用结果一致;POST 不保证。301 与 308 是永久跳转,浏览器会长期缓存,改错了很难回滚;302 与 307 是临时跳转,307 会保留原方法。201 表示创建成功并带 Location,204 表示成功但没有响应体。401 与 403 常被混用,前者是没认证,后者是认证了但没权限。分清这些差异,排错时就不会张冠李戴。

排查线上故障时,状态码要结合上下文看。网关返回 502,说明它收到了无法解析的上游响应,问题多半在后端进程或端口;504 说明上游太慢,要去查慢查询与线程池。接口把业务失败也返回 200,会让监控与重试机制失效,客户端只能解析响应体判断成败。日志里记录状态码、耗时与请求 ID,排查时才能把一次请求串起来。监控按状态码分组,能看出是参数问题集中爆发,还是某个上游整体挂了。

典型使用场景

  1. 接口联调排错

    前端说请求失败,后端说日志里没有报错。先看浏览器 Network 面板的状态码:401 是令牌没带,422 是字段校验没过,502 是网关没连上后端。三类问题对应三个负责人,比在群里来回猜快得多,也避免把时间花在无关的日志上。

  2. Nginx 报 502

    发布后整站 502,静态页却正常。查 Nginx 错误日志,upstream 指向的 PHP-FPM 端口没起来,状态码把范围直接缩到后端进程。重启服务并加健康检查即可恢复,顺手把上游超时与重试配置一并核对。

  3. 站点改版做 301

    栏目地址整体调整,旧链接还有外链。把旧地址逐条 301 到新地址,避免跳转链,保留至少一年。没有对应内容的页面返回 410,比留一个空页面更干净,搜索引擎也能更快清理索引。

使用技巧

  • 排查时先记下状态码,再看响应体与响应头,最后才看服务端日志,顺序反了容易被日志带偏。
  • 反向代理返回的 502 与 504 要看上游服务,不是代理本身坏了。
  • 给接口设计错误码时,HTTP 状态码表达传输层语义,业务错误放在响应体里,两层不要混。

注意事项

  • 所有响应都返回 200

    业务失败也回 200,监控看不到错误,重试与熔断也无法触发。传输层用状态码表达结果,业务错误放进响应体的错误字段。两层各司其职,客户端和监控才能用同一套规则判断成败。

  • 401 与 403 混用

    令牌过期返回 403,会让客户端不知道该刷新还是该找管理员。401 配 WWW-Authenticate 提示认证方式,403 明确表示权限不足。前端处理逻辑分开写,用户看到的提示也更准确,处理起来更省事。

  • 把内部堆栈透传给用户

    500 响应里带数据库地址与堆栈,既泄露信息又难读。对外返回统一错误结构与请求 ID,详细信息只写服务端日志。排查时按请求 ID 关联,既保留了线索,也不把内部结构暴露出去。

相关工具