Есть апач с name-based virtual-hosting. Рулят им из ISP-панели, и до поры - до времени все было хорошо. Пока не понадобилось создать хост в поддомене. Т.е.:<VirtualHost 1.2.3.4:80>
ServerName server.tld
DocumentRoot /home/hosting/data/www/server.tld
. . . . .
</VirtualHost>
<VirtualHost 1.2.3.4:80>
ServerName ZZZ.server.tld
DocumentRoot /home/hosting/data/www/ZZZ.server.tld
. . . . .
</VirtualHost>
И тут обнаружилось странное. Если эти секции идут в указанном порядке - домен-субдомен, то апач всегда срабатывает по секции домена. Такое впечатление, что парсится *server.tld. Если же поменять секции местами, чтобы первым шел субдомен - все отлично. Т.е. получается, что нужно строить секции виртуальных хостов в порядке убывания специфичности:
Z.E.B.A
Y.E.B.A
X.E.B.A
N.C.B.A
M.C.B.A
E.B.A
D.B.A
C.B.A
B.A
Какая-то логика в этом, несомненно, есть, но панель, через которую управляется хостинг, при добавлении виртуального хоста просто дописывает секцию в конец конфига. Разумеется, пока я секции вручную не упорядочу - субдомены не работают ни в какую.
Есть возможность как-то изменить поведение апача в этом случае? Чтобы он искал точное совпадение имени хоста?