Servidor web NGNIX


  • Nginx es un servidor HTTP de alto rendimiento, estable y con muy bajo consumo de recursos.
  • Su alto rendimiento se debe a que, a diferencia de Apache que utiliza threads (o procesos, depende cómo se lo configure), Nginx posee una arquitectura asincrónica mucho más escalable y basada en eventos, lo que permite utilizar pequeñas cantidades de memoria.


Instalación de los paquetes

  • Cogemos una máquina con un Debian mínimo instalado, e instalamos el servidor web NGINX
    aptitude install nginx
    
  • Siempre antes de instalar un paquete se recomienda actualizar todos los paquetes del sistema.

Comprobación del funcionamiento

  • Comprobamos desde un navegador de internet que está funcionando, para ello debemos tener en cuenta algunos comandos relativos a la red, en este caso ifconfig.
    # ifconfig
    
  • Pero en Debian 9 el ifconfig ha desaparecido, a menos que instalemoss las herramientas de red con
    # apt-get install net-tools
    
  • En su lugar debemos ahora usar
    ip address
    

    o simplemente

    ip a
    
  • Con ello obtenemos la dirección IP del servidor web. Nos vamos a otro equipo de la misma red y en un navegador de internet teclear la IP del servidor web, debiendo aparecer algo como así:

Comandos

  • Desde la consola puedo parar el servicio del servidor web o reiniciarlo. Por ejemplo:
    service nginx stop
    

    para el servicio, de manera que después de ejecutarla si recargamos la página web del servidor nos dará un aviso de que no se puede acceder a ese sitio web.

  • Para iniciar el servicio:
    service nginx start
    
  • Cuando cambiemos los ficheros de configuración del servidor web habrá que parar y luego volver a iniciar el servicio para que los cambios se tengan en cuenta. También lo podemos hacer con un solo comando:
    service nginx restart
    


Por ahora vamos a fijarnos básicamente en:

  • Directorio raíz del servidor web. Ahí es donde irá a buscar por defecto las páginas web.
  • Usuarios, grupos y derechos de los mismos para acceder y modificar páginas del servidor.
  • Cuestiones básicas de seguridad. Configuración de la página con el error 404.

Fichero configuración default

  • Le echamos un vistazo al fichero básico de configuración
    /etc/nginx/sites-available/default
    
  • Entre otras cosas, la carpeta raíz del servidor web aparece como /var/www/html/ dentro del bloque server{} en la línea:
    root /var/www/html;
    
  • Vamos a ella y editamos el fichero html que está ahí: Variaremos la apariencia del mensaje de funcionamiento del servidor anterior añadiendo caracteres propios de nuestro idioma como vocales acentuadas y la letra Ñ.

Ups!!!. Si, falla el idioma de la página.

Configuración del idioma en el fichero html

  • La solución más rápida es añadir dentro de la cabecera, head, del fichero html:
    <meta charset="utf-8">
    

    Et voilá…

Configuración del idioma en el sistema operativo

  • Si esto no funcionase el problema puede ser debido a que no hemos escogido la codificación UTF-8 en nuestro sistema. Esta codificación es la que se recomienda. Podemos especificarla si ejecutamos
    dpkg-reconfigure locales
    

    Y luego mostrarla ejecutando

    locale
    


  • Echamos un vistazo al fichero de configuración ngnix.conf.
    /etc/nginx/nginx.conf
    
  • En la primera linea aparece el usuario www-data con permisos
    user www-data;
    
  • Con la siguiente instrucción visualizamos los derechos y propietarios en toda la ruta especificada.
    namei -l /var/www/html/*.*
    
  • En nuestro caso muestra que el propietario de todo es root, con derechos 755 en las carpetas y 644 en los ficheros. Los demás tienen derecho de lectura y ejecución en las carpetas y solo lectura en el fichero.


  • doc/tec/net/web_nginx/inicio.txt
  • Última modificación: 2025/11/07 07:06
  • por euloxio