HTTP狀態碼介紹
- 狀態碼的職責是當客戶端向服務器發送請求時,描述返回的請求結果。藉助狀態碼,用戶能夠知道服務器端是正常處理了請求,仍是出現了錯誤。
狀態碼的類別
- http狀態碼一般分爲5種類型,分別是以1~5五個數字開頭,並由三位整數組成
狀態碼 |
類別 |
說明 |
1XX |
信息性狀態碼(Information) |
接收的請求正在處理 |
2XX |
成功狀態碼(Success) |
請求正常處理完畢 |
3XX |
重定向狀態碼(Redirection) (Success) |
須要進行附加操做以完成請求 |
4XX |
客戶端錯誤狀態碼(Client Error) |
服務器沒法處理請求 |
5XX |
服務器錯誤狀態碼(Server Error) |
服務器請求出錯 |
1XX 信息性狀態碼
- 這些狀態碼是HTTP 1.1引入的。 對於這些狀態碼的價值還存在爭論。 | 狀態碼 | 狀態消息 | 含義 | | :------| ------: | :------: | | 100 | Continue(繼續) | 收到了請求的起始部分,客戶端應該繼續請求 | | 101 | Switching Protocols 切換協議 | 服務器正根據客戶端的指示將協議切換成 Update Header列出的協議 |
2XX 成功狀態碼
- 客戶端發起請求時, 這些請求一般都是成功的。服務器有一組用來表示成功的狀態碼,分別對應於不一樣類型的請求。
狀態碼 |
狀態消息 |
含義 |
實例 |
200 |
OK 服務器成功處理了請求 |
HTTP協議詳解-200 |
|
204 |
No Content(沒有內容) |
請求成功,但沒有資源返回 (Response不包括實體的主題內容, 瀏覽器不會更新) |
狀態碼204 |
206 |
Partial Content(部份內容) |
對資源的某一部分請求成功 |
狀態碼206 |
3XX 重定向狀態碼
- 重定向狀態碼用來告訴瀏覽器客戶端,它們訪問的資源已被移動, Web服務器發送一個重定向狀態碼和一個可選的Location Header, 告訴客戶端新的資源地址在哪。
- 瀏覽器客戶端會自動用Location中提供的地址,從新發送新的Request。 這個過程對用戶來講是透明的。
狀態碼 |
狀態消息 |
含義 |
實例 |
301 |
Moved Permanently(永久移除) |
請求的URL已移走。Response中應該包含一個Location URL, 說明資源如今所處的位置 |
狀態碼301 |
302 |
Found(已找到) |
與狀態碼301相似。但這裏的移除是臨時的。 客戶端會使用Location中給出的URL,從新發送新的HTTP request |
HTTP協議詳解-302 |
303 |
See Other(參見其餘) |
相似302 |
|
304 |
Not Modified(未修改) |
客戶的緩存資源是最新的, 要求客戶端使用緩存 |
HTTP協議之緩存-304 |
4XX 客戶端錯誤狀態碼
- 有時客戶端會發送一些服務器沒法處理的東西,好比格式錯誤的Request, 或者最多見的是, 請求一個不存在的URL。
狀態碼 |
狀態消息 |
含義 |
實例 |
400 |
Bad Request (壞請求) |
請求報文中存在語法錯誤 |
狀態碼400 |
401 |
Unauthorized(未受權) |
客戶端須要經過HTTP認證 |
HTTP協議之基本認證-401 |
403 |
Forbidden(禁止) |
請求被服務器拒絕了 |
狀態碼403 |
404 |
Not Found(未找到) |
未找到資源 |
HTTP協議詳解-404 |
405 |
Method Not Allowed (不容許使用的方法) |
不支持該Request的方法 |
狀態碼405 |
5XX服務器錯誤狀態碼
- 有時,客戶端發送了一條有效Request, Web服務器自身卻出錯了。多是Web服務器運行出錯了,或者網站都掛了。 5XX就是用來描述服務器錯誤的。
狀態碼 |
狀態消息 |
含義 |
實例 |
500 |
Internal Server Error(內部服務器錯誤) |
服務器遇到一個錯誤,使其沒法爲請求提供服務 |
狀態碼500 |
501 |
Unauthorized(未受權) |
客戶端須要經過HTTP認證 |
狀態碼501 |
502 |
Bad Gateway(網關故障) |
代理使用的服務器遇到了上游的無效響應 |
狀態碼502 |
503 |
Service Unavailable(未提供此服務) |
服務器處於超負載或正在停機維護,沒法處理請求 |
|
505 |
HTTP Version Not Supported(不支持的HTTP版本 |
服務器收到的請求使用了它不支持的HTTP協議版本 |
狀態碼505 |
http://blog.csdn.net/wu_cai_/article/details/51030164數組