Magento instalación · 6 min read · Oct 19, 2025
Cómo instalar Magento con Nginx en Ubuntu 16.04
Magento es un software de comercio electrónico de código abierto 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 mostraré cómo instalar Magento 2 con Nginx, PHP 7.0 en modo FPM y MariaDB como base de datos. Utilizaré Ubuntu 16.04 (Xenial Xerus) como sistema operativo del servidor. Si aún no tienes una configuración mínima del servidor, consulta este tutorial para obtener una configuración base adecuada.
Requisitos previos:
- Ubuntu 16.04 - 64 bits.
- Privilegios de root.
Paso 1 - Instalar Nginx
Inicia sesión en tu servidor Ubuntu con tu cuenta de root (por ejemplo, por SSH) y actualiza el repositorio.
sudo su
apt-get updateLuego instala Nginx:
apt-get install nginx -yVerifica que Nginx se haya instalado correctamente comprobando el puerto:
netstat -plntu | grep 80Paso 2 - Instalar y configurar PHP-FPM
En este paso instalaremos PHP 7 en modo PHP-FPM. Además, instalaremos las siguientes extensiones de PHP que son requeridas por Magento.
- php-gd
- php-mhash
- php-mcrypt
- php-xsl
- php-pear
- php-soap
Instala los paquetes con el comando apt a continuación:
apt-get install php7.0-fpm php7.0-mcrypt php7.0-curl php7.0-cli php7.0-mysql php7.0-gd php7.0-xsl php7.0-json php7.0-intl php-pear php7.0-dev php7.0-common php7.0-mbstring php7.0-zip php-soap libcurl3 curl -yAhora edita los archivos php.ini para fpm y cli.
vim /etc/php/7.0/fpm/php.ini
vim /etc/php/7.0/cli/php.iniy aumenta el límite de memoria y el tiempo de ejecución de PHP y activa la compresión zlib añadiendo las siguientes líneas al final de los archivos:
memory_limit = 512M
max_execution_time = 1800
zlib.output_compression = OnGuarda el archivo y sal del editor.
Reinicia el servicio PHP-FPM para aplicar los cambios de configuración:
systemctl restart php7.0-fpmPaso 3 - Instalar y configurar MariaDB
Utilizaré MariaDB en lugar de MySQL aquí. Instala MariaDB con el comando apt:
apt-get install mariadb-server mariadb-client -yEstablece la contraseña del usuario root de MariaDB con este comando:
mysqladmin -u root password mypasswordmysql_secure_installation
Establecer contraseña root? [Y/n] Y
Nueva contraseña:
Reingresar nueva contraseña: <-- Ingresa la nueva contraseña
Eliminar usuarios anónimos? [Y/n] Y
... ¡Éxito!
¿Deshabilitar el inicio de sesión remoto de root? [Y/n] Y
... ¡Éxito!
¿Eliminar la base de datos de prueba y el acceso a ella? [Y/n] Y
¿Recargar las tablas de privilegios ahora? [Y/n] Y
... ¡Éxito!Luego conéctate a la shell de MySQL (la shell de MariaDB se inicia con el comando mysql) con tu contraseña de root, crea una base de datos con el nombre ‘ magentodb ‘ y un usuario ‘ magentouser ‘ con la contraseña ‘ magentouser@ ‘. ¡Por favor elige una contraseña segura para el ‘magentouser’ en tu servidor y no la que usé en este ejemplo, ‘ magentouser@ ‘!
Inicia sesión en la shell de MySQL:
mysql -u root -pEn la shell de MySQL, ejecuta estos comandos:
create database magentodb;
create user magentouser@localhost identified by 'magentouser@';
grant all privileges on magentodb.* to magentouser@localhost identified by 'magentouser@';
flush privileges;
\q
Base de datos creada y configurada.
Paso 4 - Instalar y configurar Magento 2
Instalaremos Magento en el directorio ‘/var/www/magento2’. Para la instalación de Magento, necesitamos el PHP composer.
- Instalar php composer
Ve al directorio raíz, descarga el archivo instalador de composer con curl y ejecútalo para instalar composer.
cd ~/
curl -sS https://getcomposer.org/installer | phpMueve el archivo ‘composer.phar’ al directorio bin de tu servidor y renómbralo a composer para que se pueda ejecutar fácilmente:
mv composer.phar /usr/bin/composerAhora verifica que el comando composer esté funcionando:
composer -v- Descargar y extraer Magento 2
Ve al directorio web ‘/var/www/‘ y descarga Magento desde su repositorio de Github, luego descomprime el archivo tar.gz descargado:
cd /var/www/
wget https://github.com/magento/magento2/archive/2.0.7.tar.gz
tar -xzvf 2.0.7.tar.gz
mv magento2-2.0.7/ magento2/Hecho.
- Configurar la clave de Magento
Registra una cuenta en el sitio web de Magento repo.magento.com. Esta cuenta es necesaria para usar Magento y la tienda de composer de Magento. Cuando te hayas registrado, ve a la pestaña ‘ Mi cuenta > Desarrollador > Claves seguras ‘, luego genera tus claves.

