Primeros pasos con magento2

Instale Magento 2 en Ubuntu 16.04

NOTAS: Vamos a instalar Magento 2 en Ubuntu Server 16.04 LTS nuevo con PHP 7.0, MySQL 5.6 y Apache 2.4.

1. Requisitos de configuración

  • Apache 2.2 o 2.4 con módulo mod_rewrite (o) Nginx >= 1.8.
  • PHP 5.5 o versión posterior. PHP 7.0 también es compatible.
  • Módulos PHP requeridos: PDO/MySQL, mbstring, mcrypt, mhash, SimpleXML, curl, xsl, gd, ImageMagick 6.3.7 (o posterior) o ambos, soap, intl, openssl.
  • Compositor y Git.

Puede usar el siguiente comando para instalar todos los requisitos anteriores desde el repositorio predeterminado (xenial).

sudo apt install apache2 git mysql-server
sudo apt install php libapache2-mod-php php-mysql php-dom php-simplexml php-gd
sudo apt install php-curl php-intl php-xsl php-mbstring php-zip php-xml php-mcrypt

Recomiendo instalar desde la página de inicio en lugar del repositorio de Ubuntu.

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

2. Configurar Magento 2

a) Descargar desde GitHub

El código de Magento2 está disponible en el repositorio de Github. Use el siguiente comando para clonar el repositorio de Magento2 en su sistema.

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

b) Descargar a través de Composer

Si no desea instalar Magento 2 clonando desde GitHub, está bien. También puede instalarlo a través de Composer.

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

Ahora instale todos los módulos requeridos para Magento2 usando composer. Espere a que se complete el proceso de instalación. (No necesitará esto si está instalando Magento 2 a través de Composer)

cd magento2/
composer install

Si el compositor solicita la autenticación como se muestra a continuación:

Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
- Installing magento/magento-composer-installer (0.1.6)
Downloading: 100%

- Installing braintree/braintree_php (2.39.0)
Downloading: 100%

- Installing justinrainbow/json-schema (1.6.1)
Downloading: 100%

- Installing symfony/console (v2.6.13)
Downloading: 100%

- Installing symfony/process (v2.8.4)
Downloading: 100%

- Installing symfony/finder (v2.8.4)
Downloading: 100%

- Installing seld/jsonlint (1.4.0)
Downloading: 100%

- Installing composer/composer (1.0.0-alpha10)
Downloading: 100%

- Installing magento/composer (1.0.2)
Authentication required (repo.magento.com):
Username: 
Password:

Inicie sesión aquí https://www.magentocommerce.com/ y use Clave pública como Nombre de usuario y Clave privada como Contraseña.

Claves de autenticación de Magento

Ahora configure los permisos en archivos y directorios.

sudo chmod -R 755 /var/www/magento2/
sudo chmod -R 777 /var/www/magento2/{pub,var}

3. Crear base de datos

Ahora inicie sesión en su servidor mysql con privilegios de administrador y cree una base de datos y un usuario para la nueva instalación de magento2.

mysql -u root -p

mysql> CREATE DATABASE magento;
mysql> GRANT ALL ON magento.* TO [email protected]'localhost' IDENTIFIED BY 'magento';
mysql> FLUSH PRIVILEGES;
mysql> quit

4. Configurar Apache VirtualHost y PHP

Cree un archivo de configuración de Apache para su sitio web Magento como /etc/apache2/sites-available/magento2.example.com.conf y agregue el siguiente contenido.

<VirtualHost *:80>
   DocumentRoot /var/www/magento2
   ServerName magento2.example.com
   
   <Directory /var/www/magento2>
       AllowOverride all
   </Directory>
</VirtualHost>

Ahora habilite virtualhost usando el siguiente comando.

sudo a2ensite magento2.example.com

También asegúrese de habilitar el módulo de reescritura de Apache, recomendado por Magento.

sudo a2enmod rewrite

Es posible que desee configurar PHP memory_limit para evitar que se agote la memoria, lo cual también recomienda Magento.

vi /etc/php.ini (find string by press / and type memory_limit)
memory_limit = 768M

Después de realizar todos los cambios anteriores, asegúrese de reiniciar el servidor Apache.

sudo systemctl restart apache2.service

5. Instalación de la aplicación Magento 2

a) A través del instalador web

Comencemos la instalación de Magento2 usando el instalador web. Acceda a su directorio magento2 en el navegador web como se muestra a continuación. Le redirigirá a la página de inicio de la instalación.

http://magento2.example.com/

b) A través de la línea de comandos

Instalar Magento 2 usando la línea de comando es un milagro, disminuyó el tiempo de instalación de 10 minutos a 1 minuto. Simplemente ejecute el comando de una línea.

cd /var/www/magento2
php bin/magento setup:install --base-url=http://magento2.example.com/ \
--db-host=localhost --db-name=magento \
--db-user=magento --db-password=magento \
--admin-firstname=Magento --admin-lastname=User [email protected] \
--admin-user=admin --admin-password=admin123 --language=en_US \
--currency=USD --timezone=America/Chicago --cleanup-database --use-rewrites=1

6. Programar Cronjobs de Magento2

Finalmente programe los cronjobs de fondo para su instalación de magento2. Estos cronjobs realizan algunas actividades como reindexación, boletines, actualización de tipos de cambio, envío automático de correos electrónicos y generación de mapas de sitios, etc. Para programar estos trabajos, edite el archivo crontab. www-data es un usuario de Apache 2, nunca debemos programar el cronjob de Magento 2 con privilegios de root.

crontab -u www-data -e

Aparece un editor de texto. (Es posible que primero deba elegir un editor de texto).

* * * * * /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.log

Instalación o configuración

Instrucciones detalladas sobre cómo configurar o instalar magento2.