Nginx: el subdominio de configuración no funciona correctamente

Nginx: el subdominio de configuración no funciona correctamente

Al principio, creé un archivo conf que funciona correctamente cuando quiero acceder a http://www.domain.com:

server {
   listen 80;
   listen [::]:80;

   root /var/www/domain;
   index index.html

   server_name domain.com www.domain.com;
}

Luego decido crear otro archivo conf para un subdominio:

server {
   listen 80;
   listen [::]:80;

   root /var/www/subdomain.domain;
   index index.html

   server_name subdomain.domain.com;
}

Ahora el problema es que siempre que quiero acceder a http://www.domain.como http://subdomain.domain.com, en ambos casos el resultado es la página que debo obtener para el subdominio.

El nuevo archivo conf se agregó correctamente a site-enabledla carpeta:

ln -s /etc/nginx/site-available/subdomain.domain.conf /etc/nginx/site-enabled/subdomain.domain.conf

Y así es como se ven mis registros DNS:

domain.com. IN A <server_ip>
www.domain.com. IN A <server_ip>
subdomain.domain.com. IN A <server_ip>

Respuesta1

Le falta el ;en la indexdirectiva, lo que hace que nginx interprete

index.html

server_name domain.com www.domain.com;

como contenido de indexla directiva. Por lo tanto, no hay ningún host virtual definido con a server_namey nginx utilizará el host virtual del subdominio como host virtual general.

información relacionada