E-commerce · 10 min read · Nov 26, 2025

Installation de la plateforme e-commerce Magento avec Apache2 et Let's Encrypt sur Ubuntu 20.04

Magento est une application web e-commerce gratuite et open-source qui vous permet de créer une boutique e-commerce entièrement fonctionnelle en quelques minutes. Elle est écrite en PHP et combine des fonctionnalités puissantes avec flexibilité et une interface conviviale. C’est l’une des solutions les plus populaires pour les boutiques en ligne auto-hébergées en raison de sa simplicité et de son puissant panneau d’administration. Elle est livrée avec un ensemble riche de fonctionnalités, y compris la gestion de site, le SEO, la gestion de catalogue, la navigation dans les produits et catalogues, la gestion des commandes, le passage à la caisse, les promotions et les outils de conversion, et bien plus encore.

Dans ce tutoriel, nous allons vous montrer comment installer la plateforme e-commerce Magento avec Apache et SSL Let’s Encrypt sur Ubuntu 20.04.

Prérequis

  • Un serveur exécutant Ubuntu 20.04 avec 4 Go de RAM.
  • Un nom de domaine valide pointé vers votre serveur.
  • Un mot de passe root configuré sur votre serveur.

Installer le serveur LAMP

Magento fonctionne sur le serveur web, écrit en PHP, et utilise MariaDB comme base de données. Vous devrez donc installer une pile LAMP sur votre serveur.

Tout d’abord, installez le serveur web Apache et le serveur MariaDB avec la commande suivante :

apt-get install apache2 mariadb-server mariadb-client -y

La dernière version de Magento n’est compatible qu’avec PHP 7.1.3+ et 7.2.x. Vous devrez donc installer les versions PHP prises en charge avec les extensions requises sur votre serveur.

Par défaut, Ubuntu 20.04 est livré avec la version PHP 7.4. Vous devrez donc ajouter le PPA Ondrej dans votre système afin d’installer d’autres versions de PHP.

Vous pouvez ajouter le PPA PHP Ondrej avec la commande suivante :

apt-get install software-properties-common -y  
add-apt-repository ppa:ondrej/php

Ensuite, mettez à jour le dépôt et installez PHP avec les autres extensions requises en utilisant la commande suivante :

apt-get install php7.2 libapache2-mod-php7.2 php7.2-bcmath 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 wget curl unzip -y

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

Configurer la base de données MariaDB

Par défaut, MariaDB n’est pas sécurisé. Il est donc judicieux de sécuriser et de définir le mot de passe root de MariaDB. Vous pouvez le faire avec la commande suivante :

mysql_secure_installation

Répondez à toutes les questions comme indiqué ci-dessous :

Entrez le mot de passe actuel pour root (appuyez sur Entrée pour aucun) : 
Définir le mot de passe root ? [Y/n] Y
Nouveau mot de passe : 
Ressaisissez le nouveau mot de passe : 
Supprimer les utilisateurs anonymes ? [Y/n] Y
Interdire la connexion root à distance ? [Y/n] Y
Supprimer la base de données de test et l'accès à celle-ci ? [Y/n] Y
Recharger les tables de privilèges maintenant ? [Y/n] Y

Une fois que MariaDB est sécurisé, connectez-vous à l’interface de commande de MariaDB :

mysql -u root -p

Fournissez votre mot de passe root MariaDB, puis créez une base de données et un utilisateur pour Magento :

MariaDB [(none)]> CREATE DATABASE magentodb;  
MariaDB [(none)]> CREATE USER 'magento'@'localhost' IDENTIFIED BY 'password';

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

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

Ensuite, videz les privilèges et quittez l’interface de commande de MariaDB en utilisant la commande suivante :

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

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

Télécharger Magento

Au moment de la rédaction de ce tutoriel, la dernière version de Magento est 2.3.5. Vous pouvez la télécharger depuis la page de téléchargement officielle de Magento.

Une fois téléchargé, extrayez le fichier téléchargé dans le répertoire racine web d’Apache avec la commande suivante :

