Erreur 500 PrestaShop —
Diagnostic & Correction
Votre boutique affiche une erreur 500, une page blanche ou un écran noir ? C'est le bug le plus fréquent sur PrestaShop — et l'un des plus stressants quand la boutique est en ligne. On vous explique les causes, et on peut intervenir sous 2h.
Ce que vous voyez… et ce que ça signifie
Erreur 500, page blanche, back-office inaccessible — chaque symptôme pointe vers une cause différente. Voici le décodage.
Internal Server Error — le serveur a planté avant de répondre. Cause dans 80% des cas : module incompatible, mémoire PHP dépassée, fichier core corrompu.
White Screen Of Death — PHP a planté silencieusement. Identique à l'erreur 500 mais sans message. Activez le mode debug pour voir l'erreur réelle.
L'admin /admin123/ renvoie 500 mais le front fonctionne (ou inversement). Conflit dans les contrôleurs admin, cache corrompu, ou problème de sessions.
Le module ou PrestaShop a été mis à jour et tout s'est cassé. Incompatibilité de version, override mal géré, ou hook supprimé dans la nouvelle version.
Le reste du site fonctionne mais une catégorie, une fiche produit ou le panier plante. Problème dans un hook, un override ou un template spécifique.
La boutique plante parfois, puis revient. Limite mémoire atteinte sous charge, problème de connexion à la base de données, ou timeout de requête SQL lente.
Les 6 causes les plus fréquentes d'une erreur 500 PrestaShop
Dans l'ordre de fréquence, d'après nos interventions sur plusieurs centaines de boutiques.
Module incompatible après mise à jour Cause #1
C'est la cause n°1. Un module tiers (paiement, livraison, marketing) n'est pas compatible avec la nouvelle version de PrestaShop ou de PHP. Il plante au chargement et prend tout le site avec lui.
Limite mémoire PHP atteinte (memory_limit)
PrestaShop est gourmand en mémoire, surtout avec beaucoup de modules. Si votre hébergeur limite PHP à 128Mo ou 256Mo, une requête complexe peut dépasser la limite.
Fichier .htaccess corrompu
Le .htaccess gère les URL simplifiées de PrestaShop. Un .htaccess mal formé (après une migration, une mise à jour ou une modification manuelle) provoque des erreurs 500 sur toutes les pages.
Version PHP incompatible avec PrestaShop
PHP 8.1 est incompatible avec PrestaShop < 1.7.8. PHP 8.2+ est incompatible avec PrestaShop < 8.0. Un changement de version PHP côté hébergeur peut tout casser du jour au lendemain.
Override ou hook mal codé
Les overrides (dossier /override/) permettent de personnaliser PrestaShop sans toucher au core. Mais un override mal écrit ou obsolète peut provoquer une erreur fatale PHP.
Fichiers core corrompus ou manquants
Une mise à jour ratée, une migration incomplète ou une attaque peut corrompre des fichiers du core PrestaShop. PHP ne peut plus charger les classes essentielles.
Comment diagnostiquer une erreur 500 PrestaShop vous-même
Si vous avez un accès FTP et que vous n'avez pas besoin d'une intervention immédiate, voici la procédure dans l'ordre.
Consultez les logs d'erreur PHP
C'est la première chose à faire. Les logs contiennent le message d'erreur exact avec le fichier et la ligne concernés.
var/logs/dev.log (PrestaShop 1.7+)
log/front-office.log (PrestaShop 1.6)
# Logs PHP hébergeur
/var/log/apache2/error.log (Apache)
/var/log/php-fpm/error.log (PHP-FPM)
# Ou dans votre panneau Plesk/cPanel → Logs
Activez le mode debug PrestaShop
Si les logs ne sont pas accessibles, activez le mode debug pour afficher l'erreur directement dans le navigateur.
define('_PS_MODE_DEV_', true);
# OU : app/config/parameters.php
'kernel.environment' => 'dev',
false après le diagnostic — ce mode expose des informations sensibles.
Désactivez tous les modules tiers
Si l'erreur est apparue après une mise à jour ou l'installation d'un module, désactivez-les tous en base de données :
UPDATE `ps_module` SET `active` = 0
WHERE `name` NOT IN (
'ps_addressblock','ps_banner','ps_breadcrumb',
'ps_categorytree','ps_checkout','ps_contactinfo',
'ps_currencyselector','ps_customersignin'
);
-- Puis réactiver un par un pour trouver le coupable
UPDATE `ps_module` SET `active` = 1 WHERE `name` = 'nom_module';
Vérifiez la mémoire PHP et les versions
Régénérez le .htaccess et videz le cache
Si les fichiers .htaccess semblent suspects ou si l'erreur 500 touche toutes les URLs, régénérez-le :
Toujours pas résolu ? Appelez un expert
Si après ces étapes l'erreur persiste, c'est que le problème est plus profond : fichiers core corrompus, base de données endommagée, ou configuration serveur complexe. C'est là qu'une intervention experte est nécessaire.
Demander un diagnostic gratuit →Intervention PrestaShop sous 2h — diagnostic gratuit, devis immédiat.
Questions fréquentes sur l'erreur 500 PrestaShop
Dans 80% des cas : un module incompatible après une mise à jour. Les autres causes courantes sont une mémoire PHP insuffisante (memory_limit), un .htaccess corrompu, ou une version PHP incompatible avec votre version de PrestaShop.
Éditez config/defines.inc.php et passez define('_PS_MODE_DEV_', true). Sur PrestaShop 1.7+, vous pouvez aussi modifier app/config/parameters.php. Pensez à désactiver ce mode après — il expose des informations sensibles.
Pour un cas standard (module en conflit, .htaccess, mémoire PHP), le diagnostic prend moins de 30 minutes et la correction est généralement effectuée dans les 2h suivant la prise en charge.
Désactivez immédiatement tous les modules tiers via SQL (UPDATE ps_module SET active=0), puis réactivez-les un par un pour identifier le module coupable. Si la mise à jour a corrompu des fichiers du core, une restauration partielle depuis une sauvegarde peut être nécessaire.
Oui. Si votre boutique renvoie des erreurs 500 pendant plusieurs heures, Google peut dégrader votre positionnement. Vérifiez dans Search Console que vos pages importantes renvoient des codes 200 après résolution.
Certaines corrections sont possibles via l'administration PrestaShop ou le back-office hébergeur (Plesk/cPanel). Mais pour les erreurs 500 sérieuses, l'accès FTP/SSH est généralement indispensable pour analyser les logs et corriger les fichiers.