GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo instalar Magento con Nginx en Debian 10

En este tutorial, explicaremos cómo instalar Magento 2.3.2 en Debian 10 VPS con Nginx.

Magento es una plataforma de comercio electrónico de código abierto escrita en lenguaje PHP. Es una solución poderosa y una de las más populares para tiendas en línea autohospedadas debido a su simplicidad y facilidad de uso. Magento nos permite alojar un sistema de carrito de compras en línea completamente funcional sin ningún conocimiento de programación. Magento también nos permite complementar los archivos principales y ampliar la funcionalidad de Magento agregando nuevos módulos. Magento viene con un amplio conjunto de características que incluyen administración de sitios web, SEO, administración de pedidos, herramientas de servicio al cliente, herramientas de marketing, un sistema de pago, así como sistemas de pago y envío. Comencemos con la instalación.

Requisitos previos:

  • Un VPS Debian 10 con acceso raíz habilitado o un usuario con privilegios sudo.
  • Mínimo 2 GB de RAM:usaremos nuestro plan SSD 2 VPS.
  • PHP versión 7.1.3+ y PHP 7.2.x.
  • Se configura y asigna una dirección IP estática a su VPS.

Paso 1:Inicie sesión a través de SSH y actualice los paquetes

Inicie sesión en su Debian 10 VPS con SSH como usuario root:

ssh root@IP_Address -p Port_number

Reemplace "root" con un usuario que tenga privilegios sudo si es necesario. Además, reemplace "IP_Address" y "Port_Number" con la dirección IP y el número de puerto SSH respectivos de su servidor.

A continuación, asegurémonos de que estamos en Debian 10. Puede hacerlo así:

# lsb_release -a

Debería obtener esto como salida:

Distributor ID: Debian
Description:    Debian GNU/Linux 10 (buster)
Release:        10
Codename:       buster

Luego, ejecute el siguiente comando para asegurarse de que todos los paquetes instalados en el servidor estén actualizados a sus últimas versiones disponibles:

# apt update && apt upgrade

Paso 2:Instale Nginx, MariaDB y PHP

Instale Nginx, MariaDB y otros paquetes necesarios con el siguiente comando:

apt-get install nginx mariadb-server git curl software-properties-common -y

De forma predeterminada, Debian 10 se envía con la versión 7.3 de PHP. Pero Magento 2.3 no es compatible con PHP 7.3. Por lo tanto, necesitaremos instalar PHP 7.2 y otras extensiones requeridas.

Por supuesto, Magento eventualmente lanzará una versión que funcione con PHP 7.3. Si está instalando Magento con una versión compatible con PHP 7.3, debe omitir este paso.

Puede instalar PHP 7.2 desde el repositorio de SURY. Para agregar el repositorio SURY, primero descargue una clave GPG con el siguiente comando:

wget https://packages.sury.org/php/apt.gpg
apt-key add apt.gpg

A continuación, agregue el repositorio SURY a APT con el siguiente comando:

echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list

Luego, actualice el repositorio e instale PHP 7.2 junto con todas las extensiones requeridas con los siguientes comandos:

apt-get update -y
apt-get install php7.2 php7.2-fpm php7.2-common php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-gd php7.2-xml php7.2-intl php7.2-mysql php7.2-cli php7.2-ldap php7.2-zip php7.2-curl php7.2-bcmath php7.2-imagick php7.2-xsl php7.2-intl -y

A continuación, abra php.ini y cambie la configuración predeterminada de PHP:

nano /etc/php/7.2/fpm/php.ini

Cambie las siguientes configuraciones:

memory_limit = 256M
upload_max_filesize = 128M
zlib.output_compression = On
max_execution_time = 15000
date.timezone = America/Chicago

Guarde y cierre el archivo.

Paso 3:Cree una base de datos de Magento

Asegure su instalación de MariaDB utilizando mysql_secure_installation guion. Este script eliminará a los usuarios anónimos, no permitirá el inicio de sesión raíz de forma remota y eliminará la base de datos de prueba.

mysql_secure_installation

Debe responder a todas las preguntas como se muestra a continuación:

