简单的apache2从一个域重定向到另一个域

简单的apache2从一个域重定向到另一个域

我想要做的事情如下:

我的域名 xy.example.com 不再存在。因此,我想对新域名 abc.example.com 进行简单的重定向。这应该是一个重定向,当有人在浏览器栏中输入时也会起作用http://xy.example.com/team.php- 应该重定向到http://abc.example.com/team.php

我已经尝试了几种方法,但都没有效果。我应该在 Apache 2 配置中输入什么?

答案1

您可以使用永久重定向指令将客户端重定向到您的新 URL。

只需为旧域名创建一个非常简单的 VirtualHost,然后将其重定向到新域名:

<VirtualHost *:80>
    ServerName xy.example.com
    RedirectPermanent / http://abc.example.com/
    # optionally add an AccessLog directive for
    # logging the requests and do some statistics
</VirtualHost>

答案2

.htaccess在您的 内创建或编辑DocumentRoot。添加

RewriteEngine On
RewriteRule ^(.*)$ http://abc.example.com/$1 [R=301,L]

此外,我会将ServerName指令更改为新域名,并保留ServerAlias旧域名。

ServerName abc.example.com
ServerAlias xy.example.com

答案3

如果您可以做到,VH 是可以的,但它并不是一个真正的嵌入式解决方案。

我更喜欢使用If

<If "%{HTTP_HOST} == 'old.example.com'">
    Redirect "/" "https://new.example.com/"
</If>

您可以在定义 ServerAlias 的同一位置使用它。并且应该可以在多租户环境中正常工作。

相关内容