Есть ли способ настроить общий (для поддоменов) виртуальный сервер для одного домена, где у меня есть пара предопределенных поддоменов.
то есть:
webmail.example.com -> указывает на "/ var / web / roundcube"
beta.example.com -> указывает на "/ var / web / beta /"
example.com и все другие поддомены -> укажите на "/ var / web / www"
<VirtualHost *:80>
ServerName webmail.example.com
ServerAdmin webmaster@example.com
DocumentRoot /var/web/roundcube
<Directory /var/web/roundcube/>
...
</Directory>
...
</VirtualHost>
<VirtualHost *:80>
ServerName beta.example.com
ServerAdmin webmaster@example.com
DocumentRoot /var/web/beta
<Directory /var/web/beta/>
...
</Directory>
...
</VirtualHost>
<VirtualHost *:80>
ServerName example.com
ServerAlias *.example.com
ServerAdmin webmaster@example.com
DocumentRoot /var/web/www
<Directory /var/web/www/>
...
</Directory>
...
</VirtualHost>
Это должно работать нормально, и это определенно правильный способ делать то, что вы пытаетесь сделать!
ServerName
или ServerAlias
превзойдет подстановочный знак ServerAlias
, независимо от порядка их загрузки.ServerName
или ServerAlias
директивы любым способом (например, с IP-адресом в URL-адресе вместо имени хоста) - эти запросы будут обслуживаться первым виртуальным хостом для загрузки.