Просте перенаправлення apache2 з одного домену на інший


28

Я хочу зробити таке:

Мій домен xy.example.com більше не існує. Таким чином, я хочу зробити перенаправлення на новий домен abc.example.com. Це має бути переспрямування, яке також працює, коли хтось вводить на панелі браузера http://xy.example.com/team.php - ніж він повинен перенаправляти на http://abc.example.com/team.php

Я вже спробував кілька речей, але насправді це не вийшло. Що мені потрібно помістити в конфігурацію Apache 2?


3
Пізній коментар. якщо xy.example.com більше не існує, тобто немає ip-адреси для xy.example.com, ніхто не піде нікуди, коли він вводить його у веб-переглядачі. Домен повинен існувати, перш ніж хтось може туди перейти, щоб бути перенаправлений. Це як встановити фізичну автовідповідач на стару телефонну лінію, давши новий номер, а потім відключити лінію.
Ленна

Про перенаправлення ISPConfig дивіться у howtoforge.com/community/threads/…
Фернандо Кош

Відповіді:


57

Ви можете використовувати директиву 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>

12

Створіть або відредагуйте .htaccessвнутрішню частину свого DocumentRoot. Додайте

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

Додатково я б змінив ServerNameдирективу на новий домен і залишив би ServerAliasзі старим доменом.

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

1
Я не можу бачити, як це діятиме самостійно. Для запобігання циклу переадресації потрібен RedirectCond! ^ Xy.example.com $.
GeoSword
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.