Cómo instalar Magento en CentOS 7


Magento es una plataforma de comercio electrónico de código abierto (o sistema de gestión de contenido (CMS)) potente y altamente flexible, escrita en PHP. Se distribuye en dos ediciones principales: Enterprise y Community . La edición comunitaria está destinada a desarrolladores y pequeñas empresas.

Es totalmente personalizable para cumplir con los requisitos de los usuarios, lo que les permite configurar y administrar una tienda de comercio electrónico completamente operativa en minutos. Magento se ejecuta en servidores web como Apache, Nginx e IIS, bases de datos backend: MySQL o MariaDB, Percona.

En esta guía, mostraremos cómo instalar Magento Community Edition en una pila CentOS 7 VPS con LAMP (Linux, Apache MariaDB y PHP). Las mismas instrucciones también funcionan en distribuciones basadas en RHEL y Fedora con ligeros cambios en los comandos.

Este artículo lo guiará para instalar la versión más reciente de "Community Edition" de Magento en un sistema que ejecuta:

  1. Apache version 2.2 or 2.4
  2. PHP version 5.6 or 7.0.x or later with required extensions
  3. MySQL version 5.6 or later

rojo

Paso 1: Instalar el servidor web Apache

1. Instalar el servidor web Apache es muy simple, desde los repositorios oficiales:

# yum install httpd

2. Luego, para permitir el acceso a los servicios de Apache desde HTTP y HTTPS , tenemos que abrir el puerto 80 y 443 donde el daemon HTTPD está escuchando de la siguiente manera:

------------ On CentOS/RHEL 7 ------------ 
# firewall-cmd --permanent --zone=public --add-service=http
# firewall-cmd --permanent --zone=public --add-service=https
# firewall-cmd --reload

---------- On CentOS/RHEL 6 ----------
# iptables -A INPUT -p tcp -m state --state NEW --dport 80 -j ACCEPT
# iptables -A INPUT -p tcp -m state --state NEW --dport 443 -j ACCEPT
# service iptables save

Paso 2: Instala el soporte PHP para Apache

Como dije, Magento requiere PHP 5.6 o 7.0 y el repositorio CentOS predeterminado incluye PHP 5.4 , que no es compatible con la última versión de Magento 2 .

3. Para instalar PHP 7 , debe agregar EPEL y IUS (en línea con Upstream Estable ) para instalar PHP 7 utilizando yum:

# yum install -y http://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release-1.0-14.ius.centos7.noarch.rpm
# yum -y update
# yum -y install php70u php70u-pdo php70u-mysqlnd php70u-opcache php70u-xml php70u-mcrypt php70u-gd php70u-devel php70u-mysql php70u-intl php70u-mbstring php70u-bcmath php70u-json php70u-iconv
# yum -y update
# yum -y install epel-release
# wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
# wget https://centos6.iuscommunity.org/ius-release.rpm
# rpm -Uvh ius-release*.rpm
# yum -y update
# yum -y install php70u php70u-pdo php70u-mysqlnd php70u-opcache php70u-xml php70u-mcrypt php70u-gd php70u-devel php70u-mysql php70u-intl php70u-mbstring php70u-bcmath php70u-json php70u-iconv

4. A continuación, abra y modifique las siguientes configuraciones en su archivo /etc/php.ini :

max_input_time = 30
memory_limit= 512M
error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
error_log = /var/log/php/error.log
date.timezone = Asia/Calcutta

rojo

5. A continuación, para recuperar una información completa sobre la instalación de PHP y todas sus configuraciones actuales desde un navegador web, vamos a crear un archivo info.php en el Apache DocumentRoot (< fuerte>/var/www/html ) usando el siguiente comando.

# echo "<?php  phpinfo(); ?>" > /var/www/html/info.php

6. Una vez que se completa toda la configuración requerida, es hora de iniciar el servicio Apache y habilitarlo para que se inicie automáticamente desde el siguiente inicio del sistema, así como:

