GNU/Linux >> Tutoriels Linux >  >> Cent OS

Installer Magento 2 sur CentOS 7

Magento est une plate-forme de commerce électronique d'entreprise de premier plan basée sur une technologie open source combinant des fonctionnalités puissantes avec une flexibilité et une interface conviviale.

Avec des fonctionnalités telles que des expériences d'achat engageantes, une architecture modulaire flexible et une évolutivité et des performances de niveau entreprise, Magento est une plate-forme de choix pour la plupart des marchands en ligne.

Ceci est le premier article de la série Comment installer et configurer Magento 2 sur CentOS 7. Dans ce tutoriel, nous vous guiderons à travers les étapes d'installation de Magento 2 sur votre machine CentOS 7.

Prérequis #

Comme prérequis pour suivre ce tutoriel, vous aurez besoin de :

  • Serveur CentOS 7, selon la configuration système officielle de Magento 2, vous avez besoin d'au moins 2 Go de RAM. Si vous utilisez un serveur avec moins de 2 Go de RAM, vous devez créer un fichier d'échange.
  • Connecté en tant qu'utilisateur avec des privilèges sudo.
  • Un nom de domaine pointant vers l'adresse IP de votre serveur public. Dans ce tutoriel, nous utiliserons example.com .
  • Installation et configuration de Nginx, MySQL et PHP 7.1. Si ce n'est pas le cas, consultez notre guide LEMP sur CentOS 7.
  • Un certificat SSL valide. Si vous n'en avez pas, vous pouvez créer un certificat SSL Let's Encrypt gratuit en suivant Secure Nginx avec Let's Encrypt sur CentOS 7.

Paire de clés d'accès Magento #

Nous devons générer des clés d'accès pour authentifier l'accès au référentiel de code Magento 2 et aux extensions et thèmes tiers.

Si vous n'avez pas de compte Magento Marketplace, vous pouvez en créer un ici. Une fois le compte créé, veuillez consulter ces instructions pour savoir comment générer un nouveau jeu de clés d'accès.

Créer la base de données MySQL #

Magento 2 est compatible avec MySQL 5.6 et 5.7, MariaDB 10.x et Percona 5.7. Si MySQL ou MariaDB n'est pas installé sur votre serveur, vous pouvez consulter ce guide.

Connectez-vous au shell MySQL :

mysql -u root -p

Et exécutez les commandes suivantes pour créer une nouvelle base de données et un nouvel utilisateur et accordez des privilèges à cet utilisateur sur la base de données nouvellement créée :

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

Installer les extensions PHP #

Nous supposons que vous avez déjà activé le référentiel PHP 7.1 Remi à l'aide de notre guide.

Installez toutes les extensions PHP requises avec la commande suivante :

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

Une fois l'installation terminée, définissez les options PHP requises et recommandées en modifiant le php.ini fichier avec sed :

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

Installer le compositeur #

Composer est un gestionnaire de dépendances pour PHP qui est utilisé pour installer, mettre à jour et gérer les bibliothèques.

Pour installer composerglobally, téléchargez le programme d'installation de Composer avec curl et déplacez le fichier vers /usr/local/bin répertoire :

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

Créer un nouveau numéro d'utilisateur système

Créez un nouvel utilisateur et groupe, qui exécutera notre installation Magento, pour plus de simplicité nous nommerons notre utilisateur magento :

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

Ajouter le nginx utilisateur au magento groupand changer le /opt/magento autorisations de répertoire pour que le Nginx puisse accéder à notre installation Magento :

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

Configurer PHP FPM #

Ensuite, nous devons configurer PHP et créer un pool FPM pour notre magento utilisateur.

Ouvrez votre éditeur de texte et créez le fichier suivant :

/etc/php-fpm.d/magento.conf
[magento]
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 = /

Enregistrez le fichier et redémarrez le service PHP FPM pour que les modifications prennent effet :

