Guía de inicio rápido de Nginx: Comandos y tutorial de configuración

En nuestro artículo básico sobre Nginx, resumimos qué es Nginx y cómo instalarlo y configurarlo en su sistema. Nginx es un servidor web de alto rendimiento y un servidor proxy inverso. Puede gestionar muchas solicitudes de red simultáneas y también ofrece funciones como el equilibrio de carga, el almacenamiento en caché y el cifrado SSL. Desarrollado originalmente por el programador ruso Igor Sysoev, Nginx se ha convertido en uno de los servidores web más populares del mundo.

Nginx es un servidor web y un servidor proxy inverso de alto rendimiento, escalable y rico en funciones que puede ayudar a los usuarios a mejorar la disponibilidad y el rendimiento del sistema, proteger la seguridad y la estabilidad del servidor de aplicaciones, mejorar la velocidad de acceso al sitio web y proteger la privacidad del usuario.

Instalación y configuración de Nginx

Usar Nginx tiene las siguientes ventajas:

  • Alto rendimiento: Nginx adopta una arquitectura asíncrona sin bloqueo basada en eventos, que puede manejar una gran cantidad de solicitudes simultáneas mientras mantiene un bajo uso de memoria y carga de CPU.

  • Escalabilidad: Nginx admite una arquitectura modular y su funcionalidad se puede ampliar agregando diferentes módulos.

  • Equilibrio de carga: Nginx puede distribuir solicitudes a varios servidores a través del equilibrio de carga, lo que mejora la disponibilidad y el rendimiento del sistema.

  • Proxy inverso: Nginx se puede utilizar como un servidor proxy inverso para reenviar solicitudes al servidor de aplicaciones back-end, protegiendo así la seguridad y la estabilidad del servidor de aplicaciones.

  • Caché: Nginx puede mejorar la velocidad de acceso al sitio web a través del almacenamiento en caché y reducir la cantidad de solicitudes al servidor back-end.

  • Cifrado SSL: Nginx puede proporcionar cifrado SSL para proteger la seguridad del sitio web y la privacidad del usuario.

En los siguientes tutoriales, le daremos una descripción general de los comandos básicos y las opciones de configuración del software de servidor web moderno.

Unidad de control central: nginx.conf

Nginx se basa en eventos y, por lo tanto, funciona de manera diferente a Apache. Una única solicitud no se clasifica como un nuevo flujo de trabajo (para el que se deben cargar todos los módulos), sino como un evento. Estos eventos se dividen en procesos de trabajo existentes, mantenidos por el proceso maestro junior. El archivo de configuración nginx.conf define cuántos procesos de trabajo existen en última instancia y cómo se dividen las solicitudes del servidor (es decir, los eventos). Puede encontrarlos en los archivos /usr/local/nginx/conf, /etc/nginx o /usr/local/etc/nginx.

Gestionar procesos y adoptar nuevas configuraciones

Nginx se inicia automáticamente después de la instalación, pero puede iniciarlo con:

 
 

1

sudo servicio nginx inicio

Una vez que el software del servidor web se está ejecutando, puede administrarlo dirigiendo el proceso (principalmente el proceso principal) con el parámetro -s y señales específicas. La sintaxis del comando correspondiente es menos impresionante:

 
 

1

sudo nginx -s señal

Para "Señal" tiene las siguientes cuatro posibilidades:

  • detener: nginx finaliza inmediatamente.

  • quit: nginx termina después de que se hayan respondido todas las solicitudes activas.

  • recargar: Recargar el archivo de configuración.

  • reabrir: reinicia el archivo de registro.

La opción de recarga para recargar archivos de configuración es una excelente manera de realizar cambios sin terminar el software del servidor web y reiniciarlo después. En cualquier caso, para aceptar los cambios, debe decidir si desea reiniciar completamente el servidor o simplemente recargar nginx. Si eligió la última opción y ejecutó el siguiente comando, se le indicó al proceso maestro que aplicara los cambios al archivo nginx.conf:

 
 

1

sudo nginx -s recargar

Para hacer esto, primero verifique la precisión de la gramática. Si hay comentarios positivos, la nueva configuración hará que el proceso principal inicie nuevos flujos de trabajo y detenga los antiguos al mismo tiempo. Si no se puede validar la sintaxis, se conserva el estado de configuración anterior. Todos los flujos de trabajo activos finalizan una vez que se han procesado todas las solicitudes activas.

