Magento instalación · 9 min read · Oct 20, 2025

Cómo instalar Magento 2 con Nginx y SSL Let's Encrypt en Ubuntu 20.04 LTS

Magento es un software de comercio electrónico de código abierto ampliamente utilizado y un sistema de gestión de contenido para sitios web de comercio electrónico basado en el marco PHP Zend. Utiliza MySQL o MariaDB como backend de base de datos. El desarrollo de Magento comenzó en 2008 por Varien.

En este tutorial, te mostraremos paso a paso cómo instalar Magento 2 en la última versión de Ubuntu 20.04. Instalaremos Magento bajo la pila LEMP, el servidor web Nginx, PHP-FPM 7.3 y el servidor MariaDB.

Requisitos

Para este tutorial, instalaremos Magento 2 en el sistema Ubuntu 20.04 con 2 GB de RAM, 50 GB de espacio en disco libre y 2 CPUs.

¿Qué haremos?

  • Instalar el servidor web Nginx
  • Instalar y configurar PHP-FPM 7.3
  • Instalar y configurar el servidor MySQL
  • Instalar PHP Composer
  • Descargar e instalar Magento
  • Generar SSL Letsencrypt
  • Configurar el Virtualhost de Nginx para Magento
  • Post-Instalación de Magento

Paso 1 - Instalar el servidor web Nginx

Primero, instalaremos el servidor web Nginx en el sistema Ubuntu 20.04.

Instala Nginx usando el comando apt a continuación.

sudo apt install nginx

Una vez que se complete toda la instalación, inicia el servicio Nginx y agrégalo al arranque del sistema.

systemctl start nginx  
systemctl enable nginx

Después de eso, verifica el estado del servicio Nginx usando el siguiente comando.

systemctl status nginx

El servidor web Nginx está en funcionamiento en el servidor Ubuntu 20.04.

Instalar Nginx

A continuación, abriremos los puertos HTTP y HTTPS en nuestro sistema Ubuntu.

Ejecuta el comando ufw a continuación.

for svc in ssh http https  
do  
ufw allow $svc  
done

Como resultado, los servicios SSH, HTTP y HTTPS se han agregado a la regla del firewall ufw.

Ahora ejecuta el comando para habilitar el firewall ufw usando el siguiente comando.

ufw enable

Escribe ‘y’ y presiona Enter, y has habilitado el firewall ufw.

Paso 2 - Instalar y configurar PHP-FPM 7.3

Después de instalar el servidor web Nginx, instalaremos PHP-FPM en nuestro servidor Ubuntu 20.04.

Por defecto, Ubuntu 20.04 viene con la versión más nueva de PHP/PHP-FPM 7.4. Pero por ahora, Magento solo funciona con PHP/PHP-FPM 7.3. Y en este paso, instalaremos PHP-FPM 7.3 desde el repositorio PPA.

Antes de continuar, instala el paquete ‘software-properties-common’ y agrega el repositorio PPA para PHP 7.3 usando el siguiente comando.

sudo apt install software-properties-common  
sudo add-apt-repository ppa:ondrej/php

El ‘add-apt-repository’ actualizará automáticamente todos los repositorios en el sistema.

Ahora instala los paquetes PHP-FPM 7.3 desde el repositorio PPA usando el comando apt a continuación.

sudo apt install php7.3-fpm php7.3-common php7.3-curl php7.3-cli php7.3-mysql php7.3-gd php7.3-xml php7.3-json php7.3-intl php-pear php7.3-dev php7.3-common php7.3-mbstring php7.3-zip php7.3-soap php7.3-bcmath php7.3-opcache -y

Y la instalación de PHP-FPM 7.3 se ha completado.

Después de eso, ve al directorio ‘/etc/php/7.3’ y edita la configuración ‘php.ini’ para PHP-FPM.

cd /etc/php/7.3/  
vim fpm/php.ini

Descomenta y cambia la configuración como se muestra a continuación.

date.timezone = Asia/Singapore  
memory_limit = 1G  
max_execution_time = 1800  
zlib.output_compression = On  
cgi.fix_pathinfo = 0  
  
opcache.enable=1   
opcache.save_comments = 1

Guarda y cierra.

A continuación, inicia el servicio PHP-FPM y agrégalo al arranque del sistema.

systemctl start php7.3-fpm  
systemctl enable php7.3-fpm

Instalar y configurar PHP-FPM 7.3

El servicio PHP-FPM está en funcionamiento, verifícalo usando el comando a continuación.

ss -xa | grep php  
systemctl status php7.3-fpm

Como resultado, PHP-FPM está en funcionamiento en el servidor Ubuntu 20.04, está funcionando bajo el archivo sock ‘/run/php/php7.3-fpm.sock’.

Verificar servicio PHP-FPM

Paso 3 - Instalar y configurar el servidor MariaDB

