重寫與重定向 NGINX

當用戶請求 URL 時,NGINX 允許他們使用 URL 重寫和重定向從不同的 URL 提供內容。 但是,在使用 URL 重寫和重定向之前您應該了解它們之間的關鍵區別。 在本文中,我們將了解 NGINX 中重寫和重定向的區別。

重寫與重定向 NGINX

這是 NGINX 中 URL 重寫和重定向的區別。

什麼是 URL 重寫?

URL 重寫允許您在請求的 URL 被服務器處理之前將其重寫為不同的 URL。 這是一個例子網址重寫Apache 中的聲明,我們將 /product-id/1 重寫為 /product/1.html

                      Rewrite ^product-id/([0-9]+)$ /product/$1.html
                    

在上面的示例中,Apache 服務器將接受對 /product-id/1 的請求並提供 /product/1.html 中的內容。 它將對所有產品 URL 執行此操作,例如 /product-id/1、/product-id/2 等。

在這種情況下,即使用戶請求 /product-id/1,他們也會在不知情的情況下收到內容 /product/1.html。 此 URL 更改發生在服務器內部,並且用戶不會知道它,因為瀏覽器 URL 不會更改。

另請閱讀:如何在 NGINX 中創建自定義 404 頁面

什麼是網址重定向?

URL 重定向允許您將瀏覽器重定向到不同的 URL 並繼續在該 URL 處處理。 這是 apache 中的 url 重定向規則示例,它允許您從 product-id/1 重定向到 /product/1.html

                      Redirect ^product-id/([0-9]+)$ /product/$1.html
                    

在上面的例子中,當用戶請求/product-id/1、/product-id/2等時,他們被重定向到/product/1、/product/2等。 分別。

另請閱讀:如何在 NGINX 中限制下載速度

URL 重寫和重定向之間的區別

在 URL 重寫的情況下,服務器在內部進行 URL 替換並從不同的 URL 傳遞響應。 他瀏覽器中請求的 URL 沒有改變.

另一方面,在 URL 重定向的情況下,當瀏覽器請求特定 URL 時,服務器會向瀏覽器發送 3xx 重定向響應以及重定向的位置。 然後瀏覽器自動向重定向位置發送新請求。 所以他瀏覽器更改時請求的 URL.

如果您想顯示有吸引力且直觀的 SEO 友好 URL(例如 /product)但提供來自無吸引力 URL 的內容(例如 index.php?category=1&page=3&konid=213),則 URL Rewrites 很有用。 如果您想在不更改 URL 的情況下從不同的位置提供請求的 URL,它也很有用。 在這種情況下,您不希望搜索引擎和用戶知道您正在從不同的位置提供內容。

如果您已將頁面移動到新位置並希望從該位置發佈內容,則 URL 重定向非常有用。 在這種情況下,您是在讓用戶和搜索引擎知道您的網址已移動。 當您想要移動或重組您的網站,或將多個頁面合併到一個頁面時,它會很有用。

CodePre 使可視化數據和實時監控儀表板變得容易。 免費試用 CodePre。

關於 CodePre

CodePre 是一個功能強大的報告和儀表板平台,適用於中小型企業。 在幾分鐘內為您的業務創建儀表板、圖表和報告。 快速從數據中獲取見解。 今天免費試用!

相關文章