vhost каждому юзеру автоматом

alexhemp

Новичок
vhost каждому юзеру автоматом

Хочется сделать что-то в таком духе

1. Имеется виртуальный хостинг, и домен - к примеру mydomain.ru
2. Имеются юзера в системе, которые имеют свои home-директории
3. Хочется автоматом сделать такие vhost-ы - http://username.mydomain.ru -> ~username/public_html
4. Хочется не прописывать каждого ручками, а сделать один раз :)

Читал как обычно про UserDir и VirtualDocumentRoot но не могу сообразить как скрестить ужа и ежа :)
 

BlackSabbath

Новичок
Может лучше mod_rewrite'ом переписывать
username.mydomain.ru на mydomain.ru/~username/public_htm ??
 

Alex Demchenco

Новичок
Необходимо добавить в конфиг DNS зоны сайта сроку вида

*.mydomain.com. 14400 IN CNAME mydomain.com.

Далее в конфиг апача в раздел виртуального хоста добавить строку вида

ServerAlias *.mydomain.com mydomain.com

Далее в public_html создать .htaccess с кодом

RewriteCond %{HTTP_HOST} ^[^.]+\.mydomain\.com$
RewriteRule ^(.+) %{HTTP_HOST}$1
RewriteRule ^([^.]+)\.mydomain\.com(.*) /home/mydomain/public_html/$1

Теперь к любому добавленому каталогу в public_html можно обращатся как к поддомену сайта.
 

Alexandre

PHPПенсионер
Далее в конфиг апача в раздел виртуального хоста добавить строку вида
ServerAlias *.mydomain.com mydomain.com
и перегрузить апач ;)
лучше туда ничего не добавлять!

DNS перенаправляет на апач, апач вопронимает все доменные имена, далее рулит mod_rewrite
 
Сверху