------------ On CentOS/RHEL 7 ------------ 
# systemctl start httpd
# systemctl enable httpd

------------ On CentOS/RHEL 6 ------------
# service httpd start
# chkconfig httpd on

7. A continuación, podemos verificar que Apache y PHP funcionan bien; abra un navegador remoto y escriba la dirección IP de su servidor usando el protocolo HTTP en la URL y debería aparecer la página de información predeterminada de Apache2 y PHP.

http://server_domain_name_or_IP/
http://server_domain_name_or_IP/info.php

Paso 3: Instalar y configurar la base de datos MariaDB

8. Debemos tener en cuenta que Red Hat Enterprise Linux/CentOS 7.0 pasó de ser compatible con MySQL a MariaDB como el sistema de administración de bases de datos predeterminado.

Para instalar la base de datos MariaDB, debemos agregar el siguiente repositorio oficial de MariaDB al archivo /etc/yum.repos.d/MariaDB.repo como se muestra.

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/rhel7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/rhel6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

9. Una vez creado el archivo repo, ahora podemos instalar MariaDB de la siguiente manera:

# yum install mariadb-server mariadb
OR
# yum install MariaDB-server MariaDB-client

10. Una vez completada la instalación de los paquetes MariaDB, inicie el daemon de la base de datos por el momento y habilítelo para que se inicie automáticamente en el siguiente arranque.

------------ On CentOS/RHEL 7 ------------ 
# systemctl start mariadb
# systemctl enable mariadb

------------ On CentOS/RHEL 6 ------------
# service mysqld start
# chkconfig mysqld on

11. A continuación, ejecute el script mysql_secure_installation para proteger la base de datos (configure la contraseña de root, desactive el inicio de sesión remoto, elimine la base de datos de prueba y elimine los usuarios anónimos) de la siguiente manera:

# mysql_secure_installation

12. A continuación, cree una base de datos y usuario de magento como se muestra.

# mysql -u root -p

## Creating New User for Magento Database ##
mysql> CREATE USER magento@localhost IDENTIFIED BY "your_password_here";

## Create New Database ##
mysql> create database magento;

## Grant Privileges to Database ##
mysql> GRANT ALL ON magento.* TO magento@localhost;

## FLUSH privileges ##
mysql> FLUSH PRIVILEGES;

## Exit ##
mysql> exit

Paso 4: Instalar Magento Community Edition

12. Ahora, vaya al sitio web oficial de Magento y cree una cuenta de usuario en caso de que sea un nuevo cliente (o simplemente inicie sesión si ya tiene una cuenta) y descargue la última versión de Magento Community Edition.

  1. http://www.magentocommerce.com/download

13. Después de descargar el archivo tar de Magento, extraiga el contenido en la raíz de documentos de Apache (/var/www/html ) de la siguiente manera:

# tar -zxvf Magento-CE-2.1.5-2017-02-20-05-36-16.tar.gz -C /var/www/html/

14. Ahora necesita establecer la propiedad de Apache en los archivos y carpetas.

# chown -R apache:apache /var/www/html/

15. Ahora abra su navegador y navegue a la siguiente url, se le presentará el asistente de instalación de Magento.

http://server_domain_name_or_IP/

16. A continuación, el asistente llevará una Comprobación de preparación para la versión PHP correcta, los permisos de archivo y la compatibilidad.

17. Introduce la configuración de la base de datos de magento.

18. Configuración del sitio web de Magento.

19. Personalice su tienda Magento configurando la zona horaria, la moneda y el idioma.

20. Crea una nueva cuenta de administrador para administrar tu tienda Magento.

21. Ahora haga clic en " Instalar ahora" para continuar con la instalación de Magento.

¡Eso es! ha instalado con éxito Magento en CentOS 7. Si encuentra algún error durante la instalación, no dude en pedir ayuda en los comentarios.