使用nginx創建企業繖形站點
我的客戶需要將他所有的企業合併到一個保護傘中,而不是將它們從原來的位置移動。例如,他已經有一個作為 realestate.com 和 movers.com 執行的站點,現在他想將它們合併到corporate.com 下,這樣corporate.com/real 連結將映射到real.corporate.com 並顯示託管在的網站房地產網。這不是重定向,因此 URL 欄將顯示 real.corporate.com 的 realestate.com,所有連結也將是相對的,例如 realestate.com/index.html 將顯示為 real.corporate.com/index.html。realestate.com/portfolio/houses/pictures 將變為 real.corporate.com/portfolio/houses/pictures。我曾嘗試使用 proxy_pass 但這會更改 URL。我目前正在使用一個站點對其進行測試,以下是我的伺服器塊
server{ listen 80; location / { proxy_pass http://www.realestate.com/; sub_filter_once off; proxy_redirect off; proxy_set_header Host $host; } }
此設置將我直接帶到 realestate.com,並且 URL 也在瀏覽器中更改。將位置更改
location /real
為 404 錯誤。請幫忙
您的配置不執行任何重定向。重定向是由上游網路伺服器發送的
realestate.com
。應用程序將重定向發送到
realestate.com
,因為請求未發送到應用程序中配置的域。您可以使用更改此設置
proxy_set_header Host www.realestate.com;
此設置發送帶有
Host: www.realestate.com
標頭的上游代理請求,這將使其最終到達上游伺服器中的適當虛擬伺服器。但是,您仍然可能對由
www.realestate.com
.此外,如果
www.realestate.com
發送任何 HTTP 重定向,您需要將重定向內容替換為proxy_redirect default;
指令。