Comment installer Magento 2 sur Localhost

Publié: 2021-04-12

Table des matières

Mise à jour du 13 avril 2021 : Les utilisateurs peuvent rencontrer une erreur 404 Not Found lorsqu'ils tentent d'installer Magento 2.4.2. Suivez la solution suggérée dans l'article pour obtenir le meilleur résultat.

Cela fait longtemps que Magento n'a pas présenté sa version 2.0. Avec une interface utilisateur plus conviviale et des performances améliorées, il est probable que de nombreux utilisateurs existants de Magento 1 passeront tôt ou tard à Magento 2. Suivant la tendance, SimiCart a également lancé l'application mobile Magento 2 en décembre 2016.

Aujourd'hui, nous allons vous montrer comment installer Magento 2.4 localement sur Windows à l'aide du serveur XAMPP. Ce didacticiel s'adresse aux utilisateurs actuels de Magento 2 ainsi qu'aux utilisateurs complètement nouveaux sur Magento. Maintenant, commençons !

Partie 1 : Installer et configurer XAMPP

Étape 1 : Télécharger XAMPP

Lien de téléchargement : https://www.apachefriends.org/download.html

Nous vous recommandons d'installer XAMPP avec PHP version 7.4.x, qui est recommandé par Magento pour M2.4. Toujours selon Magento, vous pouvez installer Magento 2.4 avec PHP 7.3, mais il n'est ni testé ni recommandé.

Étape 2 : Installer XAMPP

Après avoir téléchargé XAMPP, double-cliquez sur le fichier pour l'installer sur votre ordinateur.

Cliquez sur Suivant .

étape 1 de la configuration de xampp

Laissez la sélection par défaut comme dans l'image. Cliquez sur Suivant .

étape 2 de la configuration de xampp

Choisissez votre dossier d'installation. L'emplacement par défaut est C:\xampp . Après cela, cliquez sur Suivant .

étape 3 de la configuration de xampp

Cliquez sur Suivant .

étape 4 de la configuration de xampp

Cliquez sur Suivant .

étape 5 de la configuration de xampp

Le programme d'installation va maintenant installer xampp sur votre ordinateur. S'il te plaît attend un moment.

installation de la configuration de xampp

Une fois l'installation terminée, vous verrez l'option "Voulez-vous démarrer le panneau de configuration maintenant ?". Gardez-le sélectionné. Cliquez sur Terminer pour quitter la configuration et accéder au Panneau de configuration XAMPP.

finition de la configuration de xampp

Étape 3 : Configurer XAMPP

Dans le panneau de configuration XAMPP, cliquez sur le bouton Config sur la ligne "Apache", puis cliquez sur " PHP (php.ini) ".

configurer php.ini


Dans le fichier php.ini , recherchez ces lignes et supprimez ; avant chaque ligne :

 ;extension=intl
;extension=savon
;extension=prises
;extension=sodium
;extension=xl

Développez memory_limit à 4G :

 memory_limit=4G

Une fois que vous avez terminé, enregistrez et fermez le fichier. Ensuite, cliquez sur le bouton Démarrer sur 2 lignes Apache et MySQL pour les démarrer. Ne quittez pas XAMPP après cette étape, laissez-le simplement s'exécuter.

Étape 4 : Configurer le fichier hosts

Ouvrez C:\Windows\System32\drivers\etc\hosts . Ajoutez la ligne suivante à la dernière ligne :

 127.0.0.1 www.localhost.com

Etape 5 : Créer une base de données

Parcourez l'URL http://localhost/phpmyadmin/ pour accéder à la page phpMyAdmin. Entrez un nom de base de données (« Magento2 », par exemple) et cliquez sur Créer .

phpmyadmin

