Ayúdanos a seguir proporcionándote tutoriales gratuitos y de calidad desactivando tu bloqueador de anuncios. suscriptores a nuestro sitio.
Tabla de contenidos

Cómo instalar varios bloques de servidor Nginx en Debian 10

1 mar 2021 5 min di lettura
Cómo instalar varios bloques de servidor Nginx en Debian 10

Introducción

Nginx Server Blocks le permite ejecutar más de un sitio web en una sola computadora. Con Server Blocks, puede especificar la raíz del documento del sitio (el directorio que contiene los archivos del sitio web), crear una política de seguridad separada para cada sitio, usar diferentes certificados SSL para cada sitio y mucho más.

Para obtener una guía sobre cómo configurar Single Server Block con Nginx en Debian 10, lea este tutorial.

En este artículo, proporcionaremos instrucciones detalladas sobre cómo configurar un bloque de servidor Nginx en Debian 10 Buster.

Si su intención es instalar Nginx en un servidor remoto, continúe leyendo; de lo contrario, si desea instalar Nginx en su computadora local, omita el primer párrafo "Conexión al servidor" y lea el siguiente.

Conexión al servidor

Para acceder al servidor, necesita conocer la dirección IP. También necesitará su nombre de usuario y contraseña para la autenticación. Para conectarse al servidor como root, escriba el siguiente comando:

ssh [email protected]_DEL_SERVER

A continuación, deberá ingresar la contraseña del usuario root.

Si no usa el usuario root, puede iniciar sesión con otro nombre de usuario usando el mismo comando, luego cambie root a su nombre de usuario:

ssh [email protected]_DEL_SERVER

Luego se le pedirá que ingrese su contraseña de usuario.

El puerto estándar para conectarse a través de ssh es 22, si su servidor usa un puerto diferente, deberá especificarlo usando el parámetro -p, luego escriba el siguiente comando:

ssh [email protected]_DEL_SERVER -p PORTA

Ahora está conectado a su servidor, está listo para comenzar a instalar Nginx.

Prerrequisitos

Siga esta guía para instalar Nginx: Cómo instalar Nginx en Debian 10.

Configurar bloques de servidor

Por defecto, Nginx Debian solo tiene un bloque de servidor. Está configurado para usar archivos en el /var/www/html.

Necesitamos directorios adicionales si queremos configurar más sitios.

Creamos una estructura dentro de /var/www para cada uno de nuestros sitios. El contenido web se colocará en un directorio html.

Desde la consola:

sudo mkdir -p /var/www/esempio.com/html
sudo mkdir -p /var/www/test.com/html

Podemos usar la variable $ USER para asignar los permisos necesarios a la cuenta en la que estamos conectados actualmente (asegúrese de no haber iniciado sesión como root). Esto nos permitirá crear o modificar fácilmente el contenido de este directorio:

sudo chown -R $USER:$USER /var/www/esempio.com/html
sudo chown -R $USER:$USER /var/www/test.com/html

Asegurémonos de que los permisos sean correctos:

sudo chmod -R 755 /var/www

Crea una página de muestra

Creemos un archivo index.html para el primer dominio:

nano /var/www/esempio.com/html/index.html

Peguemos el siguiente código de muestra:

<html>
 <head>
 <title>Benvenuto, esempio.com</title>
 </head>
 <body>
 <h1>Il dominio esempio.com è funzionante!</h1>
 </body>
 </html>

Guarde y cierre el archivo.

Creemos la segunda página de ejemplo, copiando la primera en el otro directorio raíz.

cp /var/www/esempio.com/html/index.html /var/www/test.com/html/

Abramos el archivo:

nano /var/www/test.com/html/index.html

Editemos el archivo:

<html>
 <head>
 <title>Benvenuto, test.com</title>
 </head>
 <body>
 <h1>Il dominio test.com è funzionante!</h1>
 </body>
 </html>

Guarde y cierre el archivo.

Cree un nuevo bloque de servidor para Nginx

Como se mencionó anteriormente, Nginx usa solo un bloque de servidor de forma predeterminada. Así que copiemos el existente y luego editámoslo:

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/esempio.com

Abre el archivo:

sudo nano /etc/nginx/sites-available/esempio.com

