Sub-Subdomínios do Apache e subdomínio curinga existente

1

Portanto, eu tenho um registro DNS e uma configuração do servidor virtual de subdomínio existentes como segue

DocumentRoot /path/to/code
<Directory "/path/to/code">
allow from all
Options +Indexes
</Directory>

ServerName existing.domain.co.uk
ServerAlias *.domain.co.uk

... Agora quero adicionar outro servidor virtual, que funciona da mesma maneira, mas com um sub-subdomínio, para permitir que eu acesse uma ramificação da base de código de algo como monkeys.alt.domain.co.uk

DocumentRoot /path/to/altcode
<Directory "/path/to/altcode">
allow from all
Options +Indexes
</Directory>

ServerName alt.domain.co.uk
ServerAlias *.alt.domain.co.uk

No arquivo de zona DNS, adicionei outro registro A de * .alt ao IP (que é o mesmo IP que o registro * A).

Agora, o que eu acho que está acontecendo é que o curinga existente está pegando monkeys.alt.domain.co.uk e enviando para o servidor virtual existente, em vez do novo.

Minha pergunta: Como obtenho o tráfego de monkeys.alt.domain.co.uk para acessar o novo servidor virtual 'alt'?

    
por Horse 16.10.2014 / 16:45

1 resposta

1

O Apache trabalha com os hosts virtuais na mesma ordem em que lê suas configurações. Portanto, se ele ler primeiro o ServerAlias *.domain.co.uk , qualquer sub ou sub.sub.domain será igual. Se o Apache puder ler primeiro ServerAlias *.alt.domain.co.uk , então qualquer subdomínio de alt.domain.co.uk será igual, mas não o existing.domain.co.uk , que corresponderá ao próximo vHost.

Portanto, se você tiver os dois hosts virtuais descritos no mesmo arquivo, coloque o segundo (o monkey.alt vHost) antes do vHost principal. Se eles estiverem em arquivos separados, renomeie o arquivo para que o arquivo de configuração monkey vHost seja lido primeiro (adicione um 0 no início, por exemplo).

    
por 16.10.2014 / 22:51