Перенаправить домен на новый сервер, который управляет несколькими доменами
Я хочу переслать домен (old.com) другому (new.com), который расположен на другом сервере. Проблема в том, что на этом новом сервере уже размещены 2 домена (new.com и other.com), и перенаправление фактически перенаправляет на другой домен (other.com) на этом новом сервере.
В DNS на old.com я создал запись CNAME от "www" до "new.com".
Что еще мне нужно сделать, чтобы old.com перенаправлял на new.com, а не other.com?
Ура,
Николя.
1 ответ
Вы можете добавить ServerAlias в vhost-файл new.com: http://httpd.apache.org/docs/2.2/mod/core.html
Я предполагаю, что other.com является доменом по умолчанию, который получает сервер.
РЕДАКТИРОВАТЬ
Вы можете увидеть список Vhosts, который обслуживает ваш Apache, а также какой из них используется по умолчанию
apachectl -S
Если по умолчанию установлено значение "other.com", то любые запросы, которые будут отправлены на этот сервер, указанный вашим CNAME, которые неправильно настроены в vhost new.com, будут направлены на vhost по умолчанию.
Редактировать 2 добавили переписать код.
Убедившись, что ServerAlias настроен правильно и запрос от "www.old.com" обслуживает файлы с "new.com", вы можете убедиться, что весь трафик с www.old.com правильно проходит. 301- перенаправляется (проще говоря: URL-адрес изменяется в вашем браузере, и поисковые системы знают, что это постоянное изменение), используя следующий код (предполагается, что у вас включен mod_rewrite) в файле vhost (или.htaccess):
<IfModule mod_rewrite.c>
RewriteEngine On
# START DOMAIN REDIRECTS
RewriteCond %{HTTP_HOST} ^www\.old\.com$ [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^/(.*) http://new.com/$1 [R=301,L]
# END DOMAIN REDIRECTS
</IfModule>