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
.