概念
当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含 HTTP 状态码的信息头(server header)用以响应浏览器的请求。
HTTP 状态码由三个十进制数字组成,第一个十进制数字定义了状态码的类型。响应分为五类:信息响应(100–199),成功响应(200–299),重定向(300–399),客户端错误(400–499)和服务器错误 (500–599):
状态码 | 分类 | 描述 |
---|
1** | Informational(信息性状态码) | 接受的请求正在处理 | 2** | Success(成功状态码) | 请求正常处理完毕 | 3** | Redirection(重定向) | 需要进行附加操作以完成请求 | 4** | Client error(客户端错误) | 客户端请求出错,服务器无法处理请求 | 5** | Server Error(服务器错误) | 服务器处理请求出错 |
常见状态码
- 200 OK:表示从客户端发送给服务器的请求被正常处理并返回;
- 202 Accepted:已接受。已经接受请求,但未处理完成
- 204 No Content:无内容。服务器成功处理,但未返回内容。在未更新网页的情况下,可确保浏览器继续显示当前文档
- 301 Moved Permanently:永久性重定向,表示请求的资源被分配了新的URL,之后应使用更改的URL;
- 302 Found:临时移动。与301类似。但资源只是临时被移动。客户端应继续使用原有URI
- 400 Bad Request:客户端请求的语法错误,服务器无法理解
- 401 Unauthorized:请求要求用户的身份认证
- 403 Forbidden:服务器理解请求客户端的请求,但是拒绝执行此请求
- 404 Not Found:服务器无法根据客户端的请求找到资源(网页)。通过此代码,网站设计人员可设置"您所请求的资源无法找到"的个性页面
- 500 Internal Server Error:服务器内部错误,无法完成请求
- 502 Bad Gateway:作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应
- 503 Service Unavailable:由于超载或系统维护,服务器暂时的无法处理客户端的请求。延时的长度可包含在服务器的Retry-After头信息中
看到有个评论很有意思哈: 程序员最想看到的:200-OK。 程序员不想看到的:500-Internal-Server-Error。 用户不想看到的:404 Not Found。
|