HTTP 301
跳至導覽
跳至搜尋
package.lua第80行Lua錯誤:module 'Module:CGroup/core' not found package.lua第80行Lua錯誤:module 'Module:Sidebar/configuration' not found
301 Move Permanently 是HTTP協議中的一個狀態碼(Status Code)。可以簡單地理解為該資源已經被永久改變了位置[1],通常會發送HTTP Location來重定向到正確的新位置。
返回301狀態碼進行跳轉被Google認為是將網站地址由HTTP遷移到HTTPS的最佳方法。[2]
定義[編輯]
- 如果一個客戶端有連結編輯能力,其應當把所有的引用連結重定向到新的URL上。
- 這個響應代碼是可以被緩存的。[6][7]
- 除非請求方法是HEAD,否則響應實體應該包含一個小型的超文本,標註一個超連結到新的URL。
- 如果是除了GET和HEAD之外的請求方法,客戶端必須在重定向之前詢問用戶。
例子[編輯]
客戶端發出請求:
GET /blog HTTP/1.1
Host: www.example.com
伺服器回應,不帶Cache-Control頭部:
HTTP/1.1 301 Moved Permanently
Location: http://www.example.org/index.asp
伺服器回應,帶Cache-Control頭部:
HTTP/1.1 301 Moved Permanently
Location: http://www.example.org/index.asp
Cache-control: private; max-age=600
客戶端實現問題[編輯]
當某些HTTP/1.0客戶端收到該狀態碼時,可能會將POST方法改為GET方法,繼續向新地址發出請求,這是錯誤的實現——故而後續標準引入了HTTP 307。[8]
搜尋引擎優化[編輯]
由於該代碼表示頁面地址發生了較長久的改變,故Bing[9]和Google[10]等搜尋引擎都推薦使用301重定向,以改變搜尋引擎中的實際頁面地址。
相關條目[編輯]
參考文獻[編輯]
外部連結[編輯]
- HTTP/1.1 Error codes in RFC 2616(頁面存檔備份,存於網際網路檔案館) (英文)
- RFC 1945
- RFC 2068