Solo permita el acceso al servidor nginx cuando use el nombre de dominio completo y no la IP

Solo permita el acceso al servidor nginx cuando use el nombre de dominio completo y no la IP

Tengo un servidor nginx que sirvehttp://ejemplo.comque resuelve a la IP 1.2.3.4. Por el momento, los usuarios pueden conectarse yendo ahttp://ejemplo.como visitandohttp://1.2.3.4.

Sólo quiero permitir el acceso cuando uso el nombre de dominio completo,http://ejemplo.com. ¿Cómo puedo configurar mi nginx para bloquear el acceso a través de la IP y solo permitir el acceso cuando uso el nombre de dominio completo?

Respuesta1

Puede crear dos hosts virtuales en Nginx. Uno para acceso predeterminado y otro para dominio específico.

Luego puede restringir el acceso al acceso predeterminado o redirigir a su dominio según su elección.

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 virtuales Nginx -https://tecadmin.net/setup-nginx-virtual-hosts-on-ubuntu/

información relacionada