GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer Magento avec Nginx sur Debian 10

Dans ce tutoriel, nous allons vous expliquer comment installer Magento 2.3.2 sur Debian 10 VPS avec Nginx.

Magento est une plateforme de commerce électronique open source écrite en langage PHP. C'est une solution puissante et l'une des plus populaires pour les boutiques en ligne auto-hébergées en raison de sa simplicité et de sa convivialité. Magento nous permet d'héberger un système de panier d'achat en ligne entièrement fonctionnel sans aucune connaissance en programmation. Magento nous permet également de compléter les fichiers de base et d'étendre les fonctionnalités de Magento en ajoutant de nouveaux modules. Magento est livré avec un riche ensemble de fonctionnalités, notamment la gestion de site Web, le référencement, la gestion des commandes, des outils de service client, des outils marketing, un système de paiement, ainsi que des systèmes de paiement et d'expédition. Commençons par l'installation.

Prérequis :

  • Un VPS Debian 10 avec un accès root activé ou un utilisateur avec des privilèges sudo.
  • 2 Go de RAM minimum :nous utiliserons notre forfait SSD 2 VPS.
  • PHP version 7.1.3+ et PHP 7.2.x.
  • Une adresse IP statique est configurée et attribuée à votre VPS.

Étape 1 :Connectez-vous via SSH et mettez à jour les packages

Connectez-vous à votre VPS Debian 10 avec SSH en tant qu'utilisateur root :

ssh root@IP_Address -p Port_number

Remplacez "root" par un utilisateur disposant des privilèges sudo si nécessaire. De plus, remplacez "IP_Address" et "Port_Number" par l'adresse IP et le numéro de port SSH respectifs de votre serveur.

Ensuite, assurons-nous que nous sommes sur Debian 10. Vous pouvez le faire comme ceci :

# lsb_release -a

Vous devriez obtenir ceci en sortie :

Distributor ID: Debian
Description:    Debian GNU/Linux 10 (buster)
Release:        10
Codename:       buster

Ensuite, exécutez la commande suivante pour vous assurer que tous les packages installés sur le serveur sont mis à jour vers leurs dernières versions disponibles :

# apt update && apt upgrade

Étape 2 :Installez Nginx, MariaDB et PHP

Installez Nginx, MariaDB et les autres packages requis avec la commande suivante :

apt-get install nginx mariadb-server git curl software-properties-common -y

Par défaut, Debian 10 est livré avec PHP version 7.3. Mais, Magento 2.3 ne prend pas en charge PHP 7.3. Nous devrons donc installer PHP 7.2 et les autres extensions requises.

Bien sûr, Magento publiera éventuellement une version qui fonctionne avec PHP 7.3. Si vous installez Magento avec une version prenant en charge PHP 7.3, vous devez ignorer cette étape.

Vous pouvez installer PHP 7.2 à partir du référentiel SURY. Pour ajouter le référentiel SURY, téléchargez d'abord la clé GPG avec la commande suivante :

wget https://packages.sury.org/php/apt.gpg
apt-key add apt.gpg

Ensuite, ajoutez le référentiel SURY à APT avec la commande suivante :

echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list

Ensuite, mettez à jour le référentiel et installez PHP 7.2 avec toutes les extensions requises avec les commandes suivantes :

apt-get update -y
apt-get install php7.2 php7.2-fpm php7.2-common php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-gd php7.2-xml php7.2-intl php7.2-mysql php7.2-cli php7.2-ldap php7.2-zip php7.2-curl php7.2-bcmath php7.2-imagick php7.2-xsl php7.2-intl -y

Ensuite, ouvrez php.ini fichier et modifiez les paramètres PHP par défaut :

nano /etc/php/7.2/fpm/php.ini

Modifiez les paramètres suivants :

memory_limit = 256M
upload_max_filesize = 128M
zlib.output_compression = On
max_execution_time = 15000
date.timezone = America/Chicago

Enregistrez et fermez le fichier.

Étape 3 :Créer une base de données Magento

