HTTP 狀態碼
當一個要求傳送至您的伺服器,要求您網站的網頁 (例如,使用者以瀏覽器瀏覽您的網頁,或當 Googlebot 檢索該網頁),您的伺服器會傳回 HTTP 狀態碼以回應該要求。
這個狀態碼會提供關於要求狀態的資訊,並給予 Googlebot 關於您的網站和所要求網頁的資訊。
以下為一些常見的狀態碼:
- 200 - 伺服器成功傳回網頁
- 404 - 找不到所要求的網頁
- 503 - 伺服器暫時無法使用
下列為 HTTP 狀態碼的完整清單。您也可以造訪 W3C 網頁取得 HTTP 狀態碼的詳情。
1xx (Provisional response)
指出暫時回應並請求要求者採取措施以繼續的狀態碼。
代碼 | 說明 |
---|---|
100 (繼續) | 要求者應當繼續此要求。伺服器傳回此代碼,指出已收到某個要求的第一部分,正等候其餘部分。 |
101 (切換通訊協定) | 要求者已請求伺服器切換通訊協定,伺服器正在確認即將進行切換。 |
2xx (成功)
指出伺服器已成功處理該要求的狀態碼。
代碼 | 說明 |
---|---|
200 (成功) | 伺服器已成功處理該要求。一般而言,這代表伺服器已提供所要求的網頁。如果您在 robots.txt 檔案中看到此狀態,即表示 Googlebot 已成功擷取該網頁。 |
201 (已建立) | 該要求已成功完成,伺服器已建立新的資源。 |
202 (已接受) | 伺服器已接受該要求,但尚未處理。 |
203 (非授權資訊) | 伺服器成功處理該要求,但正在傳回可能來自另一來源的資訊。 |
204 (無內容) | 伺服器已成功處理該要求,但沒有傳回任何內容。 |
205 (重設內容) | 伺服器已成功處理該要求,但沒有傳回任何內容。與 204 回應不同,此回應需要要求者重設文件視圖 (例如,清除表單,以輸入新的資料)。 |
206 (部分內) | 伺服器已成功處理部分 GET 要求。 |
3xx (已重新導向)
您必須採取進一步的動作才能完成要求,這些狀態碼通常用於重新導向。Google 建議,每個要求的重新導向次數不要超過五次。您可以使用網站管理員工具來查看 Googlebot 在檢索重新導向的網頁時,是否存在問題。[檢索] 之下的「檢索錯誤」網頁會列出 Googlebot 因重新導向錯誤而無法檢索的網址。
代碼 | 說明 |
---|---|
300 (多重選擇) | 根據該要求,伺服器可採取數種動作。伺服器可能會根據要求者 (使用者代理程式) 選擇一個動作,或者可能列出清單供要求者選擇一個動作。 |
301 (永久移動) | 要求的網頁已永久移到新位置。當伺服器傳回此回應 (作為對 GET 或 HEAD 要求的回應) 時,會自動將要求者導向至新位置。您應該使用此代碼,讓 Googlebot 知道某個網頁或網站已永久移至新位置。 |
302 (暫時移動) | 伺服器目前正對來自不同位置的網頁回應該要求,但是要求者應該繼續使用原位置發出以後的要求。此代碼類似於回應 GET 或 HEAD 要求的 301 代碼,會自動將要求者導向至另一個位置,但是因為 Googlebot 會繼續檢索原位置並為其建立索引,所以您不應該使用此代碼來告知 Googlebot 某個網頁或網站已移除。 |
303 (參閱其他位置) | 當要求者應該對另一個位置發出單獨的 GET 要求以擷取回應時,伺服器會傳回此代碼。對於 HEAD 之外的所有要求,伺服器會自動導向至其他位置。 |
304 (未修改) |
要求的網頁自上次要求以後未經任何修改。當伺服器傳回此回應時,並不會傳回該網頁的內容。 如果網頁自要求者上次要求以後,未經任何修改,則您應該設定伺服器傳回此回應 (稱為 If-Modified-Since HTTP 標頭)。這樣可以節省您的頻寬和負載,因為您的伺服器可以告知 Googlebot,網頁自上次檢索後,便未經修改。 |
305 (使用 Proxy) | 要求者只能透過 Proxy 進入要求的網頁。當伺服器傳回此回應時,也會指出要求者應該使用的 Proxy。 |
307 (暫時重新導向) | 伺服器目前正對來自不同位置的網頁回應該要求,但是要求者應該繼續使用原位置發出以後的要求。此代碼類似於回應 GET 或 HEAD 要求的 301 代碼,會自動將要求者導向至另一個位置,但是因為 Googlebot 會繼續檢索原位置並為其建立索引,所以您不應該使用此代碼來告知 Googlebot 某個網頁或網站已移除。 |
4xx (要求錯誤)
這些狀態碼指出要求中可能存在使伺服器無法進行處理的錯誤。
代碼 | 說明 |
---|---|
400 (不正確的要求) | 伺服器無法解讀該要求的語法。 |
401 (未授權) | 該要求需要驗證。登入後,伺服器可能會對網頁傳回此回應。 |
403 (禁止) | 伺服器拒絕要求。如果您看到 Googlebot 在嘗試檢索您網站的有效網頁時收到這個狀態碼 (您可以在 Google 網站管理員工具 [檢索] 標籤下的「檢索錯誤」網頁中看到這狀態碼),則可能是因為您的伺服器或主機封鎖了 Googlebot 的存取權。 |
404 (找不到) |
伺服器找不到要求的網頁。例如,如果該要求是針對伺服器上不存在的網頁,則伺服器通常會傳回此代碼。 如果您的網站上沒有 robots.txt 檔案,並在 Google 網站管理員工具的「封鎖的網址」網頁看到這個狀態,則這個狀態是正確的。不過,如果您有 robots.txt 檔案,並看到此狀態,則您的 robots.txt 檔案可能未正確命名或位於錯誤的位置。(應該位於網域的最高層級並且命名為 robots.txt)。 如果您在 Googlebot 嘗試檢索的網址中看到這個狀態,則 Googlebot 所追蹤的很可能是來自其他網頁的無效連結 (可能是舊連結或拼字錯誤的連結)。 |
405 (不允許的方法) | 不允許要求中指定的方法。 |
406 (不接受) | 無法以所要求的內容特性回應要求的網頁。 |
407 (需要 Proxy 驗證) | 此狀態碼類似於 401 (未授權),但指定要求者必須使用 Proxy 進行驗證。當伺服器傳回此回應時,也會指出要求者應該使用的 Proxy。 |
408 (要求逾時) | 等候回應時,發生伺服器逾時。 |
409 (衝突) | 完成要求時,伺服器遇到衝突。伺服器必須在回應中包含衝突資訊。伺服器可能會在 PUT 要求與較早的某個要求相衝突時傳回此狀態碼作為回應,並會提供這兩個要求之間的差異清單。 |
410 (已移除) | 要求的資源已永久移除後,伺服器會回傳此回應。此代碼類似於 404 (Not Found) 代碼,但在資源曾經存在但現已不復存在的情況下,有時會取代 404 而使用。如果資源已永久移動,您應該使用 301,指定資源的新位置。 |
411 (需要長度) | 伺服器不接受不含有效內容長度不標頭欄位的要求。 |
412 (前提失敗) | 伺服器未滿足要求者所要求的其中一個前提。 |
413 (要求實體太大) | 伺服器無法處理要求,因為要求過於龐大。 |
414 (要求的 URI 太長) | 要求的 URI (通常是網址) 過長,伺服器無法處理。 |
415 (不支援的媒體類型) | 要求的格式不受要求的網頁支援。 |
416 (要求的範圍無法使用) | 如果要求的範圍在該網頁上無法使用,伺服器就會傳回此狀態碼。 |
417 (預期失敗) | 伺服器無法達到預期要求標題欄位的條件。 |
5xx (伺服器錯誤)
這些狀態碼指出伺服器在嘗試處理要求時發生內部錯誤。這些錯誤傾向於是伺服器本身的錯誤,而不是要求的錯誤。
代碼 | 說明 |
---|---|
500 (內部伺服器錯誤) | 伺服器遭遇錯誤,無法完成要求。 |
501 (未提供) | 伺服器不具備完成要求所需的功能。例如,當伺服器無法識別要求方式時,就會傳回此代碼。 |
502 (不正確的閘道) | 伺服器當成閘道或 Proxy 使用,接收到來自上游伺服器的無效回應。 |
503 (服務無法使用) | 伺服器目前暫時無法使用 (因為超載或維護之故而關閉)。這種情況通常屬於暫時性。 |
504 (閘道逾時) | 伺服器當成閘道或 Proxy 使用,而且未接收到來自上游伺服器的即時回應。 |
505 (不支援的 HTTP 版本) | 伺服器不支援要求裡所用的 HTTP 通訊協定版本。 |