Apache-2.2

將域/目錄重定向到 domain2/目錄

  • June 18, 2014

我希望 domain1.com/customers 轉到 domain2 我的主目錄公共 html 的文件夾 /customers。兩個域都在不同的伺服器上。在第二個伺服器/第二個域的文件夾中,我們將為我們的客戶執行幾個測試站點。站點如 domain2.com/henry/index.php。這兩個站點都在 LAMP 伺服器上。要將域一到二重定向,我可以使用 DNS 重定向。

我確實想保留在瀏覽器地址欄中顯示的域 domain1/目錄,所以我認為我必須為此使用域遮罩

我找到了這個Stackoverflow 執行緒。這是基於我相信的 Mod 重寫任務。但對我來說,這只是一個標準的 301 重定向。這不是我在這裡需要的。我也需要遮罩。

我仍然在這裡找到了更好的重定向:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)domain1\.com [NC]
RewriteRule ^(.*)$ http://www.domain2.com/$1 [QSA,L,R=301]

但我仍然不確定這是否會掩蓋最終域,因此構成我需要的 url 遮罩。在WebGUI atm上閱讀它。為了掩蓋網址,他們有這個例子:

# mask real url
       RewriteCond %{REQUEST_URI} ^/css
       RewriteRule ^(.*)$ http://www.domain.com$1 [P,L]

       RewriteCond %{REQUEST_URI} ^/media
       RewriteRule ^(.*)$ http://www.domain.com$1 [P,L]

       RewriteCond %{REQUEST_URI} ^/uploads
       RewriteRule ^(.*)$ http://www.domain.com$1 [P,L]

       RewriteRule ^(.*)$ http://www.domain.com/dir/ [P,L] 

P 代表代理,L 代表最後。據我所知,屏蔽需要代理。標誌在這裡解釋。

我的主人說我應該使用 Apache Alias。Apache Alias也確實處理了內部重定向,所以我猜他是正確的,只要確保第二個域/伺服器上的數據是從正確的位置載入的。他提到使用:

<VirtualHost domain2.com:80>
  …configuratie…
  Alias /customers /var/www/html/customers
</VirtualHost>

問題:如何在瀏覽器地址欄中保留 domain1/directory 並使其從 domain2/directory 載入站點,例如使用 domain2.com/customers/peter/idex.php /henry/index.php 等等?

通過使用新的測試域並將 DNS 重定向到相關測試伺服器的 ip 解決了這個問題。這是因為這個初始試驗似乎很難做到,並且需要伺服器一做額外的不必要的提升。

引用自:https://serverfault.com/questions/605368