1. 程式人生 > >HTTP工作場景常見狀態碼解釋(HTTP狀態碼)

HTTP工作場景常見狀態碼解釋(HTTP狀態碼)

1xx(臨時響應)
表示臨時響應並需要請求者繼續執行操作的狀態碼。

100(繼續)

請求者應當繼續提出請求。伺服器返回此程式碼表示已收到請求的第一部分,正在等待其餘部分。

101(切換協議)

請求者已要求伺服器切換協議,伺服器已確認並準備切換。

2xx (成功)

表示成功處理了請求的狀態碼。

200(成功)

伺服器已成功處理了請求。通常,這表示伺服器提供了請求的網頁。如果是對您的 robots.txt 檔案顯示此狀態碼,則表示 Googlebot

已成功檢索到該檔案。

201(已建立)

請求成功並且伺服器建立了新的資源。

202(已接受)

伺服器已接受請求,但尚未處理。

203(非授權資訊)

伺服器已成功處理了請求,但返回的資訊可能來自另一來源。

204(無內容)

伺服器成功處理了請求,但沒有返回任何內容。

205(重置內容)

伺服器成功處理了請求,但沒有返回任何內容。與 204 響應不同,此響應要求請求者重置文件檢視(例如,清除表單內容以輸入新內容)。

206(部分內容)

伺服器成功處理了部分 GET 請求。

3xx (重定向)
要完成請求,需要進一步操作。通常,這些狀態碼用來重定向。Google 建議您在每次請求中使用重定向不要超過 5 次。您可以使用網站管理員工具檢視一下 Googlebot 在抓取重定向網頁時是否遇到問題。診斷下的網路抓取頁列出了由於重定向錯誤導致 Googlebot 無法抓取的網址。

300(多種選擇)

針對請求,伺服器可執行多種操作。伺服器可根據請求者 (user agent) 選擇一項操作,或提供操作列表供請求者選擇。

301(永久移動)

請求的網頁已永久移動到新位置。伺服器返回此響應(對 GET 或 HEAD 請求的響應)時,會自動將請求者轉到新位置。您應使用此程式碼告訴 Googlebot 某個網頁或網站已永久移動到新位置。

302(臨時移動)

伺服器目前從不同位置的網頁響應請求,但請求者應繼續使用原有位置來響應以後的請求。此程式碼與響應 GET 和 HEAD 請求的 301 程式碼類似,會自動將請求者轉到不同的位置,但您不應使用此程式碼來告訴 Googlebot 某個網頁或網站已經移動,因為 Googlebot 會繼續抓取原有位置並編制索引。

303(檢視其他位置)

請求者應當對不同的位置使用單獨的 GET 請求來檢索響應時,伺服器返回此程式碼。對於除 HEAD 之外的所有請求,伺服器會自動轉到其他位置。

304(未修改)

自從上次請求後,請求的網頁未修改過。伺服器返回此響應時,不會返回網頁內容。

如果網頁自請求者上次請求後再也沒有更改過,您應將伺服器配置為返回此響應(稱為 If-Modified-Since HTTP 標頭)。伺服器可以告訴 Googlebot 自從上次抓取後網頁沒有變更,進而節省頻寬和開銷。

305(使用代理)

請求者只能使用代理訪問請求的網頁。如果伺服器返回此響應,還表示請求者應使用代理。

307(臨時重定向)

伺服器目前從不同位置的網頁響應請求,但請求者應繼續使用原有位置來響應以後的請求。此程式碼與響應 GET 和 HEAD 請求的 <a href=answer.py?answer=>301</a> 程式碼類似,會自動將請求者轉到不同的位置,但您不應使用此程式碼來告訴 Googlebot 某個頁面或網站已經移動,因為 Googlebot 會繼續抓取原有位置並編制索引。

4xx(請求錯誤)
這些狀態碼錶示請求可能出錯,妨礙了伺服器的處理。

400(錯誤請求)

伺服器不理解請求的語法。

401(未授權)

請求要求身份驗證。對於登入後請求的網頁,伺服器可能返回此響應。

403(禁止)

伺服器拒絕請求。如果您在 Googlebot 嘗試抓取您網站上的有效網頁時看到此狀態碼(您可以在 Google 網站管理員工具診斷下的網路抓取頁面上看到此資訊),可能是您的伺服器或主機拒絕了 Googlebot 訪問。

404(未找到)

伺服器找不到請求的網頁。例如,對於伺服器上不存在的網頁經常會返回此程式碼。

如果您的網站上沒有 robots.txt 檔案,而您在 Google 網站管理員工具診斷標籤的 robots.txt 上看到此狀態碼,則這是正確的狀態碼。但是,如果您有 robots.txt 檔案而又看到此狀態碼,則說明您的 robots.txt 檔案可能命名錯誤或位於錯誤的位置(該檔案應當位於頂級域,名為 robots.txt)。

如果對於 Googlebot 抓取的網址看到此狀態碼(在”診斷”標籤的 HTTP 錯誤頁面上),則表示 Googlebot 跟隨的可能是另一個頁面的無效連結(是舊連結或輸入有誤的連結)。

405(方法禁用)

禁用請求中指定的方法。

406(不接受)

無法使用請求的內容特性響應請求的網頁。

407(需要代理授權)

此狀態碼與 <a href=answer.py?answer=35128>401(未授權)</a>類似,但指定請求者應當授權使用代理。如果伺服器返回此響應,還表示請求者應當使用代理。

408(請求超時)

伺服器等候請求時發生超時。

409(衝突)

伺服器在完成請求時發生衝突。伺服器必須在響應中包含有關衝突的資訊。伺服器在響應與前一個請求相沖突的 PUT 請求時可能會返回此程式碼,以及兩個請求的差異列表。

410(已刪除)

如果請求的資源已永久刪除,伺服器就會返回此響應。該程式碼與 404(未找到)程式碼類似,但在資源以前存在而現在不存在的情況下,有時會用來替代 404 程式碼。如果資源已永久移動,您應使用 301 指定資源的新位置。

411(需要有效長度)

伺服器不接受不含有效內容長度標頭欄位的請求。

412(未滿足前提條件)

伺服器未滿足請求者在請求中設定的其中一個前提條件。

413(請求實體過大)

伺服器無法處理請求,因為請求實體過大,超出伺服器的處理能力。

414(請求的 URI 過長)

請求的 URI(通常為網址)過長,伺服器無法處理。

415(不支援的媒體型別)

請求的格式不受請求頁面的支援。

416(請求範圍不符合要求)

如果頁面無法提供請求的範圍,則伺服器會返回此狀態碼。

417(未滿足期望值)

伺服器未滿足”期望”請求標頭欄位的要求。

5xx(伺服器錯誤)
這些狀態碼錶示伺服器在處理請求時發生內部錯誤。這些錯誤可能是伺服器本身的錯誤,而不是請求出錯。

500(伺服器內部錯誤)

伺服器遇到錯誤,無法完成請求。

501(尚未實施)

伺服器不具備完成請求的功能。例如,伺服器無法識別請求方法時可能會返回此程式碼。

502(錯誤閘道器)

伺服器作為閘道器或代理,從上游伺服器收到無效響應。

503(服務不可用)

伺服器目前無法使用(由於超載或停機維護)。通常,這只是暫時狀態。

504(閘道器超時)

伺服器作為閘道器或代理,但是沒有及時從上游伺服器收到請求。

505(HTTP 版本不受支援)

伺服器不支援請求中所用的 HTTP 協議版本。