Développeur PrestaShop & e-commerce indépendant, basé en Belgique.
Guide · PrestaShop
Page blanche, « Erreur 500 », back-office inaccessible: la méthode pas à pas pour retrouver la cause et remettre la boutique en route, sur PrestaShop 1.7, 8 ou 9.
Mis à jour le 2 novembre 2026 · 4 min de lecture · par Joachim Corbay
En bref
Votre boutique affiche une page blanche ou le message « Erreur 500 », parfois seulement sur une page, parfois partout, back-office compris. Bonne nouvelle: une erreur 500 n’est presque jamais une perte de données. C’est le serveur qui signale qu’un script PHP s’est arrêté, sans dire pourquoi. Tout l’enjeu est de retrouver le vrai message d’erreur: une fois qu’on l’a, la cause est généralement claire.
Dans la grande majorité des cas, l’erreur suit un changement récent. Avant de toucher à quoi que ce soit, notez:
Si vous avez une sauvegarde d’avant ce changement, gardez-la de côté: c’est votre filet de sécurité.
PrestaShop masque les erreurs aux visiteurs, ce qui est normal. Pour les voir, il faut activer le mode debug. Mais le réglage du back-office (Paramètres avancés › Performances › Mode debug) l’active pour tout le monde: vos clients verraient eux aussi les messages techniques, avec les chemins des fichiers du serveur. Mieux vaut le réserver à votre adresse IP:
config/defines.inc.php, remplacez define('_PS_MODE_DEV_', false); par define('_PS_MODE_DEV_', ($_SERVER['REMOTE_ADDR'] ?? '') === '203.0.113.10');, en mettant votre adresse à la place de 203.0.113.10.Cette méthode fonctionne aussi quand le back-office est inaccessible. Si votre boutique passe par Cloudflare, vérifiez que le serveur voit bien votre vraie adresse, et non celle de Cloudflare (voir le guide Cloudflare, point 8). Une fois le diagnostic terminé, remettez la ligne d’origine, define('_PS_MODE_DEV_', false);: le mode debug ralentit la boutique, et le réglage du back-office ne pourra plus le modifier tant que la ligne est changée.
Si le mode debug n’affiche rien, ou si l’erreur est intermittente, les journaux en disent plus:
var/logs/ de PrestaShop (versions 1.7, 8 et 9);error_log.Cherchez les lignes « PHP Fatal error » ou « Uncaught Exception » à l’heure où l’erreur s’est produite.
C’est la cause numéro un, surtout après une mise à jour. Si le message cite un dossier modules/nom-du-module/, désactivez ce module. Sans accès au back-office, renommez simplement son dossier (par exemple nom-du-module-off): PrestaShop ne le chargera plus. Dans le back-office, Paramètres avancés › Performances permet aussi de désactiver d’un coup les modules non natifs, pour vérifier si l’un d’eux est en cause.
Chaque version de PrestaShop fonctionne avec une plage précise de versions de PHP. Par exemple, PrestaShop 1.7.8 ne fonctionne pas avec PHP 8, PrestaShop 8 s’arrête à PHP 8.1, et PrestaShop 9 demande au moins PHP 8.1. Si votre hébergeur a changé la version de PHP, revenez à une version compatible depuis son panneau, puis planifiez une vraie mise à jour de la boutique.
Après une mise à jour interrompue, le cache peut contenir des fichiers incohérents. Videz-le depuis Paramètres avancés › Performances, ou supprimez le contenu des dossiers var/cache/prod et var/cache/dev: PrestaShop le reconstruit tout seul.
Les overrides modifient le cœur de PrestaShop. Un override écrit pour une ancienne version provoque souvent une erreur 500 après une mise à jour. Le réglage « Désactiver tous les overrides » (Paramètres avancés › Performances) permet de le vérifier en quelques secondes.
Le message contient alors « Allowed memory size exhausted ». PrestaShop recommande au moins 256 Mo pour memory_limit. Ce réglage se fait chez l’hébergeur, ou dans un fichier de configuration PHP selon l’offre.
Une règle invalide dans le .htaccess provoque une erreur 500 sur tout le site. Pour le régénérer, enregistrez simplement la page Paramètres de la boutique › Trafic et SEO. Vérifiez aussi les droits: en général 755 pour les dossiers et 644 pour les fichiers.
Des fichiers inconnus à la racine, du code illisible ajouté en haut de index.php, des redirections étranges: dans ce cas, ne vous contentez pas de corriger l’erreur. Il faut nettoyer, fermer la faille et changer tous les mots de passe.
config/defines.inc.php.Pour la suite, la meilleure prévention reste simple: des sauvegardes automatiques, et des mises à jour testées d’abord sur une copie de la boutique.
Pour aller plus loin: Dépannage PrestaShop · Tous les guides
Questions fréquentes
Non, presque jamais. L’erreur 500 signifie qu’un script s’est arrêté: produits, clients et commandes restent dans la base de données. Il faut corriger la cause, pas restaurer une sauvegarde dans l’urgence.
C’est souvent un module affiché uniquement sur cette page (bloc produit, paiement, transporteur) ou un override lié à cette fonction. Le mode debug, sur cette page, indique le module en cause.
Non. Activé depuis le back-office, il affiche des chemins de fichiers et des détails techniques à tous les visiteurs; même limité à votre adresse IP, il ralentit la boutique. Activez-le le temps du diagnostic, puis désactivez-le.
Ne multipliez pas les essais sur la boutique en ligne. Faites une sauvegarde, notez ce que vous avez déjà tenté et faites appel à un développeur: avec les journaux, la cause se trouve en général rapidement.
Envoyez-moi le message d’erreur ou décrivez ce qui s’est passé: je regarde rapidement et je vous dis ce qu’il en est.
Dépannage, migration, maintenance, catalogue, photos ou boutique sur mesure: décrivez votre besoin, je vous réponds personnellement avec une première analyse et un devis gratuit.
© 2026 Stayincode · Développeur PrestaShop & WooCommerce · TVA BE 0896.755.397
Mentions légales · Conditions de vente · Confidentialité · Ma licence