
當我透過新增查詢字串重寫 URL 時,瀏覽器中的 URL 沒有查詢字串。這是我所擁有的:
location / {
rewrite ^/$ /?page=test break;
}
相反,當我訪問根目錄時,我會在瀏覽器中看到原始 URL。我可以重寫到另一條路徑。
答案1
正如所寫的,這只是一個重寫,它由(並且應該)由 Web 伺服器內部處理,而使用者不知道。
您可以透過將redirect
或permanent
語句新增至重寫行(用於重寫的 nginx 文檔)。
小心permanent
變體(HTTP 代碼 301),該名稱非常字面意思,瀏覽器將存儲它,因此之後很難更改它 - 這應該只用於遷移到新系統。
使用redirect
將強制瀏覽器使用新 URL 重新載入站點,因此也應小心使用,因為它會顯著延遲頁面載入時間。
答案2
發生此問題的原因是這。使用查詢字串重寫是可行的。