Erreur 500 PrestaShop : diagnostic et correction quand un thème bloque le back-office
Votre PrestaShop affiche une erreur 500 après l'installation d'un thème ? Découvrez comment retrouver l'accès au back-office et corriger le problème étape par étape.
En bref : Une erreur 500 après installation d'un thème PrestaShop se résout en renommant le dossier du thème fautif via FTP/SSH pour retrouver l'accès au back-office, puis en activant le mode debug pour identifier et corriger la cause exacte de l'erreur.
Introduction
L'erreur HTTP 500 (Internal Server Error) est l'une des pannes les plus frustrantes sur PrestaShop : le serveur plante sans message explicite, et dans le pire des cas, le back-office devient lui aussi inaccessible. L'une des causes les plus fréquentes est l'installation d'un thème incompatible ou mal packagé.
Ce guide couvre le diagnostic complet d'une erreur 500 liée à un thème, la méthode d'urgence pour retrouver l'accès au back-office, puis les vérifications à effectuer pour éviter que le problème ne se reproduise.
Comprendre l'erreur 500 sur PrestaShop
Une erreur 500 est une réponse générique du serveur indiquant qu'il n'a pas pu traiter la requête. Sur PrestaShop, les causes les plus courantes sont :
- **Un thème incompatible** avec la version de PrestaShop ou de PHP
- **Un fichier `.htaccess` corrompu** ou mal configuré
- **Une limite PHP dépassée** (`memory_limit`, `max_execution_time`)
- **Un module défectueux** chargé au démarrage
- **Des permissions de fichiers incorrectes**
Quand un thème provoque l'erreur, c'est généralement parce qu'il contient des templates Smarty avec des erreurs de syntaxe, des appels à des hooks inexistants, ou des fichiers theme.yml / config.xml mal formatés.
Méthode d'urgence : retrouver l'accès au back-office
Si le front-office ET le back-office sont inaccessibles après l'installation d'un thème, la priorité est de retrouver l'accès à l'administration.
Étape 1 — Renommer le répertoire du thème fautif
Connectez-vous en FTP ou SSH à votre serveur et naviguez jusqu'au dossier themes/ à la racine de PrestaShop (pas dans le dossier d'administration) :
cd /var/www/html/themes/
ls -la
Repérez le répertoire du thème que vous venez d'installer et renommez-le :
mv mon-nouveau-theme mon-nouveau-theme_DISABLED
PrestaShop ne trouvant plus le thème actif, il basculera sur le thème par défaut (classic en 1.7/8.x ou default-bootstrap en 1.6). Le back-office redevient accessible.
Attention : Ne supprimez pas le dossier du thème. Le renommer suffit à désactiver le thème tout en conservant les fichiers pour un diagnostic ultérieur.
Étape 2 — Réactiver le thème par défaut via le back-office
Une fois l'accès retrouvé :
- Allez dans **Apparence → Thème et logo**
- Sélectionnez le thème `classic` (ou `default-bootstrap` en 1.6)
- Cliquez sur **Utiliser ce thème**
- **Testez toujours sur un environnement de pré-production** avant d'installer un thème en production
- **Faites une sauvegarde complète** (fichiers + base de données) avant toute modification de thème
- **Vérifiez la compatibilité** avec votre version de PrestaShop ET de PHP
- **Gardez le mode debug activé** en développement pour détecter les erreurs rapidement
- **Ne supprimez jamais le thème `classic`** — c'est votre filet de sécurité
Sur PrestaShop 8.x, le chemin est identique. L'interface a été légèrement modernisée mais la fonctionnalité reste au même endroit.
Étape 3 (alternative) — Forcer le thème via la base de données
Si même le back-office ne répond toujours pas après le renommage, vous pouvez forcer le thème par défaut directement en base de données :
UPDATE ps_configuration SET value = 'classic' WHERE name = 'PS_THEME';
UPDATE ps_shop SET theme_name = 'classic', id_theme = 1;
Note : Remplacez
ps_par votre préfixe de tables si vous l'avez personnalisé lors de l'installation.
Activer les logs d'erreur pour un diagnostic précis
Une erreur 500 sans détails est inutile. Voici comment obtenir le message d'erreur réel :
Activer le mode debug PrestaShop
Éditez le fichier config/defines.inc.php à la racine de PrestaShop :
// Passer de false à true
define('_PS_MODE_DEV_', true);
Sur PrestaShop 8.x, vous pouvez aussi modifier le fichier .env :
APP_DEBUG=1
APP_ENV=dev
Rechargez la page fautive : l'erreur PHP complète s'affichera avec le fichier, la ligne et la stack trace.
Consulter les logs serveur
# Apache
tail -f /var/log/apache2/error.log
# Nginx
tail -f /var/log/nginx/error.log
# Logs PrestaShop (8.x avec Symfony)
tail -f var/logs/dev.log
Causes fréquentes liées aux thèmes
Incompatibilité de version PHP
Un thème développé pour PHP 7.0 peut planter sur PHP 8.1+ à cause de fonctions dépréciées ou de changements de syntaxe. Les erreurs les plus courantes :
Fatal error: Uncaught Error: Call to undefined function each()
Fatal error: Cannot use string offset as an array
Solution : Vérifiez la compatibilité PHP du thème avant installation. Sur PrestaShop 8.x, PHP 8.1 minimum est requis.
Fichier theme.yml manquant ou invalide (1.7 / 8.x)
# Structure minimale obligatoire de theme.yml
name: mon-theme
display_name: Mon Thème
version: 1.0.0
author:
name: Mon Agence
meta:
compatibility:
from: 8.0.0
to: ~
Un theme.yml avec une syntaxe YAML invalide (tabulations au lieu d'espaces, caractères spéciaux non échappés) provoquera systématiquement une erreur 500.
Permissions de fichiers incorrectes
Après un upload FTP, les permissions peuvent être mauvaises :
# Corriger les permissions du dossier themes
find /var/www/html/themes/ -type d -exec chmod 755 {} \;
find /var/www/html/themes/ -type f -exec chmod 644 {} \;
Bonnes pratiques pour éviter les erreurs 500 liées aux thèmes
Sécurité : protéger l'URL de votre back-office
Lors du diagnostic d'une erreur 500, il peut être tentant de partager des captures d'écran de son back-office sur des forums ou avec des prestataires. Ne révélez jamais l'URL de votre dossier d'administration. PrestaShop utilise un nom de dossier aléatoire (par exemple admin736sfk) comme mesure de sécurité. Si ce nom est exposé, changez-le immédiatement :
# Renommer le dossier admin
mv admin736sfk admin_nouveau_nom_secret
Pensez aussi à ne jamais partager publiquement des captures contenant des chemins de fichiers serveur ou des identifiants.
Résumé de la procédure de dépannage
Questions fréquentes
Tout ce que vous devez savoir sur ce sujet.
Un projet PrestaShop ?
Discutons-en directement.
193 projets livrés
Lire sur le blog

Alexandre Carette
Expert PrestaShop & Architecture E-commerce
Développeur PrestaShop depuis 2014, 193 projets livrés. Je conçois des architectures headless Nuxt + PrestaShop et des outils d'automatisation IA pour les e-commerçants.