Cómo instalar Nginx en un equipo con Linux Ubuntu Server 22 y cómo hacerlo servidor web. Cómo iniciar, detener, ver estado o activar autoarranque del servicio de nginx.

Instalar Nginx en Linux Ubuntu Server

El proceso de instalación del servidor web Nginx (similar a Apache) es bastante sencillo en Ubuntu Server. En primer lugar, actualizaremos la lista de paquetes con el siguiente comando:

Si queremos actualizar todos los paquetes con versiones más recientes, ejecutaremos este otro comando:

A continuación, para instalar Nginx, ejecutaremos el siguiente comando:

Instalar Nginx para montar servidor web en Ubuntu Server 22

Con este sencillo comando, una vez que finalice, habrá instalado Nginx y habrá creado las reglas necesarias en el cortafuegos de Linux Ubuntu Server (ufw), aunque no estarán habilitadas. Para mostrar las reglas creadas, ejecutaremos el comando:

Comprobaremos que, efectivamente, la instalación de Nginx ha creado las reglas necesarias en el cortafuegos:

Instalar Nginx para montar servidor web en Ubuntu Server 22

Por seguridad, siempre es recomendable activar únicamente los puertos que vayamos a necesitar. En caso de que el servidor web use el puerto HTTP (80), habilitaremos únicamente la regla «Nginx HTTP», con el comando:

Comprobaremos que el cortafuegos está activo y las reglas aplicadas, con el comando:

Instalar Nginx para montar servidor web en Ubuntu Server 22

Si ahora realizamos una prueba, desde un equipo de la red, abriendo un navegador e introduciendo la dirección IP del servidor Linux Ubuntu con Nginx veremos que nos muestra una página de prueba, «Welcome to nginx!»

Instalar Nginx para montar servidor web en Ubuntu Server 22

Con lo que el servidor web con Linux Ubuntu Server y nginx ha quedado correctamente instalado.

Iniciar, detener, desactivar en arranque, activar en arranque el servicio de nginx

A continuación mostramos los comandos necesarios para trabajar con el servicio de nginx en Linux Ubuntu Server. Empezaremos por mostrar el estado actual del servicio, con el comando:

Si el servicio de nginx está iniciado, nos devolverá algo así como:

Para detene el servicio nginx, ejecutaremos el comando:

Para iniciar el servicio nginx, ejecutaremos el comando:

Si queremos reiniciarlo (detenerlo e iniciarlo), ejecutaremos:

El servicio de nginx, en su instalación, se configura para que se arranque al iniciar el equipo. Si queremos desactivar el autoarranque de nginx, ejecutaremos el comando:

Y si queremos volver a habilitar el autoarranque en el inicio, ejecutaremos el comando:

Algunas carpetas y ficheros importantes de nginx

A continuación, indicamos algunas de las ubicaciones de los ficheros importantes de nginx. Empezaremos por la ubicación por defecto de los ficheros de nuestros sitios web, que es:

/var/www/html

En la carpeta anterior residará el fichero «index.nginx-debian.html» que se crea en la instalación y es el que se muestra al accder al servidor web. Es un fichero HTML de ejemplo.

El fichero de configuración de nginx es:

/etc/nginx/nginx.conf

Si utilizamos la opción de bloques (VirtualHost de Apache) en nginx, tendremos el directorio donde se pueden almacenar los bloques de cada sitio web, alojados en:

/etc/nginx/sites-available

En la carpeta anterior, se guardarán los ficheros de configuración de cada sitio web que queramos alojar en el servidor, teniendo en cuenta que los que haya en esta carpeta no tienen por qué ser los que haya habilitados. Los habilitados se definen en la carpeta:

/etc/nginx/sites-enabled

El funcionamiento es similar al VirtualHost de Apache.

El fichero de log de accesos de nginx se almacenan en:

/var/log/nginx/access.log

Y el fichero de log de errores de nginx se almacena en:

/var/log/nginx/error.log