Resolvemos a questão:
<VirtualHost *:80>
VirtualDocumentRoot /local/www/%1
ServerName dev.mydomain.co.uk
ServerAlias dev.mydomain.co.uk *.dev.mydomain.co.uk
</VirtualHost>
Usando o ServerAlias.
Recentemente, meu nome de domínio funcionou bem com meu servidor e consegui obter subdomínios que apontavam para pastas específicas. No entanto, acabei de notar um pequeno problema. Eu tenho o meu /etc/apache2/sites-enabled/000-default
definido para:
<VirtualHost *:80>
VirtualDocumentRoot /local/www/%1
ServerName *.dev.localhost
</VirtualHost>
e quando vou para test.dev.mydomain.co.uk
, ele exibe o conteúdo de /local/www/test/
e isso é ótimo. No entanto, eu digitei incorretamente o domínio e percebi que test.mydomain.co.uk
também está fazendo exatamente a mesma coisa quando você erra a parte .dev.
. Eu não quero que isso aconteça. Alguém pode sugerir alguma correção?
Se ...
VirtualHost
acima é o primeiro da sua configuração, e
test.mydomain.co.uk
... então o Apache usará o bloco VirtualHost
acima para test.mydomain.co.uk
. Ou seja, na ausência de uma correspondência explícita, o Apache usará a primeira definição VirtualHost
que encontrar. De a documentação :
If no matching ServerName or ServerAlias is found in the set of virtual hosts containing the most specific matching IP address and port combination, then the first listed virtual host that matches that will be used.
Tags apache-2.2