Apache-2.2

將萬用字元子域重定向到不同域上的相同子域

  • June 18, 2019

我有一個帶有動態子域的域。不幸的是,該域已更改。因此我需要重定向

*.domain1.com

*.domain2.com

同時保持子域相同。我查看了 mod_alias 和 mod_rewrite 文件以及來自 Google 各地的範例,但沒有發現有關在動態時保持子域相同的資訊。

我可以完全控制伺服器,所以我正在考慮使用 VirtualHost httpd.conf 設置,但不確定這是否是最佳途徑。

任何關於在哪裡看的建議都非常感謝。

目前的 conf 值為:

<VirtualHost *:80>
   DocumentRoot /var/www/domain1
   ServerName domain1.com
   ServerAlias *.domain1.com
   ErrorLog logs/domain1.com-error_log
   CustomLog logs/domain1.com-access_log common

   # This is my latest attempt
   RewriteCond %{HTTP_HOST} ^(.*)\.domain1\.com$ [NC]
   RewriteRule ^(.*)$ http://%1.domain2.com/$1 [R=301,L]
</VirtualHost>

我終於在 @Marty 的 StackOverflow 上找到了答案

此處轉載的程式碼:

RewriteCond %{HTTP_HOST} ^(.+\.)?domain1.com$ [NC]
RewriteRule ^ http://%1domain2.com%{REQUEST_URI} [R=301,L]

您可以嘗試以下方法。

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

讓我知道這是否有幫助

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