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 :

  1. Vérifiez les journaux d'erreurs
  2. Activez le mode développement (temporairement)
  3. Vérifiez les modifications récentes - qu'est-ce qui a changé ?
  4. 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

# 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 {} \;

Erreur 500 Internal Server

Étape 1 : Vérifiez .htaccess

Un .htaccess corrompu est une cause fréquente :

  1. Renommez `.htaccess` en `.htaccess_backup`
  2. Téléchargez un nouveau `.htaccess` depuis Magento GitHub
  3. 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 :

  1. Vérifiez les identifiants dans `app/etc/env.php`
  2. Testez la connexion via phpMyAdmin
  3. 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

  1. Vérifiez l'URL de l'administration
    bin/magento info:adminuri
  2. 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
  3. Videz le cache
    bin/magento cache:clean

Impossible de se connecter

  1. Réinitialisez le mot de passe administrateur :
    bin/magento admin:user:unlock adminusername
    bin/magento admin:user:change-password adminusername nouveau_mot_de_passe
  2. 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 :

  1. Allez dans phpMyAdmin
  2. Trouvez la table `setup_module`
  3. Supprimez l'entrée de module problématique
  4. Videz manuellement var/cache

Problèmes de base de données

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

  1. Sélectionnez toutes les tables
  2. Choisissez "Réparer la table" dans le menu déroulant
  3. Exécutez

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
            ]
        ]
    ]
]

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

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.