Sécurisez votre installation MariaDB en utilisant mysql_secure_installation scénario. Ce script supprimera les utilisateurs anonymes, interdira la connexion root à distance et supprimera la base de données de test.

mysql_secure_installation

Vous devez répondre à toutes les questions comme indiqué ci-dessous :

Enter current password for root (enter for none): Press [Enter] since no password is set by default
Set root password? [Y/n]: N (Optional)
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

Une fois MariaDB sécurisée, connectez-vous au shell MariaDB :

mysql -u root -p

Fournissez votre mot de passe root MariaDB lorsque vous y êtes invité (si vous en avez défini un), puis créez une base de données et un utilisateur pour Magento :

MariaDB [(none)]> CREATE DATABASE magentodb;
MariaDB [(none)]> CREATE USER 'magentouser'@'localhost';
MariaDB [(none)]> SET PASSWORD FOR 'magentouser'@'localhost' = PASSWORD('Str0n9PasSworD');

Assurez-vous d'utiliser un mot de passe unique pour l'utilisateur de la base de données.

Ensuite, accordez tous les privilèges à la base de données Magento avec la commande suivante :

MariaDB [(none)]> GRANT ALL ON magentodb.* TO 'magentouser'@'localhost' IDENTIFIED BY 'Str0n9PasSworD' WITH GRANT OPTION;

Ensuite, videz les privilèges et quittez le shell MariaDB avec la commande suivante :

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Étape 4 :Téléchargez Magento

Au moment de la rédaction de cet article, la dernière version stable de Magento est la version 2.3.2.
Tout d'abord, rendez-vous sur le dépôt GitHub et téléchargez la dernière version de Magento avec la commande suivante :

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

Ensuite, vérifiez la dernière version de Magento avec la commande suivante :

cd magento2/
git checkout 2.3.2

Ensuite, nous devrons installer Composer pour installer tous les composants Magento nécessaires. Vous pouvez installer Composer en exécutant simplement la commande suivante :

curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer

Ensuite, installez toutes les dépendances PHP requises par Magento avec la commande suivante :

cd /var/www/html/magento2
composer install

Une fois toutes les dépendances installées sans erreur, changez le propriétaire du magento2 répertoire vers www-data avec la commande suivante :

chown -R www-data:www-data /var/www/html/magento2/

Étape 5 :Configurer Nginx pour Magento

Ensuite, nous devrons configurer Nginx pour le magasin Magento. Tout d'abord, créez un nouveau fichier de configuration d'hôte virtuel Nginx avec la commande suivante :

nano /etc/nginx/sites-available/magento.conf

Ajoutez ensuite le contenu suivant :

upstream fastcgi_backend {
         server  unix:/run/php/php7.2-fpm.sock;                  
}

server {
    listen 80;
    index  index.php index.html index.htm;
    server_name domain-name.com;

    set $MAGE_ROOT /var/www/html/magento2;
    set $MAGE_MODE developer;
    include /var/www/html/magento2/nginx.conf.sample;
}

Assurez-vous de remplacer domain-name.com par votre nom de domaine enregistré.

Enregistrez et fermez le fichier. Ensuite, vérifiez Nginx pour toute erreur de syntaxe :

nginx -t

Vous devriez obtenir le résultat suivant :

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Ensuite, activez l'hôte virtuel Nginx avec la commande suivante :

ln -s /etc/nginx/sites-available/magento.conf /etc/nginx/sites-enabled/

Enfin, redémarrez Nginx et le service PHP-FPM pour appliquer toutes les modifications de configuration :

systemctl restart nginx
systemctl restart php7.2-fpm

Étape 6 :Accéder à l'assistant d'installation Web de Magento

Maintenant, ouvrez votre navigateur Web et ouvrez l'URL http://domain-name.com . Vous devriez voir l'assistant de configuration de Magento comme indiqué ci-dessous :

Cliquez sur le bouton Accepter et configurer Magento. Vous devriez voir l'assistant de vérification de l'état de préparation de Magento :

