HTTP碼錶整理

目錄

http官方碼錶

nginx服務器擴展碼錶

CloudFlare服務器擴展碼錶

微軟服務擴展碼錶

其他碼錶


http官方碼錶

碼段 狀態碼 狀態 含義 使用範圍
1XX 100 Continue  (since HTTP/1.1)(繼續) 請求已經接受,客戶應繼續發送請求的其餘部分 表示臨時的響應。客戶端在收到常規響應之前,應準備接收一個或多個1XX響應
101 Switching Protocols  (since HTTP/1.1)(切換協議) 服務器將遵從客戶的請求轉換到另外一種協議
102 Processing  (WebDAV-RFC 2518) WebDAV(RFC 2518)擴展的狀態碼,代表處理將被繼續執行
103 Checkpoint (請求檢查) 可恢復的請求中使用的提議恢復中止或POST請求。
2xx 200 OK  (成功) 對GET和POST請求的應答文檔跟在後面。 表示成功處理了請求的狀態代碼。
201 Created (已創建) 服務器已經創建了文檔,Location頭給出了URL
202 Accepted (已接受) 已經接受請求,但處理尚未完成
203 Non-Authoritative Information  (since HTTP/1.1) (非權威的信息) 文檔已經正常地返回,但一些應答頭可能不正確,因爲使用的是文檔的拷貝,非權威性信息
204 No Content  (沒有內容) 瀏覽器應該繼續顯示原來的文檔。如果用戶定期地刷新頁面,而Servlet可以確定用戶文檔足夠新,這個狀態很有用
205 Reset Content  (since HTTP/1.1)(重置內容) 瀏覽器應該重置它所顯示的內容。用來強制瀏覽器清除表單輸入內容
206 Partial Content  (since HTTP/1.1)(RFC 7233)(部分內容) 客戶發送了一個帶有Range頭的GET請求,服務器完成了部分請求
207 Multi-Status  (WebDAV-RFC 4918) (多狀態) 緊跟消息體後面的是xml消息並且包含了多個單獨的響應狀態碼,響應的數量取決於子請求的個數
208 Already Reported  (WebDAV- RFC 5842) (已經報告) 一個DAV的綁定成員被前一個請求枚舉,並且沒有被再一次包括
226 IM Used  (RFC 3229) 服務器已經滿足了請求所要的資源,並且響應是一個或者多個實例操作應用於當前實例的結果
3xx 300 Multiple Choices  (多重選擇) 客戶請求的文檔可以在多個位置找到,這些位置已經在返回的文檔內列出。如果服務器要提出優先選擇,則應該在Location應答頭指明 表示要完成請求,需要進一步操作。 這些狀態代碼用來告訴客戶端瀏覽器採取更多操作來實現請求。例如,瀏覽器請求服務器上的不同頁面,或者通過代理服務器重複該請求
301 Moved Permanently  (永久移動) 客戶請求的文檔在其他地方,新的URL在Location頭中給出,瀏覽器應該自動地訪問新的URL
302 Found (發現、臨時移動) 但新的URL應該被視爲臨時性的替代,而不是永久性的。注意,在HTTP1.0中對應的狀態信息是“Moved Temporatily”。出現該狀態代碼時,瀏覽器能夠自動訪問新的URL,因此它是一個很有用的狀態代碼。注意這個狀態代碼有時候可以和301替換使用。例如,如果瀏覽器錯誤地請求 http://host/~user (缺少了後面的斜槓),有的服務器返回301,有的則返回302。嚴格地說,我們只能假定只有當原來的請求是GET時瀏覽器纔會自動重定向。請參見 307
303 See Other  (since HTTP/1.1)(查看其它) 類似於301/302,不同之處在於,如果原來的請求是POST,Location頭指定的重定向目標文檔應該通過GET提取(HTTP
304 Not Modified  (未修改) 客戶端有緩衝的文檔併發出了一個條件性的請求(一般是提供If-Modified-Since頭表示客戶只想比指定日期更新的文檔)。服務器告訴客戶,原來緩衝的文檔還可以繼續使用
305 Use Proxy  (since HTTP/1.1)(使用代理) 客戶請求的文檔應該通過Location頭所指明的代理服務器提取
306 Switch Proxy(廢棄) 不再使用。原意是隨後的請求應該使用指定的代理
307 Temporary Redirect (since HTTP/1.1)( 臨時重定向) 許多瀏覽器會錯誤地響應302應答進行重定向,即使原來的請求是POST,即使它實際上只能在POST請求的應答是303時才能重定向。由於這個原因,HTTP許多瀏覽器會錯誤地響應302應答進行重定向,即使原來的請求是POST,即使它實際上只能在POST請求的應答是303時才能重定向。由於這個原因,HTTP 1.1新增了307,以便更加清除地區分幾個狀態代碼:當出現303應答時,瀏覽器可以跟隨重定向的GET和POST請求;如果是307應答,則瀏覽器只能跟隨對GET請求的重定向
308 Permanent Redirect (RFC 7538) (永久轉移) 這個請求和以後的請求都應該被另一個URI地址重新發送。307、308和302、301有相同的表現,但是不允許HTTP方法改變。例如,請求表單到一個永久轉移的資源將會繼續順利地執行
4xx 400  Bad Request (錯誤請求) 請求出現語法錯誤 表示客戶端發生錯誤。例如:客戶端請求不存在的頁面,客戶端爲提供有效的身份驗證信息
401 Unauthorized (RFC 7235)(未授權) 訪問被拒絕,客戶試圖未經授權訪問受密碼保護的頁面。應答中會包含一個WWW-Authenticate頭,瀏覽器據此顯示用戶名字/密碼對話框,然後在填寫合適的Authorization頭後再次發出請求。IIS 定義了許多不同的 401 錯誤,它們指明更爲具體的錯誤原因。這些具體的錯誤代碼在瀏覽器中顯示,但不在 IIS 日誌中顯示:
401.1 登錄失敗。
401.2 服務器配置導致登錄失敗。
401.3 由於 ACL 對資源的限制而未獲得授權。
401.4 篩選器授權失敗。
401.5 ISAPI/CGI 應用程序授權失敗。
401.7 訪問被 Web 服務器上的 URL 授權策略拒絕。這個錯誤代碼爲 IIS 6.0 所專用。爲以後保留使用。原意是該狀態碼可被用於一些數字貨幣或者是微支付,但是目前還沒有普及,所以這些代碼不經常被使用。YouYube使用這個狀態如果某個IP地址發出了過多的請求,並要求用戶輸入驗證碼
402 Payment Required (相應頭缺失) 保留有效ChargeTo頭響應
403  Forbidden (禁止訪問) 資源不可用。服務器理解客戶的請求,但拒絕處理它。通常由於服務器上文件或目錄的權限設置導致。禁止訪問:IIS資源不可用。服務器理解客戶的請求,但拒絕處理它。通常由於服務器上文件或目錄的權限設置導致。禁止訪問:IIS 定義了許多不同的 403 錯誤,它們指明更爲具體的錯誤原因:
403.1 執行訪問被禁止
403.2 讀訪問被禁止
403.3 寫訪問被禁止
403.4 要求 SSL
403.5 要求 SSL 128
403.6 IP 地址被拒絕
403.7 要求客戶端證書
403.8 站點訪問被拒絕
403.9 用戶數過多
403.10 配置無效
403.11 密碼更改
403.12 拒絕訪問映射表
403.13 客戶端證書被吊銷
403.14 拒絕目錄列表
403.15 超出客戶端訪問許可
403.16 客戶端證書不受信任或無效
403.17 客戶端證書已過期或尚未生效
403.18  在當前的應用程序池中不能執行所請求的 URL。 不能爲這個應用程序池中的客戶端執行 CGI。( IIS 6.0 所專用)
403.19 不能爲這個應用程序池中的客戶端執行 CGI。( IIS 6.0 所專用)
403.20 Passport 登錄失敗。( IIS 6.0 所專用)
404 Not Found (找不到) 服務器找不到文件、查詢或URL
404.0 沒有找到文件或目錄
404.1 無法在所請求的端口上訪問 Web 站點
404.2 Web 服務擴展鎖定策略阻止本請求
404.3 MIME 映射策略阻止本請求
405 Method Not Allowed (since HTTP/1.1) (方法禁用) 請求方法(GET、POST、HEAD、Delete、PUT、TRACE等)對指定的資源不適用,用來訪問本頁面的 HTTP 謂詞不被允許(方法不被允許)
406 Not Acceptable (since HTTP/1.1)(不接受) 指定的資源已經找到,但它的MIME類型和客戶在Accpet頭中所指定的不兼容,客戶端瀏覽器不接受所請求頁面的 MIME 類型
407 Proxy Authentication Required (since HTTP/1.1)(需要代理授權) 要求進行代理身份驗證,類似於401,表示客戶必須先經過代理服務器的授權
408 Request Timeout (since HTTP/1.1)(請求超時) 在服務器許可的等待時間內,客戶一直沒有發出任何請求。客戶可以在以後重複同一請求
409 Conflict (since HTTP/1.1)(衝突) 通常和PUT請求有關。由於請求和資源的當前狀態相沖突,因此請求不能成功
410 Gone (since HTTP/1.1)(已刪除) 所請求的文檔已經不再可用,而且服務器不知道應該重定向到哪一個地址。它和404的不同在於,返回407表示文檔永久地離開了指定的位置,而404表示由於未知的原因文檔不可用
411  Length Required (since HTTP/1.1)(需要有效長度)  服務器不能處理請求,除非客戶發送一個Content-Length頭
412 Precondition Failed (since HTTP/1.1)(RFC 7232)(未滿足前置條件) 請求頭中指定的一些前提條件失敗
413  Payload Too Large (since HTTP/1.1)(RFC 7231) (響應實體太大)  目標文檔的大小超過服務器當前願意處理的大小。如果服務器認爲自己能夠稍後再處理該請求,則應該提供一個Retry-After頭
414 URI Too Long(since HTTP/1.1) (RFC 7231) (請求URI太長) 被提供的URI對服務器的處理來說太長。經常出現在太多被編碼的數據被作爲查詢字符串的GET請求的結果,因此需要被轉換爲POST請求
415 Unsupported Media Type(不支持的媒體類型) 請求實體的媒體類型不被服務器或者資源支持。例如,客戶端上傳一個image/svg+xml的圖片,但是服務器需要圖片使用不同的格式
416 Requested Range Not Satisfiable (since HTTP/1.1)(請求範圍不滿足) 服務器不能滿足客戶在請求中指定的Range頭
417 Expectation Failed(未滿足期望值) 服務器不滿足請求Expect頭字段指定的期望值,如果是代理服務器,可能是下一級服務器不能滿足請求
418  I'm a teapot (RFC 2324) 這個代碼是在1998年作爲傳統的IETF April Fools‘ jokes被定義的在RFC2324,超文本咖啡罐控制協議,但是並沒有被實際的HTTP服務器實現。RFC指定了這個代碼應該是由茶罐返回給速溶咖啡。
419  Authentication Timeout (not in RFC 2616) (認證超時) 並不是HTTP標註的一部分,419認證超時表示以前的有效證明已經失效了。同時也被用於401未認證的替代選擇爲了從其它被拒絕訪問的已認證客戶端中指定服務器的資源。
421 Misdirected Request (RFC 7540)(誤導請求) 請求被直接定向到不能產生響應的服務器上(例如因爲一個連接的複用)。
422 Unprocessable Entity (WebDAV- RFC 4918)(不可處理的實體) 請求符合要求但是不能接受錯誤由於語法錯誤。
423 Locked (WebDAV- RFC 4918)(鎖定的) 資源訪問被鎖定
424  Failed Dependency (WebDAV-RFC 4918)(失敗的依賴) 請求由於上一個請求的失敗而失敗。
426 Upgrade Required (需要升級) 客戶端應該切換不同的協議例如TLS/1.0在指定的升級的頭字段裏
428 Precondition Required (RFC 6585)(需要前置條件) 原始服務器需要有條件的請求。當客戶端GET一個資源的狀態的時候,同時又PUT回給服務器,與此同時第三方修改狀態到服務器上的時候,爲了避免丟失更新的問題發生將會導致衝突。
429 Too Many Requests (RFC 6585)(過多請求) 用戶已經發送了太多的請求在指定的時間裏。用於限制速率。
431 Request Header Fields Too Large (RFC 6585)(請求頭部字段太大) 服務器由於一個單獨的請求頭部字段或者是全部的字段太大而不願意處理請求
451 Unavailable For Legal Reasons (Internet draft)(由於法律原因而無效) 被定義在因特網草稿“一個新的HTTP狀態碼用於法律限制的資源”。被用於當資源的訪問由於法律原因被禁止的時候。例如檢查制度或者是政府強制要求禁止訪問。一個例子是1953年dystopian的小說Fahrenheit 451就是一個非法的資源。
5xx 500 Internal Server Error (服務器內部錯誤) 服務器遇到了意料不到的情況,不能完成客戶的請求 表示服務器在嘗試處理請求時發生內部錯誤,而不能完成該請求
500.12 應用程序正忙於在 Web 服務器上重新啓動
500.13 Web 服務器太忙
500.15 不允許直接請求 Global.asa
500.16 UNC 授權憑據不正確。( IIS 6.0 所專用)
500.18  URL 授權存儲不能打開。( IIS 6.0 所專用)
500.100 內部 ASP 錯誤
501 Not Implemented (尚未實施) 服務器不支持實現請求所需要的功能,頁眉值指定了未實現的配置。例如,客戶發出了一個服務器不支持的PUT請求。服務器不支持實現請求所需要的功能,頁眉值指定了未實現的配置。例如,客戶發出了一個服務器不支持的PUT請求。
502 Bad Gateway (錯誤的網關) 服務器作爲網關或者代理時,爲了完成請求訪問下一個服務器,但該服務器返回了非法的應答。 亦說Web 服務器用作網關或代理服務器時收到了無效響應
502.1 CGI 應用程序超時
502.2 CGI 應用程序出錯
503  Service Unavailable (服務不可用)  服務器由於維護或者負載過重未能應答。例如,Servlet可能在數據庫連接池已滿的情況下返回503。服務器返回503時可以提供一個服務器由於維護或者負載過重未能應答。例如,Servlet可能在數據庫連接池已滿的情況下返回503。服務器返回503時可以提供一個 Retry-After頭。( IIS 6.0 所專用)
504  Gateway Timeout (since HTTP/1.1)(網關超時) 由作爲代理或網關的服務器使用,表示不能及時地從遠程服務器獲得應答
505 HTTP Version Not Supported (since HTTP/1.1)(http版本不支持) 服務器不支持請求中所指明的HTTP版本
506  Variant Also Negotiates (RFC 2295)(變量也是導航) 對於請求是透明的內容導航導致循環參照
507 Insufficient Storage (WebDAV- RFC 4918)(存儲不足) 服務器不能存儲需要的內容去完成請求
508  Loop Detected (WebDAV-RFC 5842)(發現環路) 服務器發現了一個無限的循環檔處理請求的時候
510 Not Extended (RFC 2774) 獲取資源所需要的策略並沒有沒滿足
511  Network Authentication Required (需要網絡授權) 客戶端需要授權去火的網絡的訪問權限。一般用於代理交互中被用來進行網絡的訪問控制

nginx服務器擴展碼錶

狀態 含義
444 No Response 無響應(Nginx) 被使用在Nginx的日誌中表明服務器沒有返回信息給客戶端並且關閉了連接(在威懾惡意軟件的時候比較有用)。
494 請求頭太大(Nginx)  Nginx內置代碼和431類似,但是是被更早地引入在版本0.9.4(在2011年1月21日)。
495 SSL Certificate Error 證書錯誤(Nginx) Nginx內置的代碼,當使用SSL客戶端證書的時候錯誤會出現爲了在日誌錯誤中區分它和4XX和一個錯誤頁面的重定向。。
496  SSL Certificate Required沒有證書(Nginx)  Nginx內置的代碼,當客戶端不能提供證書在日誌中分辨4XX和一個錯誤頁面的重定向。
497 HTTP Request Sent to HTTPS PortHTTP到HTTPS(Nginx) Nginx內置的代碼,被用於原始的HTTP的請求發送給HTTPS端口去分辨4XX在日誌中和一個錯誤頁面的重定向。
499  Client Closed Request客戶端關閉請求(Nginx) 被用在Nginx日誌去表明一個連接已經被客戶端關閉當服務器仍然正在處理它的請求,是的服務器無法返貨狀態碼。

CloudFlare服務器擴展碼錶

狀態 含義
520  Unknown Error未知錯誤(CloudFlare) 這個狀態碼也沒有被指定在任何RFC中,並且只會被一些服務器返回,例如微軟的Azure和CloudFlare服務器:”520錯誤本質上是一個捕獲全部的響應當原始服務器返回一些未知的或者一些不能被忍受或者被解釋的(協議違反或者空響應)”。
521 Web Server Is Down(CloudFlare)  
522 Connection Timed Out(CloudFlare)  
523 Origin Is Unreachable(CloudFlare)  
524 A Timeout Occurred(CloudFlare)  
525 SSL Handshake Failed(CloudFlare)  
526 Invalid SSL Certificate(CloudFlare)  

微軟服務擴展碼錶

狀態 含義
420 Enhance Your Calm (Twitter) 不是HTTP的標準,但是被Spring定義在HTTP狀態類中當方法失時使用。這個狀態碼已經不推薦在Spring中使用。
451 Redirect(Internet Information Services) Used in Exchange ActiveSync if there either is a more efficient server to use or the server cannot access the users' mailbox.[78] The client is supposed to re-run the HTTP Autodiscovery protocol to find a better suited server.[79]
440  Login Timeout登陸超時(Internet Information Services) 一個微軟的擴展,意味着你的會話已經超時。
449 Retry With重試(Internet Information Services) 一個微軟的擴展。請求應該在執行適當的動作之後被重試。
450 Blocked by Windows Parental Controls (Microsoft)被Windows家長控制阻塞(微軟) 一個微軟的擴展。這個錯誤是當Windows家長控制打開並且阻塞指定網頁的訪問的時候被指定。
498   Invalid Token (Esri)令牌超時或失效(Esri) 由ArcGIS for Server返回。這個代碼意味着令牌的超時或者是失效。
499 Token Required (Esri)  
509 Bandwidth Limit Exceeded頻帶寬度超出限制(Apache的擴展) 這個狀態碼沒有在任何RFCS中指定。使用方法是未知的。

其他碼錶

狀態 含義
598 網絡讀取超時異常(未知) 這個狀態碼也沒有在任何RFC中指定,但是被用在微軟的HTTP代理中去標註一個網絡讀取超時在一個客戶端之前的代理的後面。
599 網絡連接超時異常(未知) 這個狀態碼也沒有在任何RFC中指定,但是被用在微軟的HTTP代理中去標註一個網絡連接超時在一個客戶端之前的代理的後面。
600 Unparseable Response Headers 源站沒有返回響應頭部,只返回實體內容。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章