Cómo instalar Magento en Linux

23 de Octubre de 2020

Introducción

Magento es una plataforma integral de comercio electrónico para crear tiendas en línea. Como solución de código abierto, Magento le permite personalizar sus numerosas funciones para crear una experiencia de compra única para el cliente. Es versátil y escalable, lo que lo hace adecuado tanto para pequeñas tiendas familiares como para grandes minoristas.

Averigüe cómo prepare su servidor Linux y realice una instalación completa de Magento.

Logos de Magento y Ubunutu para la imagen de introducción.

Requisitos previos

  • Sistema operativo Linux (las instalaciones de Windows y macOS no son compatibles)
  • Acceso a una interfaz de línea de comandos (CLI)
  • Un usuario con raíz or sudo privilegios.

Código abierto de Magento vs. Comercio de Magento

Antes de continuar con la instalación, decida cuál de las dos plataformas Magento disponibles cumple con los requisitos de su tienda:

  • Código abierto de Magento. Proporciona un sistema de gestión de contenido de front-end completamente funcional gratis. Es ideal para empresas de clic puro recién establecidas que buscan crear tiendas en línea desde cero.
  • El Magento Commerce edition es una plataforma como servicio (PaaS) con funciones avanzadas, soluciones técnicas y de marketing y personal de soporte capacitado. El costo de la plataforma Magento Commerce depende de la facturación anual de la tienda. El precio puede oscilar entre decenas de miles y millones de dólares.

Este tutorial le muestra cómo instalar Magento Open Source versión 2.4.0.


Fin de vida útil de Magento 1: El soporte oficial para Magento 1 finalizó el 30th de junio de 2020. Es posible instalar y utilizar Magento 1, pero lo desaconsejamos. Sin los últimos parches de seguridad y la falta de soporte, una solución de comercio electrónico es una gran responsabilidad. Si todavía está utilizando Magento 1, le recomendamos que actualice a la última versión lo antes posible. Echa un vistazo a nuestro Lista de verificación de migración de Magento para más información.


Cómo instalar Magento

Antes de instalar Magento, debe establecer un entorno de trabajo para los procesos en segundo plano. Esto incluye instalar un LAMP pila, PHP Composer y Elasticsearch para servir como una solución de búsqueda de catálogo.

Esta guía utiliza Ubuntu 20.04 para ver ejemplos de comandos.

Utilice los comandos de la tabla para comprobar si su sistema cumple con los requisitos. Para instalar una solución de software de la lista o actualizar a una versión específica, utilice los enlaces proporcionados.

Versión del softwareCómo verificar la versión en Ubuntu 20.04Guías de instalación
Apache 2.4 (o Nginx1.x)apache2-vInstalar Apache en Ubuntu
PHP 7.4 *php -vInstalar PHP 7 en Ubuntu
(PHP 7.4.3 está disponible en Ubuntu 20.04 de forma predeterminada)
MySQL 8.0
(MariaDB 10.4 si usa Magento Commerce Cloud)
mysql -VInstale MySQL 8.0 en Ubuntu
Elasticsearch 7.6.x
(Obligatorio para Magento 2.4)
curl -X GET "localhost: 9200"Cómo instalar Elasticsearch
Compositor PHPcompositorInstalar PHP Composer en Ubuntu
* Evite el uso de la versión PHP 7.4.2 con Magento, ya que tiene un problema de mensajería conocido.

Puede utilizar soluciones adicionales para mejorar la eficiencia de Magento. Una tienda de valores clave como Redis y un servidor de mensajería como RabbitMQ son muy recomendables pero no obligatorios para Magento.

Paso 1: Instalar módulos PHP

Magento requiere un conjunto de extensiones PHP para la creación de scripts del lado del servidor. Ingrese el siguiente comando para instalar los módulos PHP necesarios:

sudo apt install -y php7.4-common php7.4-opcache php7.4-gd php7.4-mysql php7.4-intl php7.4-xml php7.4-mbstring php7.4-json php7.4-soap php7.4-curl php7.4-xsl php7.4-zip

El sistema tarda unos minutos en completar la instalación.

Comando para instalar extensiones PHP necesarias.

Para enumerar los módulos PHP existentes, use el php -m mando.

Paso 2: Cree el host virtual Apache

Utilice un editor de texto, como nano, para crear un archivo de configuración de Apache Virtual Host para su tienda.

sudo nano /etc/apache2/sites-available/magentostore.conf

Agregue el siguiente contenido al archivo. Cambie la información para que coincida con los datos de su sistema. Por ejemplo, la IP o el nombre de dominio de su tienda.

