Androide

Instalar magento 2 en centos 7

How to install Magento 2 on Centos 7 [Complete Guide]

How to install Magento 2 on Centos 7 [Complete Guide]

Tabla de contenido:

Anonim

Magento es una plataforma líder de comercio electrónico de clase empresarial basada en tecnología de código abierto que combina potentes funciones con flexibilidad e interfaz fácil de usar.

Con características como Participar en experiencias de compra, Arquitectura modular flexible y Escalabilidad y rendimiento de grado empresarial Magento es una plataforma de elección para la mayoría de los comerciantes en línea.

Esta es la primera publicación de la serie Cómo instalar y configurar Magento 2 en CentOS 7. En este tutorial, lo guiaremos a través de los pasos para instalar Magento 2 en su máquina CentOS 7.

Prerrequisitos

Como requisitos previos para seguir este tutorial, necesitará:

  • Servidor CentOS 7, de acuerdo con los requisitos oficiales del sistema Magento 2, necesita al menos 2G de RAM. Si está utilizando un servidor con menos de 2 GB de RAM, debe crear un archivo de intercambio. Ingresó como una cuenta de usuario con privilegios de sudo. Un nombre de dominio que apunta a la IP de su servidor público. En este tutorial, utilizaremos example.com . Nginx, MySQL y PHP 7.1 instalados y configurados. Si no lo ha hecho, consulte nuestra guía LEMP en CentOS 7. Un certificado SSL válido. Si no tiene uno, puede crear un certificado SSL gratuito de Lets's Encrypt siguiendo Secure Nginx con Let's Encrypt en CentOS 7.

Par de claves de acceso de Magento

Necesitamos generar claves de acceso para autenticar el acceso al repositorio de código Magento 2 y extensiones y temas de terceros.

Crear base de datos MySQL

Magento 2 es compatible con MySQL 5.6 y 5.7, MariaDB 10.xy Percona 5.7. Si no tiene MySQL o MariaDB instalado en su servidor, puede consultar esta guía.

Inicie sesión en el shell de MySQL:

mysql -u root -p

Y ejecute los siguientes comandos para crear una nueva base de datos y usuario y otorgar privilegios a ese usuario sobre la base de datos recién creada:

CREATE DATABASE magento; GRANT ALL ON magento.* TO magento@localhost IDENTIFIED BY 'P4ssvv0rD';

Instalar extensiones PHP

Suponemos que ya ha habilitado el repositorio PHP 7.1 Remi utilizando nuestra guía.

Instale todas las extensiones PHP requeridas con el siguiente comando:

sudo yum install php-mysql php-opcache php-xml php-mcrypt php-gd php-soap php-redis php-bcmath php-intl php-mbstring php-json php-iconv php-fpm php-zip

Una vez que se complete la instalación, configure las opciones PHP requeridas y recomendadas editando el archivo php.ini con sed :

sudo sed -i "s/memory_limit =.*/memory_limit = 756M/" /etc/php.ini sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php.ini sudo sed -i "s/zlib.output_compression =.*/zlib.output_compression = on/" /etc/php.ini sudo sed -i "s/max_execution_time =.*/max_execution_time = 18000/" /etc/php.ini sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php.ini sudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php.d/10-opcache.ini

Instalar Composer

Composer es un administrador de dependencias para PHP que se utiliza para instalar, actualizar y administrar bibliotecas.

Para instalar Composer globalmente, descargue el instalador de Composer con curl y mueva el archivo al directorio /usr/local/bin :

curl -sS https://getcomposer.org/installer | php curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer

Crear un nuevo usuario del sistema

Cree un nuevo usuario y grupo, que ejecutará nuestra instalación de Magento, por simplicidad magento nuestro usuario magento :

sudo useradd -m -U -r -d /opt/magento magento

Agregue el usuario nginx al grupo magento y cambie los permisos del directorio /opt/magento para que Nginx pueda acceder a nuestra instalación de Magento:

sudo usermod -a -G magento nginx sudo chmod 750 /opt/magento

Configurar PHP FPM

Luego, necesitamos configurar PHP y crear un grupo de FPM para nuestro usuario de magento .

Abra su editor de texto y cree el siguiente archivo:

/etc/php-fpm.d/magento.conf

user = magento group = nginx listen.owner = magento listen.group = nginx listen = /run/php-fpm/magento.sock pm = ondemand pm.max_children = 50 pm.process_idle_timeout = 10s pm.max_requests = 500 chdir = /

