¿Dejar de escuchar nginx en todas las IP?

¿Dejar de escuchar nginx en todas las IP?

Tengo 1 IP principal y una IP secundaria. La IP secundaria está destinada a un servidor web Go especial que escucha solo en esta IP por un motivo que es irrelevante para esta pregunta.

Lamentablemente no funciona porque Nginx decidió escuchartodoIP y, por lo tanto, mi servidor web personalizado no puede vincularse a esa IP y puerto. No puedo usar un puerto diferente, tiene que ser este puerto... por eso compré una segunda dirección IP, para este propósito exclusivo.

¿Cómo hago para que Nginx solo escuche en la IP principal en lugar de en todas las IP?

Estoy en Ubuntu 18.04.

Respuesta1

Aquí hay un ejemplo de configuración solo para http. Https realmente no difiere:

server {
  #This is the important listen block to specify:
  listen      <ip-address>:80;
  server_name example.com;
  root        /var/www/html;
  index index.html index.php;

  location / { 
    try_files $uri $uri.html $uri/ /index.html;
  }

  error_page 404 /404.html;
}

Si tiene esto en su configuración, puede eliminarlo para deshabilitar ipv6 si así lo desea:

listen [::]:80 default_server

Si luego lo pruebas con netstat:

test@computer:/etc/nginx/conf.d# netstat -na | grep -i "Listen" | grep ":80"
tcp        0      0 <ip-address>:80       0.0.0.0:*               LISTEN  

información relacionada