将通配符子域名重定向到不同域名上的相同子域名

将通配符子域名重定向到不同域名上的相同子域名

我有一个带有动态子域的域。不幸的是,该域已更改。因此我需要重定向

*.domain1.com

*.domain2.com

同时保持子域名不变。我查看了 mod_alias 和 mod_rewrite 文档以及 Google 上的示例,但没有找到有关在子域名动态时保持子域名不变的信息。

我对服务器有完全的控制权,因此我正在考虑使用 VirtualHost httpd.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>

答案1

我终于在 StackOverflow 上找到了 @Marty 的答案

代码复制于此处:

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

答案2

您可以尝试类似下面的操作。

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

如果有帮助请告诉我

相关内容