Maintenant, cliquez sur Démarrer la vérification de l'état de préparation pour vérifier la version correcte de PHP, les extensions PHP et les autorisations de fichiers. Une fois la vérification de l'état de préparation terminée avec succès, vous devriez voir la page suivante :

Cliquez ensuite sur le bouton Suivant. Vous devriez voir la page de configuration de la base de données :

Fournissez les détails de la base de données Magento que nous avons définis précédemment, puis cliquez sur le bouton Suivant. Vous devriez voir l'assistant de configuration Web de Magento :

Indiquez l'adresse de votre magasin et l'adresse de l'administrateur Magento. Ensuite, cliquez sur le bouton Suivant. Vous devriez voir la page suivante :

Maintenant, sélectionnez votre fuseau horaire, votre devise, votre langue et cliquez sur le bouton Suivant. Vous devriez voir l'assistant de configuration de l'administrateur Magento :

Indiquez votre nom d'utilisateur, votre mot de passe et votre adresse e-mail d'administrateur, puis cliquez sur le bouton Suivant. Vous devriez voir la page suivante :

Enfin, cliquez sur le bouton Installer maintenant pour lancer l'installation de Magento. Une fois l'installation terminée avec succès, vous devriez voir la page suivante :

Une fois Magento installé avec succès, cliquez sur le bouton Launch Magento Admin, vous serez redirigé vers l'interface d'administration de Magento :

Fournissez votre nom d'utilisateur et votre mot de passe Magento - cliquez sur le bouton Se connecter. Vous serez redirigé vers le tableau de bord Magento dans l'écran suivant :

Toutes nos félicitations! L'installation est maintenant terminée. Cependant, il reste encore une chose à faire.

Étape 7 : Configurer la tâche Cron pour Magento

Il existe de nombreuses configurations et fonctionnalités dans Magento 2 qui nécessitent une tâche cron pour le bon fonctionnement de votre Magento. La liste des tâches gérées par cron dans Magento 2 sont :les newsletters, la réindexation, la mise à jour des taux de change, les alertes/notifications, les règles de prix du catalogue et bien d'autres.

Pour créer la crontab Magento, exécutez la commande suivante avec le www-data utilisateur comme indiqué ci-dessous :

cd /var/www/html/magento2
sudo -u www-data php bin/magento cron:install

Vous pouvez maintenant voir la tâche cron installée avec la commande suivante :

crontab -u www-data -l

Vous devriez obtenir le résultat suivant :

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

C'est ça. Vous avez installé et configuré avec succès Magento sur un VPS Debian 10 avec le serveur web Nginx. Vous pouvez désormais héberger votre propre boutique en ligne en quelques minutes et commencer à personnaliser votre boutique selon vos besoins.

Bien sûr, vous n'avez pas besoin de savoir comment installer Magento avec Nginx sur Debian 10 si vous avez un plan d'hébergement VPS Magento avec nous. Vous pouvez simplement demander à nos administrateurs d'installer Magento sur Debian 10 pour vous. Ils sont disponibles 24h/24 et 7j/7 et pourront vous aider à installer Magento sur Debian 10.

PS . Si vous avez aimé lire cet article de blog sur comment installer Magento avec Nginx sur Debian 10 , ou si vous l'avez trouvé utile, n'hésitez pas à le partager sur les réseaux sociaux en utilisant les raccourcis ci-dessous, ou simplement laisser un commentaire. Merci.


Debian
  1. Comment installer Phorum avec Nginx sur Debian 9

  2. Comment installer PHP sur Debian 10 (Buster)

  3. Comment installer PHP sur Debian 10 Buster

  4. Comment installer Magento avec Nginx sur Debian 10

  5. Comment installer WonderCMS avec Nginx sur Debian 11

Comment installer Shopware avec NGINX et Lets encrypt sur Debian 9

Comment installer Bludit CMS avec NGINX sur Debian 9

Comment installer Grav CMS avec Nginx sur Debian 9

Comment installer Nginx avec PHP-FPM sur Debian 10

Comment installer phpMyAdmin avec Nginx sur Debian 11

Comment installer Nginx et PHP sur Debian 10