protocol

HTTP 状态码详解

·4 分钟阅读·1435 字

说明 HTTP 状态码分类、常见状态码含义、排查思路和生产网关场景中的使用方式

📋 目录

HTTP 状态码详解

核心定义 HTTP 状态码是服务端对客户端请求处理结果的标准化响应码,用于表达请求成功、重定向、客户端错误或服务端错误。运维排障中,状态码是定位网关、服务和依赖异常的重要入口。

1. 状态码分类

分类范围含义
1xx100-199信息响应,请求已收到并继续处理
2xx200-299请求成功
3xx300-399重定向
4xx400-499客户端错误
5xx500-599服务端错误

2. 常见 2xx 状态码

状态码含义典型场景
200OK请求成功并返回内容
201Created创建资源成功
204No Content请求成功但无响应体

3. 常见 3xx 状态码

状态码含义典型场景
301永久重定向HTTP 跳 HTTPS、域名迁移
302临时重定向登录跳转、临时路由
304未修改浏览器缓存命中

4. 常见 4xx 状态码

状态码含义排查方向
400请求格式错误参数、JSON、Header 格式
401未认证Token、Cookie、登录态
403无权限RBAC、ACL、IP 白名单
404资源不存在路由、路径、服务发布
405方法不允许GET/POST 方法不匹配
408请求超时客户端、网络、网关超时
429请求过多限流、风控、配额

5. 常见 5xx 状态码

状态码含义排查方向
500服务内部错误应用异常、代码错误
502Bad Gateway网关到上游失败、上游连接异常
503服务不可用上游无实例、过载、维护中
504Gateway Timeout网关等待上游超时

6. 排查思路

状态码排查应结合链路定位:

Client → DNS → LB/CDN → Ingress/Nginx/Gateway → Service → Pod/应用 → 依赖服务

常用命令:

curl -I https://example.com
curl -v https://example.com/api

排查重点:

  1. 4xx 优先看客户端请求、认证鉴权、路由和权限。
  2. 5xx 优先看网关日志、上游服务状态和应用日志。
  3. 502/503/504 要重点区分连接失败、无可用实例和上游超时。
  4. 301/302 要检查重定向目标是否正确。

7. 面试回答模板

标准回答 HTTP 状态码用于表示服务端对请求的处理结果。2xx 表示成功,3xx 表示重定向,4xx 表示客户端侧问题,5xx 表示服务端或网关侧问题。生产排查中,404 通常看路由和资源是否存在,401/403 看认证鉴权,502 看网关到上游连接,503 看服务是否可用,504 看上游响应是否超时。应结合网关日志、应用日志和链路拓扑逐层定位。


关联文档

Yanche Blog

记录云原生、Linux、数据库等技术领域的学习心得,以及日常生活的思考与感悟。

© 2026 Yanche Blog. All rights reserved.

Powered by Astro