HTTP狀態碼(HTTP status codes)是用以表示服務器HTTP響應狀態的三位代碼,狀態碼的第一個數字代表了五個標準響應狀態之一:
- 1xx (消息,Informational Response): 請求已經被服務器接收,繼續處理;
- 2xx (成功,Successful): 請求已經被服務器成功接收、理解、接受;
- 3xx (重定向,Redirection):需要更進一步的操作來完成請求;
- 4xx (客戶端錯誤,Client Error): 請求自身有語法錯誤或者無法實現,是請求本身的錯誤;
- 5xx (服務器錯誤,Server Error): 服務器未能實現合法的請求,是服務器本身的錯誤而不是請求出錯。
常見的HTTP狀態碼
200 OK
成功的HTTP請求的標準響應,實際的響應將取決于請求方法。如:在GET請求中,響應將包含與所請求的資源相對應的實體。
400 Bad Request
由于請求自身的錯誤(如:請求本身有語法錯誤,請求參數有誤),服務器無法理解請求或者不會處理請求。
403 Fobidden
請求是有效的,但是服務器拒絕提供服務。用戶可能沒有請求資源的必要的權限,或者需要某種賬戶。
404 Not Found
找不到所請求的資源。
502 Bad Gateway
充當網關或者代理的服務器嘗試執行請求時從上游服務器收到的無效響應。
503 Service Unavailable
服務器因為過載或維護而不可用。一般而言,這是一種臨時狀態。
504 Gateway Timeout
充當網關或代理的服務器未從上游服務器收到及時的響應。
HTTP狀態碼總結(總結自維基百科)
1xx 消息(Informational Response)
100 Continue
服務器已經收到了請求頭,客戶端應該繼續發送請求正文(如果需要的話,例如POST請求)。
101 Switching Protocols
請求者已經要求服務器切換協議,服務器已經同意并且準備切換。
102 Processing
由WebDAV擴展的狀態碼。WebDAV請求可能包含許多涉及文件操作的子請求,需要很長時間才能完成。此狀態碼表示服務器已收到并正在處理請求,但尚未提供響應,可以防止客戶端超時和假設請求丟失。
103 Early Hints
用于在最終HTTP響應之前返回一些響應頭。
2xx 成功(Success)
200 OK
成功的HTTP請求的標準響應,實際的響應將取決于請求方法。如:在GET請求中,響應將包含與所請求的資源相對應的實體。
201 Created
請求已經被實現,新的資源已經依據請求的需要而建立。
202 Accepted
服務器已經接受請求,但請求尚未被處理,該請求最終可能不會被處理。
203 Non-Authoritative Information
作為轉換代理的服務器(如:網絡加速器)從信息來源接收200 OK,但返回的是原始響應的修改版本。
204 No Content
服務器成功處理了請求,但未返回任何內容。
205 Reset Content
服務器成功處理了請求,但未返回任何內容。與204 No Content不同,此響應要求請求者重置文檔視圖。
206 Partial Content
由于客戶端發送了的請求頭中帶有Range參數,服務器僅提供了部分資源(字節服務)。HTTP客戶端使用Range參數來進行斷點續傳或將一個大文檔分解為多個下載段同時下載。
207 Multi-Status
響應體是一條XML消息,可以包含許多單獨的響應代碼,具體取決于之前的的子請求數量。
208 Already Reported
一個DAV綁定的成員已經在響應的前一部分中枚舉,并且不再被包括。
226 IM Used
服務器已完成對資源的請求,響應是應用于當前實例的一個或多個實例操作的結果的表示。
3xx 重定向(Redirection)
300 Multiple Choices
表示客戶端可以選擇所請求資源的多個選項。例如,此狀態碼可用于顯示多個視頻格式選項,列出具有不同文件擴展名的文件。
301 Moved Permanently
請求的資源已經永久移動到新位置,應將此請求和將來所有的請求定向到給定的URI。
302 Found (Previously "Moved temporarily")
告訴客戶端查看另一個URL。已被303和307取代。
303 See Other
可以使用GET方法在另一個URI下找到對請求的響應。當收到POST(或PUT,DELETE)響應時,客戶端應該假設服務器已收到數據,并應向給定的URI發出新的GET請求。
304 Not Modified
自從上次請求后,請求的網頁未修改過。在這種情況下,不需要重新傳輸資源,因為客戶端仍然具有先前下載的副本。
305 Use Proxy
請求的資源僅可通過代理獲得,代理的地址在響應中提供。
306 Switch Proxy
這種響應已經不再使用。原意是“后續請求應使用指定的代理”。
307 Temporary Redirect
在這種情況下,請求應該使用另一個URI來重復; 但是,未來的請求仍應使用原始URI。與歷史上實現302的方式相反,在重新發出原始請求時不允許更改請求方法。例如,應使用另一個POST請求重復POST請求。
308 Permanent Redirect
應使用另一個URI重復請求和將來所有的請求。307和308與302和301的行為相同,但不允許HTTP方法改變。
4xx 客戶端錯誤(Client Error)
400 Bad Request
由于請求自身的錯誤(如:請求本身有語法錯誤,請求參數有誤),服務器無法理解請求或者不會處理請求。
401 Unauthorized
與403 Forbidden類似,但專門用于需要HTTP基本認證且已失敗或尚未提供的情況。
402 Payment Required
保留以供將來使用。 最初的用意是這個狀態碼可能被用作某種形式的數字現金或支付方案的一部分。
403 Fobidden
請求是有效的,但是服務器拒絕提供服務。用戶可能沒有請求資源的必要的權限,或者需要某種賬戶。
404 Not Found
找不到所請求的資源。
405 Method Not Allowed
請求的資源不支持該請求方法。
406 Not Acceptable
請求的資源已經找到,但它的MIME類型和客戶在Accpet頭中所指定的不兼容。
407 Proxy Authentication Required
客戶端必須首先使用代理進行身份驗證。
408 Request Timeout
服務器等待請求超時。
409 Conflict
表示由于資源的當前狀態發生沖突而無法處理請求,服務器在完成請求時發生沖突。
410 Gone
表示請求的資源不可用,并且不再可用。收到410狀態代碼后,客戶端將來不應該請求該資源。 搜索引擎等客戶應該從索引中刪除資源。
411 Length Required
請求未指定其內容的長度,而這又是請求的資源所需的。
412 Precondition Failed
服務器不滿足請求者對請求提出的前提條件之一。
413 Payload Too Large
請求太大以至于服務器無法處理。
414 URI Too Long
提供的URI太長以至于服務器無法處理。
415 Unsupported Media Type
請求正文具有服務器或資源不支持的媒體類型。
416 Range Not Satisfiable
客戶端請求文件的一部分,但服務器無法提供該部分。
417 Expectation Failed
在請求頭Expect中指定的預期內容無法被服務器滿足。
418 I'm a teapot
這一狀態碼是在1998年作為IETF的傳統愚人節笑話, 并不需要在真實的HTTP服務器中定義。當一個控制茶壺的HTCPCP收到BREW或POST指令要求其煮咖啡時應當傳回此錯誤。這個HTTP狀態碼在某些網站與項目中用作彩蛋。
421 Misdirected Request
該請求針對的是無法生成響應的服務器。
422 Unprocessable Entity
請求格式正確,但由于語義錯誤而無法響應。
423 Locked
正在訪問的資源已被鎖定。
424 Failed Dependency
請求失敗,因為它依賴于另一個已經失敗的請求。
426 Upgrade Required
客戶端應切換到如TLS / 1.0。
428 Precondition Required
先決條件是客戶端發送 HTTP 請求時,必須要滿足的一些預設條件。428表示客戶端必須發送含有先決條件的請求頭才能執行該請求。
429 Too Many Requests
用戶在給定的時間內發送了太多請求。
431 Request Header Fields Too Large
服務器無法處理請求,因為請求頭太大。
451 Unavailable For Legal Reasons
服務器運營商已收到合法要求,拒絕訪問包含所請求資源的資源或資源集,即由于法律原因所請求的資源不可用。
5xx 服務器錯誤(Server Error)
500 Internal Server Error
服務器因內部錯誤無法完成請求。
501 Not Implemented
服務器不具備完成請求的功能,要么不能識別請求方法,要么無法滿足請求。
502 Bad Gateway
充當網關或者代理的服務器嘗試執行請求時從上游服務器收到的無效響應。
503 Service Unavailable
服務器因為過載或維護而不可用。一般而言,這是一種臨時狀態。
504 Gateway Timeout
充當網關或代理的服務器未從上游服務器收到及時的響應。
505 HTTP Version Not Supported
服務器不支持請求中使用的HTTP協議版本。
506 Variant Also Negotiates
服務器存在內部配置錯誤。
507 Insufficient Storage
服務器無法存儲完成請求所必須的內容。
508 Loop Detected
服務器在處理請求時檢測到無限循環。
510 Not Extended
服務器需要進一步擴展請求才能實現它。
511 Network Authentication Required
客戶端需要進行身份驗證才能獲得網絡訪問權限。
600 Unparseable Response Headers
源站沒有返回響應頭部,只返回實體內容。