TLDR;
Isso parece um erro do Nginx, provavelmente porque poucas pessoas sabem que nomes de domínio totalmente qualificados terminam em um ponto.
Plano de fundo
Eu tive que ler sua declaração "nomes de domínio totalmente qualificados terminam com um ponto". Eu encontrei este recurso útil que explica isso muito bem. Há também uma pergunta e resposta do SF . Parece que apenas uma pequena minoria (inclusive eu até agora) sabia que um domínio poderia até ter um ponto final.
Nota
Observe que um "cabeçalho de host" e "Nginx server_name" são bem diferentes. O server_name define as solicitações que o servidor Nginx responderá. O "cabeçalho do host" faz parte do cabeçalho HTTP enviado pelo cliente para o servidor.
Exemplo
Eu tentei seus servidores de exemplo, com example.com mapeado para o meu servidor, com os mesmos resultados que você no nginx 1.9.11. Eu também tentei apenas com o servidor "example.com". definido, mas não "example.com". Quando enrolei essa configuração, recebi uma resposta do meu servidor padrão, em vez do "exemplo.com". servidor.
Documentação
A documentação do Nginx server_name não menciona um ponto final. A documentação permite um curinga após o ponto (example.com. *). Gostaria de saber se quem escreveu a documentação sabia sobre nomes de domínio totalmente qualificados.
Teoria
Eu tenho que saber, se você definir "example.com" e "example.com". em Nginx qual é a diferença? "exemplo.com" teria que ser considerado o URL completo da raiz do DNS, portanto, há uma suposição "." depois de qualquer maneira.
Conclusão
Eu acho que você está tecnicamente correto que o Nginx server_name deve atender ao ponto final. Não tenho certeza se deve tratar de forma diferente ou distinta de um server_name sem o ponto final, pelos motivos descritos acima.
Isso parece ser um erro no Nginx como resultado da supervisão. Também pode ser deliberado, baseado em práticas comuns, e não na RFC .