Elimine la opción default_server, ya que solo un bloque de servidor puede usar esta opción.

server {
 listen 80 default_server;
 listen [::]:80 default_server;...
 }

Entonces cambia así:

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

También cambie la raíz raíz principal /var/www/example.com/html; El resultado será este:

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

 root /var/www/esempio.com/html;
 index index.html index.htm index.nginx-debian.html;

 server_name esempio.com www.esempio.com;

 location /{
 try_files $uri $uri/=404;
 }
 }

Crea el segundo bloque de servidor

Copiemos el archivo creado anteriormente y cambiemos los parámetros necesarios:

sudo cp /etc/nginx/sites-available/esempio.com /etc/nginx/sites-available/test.com

Abre el archivo:

sudo nano /etc/nginx/sites-available/test.com

Cámbielo así:

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

 root /var/www/test.com/html;
 index index.html index.htm index.nginx-debian.html;

 server_name test.com www.test.com;

 location /{
 try_files $uri $uri/=404;
 }
 }

Habilitar bloques de servidor

Habilitamos los nuevos bloques de servidor creando enlaces simbólicos al directorio habilitado para sitios, que Nginx usa durante la fase de inicio.

sudo ln -s /etc/nginx/sites-available/esempio.com /etc/nginx/sites-enabled/
sudo ln -s /etc/nginx/sites-available/test.com /etc/nginx/sites-enabled/

Para evitar problemas de memoria debido a la adición de nuevos bloques de servidor, modificamos un parámetro dentro de nginx.conf

sudo nano /etc/nginx/nginx.conf

Busque y elimine el comentario del siguiente parámetro eliminando el símbolo # antes de la opción server_names_hash_bucket_size.

http {...

 server_names_hash_bucket_size 64;...
 }

Comprobemos si las configuraciones son correctas:

sudo nginx -t

Si no ha encontrado ningún problema, reinicie nginx:

sudo systemctl restart nginx

Edite el archivo de hosts locales para una prueba (opcional)

Si no usó sus propios nombres de dominio y en su lugar usó valores ficticios, puede modificar la configuración de su computadora local para permitirle probar temporalmente la configuración de los bloques de servidor Nginx recién configurados.

Esto no permitirá que otros visitantes vean su sitio correctamente, pero le dará la posibilidad de acceder a los sitios de forma independiente y probar su configuración. Nota Asegúrese de estar operando en su computadora local durante estos pasos y no en su servidor VPS. Deberá tener acceso de root, ser miembro del grupo administrativo o, de lo contrario, poder modificar los archivos del sistema para hacerlo.

Abra el archivo de hosts:

sudo nano /etc/hosts

Necesita conocer la dirección IP pública del servidor y los dominios que desea apuntar al servidor. Suponiendo que la dirección IP pública es, por ejemplo, 11.11.11.11, edite el archivo así:

127.0.0.1 localhost...

 11.11.11.11 esempio.com www.esempio.com
 11.11.11.11 test.com www.test.com

Prueba la configuración

Ahora que todo está listo, debemos verificar que los bloques del servidor estén funcionando correctamente. Puede hacerlo visitando los dominios en su navegador:

http://esempio.com

 http://test.com

Si ambos sitios funcionan, ha configurado correctamente dos bloques de servidor independientes con Nginx.

Si ha editado el archivo de hosts en su computadora local para probar los sitios recién creados, simplemente puede eliminar las últimas líneas agregadas para restaurarlo.

Conclusión

En este tutorial hemos visto cómo crear hosts virtuales (Bloques de servidor) para asociar diferentes dominios a la misma instalación de Nginx, para poder servir diferentes sitios con diferentes dominios en el mismo servidor con Debian 10 Buster.

Apóyenos si le gusta nuestro contenido. Gracias.

Buy me a coffeeBuy me a coffee

Únase a la conversación

Apóyenos con una donación.

Genial! A continuación, complete el pago para obtener acceso completo a Noviello.it.
Bienvenido de nuevo! Has iniciado sesión correctamente.
Te has suscrito correctamente a Noviello.it.
Éxito! Su cuenta está completamente activada, ahora tiene acceso a todo el contenido.
Éxito! Su información de facturación ha sido actualizada.
Su facturación no se actualizó.