HTTP状态码是由服务器返回给客户端(通常是一个网络浏览器或一个HTTP客户端应用程序)的三位数字代码,它们表示了对应的HTTP请求是否成功,并描述了请求失败的原因。
状态码分为五个类别,每个类别有特定的含义:
1xx - 信息响应
这类状态码表示临时的响应,客户端应该继续请求。
- 100 Continue:客户端应继续其请求
- 101 Switching Protocols:请求者已要求服务器切换协议,服务器已确认并准备切换
2xx - 成功
这类状态码表示请求已成功被服务器接收、理解并接受。
- 200 OK:标准的响应成功状态码
- 201 Created:请求成功并且服务器创建了新的资源
- 202 Accepted:服务器已接受请求,但尚未处理
- 204 No Content:服务器成功处理了请求,但没有返回任何内容
3xx - 重定向
这类状态码表示进一步操作需要以完成请求。通常,这些状态码用于重定向。
- 301 Moved Permanently:请求的页面已永久移动到新位置
- 302 Found(之前叫作 “Moved Temporarily”):请求的页面临时移动到其他位置
- 304 Not Modified:自从上次请求后,请求的网页未修改过
4xx - 客户端错误
这类状态码表示请求可能出错,妨碍了服务器的处理。
- 400 Bad Request:服务器不理解请求的语法
- 401 Unauthorized:请求要求用户的身份认证
- 403 Forbidden:服务器拒绝请求
- 404 Not Found:服务器找不到请求的网页
- 405 Method Not Allowed:禁用请求中指定的方法
5xx - 服务器错误
这类状态码表示服务器在尝试处理请求时发生了错误。
- 500 Internal Server Error:服务器遇到错误,无法完成请求
- 501 Not Implemented:服务器不具备完成请求的功能
- 502 Bad Gateway:服务器作为网关或代理,从上游服务器收到无效响应
- 503 Service Unavailable:服务器目前无法使用(由于超载或停机维护)
- 504 Gateway Timeout:服务器作为网关或代理,但是没有及时从上游服务器收到请求