Nouvelle fonctionnalité

Maîtrisez la délivrabilité de vos e-mails avec le Mail Delivery CenterNouveau : Mail Delivery Center pour une délivrabilité e-mail plus intelligente En savoir plus >

« Il y a eu une erreur critique sur ce site » : comment la corriger en 10 minutes

Votre site WordPress n’affiche qu’une seule ligne, « Il y a eu une erreur critique sur ce site », et rien d’autre. Cela paraît grave, mais la cause est presque toujours une extension, le thème, un changement de version de PHP ou une limite de mémoire. Voici comment identifier le coupable et remettre

Résumer avec
« Il y a eu une erreur critique sur ce site » : comment la corriger en 10 minutes

Vous ouvrez votre site et, à la place de votre page d’accueil, une seule phrase s’affiche : « Il y a eu une erreur critique sur ce site. » Parfois, wp-admin l’affiche aussi, et vous ne pouvez même plus vous connecter.

C’est inquiétant à première vue, mais c’est l’un des problèmes WordPress les plus faciles à résoudre. Cela signifie que PHP a rencontré une erreur fatale et s’est arrêté ; dans presque tous les cas, le coupable est une extension, votre thème, un changement de version de PHP ou une limite de mémoire. Votre contenu est toujours en sécurité dans la base de données. Voici comment trouver la cause et remettre votre site en ligne.

À retenir

  1. Le message d’erreur critique signifie que PHP a rencontré une erreur fatale, presque toujours dans une extension, dans le thème ou après un changement de version de PHP.
  2. Commencez par consulter l’e-mail de l’administrateur du site : WordPress y envoie un lien vers le mode de récupération qui indique l’extension ou le thème en cause.
  3. Pas d’e-mail ? Activez WP_DEBUG_LOG et cherchez dans wp-content/debug.log le fichier qui a provoqué l’erreur.
  4. Désactivez une extension en renommant son dossier, ou toutes à la fois avec WP-CLI, sans avoir besoin de wp-admin.
  5. Si vous ne trouvez pas rapidement la cause, restaurez la dernière sauvegarde antérieure à l’erreur, puis corrigez le problème à tête reposée sur un environnement de staging.

D’abord : qu’est-ce qui a changé ? Repensez à la dernière chose qui s’est produite avant l’erreur : mise à jour d’une extension ou d’un thème, nouvelle extension, changement de version de PHP, modification du code. C’est généralement la cause, et cela vous indique où chercher en premier.

Étape 1 : vérifiez l’e-mail du mode de récupération

Lorsque WordPress rencontre une erreur fatale, il envoie un e-mail à l’adresse d’administration du site avec pour objet « Votre site rencontre un problème technique ». Cet e-mail indique l’extension ou le thème défaillant et contient un lien spécial vers le mode de récupération.

Ouvrez le lien et connectez-vous. WordPress met en pause uniquement l’extension ou le thème défectueux, ce qui vous permet d’accéder à wp-admin pour le mettre à jour, le remplacer ou le désactiver. Si vous ne voyez pas l’e-mail, vérifiez votre dossier de spams. Le lien expire au bout d’un certain temps, mais WordPress en envoie un nouveau si l’erreur se reproduit.

Étape 2 : lisez l’erreur

Pas d’e-mail ? Demandez à WordPress d’écrire l’erreur dans un journal. Dans cPanel, ouvrez le Gestionnaire de fichiers, modifiez wp-config.php dans le dossier de votre site et ajoutez ces lignes au-dessus de /* That's all, stop editing! */ :

// Log errors to wp-content/debug.log without showing them to visitors
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Rechargez la page en erreur, puis ouvrez wp-content/debug.log. Cherchez la dernière ligne commençant par PHP Fatal error. Elle se termine par un chemin de fichier, qui vous indique le responsable :

  • wp-content/plugins/plugin-name/... : cette extension ;
  • wp-content/themes/theme-name/... : votre thème ;
  • Allowed memory size ... exhausted : une limite de mémoire (voir l’étape 5).

Supprimez ces trois lignes une fois terminé, pour éviter que le journal ne grossisse indéfiniment. Chez WebGee, vous pouvez aussi consulter le journal d’erreurs PHP ; notre documentation explique où le trouver.

Étape 3 : désactivez l’extension défectueuse

Vous n’avez pas besoin de wp-admin pour cela. Dans le Gestionnaire de fichiers, allez dans wp-content/plugins/ et renommez le dossier de l’extension, par exemple de slider-pro en slider-pro.off. WordPress ne la trouve plus et la désactive donc. Rechargez votre site.

Si vous ne savez pas de quelle extension il s’agit, renommez tout le dossier plugins en plugins.off. Si le site revient, redonnez-lui son nom d’origine, puis renommez les extensions une par une jusqu’à ce que l’erreur réapparaisse. En SSH, WP-CLI est plus rapide :

# List plugins without loading them (works even when the site is down)
wp plugin list --skip-plugins --skip-themes

# Deactivate one plugin
wp plugin deactivate slider-pro --skip-plugins --skip-themes

# Or deactivate all of them, then reactivate one by one
wp plugin deactivate --all --skip-plugins --skip-themes

Étape 4 : si c’est le thème

Renommez le dossier de votre thème actif dans wp-content/themes/. WordPress bascule alors sur un thème par défaut, s’il en existe un d’installé, et le site se charge : son apparence change, mais il fonctionne. Mettez ensuite le thème à jour, ou restaurez une version fonctionnelle, puis réactivez-le. Gardez toujours au moins un thème par défaut installé, précisément pour cette raison.

Étape 5 : autres causes fréquentes

Un changement de version de PHP

Si l’erreur est apparue juste après une mise à niveau de PHP, commencez par revenir en arrière : dans cPanel, via Select PHP Version ; dans WordPress Cloud, via Advanced › Developer tools. Mettez ensuite à jour l’élément mis en cause par le journal, puis testez de nouveau la version de PHP plus récente sur un environnement de staging.

Mémoire insuffisante

En cas d’erreur « Allowed memory size exhausted », augmentez la limite de WordPress en ajoutant define( 'WP_MEMORY_LIMIT', '256M' ); à wp-config.php, et vérifiez le paramètre PHP memory_limit sous Select PHP Version › Options. Cela dit, si une extension consomme énormément de mémoire sur chaque page, la vraie solution consiste à s’occuper de cette extension.

Une mise à jour interrompue

Si une mise à jour s’est arrêtée en cours de route, vous verrez peut-être un message de maintenance ou constaterez des fichiers manquants. Supprimez le fichier .maintenance dans le dossier du site s’il est présent, puis réinstallez l’extension ou les fichiers du cœur de WordPress (wp core download --force --skip-content).

Étape 6 : en cas de doute, restaurez

Si votre site vous rapporte de l’argent et que vous ne trouvez pas la cause en quelques minutes, restaurez la dernière sauvegarde antérieure à l’erreur et menez l’enquête ensuite. Sur l’hébergement cPanel de WebGee, ouvrez JetBackup, choisissez un point de restauration antérieur à l’apparition du problème et restaurez les fichiers ; ne restaurez la base de données que si la modification l’a touchée, afin de ne pas perdre vos commandes ou commentaires récents. Sur WordPress Cloud, restaurez le site à un instant donné à partir de ses sauvegardes.

Reproduisez ensuite le problème sur une copie de staging, corrigez-le là, puis déployez la correction en production une fois qu’elle fonctionne.

Check-list en cas d’erreur critique

  • Notez ce qui a changé juste avant l’erreur
  • Cherchez l’e-mail « Votre site rencontre un problème technique » et son lien de récupération
  • Activez WP_DEBUG_LOG et lisez la dernière erreur fatale dans wp-content/debug.log
  • Renommez le dossier de l’extension ou du thème indiqué par le journal
  • Revenez à l’ancienne version de PHP si l’erreur a suivi un changement de PHP
  • N’augmentez la mémoire que si le journal indique qu’elle était épuisée
  • Restaurez une sauvegarde si le site doit être remis en ligne immédiatement
  • Désactivez de nouveau le débogage et testez la correction sur un environnement de staging

Vous préférez ne pas affronter cela seul ?

Les erreurs critiques semblent toujours survenir au pire moment. Chez WebGee, nos ingénieurs disponibles 24 h/24 et 7 j/7 sur le chat en direct peuvent analyser les journaux avec vous et vous aider à remettre votre site en ligne, et les restaurations JetBackup ainsi que les copies de staging sont là quand vous en avez besoin.

Un hébergement WordPress avec des ingénieurs disponiblesSauvegardes, staging, rapidité de LiteSpeed et chat en direct 24 h/24 et 7 j/7 avec des ingénieurs qui dépannent WordPress au quotidien. Migration gratuite.
Découvrir l’hébergement WordPress

Questions fréquentes

Qu’est-ce qui provoque le message « Il y a eu une erreur critique sur ce site » ?

Une erreur fatale PHP. Les causes habituelles sont la mise à jour d’une extension ou d’un thème, une extension incompatible avec votre version de PHP, un manque de mémoire PHP, ou une mise à jour corrompue ou incomplète.

Je n’ai pas reçu l’e-mail du mode de récupération. Où est-il ?

Il est envoyé à l’adresse e-mail d’administration indiquée dans Réglages › Général. Vérifiez vos spams, ainsi que la validité de cette adresse. Si votre site n’envoie pas les e-mails de façon fiable, configurez SMTP pour le recevoir la prochaine fois.

Vais-je perdre du contenu en corrigeant le problème ?

Non. Activer le débogage, renommer des dossiers d’extensions ou changer de thème ne touche ni à vos articles, ni à vos pages, ni à vos commandes, qui sont stockés dans la base de données. En revanche, restaurer une ancienne sauvegarde peut le faire : en cas de doute, ne restaurez que les fichiers, ou exportez d’abord vos commandes récentes.

Puis-je corriger l’erreur sans accès à wp-admin ?

Oui. Tout ce qui est décrit dans ce guide se fait via le Gestionnaire de fichiers de cPanel ou en SSH, ce qui est précisément ce qu’il vous faut lorsque wp-admin affiche lui-même l’erreur.

L’erreur est apparue après un changement de version de PHP. Que faire ?

Revenez à la version précédente dans Select PHP Version de cPanel, ou dans WordPress Cloud sous Advanced › Developer tools. Mettez ensuite à jour l’extension ou le thème en cause, puis testez de nouveau la nouvelle version sur un environnement de staging.

  • Erreur critique WordPress
  • Dépannage WordPress
  • WP_DEBUG
  • Mode de récupération
  • JetBackup
À propos de l'auteurSr. Support Engineer chez WebGee
Ajouter WebGee comme source préférée sur Google
« Il y a eu une erreur critique sur ce site » : comment la corriger en 10 minutes | WebGee