En este paso, instalaremos el servidor de base de datos MariaDB, configuraremos la contraseña raíz predeterminada para MariaDB y crearemos una nueva base de datos y usuario para Magento.

Instala los paquetes del servidor MariaDB en Ubuntu 20.04 usando el comando apt a continuación.

sudo apt install mariadb-server

Una vez que se complete toda la instalación, inicia el servicio MariaDB y agrégalo al arranque del sistema.

systemctl start mariadb  
systemctl enable mariadb

El servicio MariaDB está en funcionamiento.

A continuación, configuraremos la contraseña raíz de MariaDB usando la utilidad ‘mysql_secure_installation’.

Ejecuta el comando ‘mysql_secure_installation’ a continuación.

mysql_secure_installation

Escribe tu contraseña fuerte para el usuario raíz de MariaDB y escribe ‘Y’ para toda la configuración.

¿Establecer una contraseña raíz? [Y/n] Y  
¿Eliminar usuarios anónimos? [Y/n] Y  
¿Deshabilitar el inicio de sesión remoto del root? [Y/n] Y  
¿Eliminar la base de datos de prueba y el acceso a ella? [Y/n] Y  
¿Recargar tablas de privilegios ahora? [Y/n] Y

Como resultado, la contraseña raíz de MariaDB ha sido configurada.

Configurar contraseña raíz de MariaDB

A continuación, crearemos una nueva base de datos y usuario para la instalación de Magento.

Inicia sesión en el shell de MariaDB/MySQL usando el comando mysql a continuación.

mysql -u root -p

Ahora crea una nueva base de datos para nuestra instalación de Magento. Crea la base de datos ‘magentodb’ y el usuario ‘magentouser’ con la contraseña ‘magentodbpass’.

Ejecuta las consultas MySQL a continuación.

create database magentodb;  
create user magentouser@'localhost' identified by 'magentopassdb';  
grant all privileges on magentodb.* to magentouser@'localhost';  
flush privileges;

Ahora escribe ‘exit’ para cerrar sesión en el shell de MySQL.

Crear base de datos para Magento

Como resultado, la nueva base de datos y usuario para la instalación de Magento se ha completado.

Paso 4 - Instalar Composer

Composer es un gestor de dependencias para PHP. es un gestor de paquetes a nivel de aplicación para PHP que te permite descargar dependencias y bibliotecas PHP adicionales para tu proyecto PHP.

En este paso, instalaremos PHP Composer desde el repositorio de Ubuntu.

Instala Composer usando el comando apt a continuación.

sudo apt install composer -y

Una vez que se complete la instalación, verifica la versión de composer a continuación.

composer --version

A continuación se muestra la respuesta que recibirás.

Composer 1.10.1 2020-03-13 20:34:27

Como se puede ver, el Composer 1.10 ha sido instalado en el servidor Ubuntu 20.04.

Paso 5 - Descargar e instalar Magento 2

En este paso, descargaremos e instalaremos Magento 2, y todos los paquetes PHP necesarios usando Composer.

Primero, ve al directorio ‘/var/www/‘ y descarga el código fuente de Magento 2.3.5 CE (Edición Comunitaria) usando el comando wget como se muestra a continuación.

cd /var/www/  
wget -q https://github.com/magento/magento2/archive/2.3.5.tar.gz

Una vez que todo esté completo, extrae el código fuente de Magento y renombra el directorio extraído a ‘magento2’.

tar -xf 2.3.5.tar.gz  
mv magento2-*/ magento2/

A continuación, ve al directorio de instalación de Magento ‘/var/www/magento2’ e instala todas las dependencias de paquetes PHP para Magento usando el comando Composer como se muestra a continuación.

cd /var/www/magento2/  
composer install

Descargar e instalar Magento 2

Una vez que se complete toda la instalación, corrige la propiedad del directorio de instalación de Magento 2 al usuario ‘www-data’.

chown -R www-data:www-data /var/www/magento2

Como resultado, la instalación de Magento 2 y todas las dependencias de paquetes se ha completado.

Paso 6 - Generar SSL Letsencrypt

Para este tutorial, aseguraremos la instalación de Magento 2 usando SSL Letsencrypt. Y en este paso, generaremos el SSL Letsencrypt usando el comando certbot. Además, asegúrate de que tu nombre de dominio esté resuelto a la dirección IP del servidor.

Instala la herramienta certbot usando el comando apt a continuación.

sudo apt install certbot

Una vez que se complete la instalación, detén el servicio Nginx.

systemctl stop nginx  
certbot certonly --standalone --agree-tos --no-eff-email --email [email protected] -d magento.hakase-labs.io

Una vez que todo esté completo, obtendrás tus certificados SSL en el directorio ‘/etc/letsencrypt/live/magento.your-domain.com’.

Como resultado, el SSL Letsencrypt para la instalación de Magento 2 ha sido generado.

Paso 7 - Configurar el Virtualhost de Nginx para Magento 2

En este paso, agregaremos una nueva configuración de virtualhost de Nginx para Magento 2.

