1. Descripción del artículo
- Nota : De lo que estamos hablando actualmente es de la primera parte de la tecnología central de nginx. Los capítulos posteriores se basarán en la primera parte como tecnología central para una explicación detallada. Preste atención a la publicación de cursos posteriores para obtener más detalles.
2. Introducción y preparación del entorno.
2.1 Introducción
Nginx (motor x) es un servidor web HTTP y proxy inverso de alto rendimiento que también proporciona servicios IMAP/POP3/SMTP. Nginx fue desarrollado por Igor Sesoev para el segundo sitio Rambler.ru más visitado de Rusia (ruso: Рамблер). La primera versión pública 0.1.0 se lanzó el 4 de octubre de 2004. Publica su código fuente bajo una licencia similar a BSD y es conocido por su estabilidad, amplio conjunto de funciones, archivos de configuración simples y bajo consumo de recursos del sistema. El 1 de junio de 2011, se lanzó nginx 1.0.4. Nginx es un servidor web/servidor proxy inverso ligero y un servidor proxy de correo electrónico (IMAP/POP3), lanzado bajo el protocolo similar a BSD. Sus características son que ocupa menos memoria y tiene fuertes capacidades de concurrencia. De hecho, las capacidades de concurrencia de nginx funcionan mejor entre servidores web del mismo tipo. Los usuarios de sitios web de nginx en China continental incluyen: Baidu, JD.com, Sina, NetEase, Tencent , Taobao, etc.
2.2 Preparar el medio ambiente
Nota : La preparación del entorno se refiere a instalar la máquina virtual, instalar el sistema Linux, configurar la máquina virtual, etc. Se configuró antes al aprender Linux, por lo que aquí puede clonar directamente la máquina virtual y luego modificar la IP y el nombre del host.
- dirección IP :
192.168.10.31
- Nombre de host :
nginx01
2.2.1 Instalación de máquina virtual
Utilice una máquina virtual para instalar y aprender
las funciones de Nginx :
- Fácil de instalar y usar
- Utilizado en empresas tradicionales.
- Adecuado para VPS
- Ideal para implementaciones de servidores de alto rendimiento
2.2.2 Configuración del ordenador durante el estudio
- Memoria : 8G o superior recomendado
- Disco : SSD recomendado
- CPU : 4 núcleos o más son suficientes para la corriente principal
2.2.3 Instalación y configuración de máquinas virtuales
Preparación :
- VMware, Virtualbox, Parallels
- Imagen CentOS7.4
Instalar y configurar el sistema operativo :
- Configurar máquinas virtuales para acceder a Internet
- Configurar dirección IP estática
2.2.4 Solución de problemas sencilla cuando la máquina virtual no puede acceder a Internet
- ¿Es correcta la puerta de enlace en Vmware?
- ¿Puede hacer ping directamente a la dirección IP (solución de problemas de conexión física)?
- Utilice la misma versión de software que el profesor.
- La forma más rápida de desinstalar y reinstalar
3. instalación de nginx
3.1 Introducción a 4 lanzamientos
Las versiones de uso común se dividen en cuatro campos.
- Versión de código abierto de Nginx
- http://nginx.org/
- La versión original descargada directamente del sitio web oficial es relativamente limpia y solo tiene funciones básicas (servidor de sitio web, servidor proxy, equilibrio de carga), es más difícil realizar un desarrollo secundario y necesita integrar muchos módulos de terceros.
- Nginx plus versión comercial (una extensión de nginx básico)
- https://www.nginx.com
- El depósito de la familia nginx proporcionado oficialmente por F5 tiene todas las funciones
- Openresty (gratuito y de código abierto, una extensión de nginx básico)
- http://openresty.org
- La integración basada en nginx y script Lua es relativamente poderosa y admite funciones de personalización.
- Tengine (gratuito y de código abierto, una extensión de nginx básico)
- http://tengine.taobao.org/
- La versión desarrollada por Taobao tiene funciones extendidas en forma de lenguaje C. Tiene menos funciones de desarrollo secundarias pero es más segura y estable cuando se usa en clústeres.
3.2 Instalar la versión de código abierto de nginx en el sistema Linux
3.2.1 Entorno de respaldo
El propósito es facilitar errores de instalación posteriores y restaurar rápidamente el estado desinstalado anterior.
-
Método 1: utilizar instantáneas (tome instantáneas como ejemplo)
-
Método 2: clonar la máquina virtual actual
3.2.2 Pasos de instalación
1) Descargar y subir a la máquina virtual
2) Descomprime el paquete comprimido
tar zxvf nginx-1.21.6.tar.gz
3) Verificación de dependencia
# 进入到解压后的nginx目录
cd nginx-1.21.6/
# 检查依赖
./configure
- Si se produce un error: Falta el compilador del lenguaje C
checking for OS
+ Linux 3.10.0-693.el7.x86_64 x86_64
checking for C compiler ... not found
./configure: error: C compiler cc is not found
- Solución: instalar gcc
yum install -y gcc
- Instálelo en el directorio nginx del sistema.
# 此目录会自动生成
./configure --prefix=/usr/local/nginx
- Si ocurre un error
./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using --without-http_rewrite_module
option, or install the PCRE library into the system, or build the PCRE library
statically from the source with nginx by using --with-pcre=<path> option.
- Solución: instale la biblioteca perl
yum install -y pcre pcre-devel
- Verifique nuevamente para ver si todavía faltan dependencias
./configure --prefix=/usr/local/nginx
- Ocurrió un error
./configure: error: the HTTP gzip module requires the zlib library.
You can either disable the module by using --without-http_gzip_module
option, or install the zlib library into the system, or build the zlib library
statically from the source with nginx by using --with-zlib=<path> option.
- Solución: instalar la biblioteca zlib
yum install -y zlib zlib-devel
- Compruebe nuevamente si faltan dependencias.
./configure --prefix=/usr/local/nginx
- Se descubre que no faltan dependencias y el error de registro no lo afecta.
4) Instalar
# 2条命令依次执行
make
make install
/usr/local/nginx
Compruebe si nginx está en el directorio configurado antes y después de la instalación
5) Inicie nginx (comandos comunes)
- Una vez que la instalación sea exitosa, habrá una carpeta adicional local/nginx en usr, un directorio sbin en el directorio nginx y un script de inicio en el directorio sbin.
- Ingrese al directorio de instalación /usr/local/nginx/sbin
./nginx 启动
./nginx -s stop 快速停止
./nginx -s quit 优雅关闭,在退出前完成已经接受的连接请求
./nginx -s reload 重新加载配置
./nginx -v 查看 nginx 版本号
3.2.3 Acerca del cortafuegos
Al acceder a nginx en Linux en un sistema Windows, no se puede acceder a él de forma predeterminada debido a problemas con el firewall.
- Método 1: apague el firewall
# 关闭防火墙
systemctl stop firewalld.service
# 禁止防火墙开机启动
systemctl disable firewalld.service
- Método 2: número de puerto de acceso abierto, puerto 80
# 放行端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
# 重启防火墙
firewall-cmd --reload
查看防火墙开放的端口号有哪些
firewall-cmd --list-all
3.2.4 Prueba de acceso
La premisa es que el firewall está apagado y
el número de puerto predeterminado es: 80, que se puede omitir.
http://192.168.10.31/
3.2.5 Instalar como servicio del sistema (comience a usar el comando de secuencia de comandos)
Nota : Actualmente, es muy problemático ingresar al directorio sbin para ejecutar el archivo ejecutable nginx durante el inicio, puede instalarlo como un script para que sea más fácil de usar.
Crear script de servicio
# 创建目录和文件
vi /usr/lib/systemd/system/nginx.service
Contenido del script de servicio
Nota: La ruta debe ser coherente con la ruta de instalación anterior de nginx.
[Unit]
Description=nginx - web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecQuit=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
Vuelva a cargar los servicios del sistema y apáguelo antes de usar el método de inicio del programa ejecutable
#重新加载系统服务
systemctl daemon-reload
#查看使用ngin可执行程序启动的方式是否还在
ps -ef | grep nginx
#关闭之前使用可执行程序启动的方式,否则2种方式都有可能会造成冲突
./nginx -s stop 快速停止
Comienza el servicio
# 启动服务
systemctl start nginx.service
# 停止服务
systemctl stop nginx.service
#查看启动状态
systemctl status nginx.service
3.2.6 Puesta en marcha
systemctl enable nginx.service
4. Estructura del directorio y principios operativos básicos.
4.1 Tabla de contenidos
Ingrese al directorio de inicio de Nginx y podremos ver estas carpetas
client_body_temp
conf 用来存放配置文件相关
fastcgi_temp
html 用来存放静态文件的默认目录 html、css等
logs
proxy_temp
sbin nginx的主程序
scgi_temp
uwsgi_temp
Estas carpetas no están disponibles después de la instalación y se utilizan principalmente para almacenar archivos temporales durante la operación.
client_body_temp
fastcgi_temp
proxy_temp
scgi_temp
4.2 Principios operativos básicos
Resumen : Después de que se inicia nginx, no solo inicia un proceso, sino que también ejecuta varios procesos al mismo tiempo. El proceso principal Maestro no funciona pero se utiliza para coordinar el subproceso Trabajador. La verificación del archivo de configuración la completa el proceso principal. El Trabajador lee el archivo de configuración para encontrar archivos específicos.
5. Configuración básica de Nginx
-
Directorio donde se encuentra el archivo de configuración:
cd /usr/local/nginx/conf/
-
Archivo de configuración:
nginx.config
-
Información completa del archivo de configuración.
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
# another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_name somename alias another.alias;
# location / {
# root html;
# index index.html index.htm;
# }
#}
# HTTPS server
#
#server {
# listen 443 ssl;
# server_name localhost;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 5m;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
#}
}
- Eliminar la información en la parte de comentarios del archivo de configuración.
- Lo que aquí solo estudiaremos es el archivo de configuración simplificado, en cuanto a la parte de anotaciones, la explicaremos a continuación.
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
5.1 Archivo de configuración mínima
procesos_trabajadores
# 默认为1,表示开启一个业务进程(一般一个cpu内核对应一个业务进程)
worker_processes 1;
conexiones_trabajadores
# 单个业务进程可接受连接数
worker_connections 1024;
incluir tipos mime;
# 引入额外的配置文件
# 这个文件设置的是请求的头,标名当前返回或者发送的文件是什么类型
include mime.types;
aplicación de tipo_predeterminado/flujo de octeto;
# 如果mime配置文件中的类型没匹配上,默认使用二进制流的方式传输。
default_type application/octet-stream;
enviar archivo activado;
# 使用linux的 sendfile(socket, file, len) 高效网络传输,也就是数据0拷贝。
# 所谓的零拷贝,其目的并不是说不需要拷贝数据,而是通过一些手段省略 CPU 拷贝环节,减少了不必要的拷贝次数,提升数据拷贝效率。
sendfile on;
Keepalive_timeout 65 después de que sendfile no esté habilitado
;
# 保持连接超时的时间
keepalive_timeout 65;
servidor: configuración de host virtual
#一个server代表一台虚拟主机(vhost)
#一个主机,多个主机都可以配置在nginx的配置文件中
server {
listen 80; 监听当前服务器的端口号
server_name localhost; 域名或主机名
#域名后面跟的子路径(到后面在详解)
# 举例:http://atguigu.com/xxoo/index.html,匹配atguigu.com域名后的路径。
location / {
匹配路径
root html; 文件根目录(nginx的安装路径)
index index.html index.htm; 默认页名称
}
#http://atguigu.com/xxoo/index.html一旦报错会替换为
#http://atguigu.com/50x.html,跳转到50x.html页面
#但是没有这个50x.html页面,所以在下面定义这个页面路径
#逻辑:跳转到这个页面,但是这个页面没有,用户一旦访问/50x.html,
#会从root html这个目录下去寻找50x.html页面
error_page 500 502 503 504 /50x.html; 报错编码对应页面
location = /50x.html {
root html;
}
}
6. Resolución de nombres de dominio y host virtual
6.1 Navegador, Nginx y protocolo http
-
Protocolo TCP: TCP es un protocolo de navegador amplio que transmite datos en forma de flujo (los datos son binarios)
-
Flujo de datos: equivalente a un grifo, continúa fluyendo después de abrirlo y no hay ninguna acción para cerrarlo.
-
Protocolo HTTP: es un protocolo además de TCP. Le indica al protocolo TCP cuándo apagar la transmisión. Cuando el navegador del usuario y el servidor Nginx cumplen e implementan el protocolo HTTP, se puede intercambiar información entre ellos. Comunicado y pasado en.
-
Protocolo HTTPS: un protocolo superior a HTTP que agrega una capa de cifrado de datos para protegerlos.
-
Proceso de solicitud: el navegador del usuario envía una solicitud -> puerta de enlace (puerta de enlace en capas) -> -> Internet -> servidor Nginx -> analizar la solicitud -> encontrar el recurso -> regresar al usuario
6.2 Principio del host virtual
-
Originalmente, un servidor solo podía corresponder a un sitio, pero a través de la tecnología de host virtual se puede virtualizar en múltiples sitios para brindar servicios al mundo exterior al mismo tiempo.
-
Si existe tal escenario, si un host solo monta un sitio, cuando este sitio no tiene demasiadas visitas, causará un exceso de recursos (quedan recursos), en este momento podemos encender el host virtual y montarlo. Múltiples sitios, uso racional de los recursos del host.
-
Una dirección IP puede corresponder a varios nombres de dominio. Dependiendo del nombre de dominio, buscamos los directorios de recursos correspondientes a estos nombres de dominio. Después de encontrar estos recursos, se los devolvemos al usuario.
-
Por supuesto, debemos agregar este nombre de dominio al mensaje de solicitud; de lo contrario, el servidor no sabrá qué recurso de nombre de dominio necesitamos.
6.3 Resolución de nombres de dominio y resolución de nombres de dominio pan en la práctica
6.3.1 Usar archivo de hosts para resolver el nombre de dominio
¿Qué es un archivo de hosts ? En pocas palabras, el archivo de hosts se utiliza para servicios DNS locales. Está escrito en un archivo de texto en el formato de nombre de dominio IP. Hosts es un archivo de sistema sin extensión. Se puede abrir con herramientas como como el Bloc de notas. Su función es establecer una "base de datos" asociada entre algunos nombres de dominio URL de uso común y sus direcciones IP correspondientes. Cuando el usuario ingresa una URL que debe iniciar sesión en el navegador, el sistema primero buscará automáticamente la dirección IP correspondiente del archivo Hosts. Una vez encontrada, el sistema abrirá inmediatamente la página web correspondiente. Si no se encuentra, el sistema enviará la URL al servidor de resolución de nombres de dominio DNS para la resolución de la dirección IP.
- Utilice switchhosts como administrador para abrir el archivo de hosts y realizar las siguientes configuraciones .
#虚拟机ip 空格 编写的域名
192.168.10.31 s1.com
- Resultados de la prueba: se descubrió que el uso del nombre de dominio puede hacer ping correctamente y se puede acceder correctamente a la página predeterminada.
6.3.2 Configuración de nombres de dominio de red pública y práctica de resolución de nombres de dominio completo
Nota : Lo anterior es para pretender configurar una resolución de nombre de dominio en el archivo de hosts. En las empresas generalmente se compra y usa un nombre de dominio real. Aquí explicaremos cómo configurar y resolver un nombre de dominio real, y cuáles son las opciones configuradas. en eso significa.
- El mayor proveedor de nombres de dominio es Wanwang, que fue adquirido por Alibaba Cloud, por lo que puede iniciar sesión directamente en Alibaba Cloud para comprar nombres de dominio.
- Se recomienda comprar nombres de dominio de proveedores de grandes marcas, ya que los proveedores pequeños pueden huir.
- Los recién llegados pueden probar nombres de dominio de forma gratuita. En este caso se utilizan nombres de dominio como ejemplo. Los pasos de registro son los siguientes:
-
Inicie sesión en la página de inicio de Alibaba Cloud y haga clic en Prueba gratuita
-
Buscar nombre de dominio
-
Compruebe si el nombre de dominio que desea utilizar está registrado
-
Para registrarse es necesario rellenar el modelo de información
-
Complete la información personal en la página de la plantilla de información y envíela. Tomará tiempo revisar la plantilla de información.
-
Una vez revisada correctamente la plantilla de información, regrese a la página de confirmación del pedido para realizar la compra y el pago.
-
Puede ver el nombre de dominio que acaba de registrar en la consola de nombres de dominio (el registro tarda un tiempo en revisarlo).
-
- Utilice un nombre de dominio registrado:
-
Resolver nombre de dominio: resuelva el nombre de dominio en la dirección IP de la máquina virtual (puede ser una intranet o una red externa), es decir, apunte el nombre de dominio a la dirección IP
-
Verifique si el análisis es exitoso:
ping www.xiaomings.xyz
-
Utilice el nombre de dominio para acceder a la página predeterminada de nginx: acceso exitoso
-
Si hay muchos nombres de dominio, deberá agregar registros uno por uno para su resolución.
-
Si hay muchos nombres de dominio de segundo y tercer nivel, por ejemplo, hay muchos prefijos del nombre de dominio, puede usar comodines para configurarlo. En este momento, se puede acceder al nombre de dominio con cualquier prefijo.
-
6.3.3 Configuración del nombre de dominio del host virtual Nginx
- Actualmente, todos los nombres de dominio a los que se accede apuntan a una dirección IP y solo un sitio puede proporcionar servicios. Ahora configure varios sitios para acceder.
paso:
- Crear directorio del sitio: www
- Cree 2 sitios en el directorio www: www, vod
- Cree páginas en 2 sitios respectivamente para realizar pruebas.
- Modifique el archivo de configuración: no tenga miedo de cometer errores. También hay un archivo de configuración predeterminado para nginx a continuación. Puede restaurarlo después de cometer errores.
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
#虚拟主机www
server {
listen 80;
server_name www.xiaomings.xyz; #主机名、域名
location / {
root /www/www;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
#虚拟主机vod
server {
listen 80;
server_name vod.xiaomings.xyz; #主机名、域名
location / {
root /www/vod;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
-
Reinicie nginx para que surta efecto:
systemctl reload nginx
-
Prueba de acceso: utilice 2 nombres de dominio para acceder respectivamente y descubra que se puede acceder a la página.
6.3.4 reglas de coincidencia de nombres de servidor
A lo que debemos prestar atención es a que la coincidencia del nombre del servidor esté en orden. Si se escribe en la coincidencia anterior, no continuará coincidiendo hacia abajo.
DNS resuelve los nombres de dominio en direcciones IP. Aquí, los recursos en el servidor se encuentran según reglas de coincidencia.
Coincidencia completa
Podemos hacer coincidir varios nombres de dominio en el mismo nombre de servidor
server_name vod.mmban.com www1.mmban.com;
coincidencia de comodines
server_name *.mmban.com
El comodín finaliza el partido
server_name vod.*;
Partido normal
server_name ~^[0-9]+\.mmban\.com$;
6.3.5 Varias necesidades empresariales de Internet basadas en nombres de dominio
• Nombres de dominio de segundo nivel multiusuario
• URL corta
• httpdns
7. Proxy inverso
El servidor proxy inverso está ubicado entre el usuario y el servidor de destino, pero para el usuario, el servidor proxy inverso es equivalente al servidor de destino, es decir, el usuario puede acceder directamente al servidor proxy inverso para obtener los recursos del servidor de destino. . Al mismo tiempo, los usuarios no necesitan conocer la dirección del servidor de destino ni realizar ninguna configuración en el lado del cliente. Los servidores proxy inversos generalmente se pueden utilizar como aceleración web, es decir, utilizar el proxy inverso como la máquina frontal del servidor web para reducir la carga en la red y el servidor y mejorar la eficiencia del acceso.
7.1 Gateways, proxys y proxys inversos
-
Puerta de enlace: la entrada a la red es la puerta de enlace y el servidor proxy también es una puerta de enlace. Todas las solicitudes pasan por la puerta de enlace. Entonces hay una desventaja: si el ancho de banda de la puerta de enlace no es suficiente, será inútil sin importar cuán alto sea el ancho de banda de su red. Este problema se puede resolver mediante el modelo DR de lvs: el modelo DR es que la solicitud pasa por la puerta de enlace al ingresar, pero cuando los datos se transfieren del servidor al cliente, no pasa por la puerta de enlace.
-
Proxy de reenvío: una solicitud con un objetivo claro se envía desde el cliente. La solicitud iniciada por el cliente conoce el destino claro, pero no puede acceder a él, como la red externa. En este momento, debe usar un servidor proxy para ayuda a acceder a él El objetivo al que acceder. En el proxy directo, el cliente es el que recibe el proxy y el servidor no sabe quién envió la solicitud.
-
Proxy inverso: Las solicitudes con un destino claro se realizan desde el servidor. El cliente no sabe a qué servidor se enviará realmente su solicitud, pero el servidor sabe quién le envió la solicitud. En un proxy inverso, el servidor actúa como proxy y el cliente no sabe a quién se envía realmente la solicitud.
-
Proxy directo y proxy inverso, ¿cómo distinguir entre avance y retroceso?
- El objetivo de avance y retroceso es el cliente, ya sea hacia adelante o hacia atrás para el cliente.
7.2 Escenarios de aplicación del proxy inverso en la arquitectura del sistema
- Arquitectura tradicional del sistema empresarial:
primero, los usuarios acceden a Internet a través del enrutamiento y la resolución de nombres de dominio, y luego son enviados a la puerta de enlace de la sala de computadoras, luego a través del firewall al servidor nginx y luego el proxy del servidor nginx los reenvía al servidor real. .
- En las pequeñas y medianas empresas de Internet:
nginx no solo actúa como un proxy inverso, sino que también realiza algunas funciones funcionales en la lógica empresarial y luego funciona como un servidor de puerta de enlace de archivos, etc.