Guarde el archivo y reinicie el servicio PHP FPM para que los cambios surtan efecto:

sudo systemctl restart php-fpm

Instalar Magento

Hay varias formas de instalar Magento. Evite instalar Magento desde el repositorio de Github porque esa versión está destinada al desarrollo y no a las instalaciones de producción. En este tutorial, instalaremos Magento desde sus repositorios usando Composer.

Cambie al usuario magento :

sudo su - magento

Inicie la instalación descargando archivos magento al directorio /opt/magento/public_html :

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

Durante la creación del proyecto, el compositor le pedirá que ingrese las claves de acceso, copie las claves de su cuenta de Magento marketplace y las almacene en el archivo auth.json , por lo que más tarde, cuando actualice su instalación, no tendrá que agregar las mismas claves. de nuevo.

Authentication required (repo.magento.com): Username: e758ec1745d190520ca246e4e832e12c Password: Do you want to store credentials for repo.magento.com in /opt/magento/.config/composer/auth.json ?

Una vez creado el proyecto, podemos comenzar la instalación. Podemos instalar Magento ya sea usando la línea de comando o usando el Asistente de configuración web. En este tutorial, instalaremos Magento usando la línea de comando.

Utilizaremos las siguientes opciones para instalar nuestra tienda Magento:

  • Las URL seguras de Base y Base están configuradas en https://example.com , cámbielas con su dominio. Administrador de Magento:
    • John Doe como nombre y apellido. [email protected] como correo electrónico. john como nombre de usuario y j0hnP4ssvv0rD como contraseña.
    Nombre de la base de datos magento , nombre de usuario magento , contraseña P4ssvv0rD y el servidor de la base de datos está en el mismo host que el servidor web. en_US , inglés de EE. UU. como idioma predeterminado. USD dólares como moneda predeterminada. America/Chicago como zona horaria.
Puede encontrar todas las opciones de instalación aquí.

Cambie al directorio Magento ~/public_html :

cd ~/public_html

Ejecute el siguiente comando para iniciar la instalación:

php bin/magento setup:install --base-url=https://example.com/ \ --base-url-secure=https://example.com/ \ --admin-firstname="John" \ --admin-lastname="Doe" \ --admin-email="[email protected]" \ --admin-user="john" \ --admin-password="j0hnP4ssvv0rD" \ --db-name="magento" \ --db-host="localhost" \ --db-user="magento" \ --currency=USD \ --timezone=America/Chicago \ --use-rewrites=1 \ --db-password="P4ssvv0rD" No olvide cambiar la contraseña ( j0hnP4ssvv0rD ) a algo más seguro.

Si la instalación es exitosa, se le presentará un mensaje que contiene el URI en el panel de administración de Magento.

: Magento installation complete.: Magento Admin URI: /admin_1csalp Nothing to import.

Crea el crontab de Magento

Magento usa trabajos cron para programar tareas como reindexación, notificaciones, mapas del sitio, correos electrónicos y más.

Para crear el crontab de Magento, ejecute el siguiente comando como usuario de magento :

php ~/public_html/bin/magento cron:install

Podemos verificar que el crontab esté instalado ejecutando:

crontab -l

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

Configurar Nginx

/etc/nginx/conf.d/example.com.conf

upstream fastcgi_backend { server unix:/run/php-fpm/magento.sock; } server { listen 80; server_name example.com www.example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; set $MAGE_ROOT /opt/magento/public_html; set $MAGE_MODE developer; # or production access_log /var/log/nginx/example.com-access.log; error_log /var/log/nginx/example.com-error.log; include /opt/magento/public_html/nginx.conf.sample; }

Vuelva a cargar el servicio Nginx para que los cambios surtan efecto:

sudo systemctl reload nginx

Finalmente, debe poder iniciar sesión en su instalación de Magento en https://example.com/admin_1csalp utilizando el usuario administrador que especificó cuando ejecuta el instalador de Magento.

Conclusión

En este tutorial, instaló Magento 2 en su servidor Centos 7. También ha generado un certificado SSL Let's cifrado gratuito y configurado Nginx como proxy de terminación SSL.

magento ecommerce centos

Esta publicación es parte de Cómo instalar y configurar Magento 2 en la serie CentOS 7.

Otras publicaciones en esta serie:

• Instale Magento 2 en CentOS 7 • Configure Magento 2 para usar Varnish en CentOS 7