Además, puede apuntar a procesos nginx con herramientas como kill. Solo necesita el ID de proceso correspondiente, que se puede encontrar en el directorio /usr/local/nginx/logs o el archivo nginx.pid en el directorio /var/run. Por ejemplo, si el proceso principal tiene una ID de 1628, se puede terminar usando las señales de matar y salir en secuencia.

 
 

1

sudo matar -s salir 1628

También puede usar el programa de servidor ps para mostrar una lista de todos los procesos nginx en ejecución:

 
 

1

sudo ps -ax | grep-nginx

Cómo regular la entrega de contenido estático

Lo más probable es que utilice un servidor web para entregar archivos como imágenes, videos o contenido HTML estático. Para mayor eficiencia, es mejor seleccionar diferentes directorios locales para diferentes tipos de contenido. Primero cree un directorio de muestra /data/html y coloque un documento HTML de muestra index.html en él, luego cree una carpeta /data/images con algunas imágenes de muestra.

Para el siguiente paso, estos dos directorios deben ingresarse en el archivo de configuración guardándolos en la directiva de bloqueo del servidor, que a su vez es una subdirectiva de la directiva de bloqueo HTTP. Varias directivas ya están configuradas de forma predeterminada, primero puede desactivarlas con (off). Luego simplemente cree una declaración de bloque de servidor separada:

 
 

1
2
3
4

http {   servidor {   } }


En este bloque de servidor, debe especificar dos directorios que contengan imágenes y documentos HTML. Los resultados correspondientes son los siguientes:

 
 

1
2
3
4
5
6
7
8
9

servidor {   ubicación / {     raíz /datos/html;   }   ubicación /imágenes/ {     raíz /datos;   } }







Esta configuración es la predeterminada para un servidor que escucha en el puerto 80 y es accesible a través de localhost. Todas las solicitudes con URI que comienzan con /images/ ahora solicitarán archivos del directorio /data/images. Si no existe un archivo adecuado, aparecerá un mensaje de error. Todos los eventos nginx cuyo URI no comienza con /images/ se envían al directorio /data/html.

No olvide volver a cargar o reiniciar nginx para aplicar los cambios.

Configure un servidor proxy Nginx simple

Nginx se usa a menudo (en lugar de un servidor real) para ejecutar un servidor proxy para las solicitudes entrantes. Los filtra según varios criterios, los reenvía y pasa la respuesta adecuada al cliente. Los proxies de almacenamiento en caché son especialmente populares. Sirven contenido estático almacenado localmente directamente y solo reenvían todas las solicitudes adicionales al servidor. Los proxies de firewall también son comunes y filtran las conexiones inseguras o no deseadas. El siguiente es un ejemplo de un proxy de almacenamiento en caché que recupera la imagen solicitada de un directorio local y reenvía todas las solicitudes adicionales al servidor web.

Como primer paso, debe definir el servidor maestro en nginx.conf:

 
 

1
2
3
4
5
6
7

servidor {   escuchar 8080;   raíz /datos/up1;   ubicación / {   } }





A diferencia del ejemplo anterior, se utiliza la directiva de lista porque se utilizará el puerto 8080 (en lugar del puerto estándar) para las solicitudes entrantes. También debe crear un directorio de destino /data/up1 y archivar allí la página index.html.

En segundo lugar, se definen un servidor proxy y sus capacidades para entregar contenido de imagen. Esto se realiza mediante la directiva ProxyPass, incluidos los detalles del protocolo del servidor principal (http), el nombre (localhost) y el puerto (8080):

 
 

1
2
3
4
5
6
7
8
9

servidor {   ubicación / {     proxy_pass http://localhost:8080;   }   ubicación ~ \.(gif|jpg|png) $ {     raíz /datos/imágenes;   } }







El segundo bloque de ubicación le indica al servidor proxy que responda a todas las solicitudes recuperando el contenido apropiado del directorio local /data/images si su URI termina con archivos de imagen típicos como .gif, .jpg y .png. Todas las demás solicitudes se reenvían al servidor maestro. Al igual que con la configuración anterior, guarde el proxy de imagen pasando una señal de recarga al proceso principal o reiniciando nginx.

 

Supongo que te gusta

Origin blog.csdn.net/winkexin/article/details/131487189
Recomendado
Clasificación