瀏覽器沒有使用查詢字串重寫 URL

瀏覽器沒有使用查詢字串重寫 URL

當我透過新增查詢字串重寫 URL 時,瀏覽器中的 URL 沒有查詢字串。這是我所擁有的:

location / {
    rewrite ^/$ /?page=test break;
}

相反,當我訪問根目錄時,我會在瀏覽器中看到原始 URL。我可以重寫到另一條路徑。

答案1

正如所寫的,這只是一個重寫,它由(並且應該)由 Web 伺服器內部處理,而使用者不知道。

您可以透過將redirectpermanent語句新增至重寫行(用於重寫的 nginx 文檔)。

小心permanent變體(HTTP 代碼 301),該名稱非常字面意思,瀏覽器將存儲它,因此之後很難更改它 - 這應該只用於遷移到新系統。

使用redirect將強制瀏覽器使用新 URL 重新載入站點,因此也應小心使用,因為它會顯著延遲頁面載入時間。

答案2

發生此問題的原因是。使用查詢字串重寫是可行的。

相關內容