Apache-2.2

合併兩個不同的域,但使用 Apache 重定向保存虛擬主機

  • June 23, 2011

我有兩個域和一個有效的子域。我怎樣才能做到這一點?

ex-ample.com    » example.com
www.example.com » example.com
en.ex-ample.com » en.example.com
en.example.com  » en.example.com

我目前正在使用以下 .htaccess 規則:

RewriteCond %{HTTP_HOST} !^example\.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

嘗試了很多,但我能得到的最好的是重定向循環。你能幫助我嗎?

如果我正確理解了您的要求,我認為典型的命名虛擬主機配置將為您提供所需的內容。我不完全確定“保存虛擬主機”是什麼意思;如果此解決方案沒有幫助,也許您可以詳細說明您的要求。

在任何情況下,我都在設想這樣的事情:

NameVirtualHost *:80

<VirtualHost *:80>
   ServerName example.com
   ServerAlias ex-ample.com www.example.com
   DocumentRoot /path/to/example.com
</VirtualHost>

<VirtualHost *:80>
   ServerName en.example.com
   ServerAlias en.ex-ample.com
   DocumentRoot /path/to/en.example.com
</VirtualHost>

現在請求任何…

…將轉到 example.com VirtualHost,並請求…

…將轉到 en.example.com 虛擬主機。

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