Sin impuesto Con impuesto

Comment déboguer une erreur 500 ou une page blanche dans PrestaShop

Un écran blanc ne donne aucun indice, mais il laisse toujours une trace. Voici l'ordre dans lequel nous cherchons la cause quand une boutique tombe.

Jesús Meilán
Updated: 26/09/2026 123
Comment déboguer une erreur 500 ou une page blanche dans PrestaShop
Share:

Peu de choses font plus peur que d'ouvrir sa boutique et de voir une page blanche ou un laconique « 500 Internal Server Error ». La bonne nouvelle : la cause est presque toujours écrite quelque part. Voici l'ordre dans lequel nous la cherchons.

1. Qu'est-ce qui a changé ?

Avant de toucher à quoi que ce soit : un module a-t-il été installé ou mis à jour ? La version de PHP de l'hébergement a-t-elle changé ? Un fichier a-t-il été téléversé ? 80 % des pannes coïncident avec un changement récent. S'il y en a un, vous tenez votre premier suspect.

2. Activez le mode debug (avec prudence)

Dans config/defines.inc.php :

define('_PS_MODE_DEV_', true);

En mode debug, PrestaShop affiche l'erreur complète à l'écran au lieu d'une page vide. Ne le faites que le temps strictement nécessaire : le message peut révéler des chemins du serveur à n'importe quel visiteur. Si possible, reproduisez le problème sur une copie de la boutique plutôt qu'en production.

3. Lisez les journaux

  • var/logs/ : les journaux de PrestaShop et de Symfony (prod-AAAA-MM-DD.log). Cherchez CRITICAL et ERROR.
  • Le journal des erreurs PHP de l'hébergement (dans cPanel, généralement dans Métriques > Erreurs ou dans un error_log à la racine).
  • Le journal du serveur web, si la page n'atteint même pas PHP.
grep -E "CRITICAL|ERROR" var/logs/prod-$(date +%F).log | tail -20

4. Écartez les modules et les overrides

Dans Paramètres avancés > Performances, vous pouvez désactiver temporairement les modules non natifs et les overrides. Si la boutique revient, la cause se trouve dans l'un d'eux : réactivez-les par moitiés jusqu'à le trouver.

Si vous ne pouvez pas accéder au back-office, passez par la base de données : la colonne active de la table module ne suffit pas ; ce qui décide si un module s'exécute, c'est sa ligne dans module_shop.

5. Videz le cache, mais correctement

Supprimez le contenu de var/cache/prod et de var/cache/dev, pas le dossier var/cache entier : dans certaines versions, il contient un fichier de paramètres dont PrestaShop a besoin pour démarrer.

6. Les pages « blanches avec un 200 »

Ce sont les plus traîtres : le serveur répond correctement mais il n'y a aucun contenu. Les causes que nous voyons le plus :

  • Un module ou un pare-feu au niveau PHP qui interrompt la requête avec exit.
  • Une fonction qui n'existe pas dans le PHP du serveur. Par exemple, générer des miniatures en AVIF alors que la bibliothèque GD ne prend pas ce format en charge.
  • Mémoire épuisée lors de la génération d'une page très lourde.

Il est alors très utile d'exécuter la page en ligne de commande avec un auto_prepend_file qui enregistre, à la fin, les derniers fichiers chargés : il vous dit exactement où l'exécution s'est arrêtée.

7. Une fois trouvé

Corrigez, désactivez le mode debug, videz le cache et notez ce qui s'est passé. La prochaine fois, quelqu'un le résoudra en cinq minutes au lieu d'un après-midi.

Chargement...
Consentement aux cookies
Retour en haut