En esta breve guía vamos a estudiar un poco como configurar nginx para que podamos tener varios sitios escuchando en el mismo puerto (80 por defecto), pero diferenciados por distintos subdominios.
1- Instalar nginx para Debian y derivadas o Rhel y derivadas.
apt install nginx yum install nginx
NOTA:
Una vez instalado nginx en el caso de Debian y derivadas el servicio se activa solo, pero en caso de otras distros puede que tengas que iniciarlo manualmente con
systemctl start nginx
2- Crear 2 subdominios
En /etc/nginx vamos a ver toda la configuración del motor web, pero vamos a usar solo sites-enabled y sites-available, lo primero es crear en sites-available 2 subdominios
cd /etc/nginx/sites-available cp default jorge.nksistemas.com cp default nk1.nksistemas.com
2.1- Modificamos los archivos creados, solo 3 parámetros.
1: Quitamos el default_server, de la parte de listen, porque si no nos daría el error: [emerg] a duplicate default server for 0.0.0.0:80 in /etc/nginx/sites-available/… Esto se debe a que solo puede haber un solo default server. Por lo tanto los quitamos en ambos archivos.
2: Modificamos el root que deberíamos crear una carpeta para cada subdominio y dejarlo configurado acá /var/www/html/jorge y /var/www/html/nk1.
3: En server_name quitamos el _ y colocamos el subdominio correspondiente en el caso de jorge jorge.nksistemas.com y nk1 lo mismo en su archivo.
2.2- Creamos la carpeta para cada subdominio
mkdir /var/www/html/jorge mkdir /var/www/html/nk1
2.3- Creamos el index de cada sitio
echo "Hola soy Jorge" > /var/www/html/jorge/index.html echo "Hola soy NK1" > /var/www/html/nk1/index.html
3- Modifimos los dns
Dado que estos subdominios no existen, vamos a decirle a nuestro sistema que cuando usemos esos dominios los direcciones al localhost, y cuando usemos jorge, nos enviará al sitio de jorge y cuando usemos nk1 nos enviará a su sitio.
nano /etc/hosts
Agregamos los dominios detrás de localhost y también detrás de la IP por si lo usamos de otro equipo.
127.0.0.1 localhost jorge.nksistemas.com nk1.nksistemas.com 192.168.200.130 jorge.nksistemas.com nk1.nksistemas.com
3.1- Recargar configuraciones de nginx
Podríamos usar systemctl, pero en esta oportunidad vamos a recargar todos los cambios que hicimos con el comando propio del motor.
nginx -s reload
4- Comprobación
Ingresamos a un navegador y vemos el resultado, jugando con jorge.nksistemas.com y nk1.nksistemas.com