Problèmes Magento : résoudre l'écran blanc et les erreurs 500
Les problèmes Magento tels que l'écran blanc et les erreurs 500 peuvent être frustrants. Dans ce guide, nous vous aidons à résoudre les problèmes les plus courants.
Premiers pas en cas de problèmes
Avant de commencer le dépannage :
- Vérifiez les journaux d'erreurs
- Activez le mode développement (temporairement)
- Vérifiez les modifications récentes - qu'est-ce qui a changé ?
- Faites une sauvegarde avant de modifier quoi que ce soit
Activer le mode développeur
Pour voir des messages d'erreur détaillés :
bin/magento deploy:mode:set developer
Remarque: Désactivez cela après le dépannage pour de meilleures performances.
Résoudre l'écran blanc
Un écran blanc (White Screen of Death) signifie une erreur PHP fatale.
Étape 1 : Vérifiez les journaux d'erreurs
# Journal des erreurs Magento
tail -100 var/log/exception.log
tail -100 var/log/system.log
# Journal des erreurs PHP
tail -100 /chemin/vers/logs/error.log
# Journal des erreurs Apache
tail -100 /var/log/apache2/error.log
Étape 2 : Afficher les erreurs PHP
Ajoutez temporairement à index.php :
ini_set('display_errors', 1);
error_reporting(E_ALL);
Étape 3 : Causes courantes
Limite de mémoire
# Vérifiez la limite actuelle
php -i | grep memory_limit
# Augmentez via .htaccess
php_value memory_limit 2G
Cache corrompu
rm -rf var/cache/*
rm -rf var/page_cache/*
rm -rf generated/*
Permissions
find var generated pub/static pub/media -type d -exec chmod 755 {} \;
find var generated pub/static pub/media -type f -exec chmod 644 {} \;
chmod u+x bin/magento
Erreur 500 Internal Server
Étape 1 : Vérifiez .htaccess
Un .htaccess corrompu est une cause fréquente :
- Renommez `.htaccess` en `.htaccess_backup`
- Téléchargez un nouveau `.htaccess` depuis Magento GitHub
- Testez le site web
Étape 2 : Version PHP
Vérifiez si la version PHP est compatible :
- Magento 2.4.6+ : PHP 8.1 ou 8.2
- Magento 2.4.4-5 : PHP 8.1
Étape 3 : Connexion à la base de données
Testez la connexion à la base de données :
- Vérifiez les identifiants dans `app/etc/env.php`
- Testez la connexion via phpMyAdmin
- Vérifiez si le serveur de base de données fonctionne
Étape 4 : Compilation DI
rm -rf generated/*
bin/magento setup:di:compile
Problèmes de cache
Vider tout le cache
bin/magento cache:clean
bin/magento cache:flush
Cache spécifique
# Seulement le cache de configuration
bin/magento cache:clean config
Seulement le cache de page complète
bin/magento cache:clean full_page
Suppression manuelle du cache
rm -rf var/cache/*
rm -rf var/page_cache/*
rm -rf var/view_preprocessed/*
rm -rf pub/static/frontend/*
rm -rf pub/static/adminhtml/*
rm -rf generated/*
Problèmes d'index
Vérifier l'état de l'index
bin/magento indexer:status
Reconstruire tous les index
bin/magento indexer:reindex
Index spécifique
bin/magento indexer:reindex catalog_product_price
bin/magento indexer:reindex catalogsearch_fulltext
Problèmes du panneau d'administration
L'administration ne se charge pas
- Vérifiez l'URL de l'administration
bin/magento info:adminuri - Réinitialisez l'URL de l'administration
bin/magento config:set admin/url/use_custom 0 bin/magento config:set admin/url/use_custom_path 0 - Videz le cache
bin/magento cache:clean
Impossible de se connecter
- Déverrouillez le compte et créez si nécessaire un nouveau compte administrateur. Magento ne propose pas de commande CLI pour modifier le mot de passe d'un compte existant :
Connectez-vous avec le nouveau compte et réinitialisez le mot de passe de l'ancien compte via System > Permissions > All Users.bin/magento admin:user:unlock adminusername bin/magento admin:user:create --admin-user=nouveladmin --admin-password='ChoisissezUnMotDePasseFort1' --admin-email=vous@example.fr --admin-firstname=Prenom --admin-lastname=Nom - Vérifiez l'état du compte dans la base de données (table admin_user)
Problèmes d'extension
Trouver l'extension problématique
# Désactivez toutes les extensions
bin/magento module:disable --all
Réactivez les modules de base
bin/magento module:enable Magento_Backend Magento_Store ...
Testez le site web
Activez les extensions une par une
bin/magento module:enable Vendor_Module
Suppression d'urgence de l'extension
Via la base de données si CLI ne fonctionne pas :
- Allez dans phpMyAdmin
- Trouvez la table `setup_module`
- Supprimez l'entrée de module problématique
- Videz manuellement var/cache
Problèmes de base de données
Message "Please upgrade your database"
Ce message apparaît lorsque le code est plus récent que la base de données, par exemple après l'installation ou la mise à jour d'une extension sans setup:upgrade :
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy -f fr_FR
bin/magento cache:flush
Réparer la base de données
# Via Magento CLI
bin/magento setup:db:status
bin/magento setup:db-schema:upgrade
bin/magento setup:db-data:upgrade
Réparer les tables via phpMyAdmin
- Sélectionnez toutes les tables
- Choisissez "Réparer la table" dans le menu déroulant
- Exécutez
Mode maintenance
Mettez votre boutique en mode maintenance pendant que vous résolvez un problème ou effectuez des mises à jour, afin que les visiteurs ne voient pas de messages d'erreur ou une boutique à moitié fonctionnelle :
# Activer
bin/magento maintenance:enable
# Vérifier le statut
bin/magento maintenance:status
# Désactiver
bin/magento maintenance:disable
Avec bin/magento maintenance:enable --ip=<votre adresse IP>, vous gardez vous-même l'accès à la boutique pendant la maintenance.
Conseils de débogage
Activer le profiler
bin/magento dev:profiler:enable
Vérifiez ensuite la sortie du Profiler en bas de la page.
Journalisation des requêtes
Dans `app/etc/env.php` :
'db' => [
'connection' => [
'default' => [
'profiler' => [
'class' => '\Magento\Framework\DB\Profiler',
'enabled' => true
]
]
]
]
Console du navigateur
Pas d'erreur PHP, mais une partie de la page ne fonctionne pas (les boutons ne réagissent pas, le checkout ne se charge pas) ? Ouvrez la console de votre navigateur (F12) et vérifiez s'il y a des erreurs JavaScript.
XDebug
Configurez XDebug pour un débogage étape par étape dans votre IDE.
Quand activer le support
Contactez le support si :
- Vous ne pouvez pas trouver la cause
- Il semble s'agir d'un problème au niveau du serveur
- Vous avez besoin de modifications nécessitant des droits administratifs
- Le problème persiste
Articles connexes
- Voir les journaux d'erreurs dans DirectAdmin
- Exigences système Magento
- Faire une sauvegarde Magento
Besoin d'aide ?
Nous sommes là pour vous ! Vous rencontrez un problème ou avez des questions ? Notre équipe de support se fera un plaisir de vous aider personnellement. Envoyez-nous un message via le système de tickets - nous répondons généralement dans quelques heures et sommes heureux de vous aider.
Vous cherchez une adresse e-mail ? Découvrez notre offre.
0 sur 0 ont trouvé cet article utile