常見的錯誤程式碼
錯誤程式碼(也稱作狀態程式碼),指為伺服器所接收每個請求(網頁點選)分配的 3 位數程式碼。多數有效網頁點選都有狀態程式碼 200("正常")。"網頁未找到"錯誤會生產 404 錯誤。某些常見的程式碼以粗體顯示。
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 協議版本。