У меня есть домен, скажем, domain.com. Этот домен переходит на сервер с apache на этом сервере. У меня есть три сайта для этого домена:
domain.com (по умолчанию) dev.domain.com mail.domain.com
Каждый из этих доменов имеет каталог в моей папке ~ / public-www / с тем же именем.
Я хочу, чтобы www.domain.com перенаправлял меня на domain.com, я хочу, чтобы development.domain.com перенаправлял меня на dev.domain.com, я хочу, чтобы email.domain.com и epost.domain.com перенаправляли меня на почту .domain.com, и я хочу, чтобы все остальные поддомены перенаправляли меня на сайт domain.com по умолчанию.
Как мне настроить мои сайты apache2, чтобы они работали таким образом и выполняли правильные перенаправления. Кто-то сказал мне, что для того, чтобы поисковые машины правильно индексировали и ранжировали мои сайты, перенаправление должно выполняться с перенаправлением 301 или чем-то в этом роде.
Сначала вам нужно будет убедиться, что вы активировали виртуальный хостинг и убедиться, что модуль mod_rewrite
загружен.
Затем напишите в свой файл httpd.conf
или отдельным файлом ваши разные виртуальные хосты:
domain.com
, dev.domain.com
и mail.domain.com
development.domain.com
, epost.domain.com
и email.domain.com
www.domain.com
и другие поддомены.Например, чтобы перенаправить email.domain.com
к mail.domain.com
, вы можете использовать что-то похожее на следующее:
<VirtualHost *:80>
ServerName email.domain.com
ServerAlias epost.domain.com
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^(.*) http://mail.domain.com$1 [R=301,L]
</IfModule>
</VirtualHost>
Вы можете адаптировать его для development.domain.com
.
Что касается www.domain.com
, ты можешь использовать *.domain.com
в ServerAlias
директива для соответствия всем остальным поддоменам.