Ve al directorio ‘/etc/nginx/sites-available/‘ y crea una nueva configuración ‘magento’ usando el editor vim.

cd /etc/nginx/sites-available/  
vim magento

Pega la siguiente configuración en él.

upstream fastcgi_backend {  
        server  unix:/run/php/php7.3-fpm.sock;  
}  
  
server {  
    listen 80;  
    listen [::]:80;  
    server_name magento.hakase-labs.io;  
    return 301 https://$server_name$request_uri;  
}  
  
server {  
  
        listen 443 ssl http2;  
        server_name magento.hakase-labs.io;  
  
        ssl_certificate /etc/letsencrypt/live/magento.hakase-labs.io/fullchain.pem;  
        ssl_certificate_key /etc/letsencrypt/live/magento.hakase-labs.io/privkey.pem;  
  
        set $MAGE_ROOT /var/www/magento2;  
        set $MAGE_MODE developer;  
        include /var/www/magento2/nginx.conf.sample;  
}

Guarda y cierra.

A continuación, activa el virtualhost de Nginx de Magento y prueba la configuración de nginx, y asegúrate de que no haya errores.

ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled/  
ginx -t

Ahora reinicia el servicio Nginx usando el siguiente comando.

systemctl restart nginx

Como resultado, la configuración del virtual host de Nginx para Magento 2 ha sido creada y habilitada.

Configurar virtualhost de Nginx para Magento

Paso 8 - Post-Instalación de Magento

Abre tu navegador web y escribe el nombre de dominio de tu instalación de Magento en la barra de direcciones.

https://magento.hakase-labs.io/

Ahora serás redirigido a una conexión segura HTTPS y verás la página de bienvenida de Magento y los Términos de Servicio.

Instalar Magento 2

Haz clic en el botón ‘Aceptar y configurar Magento‘ para continuar.

En la página de ‘Verificación de preparación’, asegúrate de que todos los requisitos estén en verde y haz clic en el botón ‘Siguiente‘.

Verificación de requisitos del sistema

Escribe los detalles de la base de datos MariaDB y el usuario que creamos anteriormente y haz clic en ‘Siguiente‘.

Configurar base de datos

Para la ‘Configuración web’, cambia todos los protocolos HTTP a HTTPS, y asegúrate de cambiar la ‘Dirección de administración de Magento’.

Configurar HTTPS Magento

Ahora haz clic en ‘Opciones avanzadas’ y marca todas las opciones HTTPS, luego desmarca la opción ‘Reescrituras de Apache’ y haz clic en el botón ‘Siguiente‘ nuevamente.

A continuación, en la configuración de ‘Personaliza tu tienda’ de Magento, déjalo como predeterminado y haz clic en el botón ‘Siguiente‘.

Personalización de la tienda Magento

Ahora escribe los detalles del usuario administrador, correo electrónico y contraseña. Luego haz clic en el botón Siguiente.

Configurar usuario de Magento

Haz clic en el botón ‘Instalar ahora’ para instalar tu tienda Magento 2.

Instalar Magento

Ahora asegúrate de que toda la instalación no tenga errores.

Instalar Magento

Una vez que se complete toda la instalación, verás la página de ‘Éxito‘ como se muestra a continuación.

La instalación de Magento ha finalizado

Haz clic en ‘Lanzar Magento Admin‘ para iniciar sesión en tu panel de administración de Magento.

Iniciar sesión en Magento Admin

Ahora escribe tu usuario y contraseña de administrador de Magento, luego haz clic en ‘Iniciar sesión’ y obtendrás el panel de administración de Magento como se muestra a continuación.

Panel de administración de Magento

Para la página de índice predeterminada de Magento, abre una nueva pestaña y escribe tu nombre de dominio en la barra de direcciones.

A continuación se muestra la página de índice predeterminada de Magento.

Índice de Magento

Como resultado, la instalación de Magento 2 se ha completado.

A continuación, vuelve a tu shell del servidor y configuraremos el Cron de Magento y eliminaremos el permiso de escritura de algunos directorios de instalación de Magento.

Para configurar el cron de Magento, ejecuta el siguiente comando.

cd /var/www/magento2  
sudo -u www-data php bin/magento cron:install --force

El cron de Magento se ejecutará bajo el usuario ‘www-data’, verifícalo usando el siguiente comando.

crontab -u www-data -l

Como resultado, el cron de Magento ha sido agregado al sistema.

Configurar cron de Magento y eliminar permisos de escritura

A continuación, necesitamos eliminar el permiso de escritura del directorio ‘/var/www/magento2/app/etc’.

Ejecuta el comando chmod a continuación.

chmod u-w /var/www/magento2/app/etc

Y finalmente, la instalación de Magento 2 con el servidor web Nginx, el servidor MariaDB, PHP-FPM 7.3 en el último Ubuntu 20.04 se ha completado con éxito.

Referencia

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.