http協議狀態代碼及其意義

來源:互聯網
上載者:User

標籤:位置   eth   time   基本   length   uri   dir   返回   require   

什麼是狀態代碼?

狀態代碼的作用是:伺服器告訴用戶端,發生了什麼事。

在http協議中狀態代碼出現在http response 的第一行。它會返回一個三位元的狀態代碼和狀態資訊。狀態代碼為了便於程式進行處理,而狀態資訊是為了讓使用者能清楚的明白意思。

 狀態代碼分類

  HTTP狀態代碼被分為五大類, 目前我們使用的HTTP協議版本是1.1, 支援以下的狀態代碼。隨著協議的發展,HTTP規範中會定義更多的狀態代碼。 

小技巧:  假如你看到一個狀態代碼503, 你並不知道具體503是什麼意思。 這時候你只要知道503是屬於(5XX,伺服器錯誤就可以了)

通常一些常見的狀態代碼是這樣分的:

1 xx      :    表示資訊提示

2xx      :    表示成功

3xx     :重新導向

4xx    :用戶端出現錯誤

5xx   :伺服器出現錯誤

以下是一些常見狀態代碼具體的意義:

200     ok    伺服器成功處理了請求。

301和302    moved  permanently    (重新導向)請求資源的URL已經被移走,在response中會攜帶一個location URL,告訴你現在這個資源所在的路徑。

304   Not   modified(未修改)指的是用戶端所用的資源是嶄新的,要求用戶端使用緩衝。

404   Not  find沒有找到請求的資源。

500  Internal server error   伺服器遇到一個錯誤,使其無法處理請求。

更多的狀態代碼如下:

1XX  資訊性狀態代碼

100     continue  繼續  收到請求的起始部分,用戶端應該繼續請求。

101   switching  protocols   :協議切換  。伺服器根據用戶端的只是將協議切換成header所列出的協議。

2xx   成功性狀態代碼

200    ok    伺服器成功處理了請求。

201  created  那些需要服務來建立對象的請求來說,資源已經建立完畢。

202   Accepted   請求已接受,但伺服器還沒處理。

203    Non--Authoritive  information   (非權威資訊) 請求已經處理成功,但header中的資訊不是來源於原伺服器,而是來自資源的副本。

204   NO   content (沒有內容)Response中包含一些Header和一個狀態行, 但不包括實體的主題內容(沒有response body)

205  reset content   (重設內容)一個主要用於瀏覽器的代碼。意思是瀏覽器應該重設當前頁面上所有的HTML表單。

206   part content(部分內容)部分請求成功

3xx  重新導向性狀態代碼

重新導向狀態代碼用來告訴瀏覽器用戶端,它們訪問的資源已被移動, Web伺服器發送一個重新導向狀態代碼和一個可選的Location Header, 告訴用戶端新的資源地址在哪。

  瀏覽器用戶端會自動用Location中提供的地址,重新發送新的Request。 這個過程對使用者來說是透明的。

  301和302 非常相似,  一個是永久轉移,一個是臨時轉移。   (在我們看來, 這兩個沒太大區別)

  302,303,307 是一樣。  這是因為302是HTTP 1.0定義的, HTTP1.1中使用303,307. 同時又保留了302.  (但在現實中,我們還是用302,我是沒見過303和307)

      

300 Multiple Choices(多項選擇)  用戶端請求了實際指向多個資源的URL。這個代碼是和一個選項列表一起返回的,然後使用者就可以選擇他希望的選項了  
301 Moved Permanently(永久移除) 請求的URL已移走。Response中應該包含一個Location URL, 說明資源現在所處的位置 狀態代碼301
302 Found(已找到) 與狀態代碼301類似。但這裡的移除是臨時的。 用戶端會使用Location中給出的URL,重新發送新的HTTP request HTTP協議詳解-302
303  See Other(參見其他) 類似302  
304 Not Modified(未修改) 客戶的緩衝資源是最新的, 要用戶端使用緩衝 HTTP協議之緩衝-304
305  Use Proxy(使用代理) 必須通過代理訪問資源, 代理的地址在Response 的Location中  
306  未使用  這個狀態代碼當前沒使用  
307 Temporary Redirect(臨時重新導向 類似302

4XX用戶端錯誤狀態代碼

  有時用戶端會發送一些伺服器無法處理的東西,比如格式錯誤的Request, 或者最常見的是, 請求一個不存在的URL。

狀態代碼 狀態訊息 含義 執行個體
400 Bad Request(壞請求) 告訴用戶端,它發送了一個錯誤的請求。 狀態代碼400
401 Unauthorized(未授權) 需要用戶端對自己認證 HTTP協議之基本認證-401
402 Payment Required(要求付款) 這個狀態還沒被使用, 保留給將來用  
403 Forbidden(禁止) 請求被伺服器拒絕了 狀態代碼403
404 Not Found(未找到) 未找到資源 HTTP協議詳解-404
405 Method Not Allowed(不允許使用的方法) 不支援該Request的方法。 狀態代碼405
406 Not Acceptable(無法接受)    
407 Proxy Authentication Required(要求進行代理認證) 與狀態代碼401類似, 用於需要進行認證的Proxy 伺服器 HTTP協議之代理-407
408 Request Timeout(請求逾時)  如果用戶端完成請求時花費的時間太長, 伺服器可以回送這個狀態代碼並關閉串連  
409 Conflict(衝突) 發出的請求在資源上造成了一些衝突  
410 Gone(消失了) 伺服器曾經有這個資源,現在沒有了, 與狀態代碼404類似  
411 Length Required(要求長度指示) 伺服器要求在Request中包含Content-Length。 狀態代碼411
412 Precondition Failed(先決條件失敗)    
413 Request Entity Too Large(請求實體太大) 用戶端發送的實體主體部分比伺服器能夠或者希望處理的要大 狀態代碼413
414 Request URI Too Long(請求URI太長) 用戶端發送的請求所攜帶的URL超過了伺服器能夠或者希望處理的長度 狀態代碼414
415 Unsupported Media Type(不支援的媒體類型) 伺服器無法理解或不支援用戶端所發送的實體的內容類型  
416 Requested Range Not Satisfiable(所請求的範圍未得到滿足)    
417 Expectation Failed(無法滿足期望)    
  5XX伺服器錯誤狀態代碼

  有時候用戶端發送了一條有效Request, Web伺服器自身卻出錯了。 可能是Web伺服器運行出錯了, 或者網站都掛了。  5XX就是用來描述伺服器錯誤的。

狀態代碼 狀態訊息 含義 執行個體
500 Internal Server Error(內部伺服器錯誤) 伺服器遇到一個錯誤,使其無法為請求提供服務 狀態代碼500
501 Not Implemented(未實現) 用戶端發起的請求超出伺服器的能力範圍(比如,使用了伺服器不支援的要求方法)時,使用此狀態代碼。 狀態代碼501
502 Bad Gateway(網關故障) 代理使用的伺服器遇到了上遊的無效響應 狀態代碼502
503 Service Unavailable(未提供此服務) 伺服器目前無法為請求提供服務,但過一段時間就可以恢複服務  
504 Gateway Timeout(網關逾時) 與狀態嗎408類似, 但是響應來自網關或代理,此網關或代理在等待另一台伺服器的響應時出現了逾時  
505 HTTP Version Not Supported(不支援的HTTP版本) 伺服器收到的請求使用了它不支援的HTTP協議版本。 有些伺服器不支援HTTP早期的HTTP協議版本,也不支援太高的協議版本 狀態代碼505

 

http協議狀態代碼及其意義

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.