На моем сайте я переписываю все свои домены в корень, например
*.mysite.com
У меня также есть несколько до этого, которые все работают (они все простые и указывают только DocumentRoot)
static.mysite.com
test_alias_for_another_site.mysite.com
blah.mysite.com
Теперь проблема в том, что у меня сложный VirtualHost. Он состоит примерно из 16 строк. У меня есть ServerAlias, однако Apache никогда его не использует, потому что он использует *.mysite.com
правило и перезаписывает вместо использования этого virtaulhost, указывающего конкретный поддомен.
Как мне решить эту проблему? Есть ли вариант, который я могу использовать, используя подстановочные знаки в последнюю очередь? Или выбрать порядок файлов, которые он просматривает? Или мне нужно скопировать/вставить виртуальный хост в этот другой файл?
решение1
Это будет первый соответствующий VirtualHost, который будет загружен, и поскольку файлы загружаются в алфавитном порядке, вы можете изменить порядок, изменив имена файлов.
Я добавляю числовой префикс к каждому имени файла, чтобы можно было задать приоритет и сделать что-то вроде того, о чем вы говорите. Например:
1-captureall.conf
2-specific.vhost.com.conf
2-anotherspecific.vhost.com.conf
3-*.vhost.com.conf