Vous ouvrez votre site et voyez « 500 Internal Server Error », ou votre navigateur affiche « Cette page ne fonctionne pas » avec HTTP ERROR 500. Parfois seul wp-admin est touché, parfois tout le site. Ce message apporte très peu d’informations : une erreur 500 signifie seulement que le serveur a rencontré un problème qu’il n’a pas pu décrire au navigateur.
L’erreur réelle est heureusement presque toujours consignée quelque part. Ce guide vous montre où la trouver et comment corriger les causes les plus fréquentes, dans l’ordre qui permet généralement de repérer le problème le plus vite.
Avant de commencer : sauvegardez vos fichiers et votre base de données si votre hébergeur le permet, ou téléchargez au moins une copie de chaque fichier avant de le modifier. La plupart des corrections ci-dessous sont réversibles, à condition de conserver l’original.
Les causes d’une erreur 500 dans WordPress
Dans WordPress, une erreur 500 provient généralement de l’un de ces éléments :
- Un fichier .htaccess défectueux ou corrompu, souvent après sa réécriture par une extension.
- Une extension ou un thème qui provoque une erreur PHP fatale, généralement juste après une mise à jour.
- Une limite de mémoire PHP trop basse pour ce que la page tente d’exécuter.
- Une version de PHP non prise en charge par vos extensions ou votre thème.
- Des permissions de fichiers incorrectes après une migration ou un téléversement manuel.
- Une limite ou une panne du serveur que seul votre hébergeur peut voir.
Si vous voyez plutôt « Il y a eu une erreur critique sur ce site », la cause est également une erreur PHP. Notre guide pour corriger l’erreur critique WordPress explique ce message en détail.
Étape 1 : recharger et vérifier si seule une partie du site est touchée
Rechargez la page une fois et essayez dans une fenêtre de navigation privée. Une erreur 500 ponctuelle pendant un pic d’activité peut être un incident temporaire du serveur. Vérifiez ensuite quelques URL : la page d’accueil, un article, /wp-admin/et /wp-login.php. Si seul wp-admin échoue, une extension chargée dans le tableau de bord est probablement en cause. Si toutes les pages échouent, commencez par .htaccess et le journal des erreurs.
Étape 2 : lire le journal des erreurs du serveur
Le plus rapide pour trouver la correction est de consulter le véritable message d’erreur. Regardez aux endroits suivants :
- Le panneau de gestion de votre hébergement. cPanel propose Mesures → Erreurs, et la plupart des autres panneaux ont une rubrique « Journal des erreurs » ou « Journaux ».
- Un fichier nommé
error_logà la racine du site ou danswp-admin. - Le journal de débogage WordPress. Activez-le en ajoutant ces lignes dans
wp-config.php, au-dessus de la ligne « That’s all, stop editing! » :
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Rechargez la page en panne, puis ouvrez wp-content/debug.log. Recherchez les lignes commençant par PHP Fatal error. Le chemin du fichier indiqué désigne généralement l’extension ou le thème en cause, par exemple wp-content/plugins/plugin-name/.... Lorsque vous avez terminé, remettez WP_DEBUG à false.
Étape 3 : réinitialiser le fichier .htaccess
Sur les serveurs Apache et LiteSpeed, une seule ligne incorrecte dans .htaccess provoque une erreur 500 sur toutes les pages. Connectez-vous avec le gestionnaire de fichiers ou en SFTP, trouvez .htaccess à la racine du site (il peut être nécessaire d’afficher les fichiers cachés) et renommez-le en .htaccess-old.
Rechargez votre site. S’il fonctionne, créez un nouveau fichier .htaccess contenant les règles WordPress standard :
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Allez ensuite dans Réglages → Permaliens et cliquez sur Enregistrer les modifications sans rien modifier. Si une extension de cache ou de sécurité avait ajouté ses propres règles à l’ancien fichier, enregistrez de nouveau ses réglages pour qu’elle puisse les réintroduire proprement.
Étape 4 : désactiver les extensions
Si le journal des erreurs désigne une extension, ou si vous ne savez pas laquelle est en cause, désactivez les extensions sans passer par wp-admin :
- Dans le gestionnaire de fichiers ou en SFTP, ouvrez
wp-content. - Renommez le dossier
pluginsenplugins-off. Ouvrez ensuite la page des extensions dans l’administration pour que WordPress les désactive. - Rechargez le site. S’il fonctionne, redonnez au dossier le nom
plugins. - Dans l’administration, réactivez les extensions une par une en rechargeant le site après chaque activation. Si l’erreur revient, examinez l’extension que vous venez d’activer.
Si vous disposez d’un accès WP-CLI, wp plugin deactivate --all fait la même chose plus rapidement. Une fois l’extension en cause identifiée, recherchez une mise à jour, revenez à la version précédente ou contactez son développeur avec le message d’erreur de l’étape 2.
Étape 5 : écarter le thème
Si les extensions ne sont pas en cause, renommez le dossier de votre thème actif dans wp-content/themes. WordPress utilise alors un thème par défaut comme Twenty Twenty-Four, si un tel thème est installé. Si le site se charge, le problème vient du thème ou de code ajouté à son fichier functions.php.
Étape 6 : augmenter la limite de mémoire PHP
Si le journal indique « Allowed memory size of … bytes exhausted », la page a épuisé la mémoire PHP. Ajoutez cette ligne dans wp-config.php:
define( 'WP_MEMORY_LIMIT', '256M' );
La limite PHP de l’hébergeur reste applicable. Notre guide pour corriger l’erreur de dépassement de mémoire autorisée explique comment augmenter cette limite correctement et trouver ce qui consomme autant de mémoire.
Étape 7 : vérifier la version de PHP et les permissions des fichiers
- Version de PHP : dans le panneau d’hébergement, vérifiez la version de PHP utilisée par le site. Si l’erreur est apparue après une mise à niveau de PHP par votre hébergeur, une ancienne extension ou un ancien thème peut être incompatible. Revenir temporairement à la version précédente permet de le confirmer, mais la solution durable consiste à mettre à jour ou à remplacer l’ancien code.
- Permissions : les dossiers utilisent généralement
755et les fichiers644.wp-config.phppeut avoir des permissions plus restrictives, comme640ou600. Des permissions comme777peuvent provoquer des erreurs 500 sur certains serveurs et présentent un risque de sécurité sur tous.
Étape 8 : contacter l’hébergeur
Si aucune de ces étapes ne résout le problème et si les journaux sont vides, contactez votre hébergeur. Indiquez l’heure exacte de l’erreur et l’URL. Il peut consulter les journaux du serveur, les limites de ressources et les règles de sécurité (comme ModSecurity) auxquels vous n’avez pas accès.
Quand faire appel à un spécialiste
Demandez de l’aide si le journal désigne du code que vous ne reconnaissez pas, si l’erreur revient à chaque mise à jour, si vous n’avez pas accès aux fichiers d’hébergement ou si votre boutique perd des commandes pendant l’indisponibilité. Renommer le mauvais dossier ou modifier wp-config.php dans l’urgence peut ajouter un second problème au premier.
Vous souhaitez nous confier la correction ? Notre service WordPress Fix lit les journaux, recherche la cause réelle de l’erreur 500, la corrige et vous indique précisément ce qui a changé. Prix fixe de $45, confirmé avant toute intervention, avec notre garantie de service. Demander une correction.
Questions fréquentes
Une erreur 500 vient-elle de moi ou de mon hébergeur ?
Les deux sont possibles. La plupart des erreurs 500 WordPress viennent du site lui-même : une extension, un thème ou le fichier .htaccess. Si les journaux ne montrent rien et si d’autres sites du même serveur sont aussi indisponibles, le problème est probablement lié à l’hébergement.
Une erreur 500 pénalise-t-elle mon classement Google ?
Une courte interruption risque peu de laisser des effets durables. Si Google rencontre des erreurs 500 pendant plusieurs jours, il peut réduire l’exploration et retirer les pages concernées des résultats. Corrigez donc le problème dès que possible.
Pourquoi l’erreur 500 touche-t-elle uniquement wp-admin ?
Certaines extensions chargent du code supplémentaire uniquement dans le tableau de bord. Une extension défectueuse peut donc bloquer wp-admin alors que le site public fonctionne encore. Désactivez les extensions comme à l’étape 4 pour l’identifier.
