標籤:art author 連結 移動 bad span 恢複 理解 erro
HTTP狀態代碼(HTTP Status Code)是用以表示網頁serverHTTP響應狀態的3位元字代碼。它由 RFC 2616 規範定義的,並得到RFC 2518、RFC 2817、RFC 2295、RFC 2774、RFC 4918等規範擴充。
HTTP狀態代碼分五大類:
100-199 用於指定client應對應的某些動作。
200-299 用於表示請求成功。
300-399 用於已經移動的檔案而且常被包括在定位頭資訊中指定新的地址資訊(重新導向)。
400-499 用於指出client的錯誤(請求錯誤)。
500-599 用於支援server錯誤。
常見的HTTP狀態代碼:
200 OK server已成功處理了請求並提供了請求的網頁。一般用於對應GET和POST請求。這個狀態代碼對servlet是預設的;假設沒有調用setStatus方法的話,就會得到200。
304 Not Modified client有緩衝的文檔並發出了一個條件性的請求(通常是提供If-Modified-Since頭表示客戶僅僅想比指定日期更新的文檔)。
server告訴客戶,原來緩衝的文檔還能夠繼續使用。
403 Forbidden 是除非擁有授權否則server拒絕提供所請求的資源。這個狀態常常會因為server上的損壞檔案或檔案夾許可而引起。
404 Not Found server找不到請求的網頁。server上不存在的網頁常常會返回此代碼。
500 Internal Server Error server遇到了一個未曾預料的狀況,導致了它無法完畢對請求的處理。
一般來說,這個問題都會在server端的源碼出現錯誤時出現。
502 Bad Gateway 作為網關或者代理工作的server嘗試運行請求時,從上遊server接收到無效的響應。
503 Service Unavailable 因為暫時的server維護或者過載,server當前無法處理請求。這個狀況是暫時的。而且將在一段時間以後恢複。假設可以估計延遲時間,那麼響應中可以包括一個 Retry-After 頭用以標明這個延遲時間。
假設沒有給出這個 Retry-After 資訊,那麼client應當以處理500響應的方式處理它。
504 Gateway Timeout 作為網關或者代理工作的server嘗試運行請求時,未能及時從上遊server(URI標識出的server,比如HTTP、FTP、LDAP)或者輔助server(比如DNS)收到響應。
其他狀態代碼
100(繼續) |
client應當繼續發送請求。 這個暫時響應是用來通知client它的部分請求已經被server接收,且仍未被拒絕。client應當繼續發送請求的剩餘部分。或者假設請求已經完畢,忽略這個響應。 server必須在請求完畢後向client發送一個終於響應。 |
101(切換協議) |
server已經理解了client的請求,並將通過Upgrade 訊息頭通知client採用不同的協議來完畢這個請求。在發送完這個響應最後的空行後,server將會切換到在Upgrade 訊息頭中定義的那些協議。 |
201(已建立) |
請求成功而且server建立了新的資源。 |
202(已接受) |
server已接受請求,但尚未處理。 |
203(非授權資訊) |
server已成功處理了請求,但返回的資訊可能來自還有一來源。 |
204(無內容) |
server成功處理了請求。但沒有返回不論什麼內容。 |
205(重設內容) |
server成功處理了請求,但沒有返回不論什麼內容。與 204響應不同,此響應要求要求者重設文檔視圖(比如,清除表單內容以輸入新內容)。 |
206(部分內容) |
server成功處理了部分 GET 請求。 |
300(多種選擇) |
針對請求,server可運行多種操作。server可依據要求者 (user agent)選擇一項操作。或提供巨集指令清單供要求者選擇。 |
301(永久移動) |
請求的網頁已永久移動到新位置。server返回此響應(對 GET 或 HEAD請求的響應)時,會自己主動將要求者轉到新位置。 |
302(暫時移動) |
請求的資源暫時從不同的 URI響應請求。由於這種重新導向是暫時的。client應當繼續向原有地址發送以後的請求。 僅僅有在Cache-Control或Expires中進行了指定的情況下,這個響應才是可快取的。假設這不是一個 GET 或者 HEAD 請求,那麼瀏覽器禁止自己主動進行重新導向,除非得到使用者的確認。由於請求的條件可能因此發生變化。
|
303(查看其它位置) |
要求者應當對不同的位置使用單獨的 GET 請求來檢索響應時。server返回此代碼。對於除 HEAD之外的全部請求。server會自己主動轉到其它位置。 |
305(使用代理) |
要求者僅僅能使用代理訪問請求的網頁。假設server返回此響應。還表示要求者應使用代理。 |
307(暫時重新導向) |
請求的資源暫時從不同的URI 響應請求;新的暫時性的URI 應當在響應的 Location 域中返回。除非這是一個HEAD 請求,否則響應的實體中應當包括指向新的URI 的超連結及簡短說明。由於部分瀏覽器不能識別307響應,因此須要加入上述必要資訊以便使用者可以理解並向新的 URI 發出訪問請求;假設這不是一個GET 或者 HEAD 請求,那麼瀏覽器禁止自己主動進行重新導向,除非得到使用者的確認,由於請求的條件可能因此發生變化。 |
400(錯誤請求) |
server不理解請求的文法。 |
401(未授權) |
請求要求身分識別驗證。 對於登入後請求的網頁,server可能返回此響應。 |
405(方法禁用) |
禁用請求中指定的方法。 |
406(不接受) |
無法使用請求的內容特性響應請求的網頁。 |
407(須要代理授權) |
與401響應類似。僅僅只是client必須在代理server上進行身分識別驗證。代理server必須返回一個 Proxy-Authenticate 用以進行身份詢問。client能夠返回一個 Proxy-Authorization 資訊頭用以驗證。 |
408(請求逾時) |
server等候請求時發生逾時。 |
409(衝突) |
server在完畢請求時發生衝突。server必須在響應中包括有關衝突的資訊。server在響應與前一個請求相衝突的 PUT請求時可能會返回此代碼,以及兩個請求的差異列表。 |
410(已刪除) |
假設請求的資源已永久刪除,server就會返回此響應。該代碼與404(未找到)代碼類似,但在資源曾經存在而如今不存在的情況下,有時會用來替代 404 代碼。假設資源已永久移動,您應使用 301指定資源的新位置。 |
411(須要有效長度) |
server不接受不含有效內容長度標題欄位的請求。 |
412(未滿足前提條件) |
server未滿足要求者在請求中設定的當中一個前提條件。 |
413(請求實體過大) |
server無法處理請求,由於請求實體過大。超出server的處理能力。 |
414(請求的 URI 過長) |
請求的 URI(通常為網址)過長。server無法處理。 |
415(不支援的媒體類型) |
請求的格式不受請求頁面的支援。 |
416(請求範圍不符合要求) |
假設頁面無法提供請求的範圍,則server會返回此狀態代碼。 |
417(未滿足期望值) |
server未滿足”期望”請求標題欄位的要求。 |
501(尚未實施) |
server不具備完畢請求的功能。 比如,server無法識別要求方法時可能會返回此代碼。 |
505(HTTP 版本號碼不受支援) |
server不支援要求中所用的 HTTP 協議版本號碼。 |
HTTP狀態代碼具體解釋