HTTP 301
跳至導覽
跳至搜尋
| HTTP/HTTPS |
|---|
| File:HTTP logo.svg |
| 版本 |
| 請求方法 |
| 報文主體 |
| 頭欄位 |
| 狀態碼 |
| 相關主題 |
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: Status Code Definitions. [2014-06-01]. (原始內容存檔於2010-03-16).
- ↑ Secure your site with HTTPS. Google 用戶中心. Google. [6 February 2016]. (原始內容存檔於2017-12-15).
- ↑ T., Fielding, Roy; Tim, Berners-Lee,; Henrik, Frystyk,. Hypertext Transfer Protocol -- HTTP/1.0. [2017-07-04]. (原始內容存檔於2010-11-30) (English).
- ↑ C., Mogul, Jeffrey; Jim, Gettys,; Tim, Berners-Lee,; Henrik, Frystyk,. Hypertext Transfer Protocol -- HTTP/1.1. IETF. [2017-07-04]. (原始內容存檔於2018-06-07) (English).
- ↑ J., Leach, Paul; Tim, Berners-Lee,; C., Mogul, Jeffrey; Larry, Masinter,; T., Fielding, Roy; James, Gettys,. Hypertext Transfer Protocol -- HTTP/1.1. [2017-07-04]. (原始內容存檔於2011-03-07) (English).
- ↑ How long do browsers cache HTTP 301s?. StackOverflow. [2016-01-21]. (原始內容存檔於2016-01-27).
- ↑ Mark, Nottingham,; Roy, Fielding,; Julian, Reschke,. Hypertext Transfer Protocol (HTTP/1.1): Caching. [2017-07-04]. (原始內容存檔於2017-07-07) (English).
- ↑ Roy, Fielding,; Julian, Reschke,. Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content. [2017-07-04]. (原始內容存檔於2017-05-25) (English).
- ↑ How to Use the Site Move Tool. Bing Webmaster Tools. [2017-07-04]. (原始內容存檔於2016-03-07).
- ↑ Change page URLs with 301 redirects - Search Console Help. Google Help. [2017-07-05]. (原始內容存檔於2017-07-24) (English).
外部連結[編輯]
- HTTP/1.1 Error codes in RFC 2616(頁面存檔備份,存於互聯網檔案館) (英文)
- RFC 1945
- RFC 2068