什麼是HTTP 中的重定向?都有哪些型別

URL 重定向,也稱為URL 轉發,是一種為頁面、表單或整個網站/應用程式提供多個 URL 地址的技術。HTTP 對此操作有一種特殊的響應,稱為HTTP 重定向。

什麼是HTTP 中的重定向?都有哪些型別

重定向實現了許多目標:

1。站點維護或停機期間的臨時重定向

2。永久重定向以在更改站點的 URL、上傳檔案時的進度頁面等後保留現有的連結/書籤。

原則

在 HTTP 中,重定向是由伺服器向請求傳送特殊的重定向響應來觸發的。重定向響應具有以 開頭的狀態程式碼3,以及包含Location要重定向到的 URL 的標頭。

當瀏覽器收到重定向時,它們會立即載入Location標頭中提供的新 URL。除了額外往返對效能的小幅影響外,使用者很少注意到重定向。

什麼是HTTP 中的重定向?都有哪些型別

重定向有多種型別,分為三類:

永久重定向

臨時重定向

特殊重定向

1.永久重定向

這些重定向旨在永遠持續下去。它們暗示不應再使用原始 URL,並用新 URL 替換。搜尋引擎機器人、RSS 閱讀器和其他爬蟲將更新資源的原始 URL。

什麼是HTTP 中的重定向?都有哪些型別

規範不打算允許更改方法,但現有的使用者代理確實會更改其方法。308建立是為了消除使用非GET方法時行為的歧義。

2.臨時重定向

有時無法從其規範位置訪問所請求的資源,但可以從其他位置訪問它。在這種情況下,可以使用臨時重定向。

搜尋引擎機器人和其他爬蟲不會記住新的臨時 URL。在建立、更新或刪除資源時也使用臨時重定向來顯示臨時進度頁面。

什麼是HTTP 中的重定向?都有哪些型別

該規範不打算允許方法更改,但現有的使用者代理確實會更改其方法。307建立是為了消除使用非GET方法時行為的歧義。

3.特殊重定向

304(未修改)將頁面重定向到本地快取的副本(已過時),並且300(多選)是手動重定向:瀏覽器將正文顯示為網頁,列出可能的重定向,使用者單擊一個選擇它。

什麼是HTTP 中的重定向?都有哪些型別