Простые apache2 перенаправляют от одного домена до другого

Хорошо.. Я нашел решение:

Edit Virtual IP Mapping

Name : Server VIP
External interface : wan1
Type : Static NAT
Extermal IP Address/Range : xxx.xxx.xxx.xxx  <- insert external IP here
Mapped IP Address/Range : 192.168.9.51
Port Forwarding : not checked

Я оказываюсь, что необходимо ввести внешний IP интерфейса wan1 и не использовать 0.0.0.0, поскольку состояния документации должны быть допустимыми для любого IP. Это дрянно, так как все перенаправление портов прекратит работать, если мой интерфейс глобальной сети изменит IP-адрес после powerloss, например. Но по крайней мере это работает теперь.

28
задан 28 December 2011 в 10:29
3 ответа

Вы можете использовать директиву RedirectPermanent для перенаправления клиента на ваш новый 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>
57
ответ дан 28 November 2019 в 20:02

Создайте или отредактируйте .htaccess внутри вашего DocumentRoot . Добавьте

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

Кроме того, я бы изменил директиву ServerName на новый домен и оставил ServerAlias ​​ со старым доменом.

ServerName abc.example.com
ServerAlias xy.example.com
12
ответ дан 28 November 2019 в 20:02

VH в порядке, если вы можете это сделать, но на самом деле не является готовым решением.

Я предпочитаю использовать If:

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

Это то, что вы можете использовать в том же месте, где вы определяете ServerAlias. И должен отлично работать в мультитенантной среде.

0
ответ дан 1 April 2021 в 14:07

Теги

Похожие вопросы