HTTP状态码(HTTP Status Code) 是当我们访问网页服务器,服务器做出相应的状态的3位数的数字代码。主要包括“1xx”(消息)、“2xx”(成功)、“3xx”(重定向)、“4xx”(请求错误)和“5xx”或“6xx”(服务器错误)五种不同类型。
比较常见的状态码有:
HTTP: Status 200 – 服务器成功返回网页
HTTP: Status 404 – 请求的网页不存在
HTTP: Status 503 – 服务不可用
一、“1xx”(消息)(临时响应):
属于临时相应,代表所发出的请求已经被接受,需要继续进行处理。只包含状态行和某些可选的响应头信息,并以空行结束。由于 HTTP/1.0 协议中没有定义任何 1xx 状态码,所以除非在某些试验条件下,服务器禁止向此类客户端发送 1xx 响应。
1、“100 Continue”(继续):
–>表示临时响应并需要请求者继续执行操作的状态代码。
2、“101 Switching Protocols”(切换协议):
–>请求者已要求服务器切换协议,服务器已确认并准备切换。
3、“102 Processing”:
–>由WebDAV(RFC 2518)扩展的状态码,代表处理将被继续执行。
二、“2xx”(成功):
表示成功处理了请求的状态代码。
1、“200 OK”(成功):
–> 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。
2、“201 Created”(已创建):
–>请求成功并且服务器创建了新的资源。
3、“202 Accepted”(已接受):
–>服务器已接受请求,但尚未处理。
4、“203 Non-Authoritative Information”(非授权信息):
–>服务器已成功处理了请求,但返回的信息可能来自另一来源。
5、“204 No Content”(无内容):
–>服务器成功处理了请求,但没有返回任何内容。
6、“205 Reset Content”(重置内容):
–> 服务器成功处理了请求,但没有返回任何内容。
7、“206 Partial Content”(部分内容):
–>服务器成功处理了部分 GET 请求。
8、“207 Multi-Status”:
–>由WebDAV(RFC 2518)扩展的状态码,代表之后的消息体将是一个XML消息,并且可能依照之前子请求数量的不同,包含一系列独立的响应代码。
三、3xx”(重定向):
这类状态码代表需要客户端采取进一步的操作才能完成请求。
1、“300 Multiple Choices”:
–>多种选择。请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择。
2、“301 Moved Permanently”:
–>永久移动。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替,
3、“302 Move temporarily”:
–>临时移动。与301类似。但资源只是临时被移动。客户端应继续使用原有URI。
4、“303 See Other”:
–>查看其它地址。与301类似。使用GET和POST请求查看。
5、“304 Not Modified”:
–>未修改。所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。客户端通常会缓存访问过的资源,通过提供一个头信息指出客户端希望只返回在指定日期之后修改的资源。
6、“305 Use Proxy”:
–>使用代理。所请求的资源必须通过代理访问。
7、“306 Switch Proxy”:
–>已经被废弃的HTTP状态码。
8、“307 Temporary Redirect”:
–>临时重定向。与302类似。使用GET请求重定向。
四、“4xx”(请求错误):
客户端错误,请求包含语法错误或无法完成请求。
1、“400 Bad Request”(错误请求) :
–>服务器不理解请求的语法。
2、“401 Unauthorized”(未授权) :
–>请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。
3、“402 Payment Required”:
–>该状态码是为了将来可能的需求而预留的。
4、“403 Forbidden”(禁止):
–>服务器拒绝请求。
5、“404 Not Found”(未找到) :
–>服务器找不到请求的网页。
6、“405 Method Not Allowed”(方法禁用) :
–>禁用请求中指定的方法。
7、“406 Not Acceptable”(不接受) :
–>无法使用请求的内容特性响应请求的网页。
8、“407 Proxy Authentication Required”(需要代理授权) :
–>此状态代码与 401(未授权)类似,但指定请求者应当授权使用代理。
9、“408 Request Timeout”(请求超时) :
–>服务器等候请求时发生超时。
10、“409 Conflict”(冲突) :
–>服务器在完成请求时发生冲突。 服务器必须在响应中包含有关冲突的信息。
11、“410 Gone”(已删除):
–>如果请求的资源已永久删除,服务器就会返回此响应。
12、“411 Length Required”(需要有效长度) :
–>服务器不接受不含有效内容长度标头字段的请求。
13、“412 Precondition Failed”(未满足前提条件) :
–>服务器未满足请求者在请求中设置的其中一个前提条件。
14、“413 Request Entity Too Large”(请求实体过大) :
–>服务器无法处理请求,因为请求实体过大,超出服务器的处理能力。
15、“414 Request-URI Too Long”(请求的 URI 过长):
–>请求的 URI(通常为网址)过长,服务器无法处理。
16、“415 Unsupported Media Type”(不支持的媒体类型) :
–>请求的格式不受请求页面的支持。
17、“416 Requested Range Not Satisfiable”(请求范围不符合要求) :
–>如果页面无法提供请求的范围,则服务器会返回此状态代码。
18、“417 Expectation Failed”(未满足期望值) :
–>服务器未满足”期望”请求标头字段的要求
19、“421There are too many connections from your internet address”:
–>从当前客户端所在的IP地址到服务器的连接数超过了服务器许可的最大范围
20、“423 Locked”:
–>当前资源被锁定。
21、“424 Failed Dependency”:
–>由于之前的某个请求发生的错误,导致当前请求失败,例如 PROPPATCH
22、“425 Unordered Collection”:
–>在WebDav Advanced Collections 草案中定义,但是未出现在《WebDAV 顺序集协议》(RFC 3658)中。
23、“426 Upgrade Required”:
–>客户端应当切换到TLS/1.0。(
24、“449 Retry With”:
–>由微软扩展,代表请求应当在执行完适当的操作后进行重试。
五、5xx”或“6xx”(服务器错误):
服务器错误,服务器在处理请求的过程中发生了错误。
1、“500 Internal Server Error”(服务器内部错误) :
–>服务器遇到错误,无法完成请求。
2、“501 Not Implemented”(尚未实施) :
–>服务器不具备完成请求的功能。 例如,服务器无法识别请求方法时可能会返回此代码。
3、“502 Bad Gateway”(错误网关):
–>服务器作为网关或代理,从上游服务器收到无效响应。
4、“503 Service Unavailable”(服务不可用):
–>服务器目前无法使用(由于超载或停机维护)。 通常,这只是暂时状态。
5、“504 Gateway Timeout”(网关超时) :
–>服务器作为网关或代理,但是没有及时从上游服务器收到请求。
6、“505 HTTP Version Not Supported”(HTTP 版本不受支持):
–>服务器不支持请求中所用的 HTTP 协议版本。
7、“506 Variant Also Negotiates”:
–>代表服务器存在内部配置错误
8、“507 Insufficient Storage”:
–>服务器无法存储完成请求所必须的内容。这个状况被认为是临时的。
9、“509 Bandwidth Limit Exceeded”:
–>服务器达到带宽限制。
10、“510 Not Extended”:
–>获取资源所需要的策略并没有没满足。
11、“600 Unparseable Response Headers”:
–>源站没有返回响应头部,只返回实体内容。