mkdir /var/www/html/magento  
tar -xvjf magento-ce* -C /var/www/html/magento/

Ensuite, donnez les droits de propriété et les permissions appropriées au répertoire magento :

chown -R www-data:www-data /var/www/html/magento/  
chmod -R 755 /var/www/html/magento/

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

Configurer Apache pour Magento

Ensuite, créez un nouveau fichier de configuration de hôte virtuel Apache pour servir le site web Magento.

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

Ajoutez les lignes suivantes :


     ServerAdmin [email protected]
     DocumentRoot /var/www/html/magento/
     ServerName magento.linuxbuz.com
     
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
     
     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined

Enregistrez et fermez le fichier, puis activez l’hôte virtuel Magento et le module de réécriture Apache avec la commande suivante :

a2ensite magento.conf  
a2enmod rewrite

Enfin, redémarrez le service Apache pour appliquer les modifications :

systemctl restart apache2

À ce stade, le serveur web Apache est configuré pour servir Magento.

Sécuriser Magento avec SSL Let’s Encrypt

Il est toujours judicieux de sécuriser votre site web avec le SSL gratuit de Let’s Encrypt. Tout d’abord, installez le client Certbot sur votre serveur pour télécharger et configurer le SSL Let’s Encrypt pour votre site web.

apt-get install certbot python3-certbot-apache -y

Une fois que Certbot est installé, exécutez la commande suivante pour télécharger et installer le SSL Let’s Encrypt pour votre site web :

certbot --apache -d magento.linuxbuz.com

On vous demandera de fournir votre email valide et d’accepter les conditions de service comme indiqué ci-dessous :

Enregistrement du journal de débogage dans /var/log/letsencrypt/letsencrypt.log
Plugins sélectionnés : Authenticator apache, Installer apache
Entrez l'adresse e-mail (utilisée pour les renouvellements urgents et les avis de sécurité) (Entrez 'c' pour annuler) : [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Veuillez lire les conditions de service à l'adresse https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. Vous devez accepter pour vous inscrire auprès du serveur ACME à https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)ccepter/(C)annuler : A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Seriez-vous disposé à partager votre adresse e-mail avec la Electronic Frontier Foundation, un partenaire fondateur du projet Let's Encrypt et l'organisation à but non lucratif qui développe Certbot ? Nous aimerions vous envoyer des e-mails sur notre travail de cryptage du web, des nouvelles de l'EFF, des campagnes et des moyens de soutenir la liberté numérique.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(O)ui/(N)on : Y

Obtention d'un nouveau certificat
Réalisation des défis suivants :
http-01 challenge pour magento.linuxbuz.com
Attente de vérification...
Nettoyage des défis
Création d'un vhost SSL à /etc/apache2/sites-available/magento-le-ssl.conf
Module socache_shmcb d'Apache activé
Module ssl d'Apache activé
Déploiement du certificat sur le VirtualHost /etc/apache2/sites-available/magento-le-ssl.conf
Activation du site disponible : /etc/apache2/sites-available/magento-le-ssl.conf

Ensuite, on vous demandera de choisir si vous souhaitez ou non rediriger le trafic HTTP vers HTTPS :

Veuillez choisir si vous souhaitez ou non rediriger le trafic HTTP vers HTTPS, en supprimant l'accès HTTP.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1 : Pas de redirection - Ne faites aucune autre modification à la configuration du serveur web.
2 : Rediriger - Faire en sorte que toutes les demandes soient redirigées vers un accès HTTPS sécurisé. Choisissez cela pour les nouveaux sites, ou si vous êtes sûr que votre site fonctionne sur HTTPS. Vous pouvez annuler ce changement en modifiant la configuration de votre serveur web.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Sélectionnez le numéro approprié [1-2] puis [Entrée] (appuyez sur 'c' pour annuler) : 2

Tapez 2 et appuyez sur Entrée pour terminer l’installation.

Redirection du vhost dans /etc/apache2/sites-enabled/magento.conf vers le vhost ssl dans /etc/apache2/sites-available/magento-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Félicitations ! Vous avez activé avec succès https://magento.linuxbuz.com

