Я пытаюсь перенести свои виртуальные хосты в базу данных mysql с помощью vhost_dbd_module.Apache ServerName * wildcard не работает с vhost_dbd_module
В различных примерах, которые я нахожу в Интернете, они инструктируют меня использовать «ServerName *» в качестве шаблона в VirtualHost.
Когда я настраиваю свой VirtualHost таким образом, сервер по умолчанию возвращается к DocumentRoot по умолчанию. Он не запрашивает базу данных mysql.
<VirtualHost *:80>
# catch all other requests that don't get caught above
ServerName *
# fallbackDocumentRoot in case mysql server is down
DocumentRoot /var/html/404
DBDriver mysql
DBDParams "host=<hostname> user=<user> dbname=<dbname>"
DBDocRoot "SELECT documentRoot FROM virtualhosts WHERE serverName = %s" HOSTNAME
</VirtualHost>
Однако, когда я изменить его на это (указать ServerName к domain.tld), он работает должным образом (запрашивает базу данных для domain.tld и возвращает правильное DocumentRoot для domain.tld)
<VirtualHost *:80>
# catch all other requests that don't get caught above
ServerName domain.tld
# fallbackDocumentRoot in case mysql server is down
DocumentRoot /var/html/404
DBDriver mysql
DBDParams "host=<hostname> user=<user> dbname=<dbname>"
DBDocRoot "SELECT documentRoot FROM virtualhosts WHERE serverName = %s" HOSTNAME
</VirtualHost>
Любые идеи, которые неправильно настроены?