Inicio Informática LEMP (Linux, Nginx, MariaDB, PHP), instalación en Ubuntu 20.04

LEMP (Linux, Nginx, MariaDB, PHP), instalación en Ubuntu 20.04

Publicado por entreunosyceros

AVISO: Esta entrada tiene más de dos años desde su publicación. Es posible que el contenido esté desactualizado.

Una vez más aquí. En esta tarde domingo vengo a dejar un pequeño artículo sobre cómo los usuarios podemos instalar la pila de software LEMP en Ubuntu 20.04. Este acrónimo significa Linux, Nginx, MariaDB y PHP. Es ampliamente utilizada para alojar sitios web / blogs que van desde pequeños a grandes escalas. Si eres fan de los servidores Apache, quizás deberías probar la pila LAMP.

La pila de software LEMP es un grupo de elementos de software que puede utilizarse para ofrecer páginas web y aplicaciones web dinámicas. El acrónimo describe un sistema operativo Linux, con un servidor web Nginx. Los datos backend se almacenan con MariaDB y el procesamiento dinámico se gestiona a través de PHP.

Instalar LEMP en Ubuntu 20.04

A día de hoy, y si se siguen las instrucciones que se van a ver a continuación, conseguiremos instalar los paquetes EMP (Nginx v1.19, PHP v7.4, MariaDB v10.3) en Ubuntu 20.04.

Instalar Nginx desde el repositorio de Nginx

Nginx proporciona repositorio para el sistema operativo Ubuntu. El repositorio oficial de Nginx incluye v1.19.

versión instalada de nginx

Para empezar con la instalación de Nginx desde su repositorio, tendremos que abrir una terminal (Ctrl+Alt+T) y comenzar por actualizar la lista de software disponible:

sudo apt update

El siguiente paso será instalar los certificados necesarios. Esto lo haremos con el comando:

instalación certificados

sudo apt install -y curl gnupg2 ca-certificates lsb-release

Continuaremos añadiendo la clave y el repositorio necesario:

add repositorio nginx

curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo apt-key add -

echo "deb [arch=amd64] http://nginx.org/packages/mainline/ubuntu focal nginx" | sudo tee /etc/apt/sources.list.d/nginx.list

Una vez añadido el repositorio, volvemos a actualizar el listado de software y continuamos instalando el servidor Nginx:

instalación de nginx

sudo apt update

sudo apt install nginx

Una vez instalado el servidor, vamos a iniciarlo con el comando:

sudo systemctl start nginx

Cuando esté iniciado el servidor, ya podremos abrir un navegador web y visitar la dirección IP de tu nuevo servidor:

http://tu-direccion-IP

En el navegador web, deberíamos ver la página predeterminada de Nginx. Esto confirmará que el servidor web se ha instalado y funciona correctamente.

página por defecto de nginx

La raíz de documentos predeterminada de Nginx en Ubuntu 20.04 es /usr/share/nginx/html y sus archivos de configuración se encuentran en el directorio /etc/nginx/.

archivos de nginx

Instalar el servidor MariaDB

mariadb versión

Para que todo funcione correctamente, vamos a instalar el servidor MariaDB utilizando el siguiente comando en una terminal (Ctrl+Alt+T). Por defecto, Ubuntu 20.04 incluye MariaDB 10.3.

instalación mariadb

sudo apt install mariadb-server mariadb-client

A continuación, vamos a configurar la contraseña raíz de MariaDB y asegurar la instancia de MariaDB utilizando el comando:

mysql_secure_password

sudo mysql_secure_installation

Instalar PHP-FPM

Llegados a este punto vamos a instalar PHP-FPM (PHP-FastCGI Process Manager) para mostrar contenido dinámico escrito en PHP.

versión de php

Por defecto, Ubuntu 20.04 incluye PHP-FPM v7.4. Podremos instalarlo con el comando:

sudo apt install -y php-fpm php-mysql php-cli

PHP-FPM escucha en el socket /run/php/php7.4-fpm.sock por defecto. Para hacer que PHP-FPM utilice la conexión TCP, vamos a editar el siguiente archivo:

sudo vim /etc/php/7.4/fpm/pool.d/www.conf

Una vez en el archivo, vamos a cambiar el parámetro de escucha.

listen = /run/php/php7.4-fpm.sock

Por el siguiente:

configuración escucha

listen = 127.0.0.1:9000

