Permitir acesso ao servidor nginx apenas ao usar o nome de domínio completo e não o IP

Permitir acesso ao servidor nginx apenas ao usar o nome de domínio completo e não o IP

Eu tenho um servidor nginx servindohttp://exemplo.comque resolve para o IP 1.2.3.4. No momento, os usuários podem se conectar acessandohttp://exemplo.comou visitandohttp://1.2.3.4.

Só quero permitir o acesso ao usar o nome de domínio completo,http://exemplo.com. Como posso configurar meu nginx para bloquear o acesso via IP e permitir acesso apenas ao usar o nome de domínio completo?

Responder1

Você pode criar dois hosts virtuais no Nginx. Um para acesso padrão e outro para domínio específico.

Em seguida, você pode restringir o acesso padrão ou redirecionar para o seu domínio conforme sua escolha.

server {
    listen      80 default_server;
    listen      [::]:80 default_server;
    server_name "";
    return      444;  # or comment this and uncomment below to redirect to domain.
    #return 301 http://www.example.com$request_uri;
}
server {
    listen      80 default_server;
    listen      [::]:80 default_server;
    server_name "www.example.com";
    ...
    ...
}

Hosts virtuais Nginx -https://tecadmin.net/setup-nginx-virtual-hosts-on-ubuntu/

informação relacionada