<VirtualHost *:80>
     ServerAdmin admin@yourstore.com
     DocumentRoot /var/www/html/magento2.4/
     ServerName yourstore.com
     ServerAlias www.yourstore.com

     <Directory "/var/www/html/magento2.4/">
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

En este ejemplo, la ruta al directorio de instalación de Magento es /var/www/html/magento2.4/. La ruta debe coincidir con la ubicación de su carpeta de instalación.

El contenido del archivo Apache Virtual Hosts.

Guarde los cambios y salga del archivo. Luego, use el siguiente comando para habilitar la configuración:

sudo a2ensite magentostore.conf

Habilite el módulo de reescritura de Apache:

sudo a2enmod rewrite

Reinicie el servicio Apache para aplicar los cambios:

sudo systemctl restart apache2

Paso 3: Crear usuario y base de datos MySQL

Acceda al shell de comandos de MySQL y cree una base de datos para su tienda Magento:

CREATE DATABASE magento;

Cree un usuario para el Magento base de datos:

CREATE USER 'magento2os'@'localhost' IDENTIFIED BY 'passwd';

Dar el magento2os privilegios de usuario adecuados para el Magento base de datos:

GRANT ALL PRIVILEGES ON magento.* TO 'magento2os'@'localhost' WITH GRANT OPTION;
Creación de un usuario de MySQL para la base de datos de Magento.

Elimine los privilegios recién otorgados:

FLUSH PRIVILEGES;

Nota: Lea nuestra publicación Explicación de los tipos de bases de datos de Magento para aprender sobre el modelo de datos EAV y las bases de datos de Magento.


Paso 4: Hacer que PHP Composer esté disponible a nivel mundial

Utilice el siguiente comando para hacer que Composer sea accesible globalmente:

sudo mv composer.phar /usr/bin/local/composer

Confirme que Composer ahora está disponible a nivel mundial:

composer

Como confirmación, la salida muestra la versión instalada.

La salida confirma la versión de PHP Composer.

Paso 5: Descarga Magento usando Composer

Hay varias formas de descargar Magento Open Source. Puede recuperar y descomprimir archivos Magento comprimidos desde el archivos oficiales, o crear un clon de Git del repositorio de Magento.

Este tutorial le muestra cómo usar PHP Composer para instalar y administrar las dependencias de Magento. Composer le permite reutilizar bibliotecas de terceros, reducir los problemas de compatibilidad con PHP y volver a empaquetar Magento Open Source con otros componentes.

1. Visita el página oficial de Magento y cree una cuenta de usuario gratuita.

2. Inicie sesión en su cuenta de Magento y seleccione Teclas de acceso.

Ubicación de las claves de acceso de Magento.

3. Haga clic en el Crear una nueva clave de acceso pestaña. Ingrese un nombre y haga clic en OK.

Ingrese un nombre para sus claves de acceso.

4. Guarde sus claves públicas y privadas.

Copia tus claves de acceso Pública y Privada.

5. Utilice una CLI para crear un directorio para la instalación de Magento. En este ejemplo, el magento2.4 El subdirectorio se crea dentro de la raíz web de Apache (/ var / www / html /):

mkdir /var/www/html/magento2.4

6. Acceder al magento2.4 directorio:

cd /var/www/html/magento2.4

7. Utilice el siguiente comando de Composer para descargar el Edición de código abierto Magento 2.4:

composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition

8. Cuando se le solicite, ingrese sus claves de autenticación de Magento. El nombre de usuario y la contraseña son las claves pública y privada que creó anteriormente.

Utilice la clave pública y privada para descargar Magento con Composer.

Permita que el sistema complete la descarga.

Paso 6: establecer la propiedad y los permisos para el grupo compartido

Cree un usuario no root distinto para la instalación de Magento. Por ejemplo, siestay establezca una contraseña segura:

sudo usermod -g www-data pnap

Acceda al directorio de instalación de Magento:

cd /var/www/data/magento2.4

Configure los permisos de lectura y escritura para el grupo de servidores web antes de instalar el software Magento. De esta forma, los usuarios pueden escribir archivos en el sistema de archivos de Magento. Otorgue a los usuarios los siguientes permisos:

sudo find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} \; && find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} \; && chown -R :www-data . && chmod u+x bin/magento

Deje que el sistema termine de hacer coincidir los distintos archivos y carpetas en su directorio de instalación. Luego, use el siguiente comando para reiniciar el servicio Apache:

sudo systemctl restart apache2

Paso 7: Instalar Magento

Cambie al usuario que creó para la instalación de Magento:

sudo su pnap

Acceda a su directorio raíz de Magento:

cd /var/www/html/magento2.4/

Ingrese el siguiente comando para instalar Magento:

php bin/magento setup:install --base-url="http://localhost/magento2.4/" --db-host="localhost" --db-name="magento" --db-user="magento2os" --db-password="passwd" --admin-firstname="Bruce" --admin-lastname="Banner" --admin-email="thehulk@store.com" --admin-user="Hulk" --admin-password="Hulk123" --language="en_US" --currency="USD" --timezone="America/Chicago" --use-rewrites="1" --search-engine="elasticsearch7" --elasticsearch-host="localhost" --elasticsearch-port="9200"

Si es necesario, edite la información para que coincida con sus requisitos y la configuración de su sistema:

  • URL base - La ubicación (URL) de su tienda. En este ejemplo, la tienda está instalada en el localhost existentes magento2.4 subdirectorio.
  • host-db - Si Magento está en el mismo servidor que su base de datos, use localhost. Si está utilizando un servidor de base de datos separado, ingrese el nombre de host de ese servidor.
  • nombre-base de datos - El nombre de la base de datos MySQL creada anteriormente.
  • db-usuario - Ingrese el nombre de usuario de su usuario de MySQL.
  • db-contraseña - La contraseña de su usuario de MySQL.
  • nombre-administrador y admin-apellido - Establezca el nombre completo para su usuario administrador de Magento.
  • correo electrónico de administración - Defina un correo electrónico de contacto para notificaciones del sistema y restablecimiento de contraseña.
  • usuario-administrador / clave de administrador - Cree las credenciales de inicio de sesión para el panel de control de Magento Admin.
  • idioma - Define el idioma predeterminado para su tienda.
  • moneda - Establece la moneda base para su tienda.
  • zona horaria - Regula la zona horaria predeterminada para Magento.
  • utilizan el-reescribe - Habilite las reescrituras estableciendo el valor en 1.
  • buscador - El valor del motor de búsqueda predeterminado debe establecerse en búsqueda elástica7.
  • host de búsqueda elástica - Si Elasticsearch está en el mismo servidor que Magento, use localhost. Si está utilizando un servidor separado, ingrese el nombre de host de ese servidor.
  • puerto de búsqueda elástica - El número de puerto predeterminado de Elasticsearch es 9200.

El sistema crea un URI de administrador de Magento aleatorio y muestra el valor al final del proceso de instalación. Tome nota del valor, ya que le permite acceder al panel de administración.

Ubicación del URI de administrador de Magento.

Si necesita recuperar el URI de administrador en un momento posterior, acceda al directorio raíz de Magento y use el siguiente comando:

bin/magento info:adminuri

Paso 8: Acceda y configure Magento

Utilice un navegador para acceder a su escaparate de Magento. En este ejemplo, Magento está instalado en el localhost en la pestaña magento2.4 subdirectorio:

http://127.0.0.1/magento2.4

Ahora tiene acceso a la página de inicio de Magento.

Escaparate del tema Deafult Magento Luma.

Acceda al panel de administración de Magento agregando el URI de administrador a la URL de la interfaz de la tienda.

http://127.0.0.1/magento2.4/admin_fasjdnw

Ingrese el nombre de usuario y la contraseña de administrador que creó durante el proceso de instalación y Iniciar.

Página de inicio de sesión de administrador de Magento.

Usos de Magento 2.4 autenticación de dos factores para proporcionar un entorno seguro para los administradores. No puede iniciar sesión en el panel de administración de Magento a menos que tenga un Agente de transferencia de correo (MTA) o un servidor SMTP.

Error de autenticación de dos factores de Magento.

Una solución alternativa es desactivar el módulo de autenticación de dos factores.

Ingrese el siguiente comando desde su carpeta raíz de Magento:

php bin/magento module:disable Magento_TwoFactorAuth

Como ya no se requiere la autenticación de dos factores, vuelva a cargar la página para acceder al panel de administración de Magento.

Interfaz de administración de Magneto.

Utilice el administrador de Magento para crear y mantener su tienda, agregar extensiones para mejorar el rendimiento y diseñar temas que realmente se destaquen.

Para instalar temas, consulte nuestra guía Cómo instalar un nuevo tema en Magento.

Conclusión

Ha instalado con éxito Magento 2.4, una completa solución de comercio electrónico que le permite crear una experiencia única para sus clientes.

Acerca del autor.
Vladímir Kaplarevic
Vladimir es un redactor técnico residente en CCBill. Tiene más de 8 años de experiencia en la implementación de comercio electrónico y soluciones de pago en línea con varios proveedores de servicios de TI globales. Su atractivo estilo de escritura proporciona consejos prácticos y tiene como objetivo despertar la curiosidad por las tecnologías innovadoras.
Hable con un especialista en asistencia comercial