Prenez note du nom de votre base de données, car vous voudrez y installer Magento plus tard (en utilisant l'utilisateur root ).

Partie 2 : Installer Elasticsearch

Depuis la version 2.4, Magento exige qu'Elasticsearch soit le moteur de recherche du catalogue.

Téléchargez Elasticsearch 7.6.0 : https://www.elastic.co/downloads/past-releases/elasticsearch-7-6-0 (Magento 2.4.x est testé avec Elasticsearch 7.6.x uniquement. Vous pouvez utiliser d'autres versions 7.x versions à votre discrétion, mais nous vous recommandons d'utiliser la version testée d'Elasticsearch.)

Extrayez le fichier .zip que vous venez de télécharger. Dans une fenêtre de terminal, cd au répertoire extrait et exécutez cette commande :

 .\bin\elasticsearch.bat

Une fois l'installation terminée, vous pouvez vérifier si Elasticsearch est correctement installé sur http://localhost:9200 , ce qui devrait vous donner quelque chose comme ceci :

 {
   "nom" : "Cp8oag6",
   "cluster_name" : "elasticsearch",
   "cluster_uuid" : "AT69_T_DTp-1qgIJlatQqA",
   "version" : {
     "nombre" : "7.6.0",
     "build_flavor" : "par défaut",
     "build_type" : "tar",
     "build_hash" : "f27399d",
     "build_date" : "2016-03-30T09:51:41.449Z",
     "build_snapshot" : faux,
     "lucene_version" : "8.7.0",
     "minimum_wire_compatibility_version": "1.2.3",
     "minimum_index_compatibility_version" : "1.2.3"
   },
   "tagline" : "Vous savez, pour la recherche"
 }

Partie 3 : Télécharger Magento à l'aide de Composer

Comme certains plugins de Magento 2 ne fonctionnent pas avec composer 2.x, vous voudrez utiliser une version stable de composer 1.x pour télécharger Magento. La meilleure façon de procéder serait d'installer Composer-Setup.exe.

Cette configuration installera la dernière version de composer et configurera les variables d'environnement PATH afin que vous puissiez facilement appeler composer à partir de n'importe quel répertoire. Une fois l'installation de composer terminée, vous devez rétrograder vers une version 1.x antérieure à l'aide de composer self-update --1 afin d'assurer la meilleure compatibilité.

Ensuite, cd vers C:\xampp\htdocs et exécutez la commande suivante :

 composer create-project --repository-url=https://repo.magento.com/magento/project-community-edition=2.4.2 <install-directory-name>

Cela devrait prendre un certain temps au compositeur pour télécharger et installer tous les modules nécessaires. Lorsque tout est terminé, voici ce que vous devriez voir :

compositeur télécharger Magento

Partie 4 : Installer Magento à l'aide de la ligne de commande

À partir de Magento 2.4, l'interface de ligne de commande est la méthode d'installation par défaut (et unique) pour Magento.

Lors de l'installation de Magento 2.4, vous pouvez rencontrer des erreurs. Pour éviter de telles erreurs, vous devez d'abord apporter quelques modifications aux fichiers Magento.

Pour éviter cette erreur :

erreur gd2

Trouvez la fonction validateURLScheme dans \vendor\magento\framework\Image\Adapter\Gd2.php et remplacez-la par :

 fonction privée validateURLScheme(string $filename) : bool
   {
       $allowed_schemes = ['ftp', 'ftps', 'http', 'https'] ;
       $url = parse_url($filename);
       if ($url && isset($url['scheme']) && !in_array($url['scheme'], $allowed_schemes) && !file_exists($filename)) {
           retourner faux ;
       }
       retourner vrai ;
 }

Ensuite, cd à votre répertoire Magento et exécutez cette commande :

 php bin/magento setup:install --base-url=http://localhost/magento24/ --db-host=localhost --db-name=votrenombdb --db-user=votrebuser --db-password=votremotdepasseb - -admin-firstname=admin --admin-lastname=admin [email protected] --admin-user=admin --admin-password=admin123 --language=en_US --currency=USD -- fuseau horaire=Amérique/Chicago --use-rewrites=1 --backend-frontname=admin --search-engine=elasticsearch7 --elasticsearch-host=localhost --elasticsearch-port=9200 

Descriptif :

  • base-url : le chemin dans lequel se trouve votre répertoire Magento, qui suit le format suivant : http[s]://<host or ip>/<your Magento install dir>/
  • db-host : le nom d'hôte ou l'adresse IP de votre hôte
  • db-name : remplacez-le par le nom de la base de données Magento que vous venez de créer
  • db-user : un utilisateur de base de données avec une autorisation complète. Nous utiliserons l'utilisateur root par défaut.
  • db-password : le mot de passe de l'utilisateur de votre base de données. Laissez-le vide si vous utilisez l'utilisateur de base de données 'root'
  • admin-firstname : votre prénom
  • admin-lastname : votre nom de famille
  • admin-email : votre adresse email
  • admin-user : le nom d'utilisateur que vous utiliserez pour vous connecter au panneau d'administration
  • admin-password : le mot de passe que vous utiliserez pour vous connecter au panneau d'administration
  • language : la langue que vous utiliserez dans votre panneau d'administration et votre vitrine. Utilisez un code de langue comme en_US .
  • admin-email : remplacez-le par votre adresse e-mail
  • currency : définissez la devise par défaut à utiliser dans votre vitrine. Entrez php bin/magento info:currency:list pour une liste des devises prises en charge avec leurs codes
  • timezone : modifiez le fuseau horaire dans lequel vous vous trouvez. Reportez-vous à la liste des fuseaux horaires pris en charge pour une meilleure idée de ce qu'il faut remplir.
  • url-rewrites : défini sur 1 pour activer les réécritures de serveur Web. Cela aidera au classement de votre site.
  • backend-frontname : définissez votre URL d'administration. L'omission de ce paramètre entraînera une URL générée aléatoirement pour votre chemin d'accès administrateur Magento (par exemple, admin_jkhgdfq)
  • search-engine : définissez la version d'Elasticsearch que vous souhaitez utiliser pour cette installation de Magento. La valeur par défaut est elasticsearch7
  • elasticsearch-host : le nom d'hôte ou l'adresse IP où Elasticsearch s'exécute. La valeur par défaut est localhost
  • elasticsearch-port : le numéro de port qu'Elasticsearch écoute. La valeur par défaut est 9200

Pour plus d'options configurables, veuillez vous référer au guide officiel de Magento.

Une fois l'installation réussie, vous verrez ce message :

 Vérification des autorisations des fichiers après l'installation…
 Pour des raisons de sécurité, supprimez les autorisations d'écriture de ces répertoires : 'C:/xampp/htdocs/magento24/app/etc'
 [Progrès : 1270 / 1270]
 [SUCCÈS] : Installation de Magento terminée.
 [SUCCÈS] : URI du panneau d'administration : /admin
Rien à importer.

Après cela, nous devrons faire quelques ajustements supplémentaires afin de faire fonctionner Magento avec Windows, comme ceci :

Dans app\etc\di.xml , remplacez Symlink par Copy

 <nom de type virtuel="developerMaterialization" type="Magento\Framework\App\View\Asset\MaterializationStrategy\Factory">
    <arguments>
        <argument name="strategiesList" xsi:type="array">
            <item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink</item>
            <item name="default" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Copy</item>
        </argument>
    </ arguments>
</typevirtuel>

Dans vendor\magento\framework\View\Element\Template\File\Validator.php , remplacez la ligne 138 par :

 $realPath = str_replace('\\', '/',$this->fileDriver->getRealPath($path));

Enfin, exécutez ces commandes :

 indexeur php bin/magento : réindexer
configuration de php bin/magento : mise à niveau
Configuration de php bin/magento : contenu statique : déploiement -f
php bin/cache magento : vider

Réglages supplémentaires pour Magento 2.4.2 et supérieur

À partir de Magento 2.4.2, il est désormais obligatoire de diffuser du contenu à partir du dossier /pub/ afin d'assurer une meilleure sécurité. C'est pourquoi des ajustements supplémentaires sont nécessaires pour que votre version de Magento 2.4.2 fonctionne correctement.

Étape 1 : Copiez les fichiers index.php et .htaccess de /pub/ vers votre dossier racine.

Étape 2 : Trouvez la ligne ci-dessous dans le index.php (dans le dossier racine) :

 nécessite __DIR__ . '/../app/bootstrap.php' ;

et le remplacer par

 nécessite __DIR__ . '/app/bootstrap.php';

Étape 3 : Allez dans la base de données Magento 2 que vous avez récemment créée (dans http://localhost/phpmyadmin ) et trouvez la table core_config_data à l'aide de cette requête SQL :

 SELECT * FROM core_config_data

Dans ce tableau, vous souhaiterez insérer ces lignes dans :

Chemin Évaluer
web/sécurisé/base_static_url http://localhost/magento24/pub/static/
web/non sécurisé/base_static_url http://localhost/magento24/pub/static/
web/sécurisé/base_media_url http://localhost/magento24/pub/media/
web/non sécurisé/base_media_url http://localhost/magento24/pub/media/
Remplacez magento24 par votre répertoire d'installation Magento
  • Insérez des lignes manuellement :
Insérer une nouvelle base de données de table
Chemin et nouvelle valeur de la nouvelle ligne de la base de données Localhost
  • Insérez des lignes avec des requêtes SQL :
 INSERT INTO `core_config_data` (`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) VALUES (NULL, 'default', '0', 'web/secure/base_static_url', 'http://localhost/magento24/pub/static/', current_timestamp());
INSERT INTO `core_config_data` (`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) VALUES (NULL, 'default', '0', 'web/unsecure/base_static_url', 'http://localhost/magento24/pub/static/', current_timestamp());
INSERT INTO `core_config_data` (`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) VALUES (NULL, 'default', '0', 'web/secure/base_media_url', 'http://localhost/magento24/pub/media/', horodatage_actuel());
INSERT INTO `core_config_data` (`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) VALUES (NULL, 'default', '0', 'web/unsecure/base_media_url', 'http://localhost/magento24/pub/media/', horodatage_actuel());

Vos lignes nouvellement ajoutées devraient ressembler à ceci :

Effacez maintenant le cache en utilisant :

 php bin/cache magento : vider

Et actualisez votre frontend. Vous devriez maintenant pouvoir voir une page vierge comme celle-ci lorsque vous accédez à votre interface via base-url configurée :

Magento 2 sans exemples de données

Vous pouvez maintenant accéder à votre interface Magento avec votre base-url configurée. Par exemple, avec notre installation Magento 2.4.2, nous accédons à notre nouveau site Magento à http://localhost/magento24/ , et à notre backend à http://localhost/magento24/admin .

*Remarque : si vous rencontrez cette erreur lorsque vous essayez de vous connecter à votre compte administrateur Magento : "Vous devez configurer l'autorisation à deux facteurs…"

Erreur d'authentification à deux facteurs du backend Magento

Essayez d'exécuter cette commande :

 module php bin/magento : désactiver Magento_TwoFactorAuth

Partie 5 : Importer des exemples de données (facultatif)

Exécutez cette commande pour importer des exemples de données :

 php bin/exemple de données magento : déploiement

Lorsque vous y êtes invité, entrez vos clés d'authentification Magento. Les clés publiques et privées sont créées et configurées dans votre compte Magento Marketplace.

Clés d'accès Magento

Une fois l'importation des données terminée, exécutez :

 configuration de php bin/magento : mise à niveau
Configuration de php bin/magento : contenu statique : déploiement -f
cache bin php/magento:nettoyer

Maintenant, actualisez l'interface et vous devriez pouvoir voir la boutique Magento par défaut avec le thème Luma et des exemples de données.

Thème Magento 2 Luma

C'est ça! Vous avez terminé l'installation de Magento 2 sur votre hôte local. Vous pouvez maintenant accéder à votre frontend/backend Magento 2 et commencer à explorer les fonctionnalités de Magento 2. Nous espérons que vous trouverez cet article utile !


Lectures complémentaires

10 meilleurs thèmes et modèles Magento 2 gratuits en 2022
10 meilleurs thèmes et modèles Magento 2 gratuits en 2022
Poiré 3 janvier 2022 8 minutes de lecture
12 meilleurs fournisseurs d'hébergement Magento 2
12 meilleurs fournisseurs d'hébergement Magento 2
Heiley Nguyen 4 juin 2021 9 minutes de lecture
10 meilleurs sites Web Magento 2
10 meilleurs sites Web Magento 2
Poiré 1 sept. 2020 9 minutes de lecture
10 meilleurs exemples de PWA Magento
10 meilleurs exemples de PWA Magento
Luc Vu 25 décembre 2020 11 minutes de lecture