Installation de Magento 2 Community Edition

Installation de Magento 2 Community Edition

La plateforme Magento met à disposition une solution de E-Commerce basée sur le Framework PHP Zend.

Elle offre de nombreuses fonctionnalités de base, mais peut également être étendue par un système de modules / thèmes…

Afin de connaître un peu mieux cette plateforme, j’ai voulu la tester sur mon poste.

Malheureusement, tout n’a pas fonctionné du premier coup.

Dans cet article, je vais vous lister les problèmes rencontrés et les solutions mises en place.

Installation de l’environnement

Pour faire fonctionner Magento, j’ai choisi d’installer :

En fonction de votre système d’exploitation, référez-vous à la documentation officielle pour l’installation et le démarrage.

Lorsque tout était prêt, j’ai téléchargé la version Community Edition 2.3.3 sur la page dédiée : https://magento.com/tech-resources/download

Il suffit de décompresser l’archive dans le répertoire adéquat du serveur Apache, puis, dans un navigateur, se connecter à http://localhost.

L’assistant d’installation vous guidera à chaque étape.

C’est alors que les problèmes ont commencé…

Extensions PHP manquantes

Ma première erreur a été d’oublier certaines extensions PHP.

En effet, dès le début de l’installation, une vérification des extensions PHP requises est faite et un rapport indique celles manquantes.

La liste complète des extensions est disponible ici : https://devdocs.magento.com/guides/v2.3/install-gde/system-requirements-tech.html#required-php-extensions

Il faut alors les installer et/ou les activer.

Ressources et administration indisponibles

Le second problème rencontré s’est produit à la fin de l’installation.

En voulant tester l’accès au site, les différentes ressources (styles, scripts…) n’étaient pas disponibles.

Pire pour l’administration, totalement inaccessible.

J’ai trouvé la solution sur le forum de Magento : Unable to access Magento admin page.

Pour corriger, il faut configurer le serveur Apache pour qu’il gère les fichiers .htaccess.

Dans le fichier /etc/apache2/httpd.conf, il faut trouver remplacer AllowOverride None par AllowOverride All.

Transfert d’images impossible

Lorsque l’installation est terminée, il était alors possible d’utiliser le site, de le configurer…

Un dernier problème est apparu : impossible de transférer des images dans l’administration.

Le message File validation failed apparaissait à chaque tentative.

Idem, la solution a été trouvée sur le forum de Magento : File validation failed

J’ai édité le fichier /var/www/localhost/htdocs/vendor/magento/framework/File/Uploader.php.

Il a fallu remplacer le code

/**
 * Return file mime type
 *
 * @return string
 */
private function _getMimeType()
{
  return $this->fileMime->getMimeType($this->_file['tmp_name']);
}

par

/**
 * Return file mime type
 *
 * @return string
 */
private function _getMimeType()
{
  return $this->_file['type'];
}

Conclusion

Finalement, les problèmes ont rapidement été corrigés en effectuant quelques recherches.

Les documentations, articles… sont nombreux.