Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Администрирование Web серверов и Web служб > Автоматическое создание поддоменов


Автор: gibbzy 3.4.2010, 21:04
Извените конечно за очередной дурацкий вопрос. Но я вот уже целый день просидел и не могу решить проблему может быть здесь кто то подскажет. Суть проблемы : 
Есть такое описание домена : 
Код

<VirtualHost *>
  ServerName site.ru
  ServerAlias *.site.ru
  DocumentRoot /var/site.ru/public
  <Directory "/var/site.ru/public">
    AllowOverride All
    Allow from All
  </Directory>
  RewriteEngine On
  RewriteCond %{HTTP_HOST} !^www.site.ru$
  RewriteCond %{HTTP_HOST} ^((.*).)site.ru$
  RewriteRule ^/(.*) /%2/$1
</VirtualHost>

Это работает.
Как многие поняли мне нужно чтобы автоматически создавались поддомены.
но для того чтобы создать поддомен нужно разместить его дирректорию в /var/site/public/ тоесть в document root. Т.е : /var/site.ru/public/subdomain/
что по моему является не верным и более верным решением было бы 
/var/site.ru/subdomain/
тоесть размещение поддомена на одну дирректорию выше 

если сделать так : 
Код

<VirtualHost *>
  ServerName site.ru
  ServerAlias *.site.ru
  DocumentRoot /var/site.ru
  <Directory "/var/site.ru">
    AllowOverride All
    Allow from All
  </Directory>
  RewriteEngine On
  RewriteCond %{HTTP_HOST} !^www.site.ru$
  RewriteCond %{HTTP_HOST} ^((.*).)site.ru$
  RewriteRule ^/(.*) /%2/$1
</VirtualHost>

То всё работает, но document root домена меняется, а мне так не нужно.

Подскажите пожалуйста решение. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)