sudo systemctl restart php-fpm

Installer Magento #

Il existe plusieurs façons d'installer Magento. Évitez d'installer Magento à partir du référentiel Github car cette version est destinée au développement et non aux installations de production. Dans ce didacticiel, nous allons installer Magento à partir de leurs référentiels à l'aide de composer.

Passez à l'utilisateurmagento :

sudo su - magento

Démarrez l'installation en téléchargeant les fichiers magento sur /opt/magento/public_html répertoire :

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

Lors de la création du projet, le compositeur vous demandera de saisir les clés d'accès, de copier les clés de votre compte marketplace Magento et de les stocker dans le auth.json fichier, ainsi plus tard lors de la mise à jour de votre installation, vous n'aurez pas à ajouter à nouveau les mêmes clés.

    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 ? [Yn]

Une fois le projet créé, nous pouvons commencer l'installation. Nous pouvons installer Magento soit en utilisant la ligne de commande, soit en utilisant l'assistant de configuration Web. Dans ce tutoriel, nous allons installer Magento en utilisant la ligne de commande.

Nous utiliserons les options suivantes pour installer notre boutique Magento :

  • Les URL sécurisées de base et de base sont définies sur https://example.com , remplacez-le par votre domaine.
  • Administrateur Magento :
    • John Doe comme prénom et nom.
    • [email protected] par e-mail.
    • John comme nom d'utilisateur et j0hnP4ssvv0rD comme mot de passe.
  • Nom de la base de données magento , nom d'utilisateur magento , mot de passe P4ssvv0rD , et le serveur de base de données se trouve sur le même hôte que le serveur Web.
  • en_US , anglais américain comme langue par défaut.
  • USD dollars comme devise par défaut.
  • America/Chicago comme fuseau horaire.
Vous pouvez trouver toutes les options d'installation ici.

Passez à Magento ~/public_html répertoire :

cd ~/public_html

Exécutez la commande suivante pour démarrer l'installation :

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"
N'oubliez pas de changer le mot de passe (j0hnP4ssvv0rD ) à quelque chose de plus sûr.

Si l'installation réussit, un message contenant l'URI du tableau de bord d'administration de Magento s'affichera.

[Progress: 485 / 485]
[SUCCESS]: Magento installation complete.
[SUCCESS]: Magento Admin URI: /admin_1csalp
Nothing to import.

Créer le crontab Magento #

Magento utilise des tâches cron pour planifier des tâches telles que la réindexation, les notifications, les plans de site, les e-mails, etc.

Pour créer la crontab Magento, exécutez la commande suivante en tant que magento utilisateur :

php ~/public_html/bin/magento cron:install

Nous pouvons vérifier que la crontab est installée en exécutant :

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

Configurer Nginx #

Si vous avez suivi notre guide LEMP sur CentOS 7, Nginx devrait déjà être installé sur votre machine. Il ne nous reste plus qu'à créer un nouveau bloc serveur pour notre installation Magento. Nous allons inclure la configuration Nginx par défaut livrée avec magento :

/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;
}

Rechargez le service Nginx pour que les modifications prennent effet :

sudo systemctl reload nginx

Enfin, vous devriez pouvoir vous connecter à votre installation Magento sur https://example.com/admin_1csalp en utilisant l'utilisateur admin que vous avez spécifié lors de l'exécution du programme d'installation de Magento.


Cent OS
  1. Comment installer Vagrant sur CentOS 7

  2. Comment installer Gitea sur CentOS 8

  3. Comment installer Memcached sur CentOS 8

  4. Comment installer Nginx sur CentOS 7

  5. Installer Jenkins sur CentOS 8

Installez Odoo 13 sur CentOS 8

Comment installer Magento 2.1 sur CentOS 7

Comment installer Magento sur CentOS 8

Comment installer Zoom sur CentOS 8

Comment installer Nethogs sur CentOS

Comment installer Magento sur CentOS 6