Vous devriez tester votre configuration à :
https://www.ssllabs.com/ssltest/analyze.html?d=magento.linuxbuz.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

NOTES IMPORTANTES :
 - Félicitations ! Votre certificat et votre chaîne ont été enregistrés à :
   /etc/letsencrypt/live/magento.linuxbuz.com/fullchain.pem
   Votre fichier clé a été enregistré à :
   /etc/letsencrypt/live/magento.linuxbuz.com/privkey.pem
   Votre certificat expirera le 2020-08-11. Pour obtenir une nouvelle version ou une version modifiée de ce certificat à l'avenir, exécutez simplement à nouveau certbot avec l'option "certonly". Pour renouveler *tous* vos certificats de manière non interactive, exécutez "certbot renew"
 - Vos informations d'identification de compte ont été enregistrées dans votre répertoire de configuration Certbot à /etc/letsencrypt. Vous devriez faire une sauvegarde sécurisée de ce dossier maintenant. Ce répertoire de configuration contiendra également des certificats et des clés privées obtenus par Certbot, donc faire des sauvegardes régulières de ce dossier est idéal.
 - Si vous aimez Certbot, veuillez envisager de soutenir notre travail en :

   Faisant un don à ISRG / Let's Encrypt :   https://letsencrypt.org/donate
   Faisant un don à l'EFF :                    https://eff.org/donate-le

Accéder au site web Magento

À ce stade, votre site web Magento est sécurisé avec SSL Let’s Encrypt.

Maintenant, ouvrez votre navigateur web et tapez l’URL https://magento.linuxbuz.com. Vous serez redirigé vers l’assistant d’installation basé sur le web de Magento :

Configuration de Magento

Cliquez sur le bouton Accepter et Configurer Magento. Vous devriez voir l’écran de préparation de Magento :

Vérification de la préparation

Cliquez sur le bouton Démarrer la vérification de la préparation. Une fois la vérification de la préparation terminée, vous devriez voir l’écran suivant :

Tous les prérequis sont remplis

Cliquez sur le bouton Suivant. Vous devriez voir l’écran de configuration de la base de données :

Configurer la base de données

Fournissez le nom de votre base de données Magento, le nom d’utilisateur de la base de données, le mot de passe et cliquez sur le bouton Suivant. Vous devriez voir l’assistant de configuration web de Magento :

configuration web

Fournissez l’adresse de votre magasin Magento et de l’administrateur, activez HTTPS et cliquez sur le bouton Suivant. Vous devriez voir l’écran de personnalisation du magasin :

Paramètres personnalisés du magasin

Définissez votre fuseau horaire préféré, votre devise, votre langue et cliquez sur le bouton Suivant. Vous devriez voir l’écran de création de l’utilisateur administrateur :

Créer un utilisateur administrateur

Fournissez votre nom d’utilisateur administrateur, votre e-mail, votre mot de passe et cliquez sur le bouton Suivant. Vous devriez voir l’écran suivant :

Installer maintenant

Cliquez sur le bouton Installer Maintenant pour commencer l’installation. Une fois l’installation terminée avec succès, vous devriez voir l’écran suivant :

Installation réussie

Cliquez sur l’adresse administrateur de Magento. Vous devriez voir la page d’administration de Magento :

Connexion Magento

Fournissez votre nom d’utilisateur administrateur Magento, votre mot de passe et cliquez sur le bouton Se connecter. Vous devriez voir le tableau de bord de Magento à l’écran suivant :

Tableau de bord Magento

Vous pouvez également accéder à la boutique Magento en utilisant l’URL https://magento.linuxbuz.com. Vous devriez voir l’écran suivant :

Page de démarrage Magento

Conclusion

Félicitations ! Vous avez installé avec succès Magento avec SSL Let’s Encrypt sur Ubuntu 20.04. Vous pouvez maintenant déployer votre propre boutique en ligne facilement. N’hésitez pas à me poser des questions si vous en avez.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.