Java燒腦驢遊(十五) Http code

2021-07-15 15:02:37 字數 3323 閱讀 6059

一些常見的狀態碼為:

200 - 伺服器成功返回網頁

404 - 請求的網頁不存在

503 - 伺服器超時

下面提供 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 請求的 301 **類似,會自動將請求者轉到不同的位置,但您不應使用此**來告訴 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(需要**授權)此狀態碼與 401(未授權)類似,但指定請求者應當授權使用**。如果伺服器返回此響應,還表示請求者應當使用**。

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 協議版本。

Java燒腦驢遊(五) 變數型別

區域性變數 成員變數 類變數區域性變數宣告在方法 構造方法或者語句塊中 區域性變數在方法 構造方法 或者語句塊被執行的時候建立,當它們執行完成後,變數將會被銷毀 訪問修飾符不能用於區域性變數 區域性變數只在宣告它的方法 構造方法或者語句塊中可見 區域性變數是在棧上分配的。區域性變數沒有預設值,所以區...

Java燒腦驢遊(九) 分支結構

if 語句 switch 語句 switch語句switch語句有如下規則 switch語句中的變數型別只能為byte short int或者char。switch語句可以擁有多個case語句。每個case後面跟乙個要比較的值和冒號。case語句中的值的資料型別必須與變數的資料型別相同,而且只能是常...

燒腦的悖論

序 看到了乙個很燒腦的邏輯 悖論 悖論指的是表面上同一命題或推理中隱含著兩個對立的結論 而這兩個結論都能自圓其說 通俗來講就是乙個說法 你從一方面看它是對 可是從另乙個方面看它又是錯的 以至於我們無法判斷他到底是對是錯 接下來就來看一下悖論世界中典型的幾個 所羅門悖論 但問題是 如果你考察所羅門自己...