Enter current password for root (enter for none): Press [Enter] since no password is set by default
Set root password? [Y/n]: N (Optional)
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

Una vez que MariaDB esté protegido, inicie sesión en el shell de MariaDB:

mysql -u root -p

Proporcione su contraseña raíz de MariaDB cuando se le solicite (si estableció una), luego cree una base de datos y un usuario para Magento:

MariaDB [(none)]> CREATE DATABASE magentodb;
MariaDB [(none)]> CREATE USER 'magentouser'@'localhost';
MariaDB [(none)]> SET PASSWORD FOR 'magentouser'@'localhost' = PASSWORD('Str0n9PasSworD');

Asegúrese de utilizar una contraseña única para el usuario de la base de datos.

A continuación, otorgue todos los privilegios a la base de datos de Magento con el siguiente comando:

MariaDB [(none)]> GRANT ALL ON magentodb.* TO 'magentouser'@'localhost' IDENTIFIED BY 'Str0n9PasSworD' WITH GRANT OPTION;

A continuación, elimine los privilegios y salga del shell de MariaDB con el siguiente comando:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Una vez que haya terminado, puede continuar con el siguiente paso.

Paso 4:Descarga Magento

Al momento de escribir este artículo, la última versión estable de Magento es la versión 2.3.2.
Primero, vaya al repositorio de GitHub y descargue la última versión de Magento con el siguiente comando:

cd /var/www/html
git clone https://github.com/magento/magento2.git

A continuación, compruebe la última versión de Magento con el siguiente comando:

cd magento2/
git checkout 2.3.2

A continuación, necesitaremos instalar Composer para instalar todos los componentes necesarios de Magento. Puede instalar Composer simplemente ejecutando el siguiente comando:

curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer

A continuación, instale todas las dependencias PHP requeridas por Magento con el siguiente comando:

cd /var/www/html/magento2
composer install

Una vez que se hayan instalado todas las dependencias sin ningún error, cambie la propiedad de magento2 directorio a www-data con el siguiente comando:

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

Paso 5:configurar Nginx para Magento

A continuación, necesitaremos configurar Nginx para la tienda Magento. Primero, cree un nuevo archivo de configuración de host virtual Nginx con el siguiente comando:

nano /etc/nginx/sites-available/magento.conf

Luego agregue el siguiente contenido:

upstream fastcgi_backend {
         server  unix:/run/php/php7.2-fpm.sock;                  
}

server {
    listen 80;
    index  index.php index.html index.htm;
    server_name domain-name.com;

    set $MAGE_ROOT /var/www/html/magento2;
    set $MAGE_MODE developer;
    include /var/www/html/magento2/nginx.conf.sample;
}

Asegúrese de reemplazar nombre-dominio.com con su nombre de dominio registrado.

Guarde y cierre el archivo. Luego, verifique Nginx para ver si hay algún error de sintaxis:

nginx -t

Deberías obtener el siguiente resultado:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

A continuación, active el host virtual de Nginx con el siguiente comando:

ln -s /etc/nginx/sites-available/magento.conf /etc/nginx/sites-enabled/

Finalmente, reinicie el servicio Nginx y PHP-FPM para aplicar todos los cambios de configuración:

systemctl restart nginx
systemctl restart php7.2-fpm

Paso 6:acceda al asistente de instalación web de Magento

Ahora, abra su navegador web y abra la URL http://domain-name.com . Debería ver el asistente de configuración de Magento como se muestra a continuación:

Haga clic en el botón Aceptar y configurar Magento. Debería ver el asistente de comprobación de preparación de Magento:

Ahora, haga clic en Iniciar verificación de preparación para verificar la versión de PHP, las extensiones de PHP y los permisos de archivo correctos. Una vez que la verificación de preparación se haya completado con éxito, debería ver la siguiente página:

Luego haga clic en el botón Siguiente. Debería ver la página de configuración de la base de datos:

Proporcione los detalles de la base de datos de Magento que configuramos anteriormente, luego haga clic en el botón Siguiente. Debería ver el asistente de configuración web de Magento:

Proporcione la dirección de su tienda y la dirección de administrador de Magento. Luego, haga clic en el botón Siguiente. Debería ver la siguiente página:

Ahora, seleccione su zona horaria, moneda, idioma y haga clic en el botón Siguiente. Debería ver el asistente de configuración del administrador de Magento:

Proporcione su nombre de usuario, contraseña y correo electrónico de administrador, luego haga clic en el botón Siguiente. Debería ver la siguiente página:

Finalmente, haga clic en el botón Instalar ahora para iniciar la instalación de Magento. Una vez que la instalación se haya completado con éxito, debería ver la siguiente página:

Una vez que Magento se haya instalado correctamente, haga clic en el botón Iniciar administración de Magento y será redirigido a la interfaz de administración de Magento:

Proporcione su nombre de usuario y contraseña de Magento:haga clic en el botón Iniciar sesión. Será redirigido al panel de control de Magento en la siguiente pantalla:

¡Felicidades! La instalación está completa. Sin embargo, todavía hay una cosa más que debe hacerse.

Paso 7:configurar el trabajo cron para Magento

Hay muchas configuraciones y funciones en Magento 2 que necesitan un trabajo cron para el correcto funcionamiento de su Magento. La lista de tareas manejadas por cron en Magento 2 son:Boletines, Reindexación, Actualización de tipos de cambio, Alertas/Notificaciones, Reglas de precios de catálogo y muchas más.

Para crear el crontab de Magento, ejecute el siguiente comando con www-data usuario como se muestra a continuación:

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

Ahora puede ver el trabajo cron instalado con el siguiente comando:

crontab -u www-data -l

Deberías obtener el siguiente resultado:

#~ MAGENTO START f73db5f5dcf223372d4c9fab56bef0c1730eece898fad5cbee0c313b46b0dd1f
* * * * * /usr/bin/php7.2 /var/www/html/magento2/bin/magento cron:run 2>&1 | grep -v "Ran jobs by schedule" >> /var/www/html/magento2/var/log/magento.cron.log
* * * * * /usr/bin/php7.2 /var/www/html/magento2/update/cron.php >> /var/www/html/magento2/var/log/update.cron.log
* * * * * /usr/bin/php7.2 /var/www/html/magento2/bin/magento setup:cron:run >> /var/www/html/magento2/var/log/setup.cron.log
#~ MAGENTO END f73db5f5dcf223372d4c9fab56bef0c1730eece898fad5cbee0c313b46b0dd1f

Eso es todo. Ha instalado y configurado correctamente Magento en un VPS Debian 10 con el servidor web Nginx. Ahora puede alojar su propia tienda en línea en cuestión de minutos y comenzar a personalizar su tienda según sus requisitos.

Por supuesto, no tiene que saber cómo instalar Magento con Nginx en Debian 10 si tiene un plan de alojamiento VPS de Magento con nosotros. Simplemente puede solicitar a nuestros administradores que instalen Magento en Debian 10 por usted. Están disponibles las 24 horas del día, los 7 días de la semana y podrán ayudarlo con la instalación de Magento en Debian 10.

PD . Si disfrutó leyendo esta publicación de blog sobre cómo instalar Magento con Nginx en Debian 10 , o si lo encontró útil, siéntase libre de compartirlo en las redes sociales usando los accesos directos a continuación, o simplemente deje un comentario. Gracias.


Debian
  1. Cómo instalar Phorum con Nginx en Debian 9

  2. Cómo instalar PHP 7.4/7.3/7.2/7.1 en Debian 10/Debian 9

  3. Cómo instalar PHP en Debian 10 (Buster)

  4. Cómo instalar PHP en Debian 10 Buster

  5. Cómo instalar PHP 7.3 en Debian 9

Cómo instalar Shopware con NGINX y Lets encrypt en Debian 9

Cómo instalar Bludit CMS con NGINX en Debian 9

Cómo instalar Grav CMS con Nginx en Debian 9

Cómo instalar Nginx con PHP-FPM en Debian 10

Cómo instalar phpMyAdmin con Nginx en Debian 11

Cómo instalar Nginx y PHP en Debian 10