
在互聯網編號分配機構(IANA)維護的HTTP狀態代碼正式注冊。[2]這是超文本傳輸協議(HTTP)響應狀態代碼的列表。狀態碼由服務器響應客戶端對服務器的請求而發出。它包括來自IETF 征求意見(RFC)的代碼,其他規范以及用于超文本傳輸協議(HTTP)的一些常見應用程序的一些附加代碼。狀態代碼的第一個數字指定了五個標準類別的響應中的一個。所示的消息短語是典型的,但可以提供任何人類可讀的替代方案。除非另有說明,否則狀態碼是HTTP / 1.1標準(RFC 7231)的一部分。[1]
微軟Internet信息服務(IIS),有時使用更具體的信息,另外小數子碼,[3]然而,這些子代碼只出現在響應有效載荷和文檔,而不是在一個實際的HTTP狀態代碼的地方。
內容
1xx信息響應
2xx成功
3xx重定向
4xx客戶端錯誤
5xx服務器錯誤
非官方代碼
互聯網信息服務
nginx
Cloudflare
另見
注釋
參考
外部鏈接
1xx信息響應
信息性回應表明該請求已收到并被理解。它是在臨時的基礎上發布的,而請求處理仍在繼續。它提醒客戶等待最后的回應。該消息僅由狀態行和可選標題字段組成,并以空行結束。由于HTTP / 1.0標準沒有定義任何1xx狀態碼,除了實驗條件外,服務器不得[注1]向符合HTTP / 1.0的客戶端發送1xx響應。[4]
100繼續
服務器已收到請求標頭,客戶端應繼續發送請求正文(在需要發送正文請求的情況下,例如POST請求)。在拒絕不合適的標題請求后,向服務器發送大型請求主體效率不高。要讓服務器檢查請求的標題,客戶端必須Expect: 100-continue在其初始請求中發送標題,并100 Continue在發送主體之前接收狀態碼作為響應。如果客戶端收到錯誤代碼,如403(禁止)或405(方法不允許),則不應發送請求的正文。答復417 Expectation Failed表明,該請求應該重復沒有Expect頭,因為它表示服務器不支持期望值(例如,HTTP / 1.0服務器就是這種情況)。[5]
101交換協議
請求者已經請求服務器切換協議,并且服務器已經同意這么做。[6]
102處理(WebDAV ; RFC 2518)
WebDAV請求可能包含許多涉及文件操作的子請求,需要很長時間才能完成請求。此代碼表示服務器已收到并正在處理該請求,但尚未有任何響應。[7]這防止客戶端超時并假設請求丟失。
103早期提示(RFC 8297)
用于在最終的HTTP消息之前返回一些響應頭。[8]
2xx成功
這類狀態代碼表明客戶要求的行為已被接收,理解和接受。[2]
200 OK
成功HTTP請求的標準響應。實際的響應將取決于使用的請求方法。在GET請求中,響應將包含與請求資源相對應的實體。在POST請求中,響應將包含描述或包含操作結果的實體。[9]
201創建
請求已完成,從而創建新資源。[10]
202接受
該請求已被接受處理,但處理尚未完成。該請求可能會或可能不會最終執行,并且在處理發生時可能會被禁止。[11]
203非權威信息(自HTTP / 1.1以來)
服務器是一個轉換代理(例如Web加速器),它從原始地址接收到200 OK,但返回的是原始響應的修改版本。[12] [13]
204無內容
服務器成功處理了請求并且沒有返回任何內容。[14]
205重置內容
服務器成功處理了請求,但未返回任何內容。與204響應不同,此響應要求請求者重置文檔視圖。[15]
206部分內容(RFC 7233)
由于客戶端發送的范圍標題,服務器僅傳遞部分資源(字節服務)。HTTP客戶端使用范圍標題來啟用中斷下載的恢復,或將下載分割為多個同步流。[16]
207多狀態(WebDAV; RFC 4918)
接下來的消息主體默認為XML消息,并且可以包含多個單獨的響應代碼,具體取決于創建了多少個子請求。[17]
208已報告(WebDAV; RFC 5842)
DAV綁定的成員已經在(multistatus)響應的前一部分中枚舉,并且不再被包含。
226使用的IM(RFC 3229)
服務器已經完成了對資源的請求,并且該響應表示應用于當前實例的一個或多個實例操作的結果。[18]
3xx重定向
這類狀態碼表明客戶必須采取額外的行動來完成請求。這些狀態碼中的很多都用于URL重定向。[2]
只有在第二個請求中使用的方法是GET或HEAD時,用戶代理才可以在沒有用戶交互的情況下執行附加操作。用戶代理可能會自動重定向請求。用戶代理應檢測并干預以防止周期性重定向。[19]
300多種選擇
指示客戶可以從中選擇的資源的多個選項(通過代理驅動的內容協商)。例如,此代碼可用于呈現多個視頻格式選項,列出具有不同文件名擴展名的文件,或建議詞義消歧。[20]
301永久移動
這個和所有將來的請求都應該指向給定的URI。[21]
302找到
告訴客戶查看(瀏覽)另一個網址。302被303和307所取代。這是一個與標準相矛盾的行業慣例。HTTP / 1.0規范(RFC 1945)要求客戶端執行臨時重定向(原始描述短語是“暫時移動”)[22],但流行的瀏覽器使用303 See Other的功能實現302。因此,HTTP / 1.1添加了狀態碼303和307來區分這兩種行為。[23]然而,某些Web應用程序和框架使用302個狀態碼,好像它是在303 [24]
303查看其他(自HTTP / 1.1)
可以使用GET方法在另一個URI下找到對請求的響應。當收到響應POST(或PUT / DELETE)的響應時,客戶端應該假定服務器已經收到數據并且應該向給定的URI發出一個新的GET請求。[25]
304未修改(RFC 7232)
表示自請求標頭 If-Modified-Since或If-None-Match 指定的版本后,資源未被修改。在這種情況下,由于客戶端仍然具有先前下載的副本,所以不需要重新傳輸資源。[26]
305使用代理(自HTTP / 1.1)
請求的資源只能通過代理服務器獲得,代理服務器的地址在響應中提供。主要出于安全原因,許多HTTP客戶端(如Mozilla [27]和Internet Explorer)無法正確處理此狀態碼的響應。[28]
306交換機代理
不再使用。原本的意思是“后續的請求應該使用指定的代理?!?[29]
307臨時重定向(自HTTP / 1.1以來)
在這種情況下,請求應該用另一個URI重復; 但是,未來的請求應該仍然使用原始URI。與歷史上實現302的方式不同,請求方法在重新發送原始請求時不允許更改。例如,應該使用另一個POST請求重復POST請求。[30]
308永久重定向(RFC 7538)
請求和所有將來的請求應該使用另一個URI重復。307和308與302和301的行為并行,但不允許HTTP方法改變。因此,例如,將表單提交給永久重定向的資源可能會繼續順利進行。[31]
4xx客戶端錯誤
維基百科 404錯誤
這類狀態碼適用于錯誤似乎是由客戶端引起的情況。除了響應HEAD請求外,服務器應該包含一個包含錯誤情況說明的實體,以及它是臨時還是永久狀態。這些狀態碼適用于任何請求方法。用戶代理應該向用戶顯示任何包含的實體。[32]
400錯誤請求
由于明顯的客戶端錯誤(例如,格式錯誤的請求語法,大小過大,請求消息幀無效或欺騙性請求路由),服務器無法或不會處理該請求。[33]
401未經授權(RFC 7235)
與403 Forbidden類似,但專門用于需要認證且失敗或尚未提供的情況。響應必須包含一個WWW-Authenticate標頭字段,其中包含適用于所請求資源的挑戰。請參閱基本訪問驗證和摘要訪問驗證。[ 401 ]語義上意味著“未經認證”,[35]即用戶沒有必要的憑證。
注意:當IP地址被禁止訪問網站(通常是網站域)并且該特定地址被拒絕訪問網站時,某些網站會發出HTTP 401 。
402需要付款
保留以供將來使用。最初的意圖是,這個代碼可能被用作某種形式的數字現金或微支付方案的一部分,正如GNU Taler [36]提出的那樣,但這種情況尚未發生,而且這種代碼通常不被使用。如果某個開發人員超出了每日請求限制,Google Developers API會使用此狀態。[37]
403禁止
該請求是有效的,但服務器拒絕采取行動。用戶可能沒有資源所需的權限,或者可能需要某種帳戶。
404未找到
找不到請求的資源,但可能在將來可用??蛻舻暮罄m請求是允許的。
405方法不允許
所請求的資源不支持請求方法; 例如,需要通過POST呈現數據的表單上的GET請求,或只讀資源上的PUT請求。
406不可接受
請求的資源只能根據請求中發送的Accept頭生成不可接受的內容。[38]見內容談判。
需要407代理驗證(RFC 7235)
客戶端必須首先使用代理進行身份驗證。[39]
408請求超時
服務器超時等待請求。根據HTTP規范:“客戶端在服務器準備等待的時間內沒有發出請求,客戶可以在以后不做任何修改的情況下重復請求?!?[40]
409沖突
表示請求因請求發生沖突而無法處理,例如多個同時更新之間的編輯沖突。
410消失
表示所請求的資源不再可用,并且不再可用。這應該在資源被有意刪除并且資源被清除時使用。在收到410狀態碼后,客戶不應在未來請求資源。諸如搜索引擎之類的客戶應該從其索引中移除資源。[41]大多數用例不要求客戶端和搜索引擎清除資源,而是可以使用“404 Not Found”。
411長度要求
請求沒有指定請求資源所需的內容的長度。[42]
412先決條件失?。≧FC 7232)
服務器不符合請求者提出請求的前提條件之一。[43]
413有效負載太大(RFC 7231)
該請求比服務器愿意或能夠處理的要大。以前稱為“請求實體太大”。[44]
414 URI太長(RFC 7231)
提供的URI太長,服務器無法處理。通常是由于太多數據被編碼為GET請求的查詢字符串,在這種情況下,它應該轉換為POST請求。[45]之前稱為“Request-URI太長”。[46]
415不支持的媒體類型
請求實體具有服務器或資源不支持的媒體類型。例如,客戶端將圖像上傳為image / svg + xml,但服務器要求圖像使用不同的格式。
416范圍不可滿足(RFC 7233)
客戶端要求提供文件的一部分(字節服務),但服務器無法提供該部分。例如,如果客戶端要求文件末尾以外的部分文件。[47]之前稱為“請求范圍不可滿足”。[48]
417期望失敗
服務器不能滿足Expect請求頭字段的要求。[49]
418我是一個茶壺(RFC 2324,RFC 7168)
這個代碼在1998年定義為傳統的IETF April Fools的笑話之一,在RFC 2324,超文本咖啡壺控制協議中,預計不會被實際的HTTP服務器實現。RFC指定這個代碼應該由請求沖泡咖啡的茶壺返回。[50]此HTTP狀態在一些網站(包括Google.com)中用作復活節彩蛋。[51] [52]
421誤導請求(RFC 7540)
該請求針對的是無法產生響應的服務器[53](例如由于連接重用)。[54]
422不可處理的實體(WebDAV; RFC 4918)
請求格式良好,但由于語義錯誤無法遵循。[17]
423鎖定(WebDAV; RFC 4918)
正在訪問的資源被鎖定。[17]
424失敗依賴(WebDAV; RFC 4918)
請求失敗,因為它依賴于另一個請求,并且該請求失?。ɡ鏟ROPPATCH)。[17]
需要升級426
客戶端應該切換到不同的協議,例如升級標題字段中給出的TLS / 1.0。[55]
428先決條件要求(RFC 6585)
原始服務器要求該請求是有條件的。為了防止“丟失更新”問題,客戶端獲取資源的狀態,修改它并將其重新發回服務器,同時第三方修改了服務器上的狀態,導致沖突?!?[56 ]
429太多請求(RFC 6585)
用戶在給定的時間內發送了太多的請求。旨在用于速率限制方案。[56]
431請求標頭字段太大(RFC 6585)
服務器不愿意處理該請求,因為單個標題字段或所有標題字段的集體太大。[56]
451不可用法律原因(RFC 7725)
服務器運營商已收到合法要求,拒絕訪問資源或包含請求資源的一組資源。[45]代碼451被選作參考新穎的華氏451(參見RFC中的致謝)。
5xx服務器錯誤
服務器無法完成請求。[58]
以數字“5”開頭的響應狀態代碼指示服務器意識到它遇到錯誤或無法執行請求的情況。除了響應HEAD請求之外,服務器應該包含一個包含錯誤情況說明的實體,并指出它是臨時還是永久狀態。同樣,用戶代理應該向用戶顯示任何包含的實體。這些響應代碼適用于任何請求方法。[59]
500內部服務器錯誤
通用錯誤消息,在遇到意外情況時給出并且沒有更具體的消息適用。[60]
501未實施
服務器要么不識別請求方法,要么缺乏完成請求的能力。通常這意味著未來的可用性(例如,Web服務API的新特性)。[61]
502錯誤的網關
服務器充當網關或代理,并收到來自上游服務器的無效響應。[62]
503服務不可用
服務器當前不可用(因為它過載或因維護而關閉)。一般來說,這是一個暫時的狀態。[63]
504網關超時
服務器充當網關或代理服務器,沒有收到來自上游服務器的及時響應。[64]
不支持505 HTTP版本
服務器不支持請求中使用的HTTP協議版本。[65]
506變式也協商(RFC 2295)
對請求的透明內容協商會產生循環引用。[66]
507存儲不足(WebDAV; RFC 4918)
服務器無法存儲完成請求所需的表示。[17]
508環路檢測(WebDAV; RFC 5842)
服務器在處理請求時檢測到無限循環(代替208已報告發送)。
510不擴展(RFC 2774)
服務器需要對請求進一步擴展才能實現它。[67]
需要511網絡認證(RFC 6585)
客戶端需要進行身份驗證才能獲得網絡訪問權限。通過攔截用于控制對網絡的訪問的代理(例如,用于在通過Wi-Fi熱點授予完全互聯網訪問之前需要與服務條款達成協議的“ 專屬門戶 ”)來使用。[56]
非官方代碼[ 編輯]
以下代碼未由任何標準規定。
103檢查站
在可恢復請求建議中使用,以恢復異常終止或POST請求。[68]
420方法失?。⊿pring框架)
Spring Framework在方法失敗時使用的棄用響應。[69]
420增強你的平靜(Twitter)
當客戶受限速時,由Twitter搜索和趨勢API的第1版返回; 1.1版和更高版本使用429“太多請求”響應代碼。[70]
450由Windows家長控制(Microsoft)阻止
當Windows家長控制打開并阻止訪問請求的網頁時,指示的Microsoft擴展代碼。[71]
498令牌無效(Esri)
由ArcGIS for Server返回。代碼498表示已過期或無效的令牌。[72]
499令牌要求(Esri)
由ArcGIS for Server返回。代碼499表示需要令牌但未提交。[72]
超出509帶寬限制(Apache Web服務器 / cPanel)
服務器已超出服務器管理員指定的帶寬; 這通常由共享主機提供商用來限制客戶的帶寬。[73]
530網站被凍結
由萬神殿網絡平臺使用,表示由于不活動而被凍結的網站。[74]
598(非正式慣例)網絡讀取超時錯誤
由某些HTTP代理用于向代理前面的客戶端發送代理服務器后面的網絡讀取超時信號。[75]
互聯網信息服務[ 編輯]
微軟的Internet信息服務 Web服務器擴展了4xx錯誤空間,以便根據客戶的請求發出錯誤信號。
440登錄超時
客戶端的會話已過期,必須重新登錄。[76]
449重試
服務器無法兌現請求,因為用戶未提供所需的信息。[77]
451重定向
當更有效的服務器可用或服務器無法訪問用戶的郵箱時,用于Exchange ActiveSync。[78]客戶端需要重新運行HTTP AutoDiscover操作來查找更合適的服務器。[79]
nginx [ 編輯]
在nginx的 Web服務器軟件擴展了4xx錯誤的空間信號與客戶端的請求的問題。[80] [81]
444沒有回應
內部使用[82]指示服務器不向客戶端返回任何信息并立即關閉連接。
494請求標題太大
客戶端發送的請求太大或標題行太長。
495 SSL證書錯誤
400錯誤請求響應代碼的擴展,當客戶端提供了無效的客戶端證書時使用。
需要496 SSL證書
400錯誤請求響應代碼的擴展,當需要客戶端證書但未提供時使用。
497 HTTP請求已發送到HTTPS端口
當客戶端向偵聽HTTPS請求的端口發出HTTP請求時使用的400錯誤請求響應代碼的擴展。
499客戶關閉請求
當客戶端在服務器發送響應之前關閉請求時使用。
Cloudflare [ 編輯]
Cloudflare的反向代理服務擴展了5xx系列的錯誤空間,以指示源服務器的問題。[83]
520未知錯誤
將520錯誤用作“原始服務器返回意外事件時的全部響應”,列出連接重置,大標題以及作為常見觸發器的空或無效響應。
521 Web服務器已關閉
原始服務器已拒絕Cloudflare的連接。
522連接超時
Cloudflare無法與原始服務器協商TCP握手。
523來源無法到達
Cloudflare無法訪問原始服務器; 例如,如果源服務器的DNS記錄不正確。
524超時發生
Cloudflare能夠完成與原始服務器的TCP連接,但未收到及時的HTTP響應。
525 SSL握手失敗
Cloudflare無法與原始服務器協商SSL / TLS握手。
526 SSL證書無效
Cloudflare無法驗證源服務器提供的SSL / TLS證書。
527軌道炮錯誤
錯誤527表示WAN連接建立后請求超時或失敗。[84]
530起源DNS錯誤
錯誤530指示所請求的主機名無法在Cloudflare網絡上解析為原始服務器。
免費注冊:https://www.50yun.top/col-reg/