El servidor web Nginx es uno de los servidores web más famosos y utilizados del mundo. Es gratis y de código abierto. Se utiliza principalmente como proxy inverso. También se puede utilizar como equilibrador de carga, caché HTTP y proxy de correo.
Esta guía le mostrará cómo configurar Nginx Server con Nginx Server Blocks para alojar múltiples aplicaciones web.
requisitos
· Derechos de raíz
· Servidor web Nginx
Paso 1: configuración del cortafuegos
El primer paso es hacer que nuestro servidor web acepte las solicitudes entrantes para poder servir las páginas. Las solicitudes provienen de equipos cliente. Para hacer esto, necesitamos configurar el firewall para permitir el tráfico de solicitudes entrantes a través del puerto estándar 80 y el puerto 443 si se va a utilizar el protocolo https.
Primero, verifiquemos el estado del firewall. El comando de Ubuntu que necesitaremos para lograr esto es el siguiente.
$ sudo ufw status
Si está inactivo, lo habilitaremos con el siguiente comando.
$ sudo ufw enable
Para permitir conexiones entrantes a través del puerto 80, el siguiente comando hace el trabajo.
$ sudo ufw allow 80/tcp
Si necesitamos permitir 443 en lugar de 80, el siguiente comando hará el trabajo.
$ sudo ufw allow 443/tcp
A continuación, verifiquemos el estado del firewall. El siguiente comando hace el trabajo.
$ sudo ufw status numbered Status: active To Action From -- ------ ---- [ 1] 443/tcp ALLOW IN Anywhere [ 2] 80/tcp ALLOW IN Anywhere nameservers: addresses: [8.8.4.4, 8.8.8.8, 2.2.0.0, 1.1.1.1]
Paso 2: Configure el archivo de configuración predeterminado de Nginx
Los bloques del servidor Nginx están configurados y se utilizan para tener más de un sitio web ejecutándose en el mismo servidor. De forma predeterminada, solo hay un bloque de servidor en el momento en que se instala el servidor web Nginx. Se encuentra en la ruta / etc / nginx / sites-available / default. El siguiente es el archivo predeterminado en sitios disponibles.
## # You should look at the following URL's in order to grasp a solid understanding # of Nginx configuration files in order to fully unleash the power of Nginx. # http://wiki.nginx.org/Pitfalls # http://wiki.nginx.org/QuickStart # http://wiki.nginx.org/Configuration # # Generally, you will want to move this file somewhere, and start with a clean # file but keep this around for reference. Or just disable in sites-enabled. # # Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples. ## # Default server configuration # server { listen 80 default_server; listen [::]:80 default_server; root /var/www/thedefaultserver.com; # Add index.php to the list if you are using PHP index index.html; server_name _thedefaultserver.com; location / { # First attempt to serve request as file try_files $uri $uri/ =404; } }
Paso 3: configurar bloques de servidor Nginx
A continuación, crearemos un bloque personalizado para poder alojar otro sitio en la misma máquina servidor. Vamos a crear un directorio que actuará como raíz del bloque del servidor. Llamémoslo bloque1. El siguiente comando hace el trabajo.
$ sudo mkdir /var/www/block1.com
A continuación, crearemos una página index.html para este bloque. El siguiente comando hace el trabajo.
$ echo "Welcome to Block 1!" | sudo tee /var/www/block1/index.html > /dev/null
A continuación, creamos el bloque del servidor en el directorio / etc / nginx / sites-available y lo llamamos block1. Contendrá un archivo de bloque del servidor con el nombre del servidor, la ubicación, el directorio raíz y el índice. El nombre del archivo es block1. La ruta con el archivo es / etc / nginx / sites-available / block1. Podemos usar cualquier editor para crear este archivo.
El siguiente es el archivo de bloque del servidor Block1
server { listen 80; listen [::]:80; root /var/www/block1.com; index index.html; server_name block1.com; location / { try_files $uri $uri/ =404; } }
A continuación, debemos crear un enlace simbólico desde el archivo al directorio compatible con el sitio. Nginx lo verifica al inicio. El siguiente servidor de comandos sirve para este propósito.
$ sudo ln -s /etc/nginx/sites-available/block1.com /etc/nginx/sites-enabled/
Paso 3: reinicia el servidor Nginx
Necesitamos reiniciar el servidor para aplicar el cambio de un nuevo bloque de servidor e implementar la aplicación web en la misma computadora del servidor. El siguiente comando hace el trabajo
$ sudo systemctl restart nginx
Ahora este servidor puede servir a los sitios web thedefaultserver.com y block1.com.
De esta manera podemos agregar múltiples bloques de servidor según el requisito.
Conclusión
Para ejecutar varios sitios web en un solo servidor Ubuntu 18.04 con el servidor web Nginx, los bloques del servidor Nginx deben configurarse con los detalles adecuados. Incluye una ruta diferente, páginas HTML, un directorio raíz y un archivo de bloque del servidor. Una vez configurada, la computadora cliente accederá a más de un sitio web desde un único servidor web.