Una vez realizados los cambios, guardamos el archivo y salimos. Lo siguiente será reiniciar el proceso PHP-FPM.

sudo systemctl restart php7.4-fpm.service

Prueba de LEMP

Para probar que todo funciona correctamente vamos a crear un host virtual basado en nombres en el servidor Nginx para probar nuestra instalación de pila LEMP.

  • Nombre de dominio: site.entreunosyceros.local
  • Raíz del documento: /www/site.entreunosyceros.local

Para empezar vamos a crear un archivo de configuración de host virtual para nuestro dominio en el directorio /etc/nginx/conf.d/:

sudo vim /etc/nginx/conf.d/site.entreunosyceros.local.conf

Dentro del archivo vamos a añadir el siguiente contenido:

configuración conf.d.local

server {
server_name site.entreunosyceros.local;
root /www/site.entreunosyceros.local;

location / {
index index.html index.htm index.php;
}

location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}

Después de pegar el anterior contenido, guardamos y salimos. Ahora vamos a crear el directorio raíz para colocar los archivos PHP.

sudo mkdir -p /www/site.entreunosyceros.local

Para probar el soporte de PHP-FPM, lo que haremos será colocar un archivo .php en la raíz del documento del host virtual creado. Esto lo haremos con el comando:

echo "<?php phpinfo(); ?>" | sudo tee /www/site.entreunosyceros.local/index.php

Ahora vamos a cambiar la propiedad del directorio raíz.

sudo chown -R www-data:www-data /www/site.entreunosyceros.local/

En este punto, vamos a tener que reiniciar el servicio Nginx:

sudo systemctl restart nginx

En su servidor o máquina de escritorio, podemos crear una entrada de host para nuestro dominio (en este caso para site.entreunosyceros.local) en el archivo /etc/hosts en caso de que su entorno no tenga un servidor DNS para la resolución de nombres.

sudo vim /etc/hosts

Dentro del archivo, añadiremos una entrada de host con la dirección IP de nuestro equipo, como se muestra a continuación.

archivo hosts

10.0.2.15 site.entreunosyceros.local site

Una vez añadida la anterior entrada, solo nos queda abrir nuestro navegador web y escribir el nombre de dominio que estamos utilizando en la barra de direcciones:

http://site.entreunosyceros.local

La página que deberíamos ver será algo como lo siguiente:

site-local-navegador-web

Como se puede ver en la captura de pantalla anterior, PHP funciona a través de FPM / FastCGI, como se muestra en la línea API del servidor.

Con todo esto, ya tendremos instalada la pila LEMP en Ubuntu 20.04, para comenzar a desarrollar nuestros proyectos de forma local.

También te puede interesar ...

Deja un comentario

* Al utilizar este formulario, aceptas que este sitio web almacene y maneje tus datos.

Resumen de privacidad
cookies entreunosyceros

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible.

La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudarnos a comprender qué secciones de la web encuentras más interesantes y útiles.

Nunca almacenamos información personal de ningún tipo.

Tienes toda la información sobre privacidad, derechos legales y cookies en nuestra página sobre la política de privacidad o en la página sobre nuestra política de cookies.

Cookies necesarias

Las cookies estrictamente necesarias tiene que activarse siempre para que podamos guardar tus preferencias de ajustes de cookies.

Si desactivas esta cookie no podremos guardar tus preferencias. Esto significa que cada vez que visites esta web tendrás que activar o desactivar las cookies de nuevo.

Cookies de terceros

Esta web utiliza las siguientes cookies adicionales:

- Mailchimp: Recordar si ya estás suscrito al boletín de noticias y sino ofrecértelo al salir.

- Accesibilidad: Para saber tus ajustes de accesibilidad en cada visita.

- Comentarios: Saber si has leído y aceptado nuestra política de privacidad a la hora de dejar un comentario en la web.

- Google Analytics: Localización para recopilar información anónima tal como el número de visitantes del sitio, o las páginas más populares.

- Goggle Adsense: Anuncios personalizados según tu geolocalización y preferencias.

Dejar estas cookies activadas nos permite mejorar nuestra web.

Adblock Detectado!!

Ayúdanos deshabilitando la extensión AdBlocker de tu navegador para visitar esta web.
Si no sabes hacerlo en Chrome, consulta el siguiente enlace. Si utilizas Firefox, puedes consultar este otro enlace.
Esto mejorará tu experiencia en este sitio web.