Если у меня следующая конфигурация Apache и подстановочный знак *. s1.ex.com, указывающий на сервер
<VirtualHost *>
ServerName example.com
DocumentRoot /var/www/example.com
</VirtualHost>
<VirtualHost *>
ServerName example.net
DocumentRoot /home/user2/web/example.net
</VirtualHost>
Возможно ли автоматическое получение доменов example.com.s1.ex.com
example.net.s1.ex.com
автоматически указывать на их соответствующий виртуальный хост?
Изменить: я ищу решение, которое автоматически делает то же самое, как если бы я добавил ServerAlias вручную.
Вы можете добавить ServerAlias:
<VirtualHost *>
ServerName example.com
ServerAlias example.com.s1.ex.com
DocumentRoot /var/www/example.com
</VirtualHost>
<VirtualHost *>
ServerName example.net
ServerAlias example.net.s1.ex.com
DocumentRoot /home/user2/web/example.net
</VirtualHost>
Ищете массовый виртуальный хостинг?
Я думаю ты хочешь mod_vhost_alias.
LoadModule vhost_alias_module /usr/lib/apache2/modules/mod_vhost_alias.so
<VirtualHost *>
VirtualDocumentRoot /var/www/%-5.0.%-4
</VirtualHost>
example.com.s1.ex.com теперь обслуживается из /var/www/example.com
.