- Instalar componentes de terceros para Magento
Ve al directorio de instalación de Magento 2 ‘/var/www/magento2’ y ejecuta el comando composer:
cd /var/www/magento2/
composer install -vSe te pedirá la autenticación de Magento, usa la clave pública como nombre de usuario y la clave privada como contraseña.
- Configurar el Virtualhost de Nginx
Magento ofrece una configuración de host virtual de Nginx lista para usar, así que solo tenemos que incluirla en nuestra configuración.
Ve al directorio de host virtual de Nginx y crea un nuevo archivo llamado magento:
cd /etc/nginx/sites-available/
vim magentoPega la configuración a continuación:
upstream fastcgi_backend {
server unix:/run/php/php7.0-fpm.sock;
}
server {
listen 80;
server_name www.newmagento.com;
set $MAGE_ROOT /var/www/magento2;
set $MAGE_MODE developer;
include /var/www/magento2/nginx.conf.sample;
}Reemplaza www.newmagento.com con el nombre de dominio del sitio web que tu tienda utilizará.
Guarda y sal.
Ahora activa el host virtual y reinicia Nginx:
ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled/
systemctl restart nginx- Instalar Magento
Instalaremos Magento en la línea de comandos. En el directorio de Magento ‘/var/www/magento2/‘ hay un archivo binario con el nombre ‘magento’ que se utiliza para instalar y gestionar Magento. Ejecuta el comando:
bin/magento setup:install --backend-frontname="adminlogin" \
--key="biY8vdWx4w8KV5Q59380Fejy36l6ssUb" \
--db-host="localhost" \
--db-name="magentodb" \
--db-user="magentouser" \
--db-password="magentouser@" \
--language="en_US" \
--currency="USD" \
--timezone="America/New_York" \
--use-rewrites=1 \
--use-secure=0 \
--base-url="http://www.newmagento.com" \
--base-url-secure="https://www.newmagento.com" \
--admin-user=adminuser \
--admin-password=admin123@ \
--admin-email="[email protected]" \
--admin-firstname=admin \
--admin-lastname=user \
--cleanup-databasebackend-frontname = la página de administración de nuestro sitio Magento, usamos ‘ adminlogin ‘.
Key = nuestras claves de Magento, podemos generarlas o encontrarlas aleatoriamente en http://randomkeygen.com/.
Base-url = asegúrate de que sea la misma que la configuración del host virtual.
Al final del procedimiento de instalación deberías ver estas líneas:
[SUCCESS]: Instalación de Magento completa.
[SUCCESS]: URI de administración de Magento: /adminloginAntes de probar la instalación de Magento, asegúrate de que el propietario del directorio web sea ‘ www-data ‘, luego reinicia Nginx.
cd /var/www/magento2/
chmod 700 /var/www/magento2/app/etc
chown -R www-data:www-data .systemctl restart nginxAhora abre el dominio de Magento en tu navegador: *
En mi caso, el nombre de dominio es: www.newmagento.com.

Intenta iniciar sesión en el panel de administración de Magento: *

**

Nota :
Si obtienes un error sobre un cronjob de indexador de Magento que falta, puedes solucionarlo añadiendo el siguiente cronjob a tu servidor:
crontab -u www-data -eAgrega las siguientes líneas:
* * * * * /usr/bin/php /var/www/magento2/bin/magento cron:run | grep -v "Ran jobs by schedule" >> /var/www/magento2/var/log/magento.cron.log
* * * * * /usr/bin/php /var/www/magento2/update/cron.php >> /var/www/magento2/var/log/update.cron.log
* * * * * /usr/bin/php /var/www/magento2/bin/magento setup:cron:run >> /var/www/magento2/var/log/setup.cron.logGuarda y sal.
Magento 2 con Nginx y PHP-FPM 7 en Ubuntu 16.04 está instalado ahora.
Conclusión
Magento es una plataforma de comercio electrónico de código abierto basada en el marco PHP Zend. Es un software de comercio electrónico complejo para ayudarte con tu negocio en línea. Magento utiliza una arquitectura MVC (Modelo-Vista-Controlador) y MySQL o MariaDB como base de datos. Magento es fácil de instalar, podemos instalarlo con Nginx o Apache como servidor web. Magento se ha convertido en uno de los software de comercio electrónico más populares en Internet y es utilizado por muchos sitios web de tiendas exitosas en todo el mundo.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.