Aliases no registro nginx / apache vs CNAME?

2

Em um dos meus arquivos de configuração nginx sites-available , posso especificar um alias de nome de servidor, assim:

server_name example.com www.example.com;

Se eu tivesse um servidor Apache, posso fazer algo semelhante com ServerName e ServerAlias :

ServerName example.com
ServerAlias www.example.com

Eu também especifiquei um registro CNAME no meu arquivo de zona:

www.example.com. 1800 IN CNAME example.com.

Eu quero que www.example.com e example.com server o mesmo conteúdo. Como tenho um registro de CNAME , todos os www.example.com serão apontados para example.com de qualquer forma, portanto, não há necessidade do alias. O argumento também pode ser ativado para dizer que o registro CNAME não é necessário.

O alias do meu servidor da web (nginx ou Apache) e o registro CNAME são redundantes? Em caso afirmativo, devo me livrar de um deles? E se sim, qual?

    
por dayuloli 22.01.2015 / 14:55

1 resposta

3

Sem o CNAME, você precisaria de um registro A para o subdomínio www. Caso contrário, a resolução de DNS para www.example.com não funcionará e a solicitação não chegará ao seu servidor.

Você também precisará do ServerAlias , porque mesmo quando estiver usando CNAME, o cabeçalho do host na solicitação HTTP não será alterado, então ele ainda será www.example.com e você precisará informar ao Apache / nginx qual vhost deve ser exibido este pedido.

Então nada é redundante aqui. A única vantagem de usar um CNAME para www.example.com em vez de um registro A é que quando seu IP muda, você só precisará alterar o registro A para example.com . Ao usar registros A, você teria que mudar os dois.

    
por 22.01.2015 / 15:22