捐血一袋救人一命

2024年6月26日 星期三

HTTP Status Code

HTTP Status Code

狀態碼 說明 類別
100 Continue 請求者應繼續進行請求
101 Switching Protocols 服務器根據請求切換協議
102 Processing (WebDAV) 服務器已經收到並正在處理請求,但無響應可用
200 OK 請求成功
201 Created 請求成功並且資源已被創建
202 Accepted 請求已接受,但尚未處理完成
203 Non-Authoritative Information 請求成功,但返回的元數據可能來自第三方源
204 No Content 請求成功但無內容返回
205 Reset Content 請求成功,要求重置文檔視圖
206 Partial Content 服務器成功處理了部分 GET 請求
207 Multi-Status (WebDAV) 返回多個資源的狀態
208 Already Reported (WebDAV) DAV 之前已經枚舉的成員,不需要再次列出
226 IM Used 伺服器完成了對資源的 IM(instance-manipulations)請求
300 Multiple Choices 請求的資源有多個表示
301 Moved Permanently 永久重定向:HTTP 301 狀態碼表示資源已永久移動到新的 URL,未來的請求應該使用新的 URL
緩存行為:瀏覽器和搜索引擎會更新資源的 URL 並緩存這個重定向,未來的請求將自動使用新 URL
SEO:對於搜索引擎優化(SEO),301 重定向將權重轉移到新的 URL 上,這有助於保持網站的排名
302 Found 臨時重定向:HTTP 302 狀態碼表示資源臨時移動到新的 URL,未來的請求應該仍使用原始 URL。
緩存行為:瀏覽器和搜索引擎通常不會緩存這個重定向,未來的請求仍然會訪問原始 URL。
SEO:對於 SEO,302 重定向不會將權重轉移到新的 URL 上,因為它被認為是臨時的。
303 See Other 請求的資源可在其他 URI 上找到,應使用 GET 方法獲取
304 Not Modified 資源未修改,可以使用緩存版本
305 Use Proxy 請求應通過代理訪問資源
307 Temporary Redirect 暫時重定向:HTTP 307 表示這個重定向是臨時的。未來請求仍然應該使用原始 URL。
保持方法和正文:與 302 Found 狀態碼不同,307 明確要求客戶端在重定向時保持原始的 HTTP 方法和請求正文。例如,如果原始請求是 POST,重定向後仍然是 POST
308 Permanent Redirect 永久重定向:HTTP 308 表示這個重定向是永久的。未來的請求應該使用新的 URL。
保持方法和正文:308 與 301 Moved Permanently 類似,但明確要求客戶端在重定向時保持原始的 HTTP 方法和請求正文。例如,如果原始請求是 POST,重定向後仍然是 POST。
400 Bad Request 服務器無法理解請求
401 Unauthorized 未經身份驗證
402 Payment Required 保留將來使用
403 Forbidden 服務器拒絕請求
404 Not Found 資源未找到
405 Method Not Allowed 請求方法不被允許
406 Not Acceptable 請求的資源的內容特性無法滿足請求頭中的條件
407 Proxy Authentication Required 需要代理身份驗證
408 Request Timeout 請求超時
409 Conflict 請求與資源的當前狀態發生衝突
410 Gone 資源已被永久刪除
411 Length Required 需要有效的內容長度標頭
412 Precondition Failed 先決條件失敗
413 Payload Too Large 請求負載過大
414 URI Too Long 請求 URI 過長
415 Unsupported Media Type 不支持的媒體類型
416 Range Not Satisfiable 請求範圍不符合可用範圍
417 Expectation Failed 服務器未能滿足請求頭的期望值
418 I’m a teapot HTCPCP/1.0 錯誤代碼
421 Misdirected Request 請求導向錯誤
422 Unprocessable Entity (WebDAV) 語義錯誤,無法響應
423 Locked (WebDAV) 資源被鎖定
424 Failed Dependency (WebDAV) 由於之前的請求失敗,當前請求失敗
425 Too Early 服務器拒絕處理可能被重放的請求
426 Upgrade Required 需要切換協議
428 Precondition Required 要求請求附帶前置條件
429 Too Many Requests 請求過多
431 Request Header Fields Too Large 請求頭字段過大
451 Unavailable For Legal Reasons 因法律原因不可用
500 Internal Server Error 服務器內部錯誤
501 Not Implemented 服務器不支持實現請求的方法
502 Bad Gateway 無效的響應
503 Service Unavailable 服務器不可用
504 Gateway Timeout 網關超時
505 HTTP Version Not Supported 不支持的 HTTP 版本
506 Variant Also Negotiates 內部配置錯誤
507 Insufficient Storage (WebDAV) 存儲空間不足
508 Loop Detected (WebDAV) 檢測到循環
510 Not Extended 需要進行擴展
511 Network Authentication Required 需要網絡身份驗證

狀態碼 說明 重定向類型 緩存行為 請求方法 使用場景
301 Moved Permanently 永久重定向 瀏覽器和搜索引擎會更新 URL 並緩存重定向 可能改變方法為 GET(取決於瀏覽器) 當資源永久移動到新位置,應用於 SEO 轉移權重的情況,例如網站遷移或永久更改資源 URL。
302 Found 臨時重定向 瀏覽器和搜索引擎通常不會緩存重定向 可能改變方法為 GET(取決於瀏覽器) 當資源臨時移動到新位置或需要臨時重定向,用於短期的資源變更或 A/B 測試。
307 Temporary Redirect 臨時重定向 瀏覽器和搜索引擎通常不會緩存重定向 保持原請求方法 當需要臨時重定向且必須保持請求方法(例如 POST),用於臨時服務器變更,或維護期間。
308 Permanent Redirect 永久重定向 瀏覽器和搜索引擎會更新 URL 並緩存重定向 保持原請求方法 當資源永久移動到新位置且必須保持請求方法,適用於 API 的永久變更,避免方法變更影響。

總結:

  • 使用 301 或是 308 永久重定向,主要是讓搜尋引擎SEO更新資料、瀏覽器緩存;但是要注意 301 會造成 Request Method 變動
  • 使用 302 或是 307,則是臨時性的變動,例如伺服器維護期間,暫時重新導向,或是負載平衡。瀏覽器不會緩存,也不影響搜尋引擎的 SEO;但是要注意 302 也會造成 Request Method 變動

0 意見: