Erreur 500 (Internal Server Error) sur WordPress : causes et solutions

Votre site est bloqué et vous n’avez pas le temps ? Direction la page Dépannage WordPress : premier diagnostic gratuit. Un autre message s’affiche ? Consultez le guide Erreurs WordPress.

Les causes les plus fréquentes

Le message est le même quelle que soit la cause. C’est ce qui le rend difficile à corriger sans méthode : il faut éliminer les causes une par une.

  • .htaccess abîmé. Ce fichier de réglages du serveur est modifié par certaines extensions (cache, sécurité, redirections). Une seule ligne incorrecte suffit à bloquer tout le site.
  • Extension ou thème en erreur. Une mise à jour incompatible avec votre version de PHP ou avec une autre extension.
  • Mémoire insuffisante. Le site a besoin de plus de mémoire que ce que l’hébergement autorise.
  • Version de PHP changée. L’hébergeur est passé à une version de PHP plus récente, que d’anciennes extensions ne supportent pas.
  • Droits des fichiers incorrects. Après une migration ou une manipulation par FTP, certains fichiers ne sont plus lisibles par le serveur.

Le cas de l’« erreur critique » : depuis WordPress 5.2, quand une extension ou le thème provoque une erreur PHP, WordPress l’intercepte. Au lieu d’une page blanche, il affiche « Il y a eu une erreur critique sur ce site » et envoie un e-mail à l’adresse d’administration. Techniquement, c’est toujours une erreur 500 : les étapes ci-dessous fonctionnent aussi. Mais l’e-mail de WordPress et son mode de récupération permettent souvent d’aller plus vite, voir le guide erreur critique. Et si votre écran reste entièrement blanc, sans aucun message, consultez le guide page blanche.

Comment corriger l’erreur 500, étape par étape

Il faut accéder aux fichiers du site, par FTP ou avec le gestionnaire de fichiers de votre hébergeur.

  1. Lire le journal d’erreurs

    Dans l’espace client de votre hébergeur, cherchez « Logs » ou « Journaux d’erreurs ». La ligne enregistrée au moment de l’erreur cite souvent le fichier en cause, par exemple un dossier dans wp-content/plugins.

    Vous ne trouvez pas les journaux chez votre hébergeur ? WordPress peut tenir son propre journal. Dans wp-config.php, remplacez la ligne define( ‘WP_DEBUG’, false ); par ces trois lignes :

    define( 'WP_DEBUG', true );
    define( 'WP_DEBUG_LOG', true );
    define( 'WP_DEBUG_DISPLAY', false );

    Les erreurs sont alors écrites dans le fichier wp-content/debug.log, sans s’afficher à vos visiteurs. Retirez ces lignes une fois le problème réglé.

  2. Tester le fichier .htaccess

    Renommez le fichier .htaccess (à la racine) en .htaccess-old. Si le site revient, le problème venait de là. Allez ensuite dans Réglages > Permaliens et cliquez sur « Enregistrer » : WordPress recrée un fichier propre.

    Si l’ancien fichier contenait des règles ajoutées par une extension ou par vous (redirections, sécurité), il faudra les remettre une par une.

  3. Désactiver les extensions

    Renommez le dossier wp-content/plugins en plugins-old : toutes les extensions sont désactivées d’un coup. Si le site revient, redonnez au dossier son nom d’origine (plugins). Dans l’administration, toutes les extensions apparaissent alors désactivées : réactivez-les une par une, en vérifiant le site après chacune, pour trouver celle qui provoque l’erreur.

  4. Augmenter la mémoire

    Ajoutez cette ligne dans wp-config.php, au-dessus de la ligne « C’est tout, ne touchez pas à ce qui suit » :

    define( 'WP_MEMORY_LIMIT', '256M' );

    Certains hébergeurs plafonnent la mémoire : la limite se règle alors dans l’espace client.

  5. Vérifier la version de PHP

    Dans l’espace client, regardez si la version de PHP a changé récemment. Revenir à la version précédente remet souvent le site en ligne, le temps de mettre à jour les extensions incompatibles.

Avant de commencer

  • Notez chaque changement. Pour pouvoir revenir en arrière si une étape ne change rien.
  • Faites une sauvegarde. Depuis l’espace client de votre hébergeur si l’administration n’est plus accessible.
  • Une seule modification à la fois. Testez après chaque étape, sinon impossible de savoir ce qui a réglé le problème.
  • Désactivez, ne supprimez pas. Pour tester une extension, la désactiver suffit et vous gardez ses réglages.

Les questions

Questions fréquentes

Non. OVH affiche sa propre page d’erreur, mais les causes sont les mêmes que chez les autres hébergeurs. Les étapes ci-dessus s’appliquent, et les journaux d’erreurs sont accessibles depuis votre espace client OVHcloud.

C’est souvent une extension qui ne se charge que dans l’administration, ou une limite de mémoire atteinte. Les étapes 3 et 4 sont les plus utiles dans ce cas.

C’est fréquent : l’erreur 500 vient le plus souvent du site lui-même (extension, thème, réglages), pas du serveur. L’hébergeur peut en revanche vous envoyer le journal d’erreurs, qui fait gagner beaucoup de temps.

Cela fait penser à une limite de ressources atteinte par moments, ou à une tâche planifiée qui plante. Le journal d’erreurs, à l’heure où l’erreur s’affiche, permet de le vérifier.

Aperçu du guide « Maintenance & sécurité WordPress » de Jorboo

Guide gratuit · PDF de 12 pages

Maintenance & sécurité WordPress : le guide pratique

Des mises à jour faites régulièrement et avec méthode évitent une bonne partie de ces erreurs. Ce guide explique comment garder votre site WordPress à jour et protégé.