De acordo com esta documentação , várias partes de um FQDN podem ser usadas. Na sua configuração, você está usando %1 , que corresponde ao subdomínio. Se o FQDN for img.alpha.dev , então %1 resultará em img e como %2 corresponde ao domínio, isso resultará em alpha e %0 a img.alpha.dev , pois %0 corresponde a FQDN.
Implementando a seguinte configuração:
<VirtualHost *:80>
ServerAlias *
VirtualDocumentRoot /var/www/%2/%1
</VirtualHost>
em /etc/httpd/conf/httpd.conf , executando mkdir -p /var/www/mydomain/info && echo helloworld > /var/www/mydomain/info/index.html , reiniciando httpd e navegando para http://info.mydomain.com/ resulta em helloworld .
No entanto, se um ServerAlias for especificado mais, por exemplo:
<VirtualHost *:80>
ServerAlias *.mydomain.com
VirtualDocumentRoot /var/www/%1
</VirtualHost>
executando mkdir -p /var/www/info && echo test2_param_one > /var/www/info/index.html e navegando para info.mydomain.com resulta em test2_param_one .
<VirtualHost *:80>
ServerAlias *.mydomain.com
VirtualDocumentRoot /var/www/%0
</VirtualHost>
executando mkdir -p /var/www/info.mydomain.com && echo test2_param_all > /var/www/info.mydomain.com/index.html e navegando para info.mydomain.com resulta em test2_param_all .
Concluindo, os seguintes snippets funcionam:
<VirtualHost *:80>
ServerAlias *.*.dev
VirtualDocumentRoot /var/www/%2/%1
</VirtualHost>
<VirtualHost *:80>
ServerAlias *.dev
VirtualDocumentRoot /var/www/%1/test
</VirtualHost>
mkdir -p /var/www/alpha/test && echo test5 > /var/www/alpha/test/index.html , mkdir -p /var/www/alpha/img && echo test10 > /var/www/alpha/img/index.html , navegando para http://alpha.dev/ retornando test5 e navegando para http://img.alpha.dev/ returns test10 .