|
Здравствуйте!
Помогите разобраться с вопросом как реализовать виртуальные субдомены в Apache2 Ubuntu 9.10 OS. Хочу чтобы при наборе всех субдоменов запросы пере направлялись на главный сайт... one.domen.ru -> domen.ru; two.domen.ru->domen.ru; www.domen.ru->domen.ru; Читал что это как то реализуется с помощью mod_rewrite, но пока не разобрался, посоветуйте, может у кого есть опыт?
|
|||||||
|
|
Нужно смотреть в сторону wildcard subdomains.
Для апача указать алиас ServerAlias *.domain.tld также нужно прописать wildcard для DNS записи http://en.wikipedia.org/wiki/Wildcard_DNS_record Ну а потом уже правило для .htaccess, но это если вам нужно перенаправлять two.domen.ru на что то типа domen.ru/two а если просто все поддомены должны смотреть на главный(как у вас в вопросе) то ничего и делать то не надо с реврайтами.
|
|||||
| Комментировать |
|
Ну во-первых one.domen.ru, two.domen.ru и т.д. это разные домены и для каждого из них должны быть настроены хосты в системе, например:
127.0.0.1 domen.ru one.domen.ru two.domen.ru и виртуальные хосты в апаче, который их на 127.0.0.1 потом будет обрабатывать. Для этого в подключите в httpd.conf файл httpd-vhosts.conf, а в нем создайте один виртуальный хост с указанием нужных поддоменов в качестве альясов. ServerName domen.ru ServerAlias one.domen.ru two.domen.ru www.domen.ru DocumentRoot "/var/www/domen.ru/" # ... прочие настройки... А уже затем если вам нужно физическое перенаправление, то подключив mod_rewrite напишите в файле .htaccess примерно следующее: RewriteEngine On RewriteCond %{HTTP_HOST} ^one\.(.*)$ [NC] RewriteCond %{HTTP_HOST} ^two\.(.*)$ [NC] RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule (.*) http://{HTTP_HOST}/$1 [R,L]
|
||||||
|
|
а как потом подключить .htaccess для rewriterule внутри субдомена, напрмер для ^/news(/?)+$ [L]
|
|||||
| Комментировать |
923 раза
Задан7 месяцев 10 дней назад
Теги