状态码分类:
1xx:100-101 信息提示
2xx:200-206 成功
3xx:300-307 重定向
4xx:400-415 错误类信息,客户端错误
5xx:500-505 错误类信息,服务器端错误
常见状态码:
200: 成功,请求数据通过响应报文的entity-body部分发送;OK
301:永久重定向,Moved Permanently,请求的URL指向的资源已经被删除;但在响应报文中通过首部Location指明 了资源现在所处的新位置
302:临时重定向,Moved Temporarily,响应报文Location指明资源临时新位置
304: 客户端发出了条件式请求,但服务器上的资源未曾发生改变,则通过响应此响应 状态码通知客户端; Not Modified,但无需再发送原始数据即实体给客户端
307: 浏览器内部重定向,而无需再向服务器发送请求
401: 需要输入账号和密码认证方能访问资源;Unauthorized
403: 请求被禁止;Forbidden,一般是因为权限错误或主页文件不存在
404: 服务器无法找到客户端请求的资源;Not Found
413: 上传的资源超过了最大限制值
499: 客户端主动断开连接。然而在实际业务开发中,当出现 HTTP 499 状态码时,大部分都是由于服务端 请求时间过长,导致客户端等的“不耐烦”了,因此断开了连接。比如:慢SQL问题,499是客户端读超时关闭 连接造成的,推荐从超时时间或者优化响应速度入手,web服务器发现客户端主动关闭连接后,记录到access 日志中的。可能是客户端接收响应超时了,可以先在客户端统计下是不是这个原因,再调查为什么会导致超时
500: 服务器内部错误;Internal Server Error,比如:cgi程序没有执行权限,或连接数据库失败,rewrite死循环
502: Bad Gateway,代理服务器从后端服务器收到了一条错误响应,如无法连接到网关;Bad Gateway, 比如:后端服务端口没有打开,或后端服务不可用或关机(ARP广播无响应),防火墙拒绝iptable -j REJECT也会返回502,确认服务器是down,相当于事物的“不存在”
503:服务不可用,临时服务器维护或过载,服务器无法处理请求,比如:超过连接数和连接频率
504: Gateway Timeout,网关超时,或者后端服务器无回应报文,比如:服务端口虽然打开,但服务返回结果 时间过长,防火墙丢弃iptable -j DROP,不确定服务器是down,相当于事物的“失踪”