L’erreur 500 : votre site est cassé, voici par où commencer
“Internal Server Error.” Trois mots, aucune explication. Le visiteur voit une page blanche ou un message générique, vous ne voyez rien d’autre côté admin — pas de message d’erreur clair, pas de piste. C’est l’une des erreurs les plus frustrantes de WordPress, précisément parce qu’elle peut venir de cinq endroits différents.
Bonne nouvelle : dans 95 % des cas, la cause est identifiable en moins de 15 minutes avec la bonne méthode. L’erreur 500 signifie que le serveur a rencontré une condition inattendue qui l’a empêché de répondre. Le serveur sait qu’il y a un problème, mais il ne vous dit pas lequel — c’est votre job de l’isoler.
Pourquoi ça arrive : les 5 causes fréquentes
.htaccesscorrompu ou invalide — souvent après une migration, un changement de permaliens, ou une installation de plugin.- Limite mémoire PHP trop basse — WordPress manque de RAM allouée pour exécuter la page, il plante silencieusement.
- Plugin ou thème fautif — une mise à jour récente a introduit du code incompatible avec votre version de PHP ou de WordPress.
- Permissions de fichiers incorrectes — si les dossiers ne sont pas en 755 ou les fichiers en 644, le serveur refuse d’exécuter certains scripts.
- Timeout ou ressources serveur épuisées — scripts trop longs, hébergement mutualisé saturé.
1. Consultez les logs d’erreur en premier
Avant de toucher quoi que ce soit, lisez les logs. C’est la source de vérité.
Où les trouver :
- Via cPanel :
Journaux→Journaux d'erreurs - Via SSH :
tail -100 /var/log/apache2/error.log(ou le chemin équivalent chez votre hébergeur) - Dans le dossier
wp-content/: certains hébergeurs y déposent un fichierphp_errorlogouerror_log
Le log vous dira exactement quel fichier, quelle ligne, quelle fonction a planté. Si vous voyez PHP Fatal error: Allowed memory size of 134217728 bytes exhausted → c’est la mémoire. Si vous voyez syntax error in /wp-content/plugins/monplugin/ → c’est un plugin.
Sans lire les logs, vous travaillez à l’aveugle.
2. Désactivez tous les plugins
C’est le test le plus rapide et le plus révélateur.
Si vous avez accès à l’admin WordPress :
Extensions→ cochez tout →Désactiver- Rechargez le site. Si ça fonctionne, réactivez les plugins un par un jusqu’à retrouver le coupable.
Si l’admin est inaccessible (erreur 500 partout) :
- Connectez-vous en FTP ou SFTP (ou via le gestionnaire de fichiers de votre hébergeur)
- Dans
wp-content/, renommez le dossierpluginsenplugins_desactives - WordPress ne trouvant plus le dossier, tous les plugins sont neutralisés automatiquement
- Rechargez le site — si ça revient, renommez le dossier en
plugins, puis entrez dedans et désactivez-les un par un en les renommant
Si vous avez besoin d’un accès SSH pour aller plus vite, les guides sur SSH via Gandi et SSH via Plesk vous donnent la procédure complète.
3. Régénérez le fichier .htaccess
Le .htaccess est le fichier de configuration d’Apache qui gère les redirections et les permaliens de WordPress. Une seule ligne corrompue suffit à déclencher une erreur 500.
Test rapide :
- En FTP, renommez
/htaccessen.htaccess_backup - Rechargez le site — si ça fonctionne, le
.htaccessétait bien le problème
Pour en générer un propre :
- Accédez à
Réglages→Permaliensdans l’admin - Cliquez simplement sur
Enregistrer les modifications - WordPress recrée un
.htaccessvalide automatiquement
Si des plugins de sécurité (Wordfence, iThemes Security) avaient modifié ce fichier, leurs règles sont effacées — vérifiez leurs réglages après la remise en état. Si vous rencontrez aussi des boucles de redirection après cette étape, consultez l’article sur ERR_TOO_MANY_REDIRECTS.
4. Augmentez la limite mémoire PHP
WordPress a besoin de RAM allouée par PHP pour s’exécuter. Par défaut, beaucoup d’hébergements mutualisés allouent 64 Mo ou 128 Mo — trop peu si vous utilisez WooCommerce, Elementor, ou des plugins lourds.
Directives PHP à connaître
| Directive | Rôle | Symptôme si trop basse | Valeur conseillée |
|---|---|---|---|
memory_limit | RAM allouée par script PHP | Erreur 500, écran blanc | 256M |
max_execution_time | Durée max d’exécution d’un script | Timeout, erreur 500 sur import/export | 120 |
max_input_time | Temps max pour recevoir les données | Erreur sur upload de médias | 120 |
max_input_vars | Nombre de variables POST acceptées | Perte de données en sauvegarde | 3000 |
post_max_size | Taille max d’une requête POST | Erreur 500 à l’upload | 64M |
upload_max_filesize | Taille max d’un fichier uploadé | Erreur 413 ou 500 sur médias | 64M |
Où modifier ces valeurs
Dans wp-config.php (rapide, mais limité à memory_limit) :
define('WP_MEMORY_LIMIT', '256M');
define('WP_MAX_MEMORY_LIMIT', '512M');
Dans .htaccess (si votre hébergeur l’autorise) :
php_value memory_limit 256M
php_value max_execution_time 120
Dans php.ini à la racine de votre site :
memory_limit = 256M
max_execution_time = 120
Via le panel hébergeur : OVH, IONOS, Infomaniak et la plupart des hébergements premium proposent un sélecteur de version PHP avec les directives modifiables directement en interface. C’est la méthode la plus propre.
Si votre site est lent en plus d’être instable, les causes sont souvent liées — l’article site WordPress lent couvre le diagnostic complet.
5. Vérifiez les permissions de fichiers
Des permissions trop restrictives ou trop ouvertes bloquent PHP.
Valeurs correctes :
- Dossiers :
755 - Fichiers :
644 wp-config.php:600(lecture réservée au propriétaire)
Via SSH :
find /chemin/vers/wordpress -type d -exec chmod 755 {} \;
find /chemin/vers/wordpress -type f -exec chmod 644 {} \;
chmod 600 wp-config.php
Via FTP : clic droit sur un dossier ou fichier → Permissions → entrez la valeur.
6. Testez avec le thème par défaut
Si aucune des étapes précédentes n’a résolu le problème, désactivez votre thème actif en renommant son dossier dans wp-content/themes/. WordPress bascule automatiquement sur un thème par défaut (Twenty Twenty-Something). Si le site revient, c’est votre thème qui était fautif — probablement une mise à jour incompatible ou un fichier corrompu. Pour tout ce qui touche aux éditeurs page-builder en lien avec les thèmes, voir aussi Elementor bloqué au chargement.
Tableau récapitulatif : cause → solution
| Cause | Premier test | Solution |
|---|---|---|
| Plugin fautif | Désactiver tous les plugins via FTP | Réactiver un par un, identifier le coupable |
.htaccess corrompu | Renommer le fichier, recharger | Regénérer via Réglages → Permaliens |
| Mémoire PHP insuffisante | Lire les logs (memory exhausted) | Ajouter define('WP_MEMORY_LIMIT', '256M') |
| Permissions incorrectes | Vérifier en FTP | chmod 755 (dossiers), 644 (fichiers) |
| Thème fautif | Renommer dossier du thème | Réinstaller ou revenir à la version précédente |
L'erreur 500 n'apparaît que sur certaines pages, pas sur toutes — pourquoi ?
Souvent le signe d’un plugin qui s’active uniquement sur certains types de pages (WooCommerce sur les pages produit, un plugin de formulaire sur la page contact). Commencez par identifier quel plugin est chargé sur les pages affectées, et désactivez-le en premier.
Mon hébergeur dit que l'erreur vient de mon code — qu'est-ce que ça veut dire ?
Ça signifie que le problème est côté application (WordPress, plugin, thème), pas côté infrastructure. L’hébergeur ne peut pas résoudre ça à votre place. Suivez les étapes de cet article dans l’ordre : logs, plugins, .htaccess, mémoire.
Est-ce que je risque de perdre mes données en désactivant les plugins ou en renommant le .htaccess ?
Non. Désactiver des plugins et renommer des fichiers de configuration ne touche pas à votre base de données ni à vos contenus. Vos articles, pages et médias sont en sécurité. Faites quand même une sauvegarde complète avant toute intervention — c’est une habitude, pas une précaution d’urgence.
L'erreur 500 est revenue après quelques jours — c'est normal ?
Non. Une erreur 500 récurrente sans changement de votre part indique soit un problème de ressources serveur (hébergement mutualisé saturé à certaines heures), soit un plugin ou une tâche planifiée (cron WordPress) qui plante régulièrement. Consultez les logs sur plusieurs jours pour identifier l’heure et le script récurrents.
Quand passer la main à un pro
Si après toutes ces étapes le site est toujours en erreur 500, ou si les logs affichent des erreurs que vous ne comprenez pas, c’est le moment de ne pas s’acharner. Un prestataire accède aux logs complets, à la configuration serveur et peut identifier en 20 minutes ce qui vous prendrait des heures. Si en plus vous soupçonnez que votre prestataire actuel ne répond plus ou que vous n’avez pas accès à votre propre serveur, l’article sur le prestataire web disparu et celui sur les 7 accès à exiger de votre agence sont les deux lectures à faire immédiatement. L’erreur 500, ça se règle — mais encore faut-il avoir les clés en main.
Ce problème, Peechy s'en occupe
Plutôt que de tout gérer seul, confiez votre site à une agence qui s'occupe de tout — hébergement, sécurité, maintenance et corrections. Encore plus simple en abonnement : on règle les soucis avant même que vous les remarquiez.
Confier mon site à Peechy