一、狀態碼web
具體的狀態碼能夠百度查找,可是對於狀態碼的大體分類有一個清楚的瞭解瀏覽器
1XX ----信息狀態碼------接受的請求正在處理緩存
2XX ------成功狀態碼 ------請求正常處理完畢 服務器
3XX----重定向狀態碼-----須要進行附加操做完成請求分佈式
4XX---客戶端錯誤狀態碼-------服務器沒法請求oop
5XX----服務器狀態嗎錯誤-----服務器處理請求錯誤ui
二、常見的狀態碼常簡介代理
100 continue :表示到目前爲止都很正常,客戶端能夠正常發送請求或者忽略這個響應版本控制
2XX : 200 ok orm
204 No Content: 請求已經成功處理,可是返回的響應報文不包含實體的主體部分,通常在須要客戶端王服務器發送信息,而不須要返回數據的時候使用。
206 Partial Content : 表示客戶端進行了範圍請求,響應報文包含Content-Range 指定的範圍實體內容
3XX 重定向:
301 Moved Permanently :永久性的重定向
302 Found : 臨時的重定向
303 See Other : 和302有着相同功能,可是303 明確要求客戶端採用GET的方法獲取資源
註明: 在HTTP協議中規定,301 302 狀態重定向時不容許將POST方法改爲GEt 方法,可是大多數瀏覽器都會在301 302 303 狀態下重定向把POST方法改爲GET方法
304 NOt Modified :若是請求報文首部包含一些條件:比方說 if_match if-ModifiedSince if_NoneSince if-Range if-Unmodified, 若是不知足這些條件,則服務器返回304狀態碼
307: Temporary Redirect :臨時重定向,與 302相似,可是不一樣的是 307要求瀏覽器不會把重定向的請求POST方法改爲GET方法
4XX; 客戶端錯誤:
400 Bad Request : 請求報文中含有語法的錯誤
401 Unauthorized: 該狀態碼錶示發送的請求須要有認證信息(BASIC認證,DIGEST認證),若是以前已經進行過一次請求,則表示user 認證失敗
403 forbidden :請求被拒絕,服務器端沒有必要給出拒絕的理由
404 not find
5XX:服務器類型錯誤:
500 internalServer Error :服務器正在執行請求時發生錯誤
503 Server unavilable : 服務器暫時處超負載,或者服務器在停機在維修。沒法處理請求
那麼詳細的在 RFC 2616 規範中有詳細的記載:
狀態碼 | 類別 | 緣由短語 | 含義 | |
---|---|---|---|---|
100 | Informational(信息性狀態碼) | Continue(繼續) | 收到了請求的起始部分,客戶端應該繼續請求。 | ❤ |
101 | Informational(信息性狀態碼) | Switching Protocols(切換協議) | 服務器正根據客戶端的指示將協議切換成 Update 首部列出的協議。 | ❤ |
200 | Success(成功狀態碼) | OK | 服務器已成功處理請求 | ❤ |
201 | Success(成功狀態碼) | Created(已建立) | 對那些要服務器建立對象的請求來講,資源已建立完畢 | |
202 | Success(成功狀態碼) | Accepted(已接受) | 請求已接受,但服務器還沒有處理 | |
203 | Success(成功狀態碼) | Non-Authoritative Information(非權威信息) | 服務器已將事務成功處理,只是實體首部包含的信息不是來自原始服務器,而是來自資源的副本 | |
204 | Success(成功狀態碼) | No Content(沒有內容) | 響應報文包含一些首部和一個狀態行,但不包含實體的主體內容,通常在只須要從客戶端往服務器發送信息,而對客戶端不須要發送新信息內容的狀況下使用 | ❤ |
205 | Success(成功狀態碼) | Reset Content(重置內容) | 另外一個主要用於瀏覽器的代碼。意思是瀏覽器應該重置當前頁面上全部的 HTML 表單 | |
206 | Success(成功狀態碼) | Partial Content(部份內容) | 成功執行了一個部分或者 Range (範圍)請求,客戶端能夠經過一些特殊的首部來獲取部分或某個範圍內的文檔 響應報文中包含由 Content-Range、Date、以及 ETag 或者 Content-Location 指定範圍的實體內容 |
❤ |
300 | Redirection(重定向狀態碼) | Multiple Choices(多項選擇) | 客戶端請求了實際指向多個資源的 URL。這個代碼是和一個選項列表一塊兒返回的,而後用戶就能夠選擇他但願使用的選項了。服務器能夠在 Location 首部包含首選 URL | |
301 | Redirection(重定向狀態碼) | Moved Permanently(永久移除) | 永久性重定向,請求的 URL 已移走。響應中應該包含一個 Location URL,說明資源如今所處的位置 | ❤ |
302 | Redirection(重定向狀態碼) | Found(已找到) | 臨時性重定向,與狀態碼 301 相似, 但這裏的移除是臨時的。客戶端應該用 Location 首部給出的 URL 對資源進行臨時定位 | ❤ |
303 | Redirection(重定向狀態碼) | See Other(參見其餘) | 告訴客戶端應該用另外一個 URL 獲取資源。這個新的 URL 位於響應報文的 Location 首部。303 狀態碼 和 302 狀態碼有相同的功能,可是 303 明確表示客戶端應採用 GET 方法獲取資源。 | ❤ |
當 30一、30二、303 響應狀態碼返回時,幾乎全部的瀏覽器都會把 POST 改爲 GET,並刪除請求報文內的主體,以後請求會自動再次發送。 30一、302 標準是禁止將 POST 方法改變成 GET 方法的,但實際使用時你們都會這麼作 |
||||
304 | Redirection(重定向狀態碼) | Not Modified(未修改) | 該狀態碼錶示客戶端發送附帶條件的請求時,服務器容許請求訪問資源,但因發生請求未知足條件的狀況後,直接返回 304 Not Modified(服務器端資源未改變,可直接使用客戶端未過時的緩存)304 狀態碼返回時,不包含任何響應的主體部分。304 雖然被劃分在 3XX 類別中,可是和重定向一點關係也沒有 | ❤ |
(附帶條件的請求是指採用 GET 方法的請求報文中包含 If-Match,If-Modified-Since,If-None-Match,If-Range,If-Unmodified-Since 中任一首部) | ||||
305 | Redirection(重定向狀態碼) | Use Proxy(使用代理) | 必須經過代理訪問 資源,代理的位置是在 Location 首部中給出的 | |
306 | (未使用) | 這個狀態碼當前並未使用 | ||
307 | Redirection(重定向狀態碼) | Temporary Redirect(臨時重定向) | 和狀態碼 302 相似。但客戶端應該用 Location 首部給出的 URL 對資源進行臨時定位。 307 會遵照瀏覽器標準,不會從 POST 變成 GET |
❤ |
400 | Client Error(客戶端錯誤狀態碼) | Bad request(壞請求) | 告訴客戶端它發送了一條異常請求 | ❤ |
401 | Client Error(客戶端錯誤狀態碼) | Unauthorized(未受權) | 與適當的首部一塊兒返回,在客戶端得到資源訪問權以前,請它進行身份認證 | ❤ |
402 | Client Error(客戶端錯誤狀態碼) | Payment Required(要求付款) | 當前此狀態碼並未使用,是爲將來使用預留的 | |
403 | Client Error(客戶端錯誤狀態碼) | Forbidden(禁止) | 服務器拒絕了請求 | ❤ |
404 | Client Error(客戶端錯誤狀態碼) | Not Found(未找到) | 服務器沒法找到 所請求的 URL | ❤ |
405 | Client Error(客戶端錯誤狀態碼) | Method Not Allowed(不容許使用的方法) | 請求中有一個所請求的 URI 不支持的方法。響應中應該包含一個 Allow 首部,以告知客戶端所請求的資源支持使用哪些方法 | |
406 | Client Error(客戶端錯誤狀態碼) | Not Acceptable(沒法接受) | 客戶端能夠指定一些參數來講明但願接受哪些類型的實體。服務器沒有資源與客戶端可接受的 URL 相匹配時可以使用此代碼 | |
407 | Client Error(客戶端錯誤狀態碼) | Proxy Authentication Required(要求進行代理認證) | 和狀態碼 401 相似,但用於須要進行資源認證的代理服務器 | |
408 | Client Error(客戶端錯誤狀態碼) | Request Timeout(請求超時) | 若是客戶端完成其請求時花費的時間太長,服務器能夠回送這個狀態碼並關閉鏈接 | |
409 | Client Error(客戶端錯誤狀態碼) | Conflict( 衝突) | 發出的請求在資源上形成了一些衝突 | |
410 | Client Error(客戶端錯誤狀態碼) | Gone(消失了) | 除了服務器曾持有這些資源以外,與狀態碼 404 相似 | |
411 | Client Error(客戶端錯誤狀態碼) | Length Required(要求長度指示) | 服務器要求在請求報文中包含 Content- Length 首部時會使用這個代碼。發起的請求中若沒有 Content-Length 首部,服務器 是不會接受此資源請求的 | |
412 | Client Error(客戶端錯誤狀態碼) | Precondition Failed(先決條件失敗) | 若是客戶端發起了一個條件請求, 若是服務器沒法知足其中的某個條件,就返回這個響應碼 | |
413 | Client Error(客戶端錯誤狀態碼) | Request Entity Too Large(請求實體太大) | 客戶端發送的實體主體部分比 服務器可以或者但願處理的要大 | |
414 | Client Error(客戶端錯誤狀態碼) | Request URI Too Long(請求 URI 太長) | 客戶端發送的請求所攜帶的請求 URL 超過了服務器可以或者但願處理的長度 | |
415 | Client Error(客戶端錯誤狀態碼) | Unsupported Media Type(不支持的媒體類型) | 服務器沒法理解或不支持客戶端所發送的實體的內容類型 | |
416 | Client Error(客戶端錯誤狀態碼) | Requested Range Not Satisfiable(所請求的範圍未獲得知足) | 請求報文請求的是某範圍內的指定資源,但那個範圍無效,或者未獲得知足 | |
417 | Client Error(客戶端錯誤狀態碼) | Expectation Failed(沒法知足指望) | 請求的 Expect 首部包含了一個預期內容,但服務器沒法知足 | |
500 | Server Error(服務器錯誤狀態碼) | Internal Server Error(內部服務器錯誤) | 服務器遇到了一個錯誤,使其沒法爲請求提供服務 | ❤ |
501 | Server Error(服務器錯誤狀態碼) | Not Implemented(未實現) | 服務器沒法知足客戶端請求的某個功能 | |
502 | Server Error(服務器錯誤狀態碼) | Bad Gateway(網關故障) | 做爲代理或網關使用的服務器遇到了來自響應鏈中上游的無效響應 | |
503 | Server Error(服務器錯誤狀態碼) | Service Unavailable(未提供此服務) | 服務器目前沒法爲請求提供服務,但過一段時間就能夠恢復服務 | ❤ |
504 | Server Error(服務器錯誤狀態碼) | Gateway Timeout(網關超時) | 與狀態碼 408 相似,可是響應來自網關或代理,此網關或代理在等待另外一臺服務器的響應時出現了超時 | |
505 | Server Error(服務器錯誤狀態碼) | HTTP Version Not Supported(不支持的 HTTP 版本) | 服務器收到的請求是以它不支持或不肯支持的協議版本表示的 |
在 RFC2616 中定義了 40 種 HTTP 狀態碼,webDAV ( Web-based Distributed Authoring and Versioning,基於萬維網的分佈式創做和版本控制)在 RFC4918 和 RFC5842 中,定義了一些特殊的狀態碼,在 RFC251八、RFC281七、RFC229五、RFC277四、RFC6585 中還額外定義了一些附加的 HTTP 狀態碼。總共有 60+ 種。具體連接能夠見 HTTP狀態碼 (wikipedia)
webDAV 新增狀態碼
狀態碼 | 類別 | 緣由短語 | 含義 | |
---|---|---|---|---|
102 | Informational(信息性狀態碼) | Processing(處理中) | 可正常處理請求,但目前是處理中狀態。WebDAV請求可能包含許多涉及文件操做的子請求,須要很長時間才能完成請求。該代碼表示服務器已經收到並正在處理請求,但無響應可用。這樣能夠防止客戶端超時,並假設請求丟失。 | |
207 | Success(成功狀態碼) | Multi-Status(多種狀態) | 存在多種狀態。表明以後的消息體將是一個 XML 消息,而且可能依照以前子請求數量的不一樣,包含一系列獨立的響應代碼。 | |
208 | Success(成功狀態碼) | Already Reported(已經響應) | DAV綁定的成員已經在(多狀態)響應以前的部分被列舉,且未被再次包含。 | |
422 | Client Error(客戶端錯誤狀態碼) | Unprocessable Entity(不可處理的實體) | 格式正確,內容有誤,沒法處理響應 | |
423 | Client Error(客戶端錯誤狀態碼) | Locked(被鎖定) | 資源已被加鎖 | |
424 | Client Error(客戶端錯誤狀態碼) | Failed Dependency(失敗的依賴) | 處理與某請求關聯的請求失敗,由於再也不維持依賴關係。 | |
507 | Server Error(服務器錯誤狀態碼) | Insufficient Storage(存儲空間不足) | 服務器沒法存儲完成請求所必須的內容。這個情況被認爲是臨時的。 | |
508 | Server Error(服務器錯誤狀態碼) | Loop Detected(檢測到環) | 服務器在處理請求時陷入死循環。 |