从一个 TLD 重定向到另一个

Edd*_*gan 6 domain-name-system mod-rewrite redirect apache-2.2

我有一个网站的两个域(我们使用的是 Apache)example.comexample.org. 该网站响应这两个通配符子域。但是,我希望将 .com 作为规范域。我的意思是,我想将(301)所有内容重定向到 .com,但要维护子域。例如。

example.org => example.com
sub.example.org => sub.example.com
Run Code Online (Sandbox Code Playgroud)

我对正则表达式的了解不够,无法弄清楚如何设置它。任何人都可以指出我正确的方向吗?

Sha*_*den 8

尝试这个:

<VirtualHost *:80>
    ServerName example.org
    ServerAlias *.example.org
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^(.*\.)?example\.org$
    RewriteRule ^/(.*)$ http://%1example.com/$1 [R=301,L]
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

..然后让您的另一个虚拟主机(为 example.com 提供内容的虚拟主机)配置为ServerName example.comServerAlias *.example.com

编辑:通过添加“?”使子域的匹配成为可选 量词