Votre site affiche une page vide, ou la phrase « Une erreur critique est survenue sur votre site. ». Dans les deux cas, PHP a écrit quelque part un message précis, qui nomme le fichier en cause. Ce guide montre où le lire, comment l'interpréter, et quel geste correspond à chaque message.
wp-config.php et rechargez la page en erreur.PHP Fatal error de wp-content/debug.log : le chemin du fichier nomme l'extension ou le thème en cause.debug.log.Une page blanche est le plus souvent une erreur fatale de PHP : un fichier du site a demandé quelque chose d'impossible, et l'exécution s'est arrêtée avant d'afficher quoi que ce soit. Depuis WordPress 5.2, WordPress intercepte ces erreurs : au lieu d'une page vide, il affiche « Une erreur critique est survenue sur votre site. » et envoie un courriel à l'adresse d'administration du site.
La page reste entièrement blanche dans quelques cas : une version de WordPress plus ancienne, une erreur survenue avant le chargement de ce mécanisme, la constante WP_DISABLE_FATAL_ERROR_HANDLER réglée à true, ou une extension de cache qui sert une page vide enregistrée pendant la panne. La méthode qui suit vaut pour tous ces cas.
Trois gestes peuvent attendre d'avoir lu l'erreur : réinstaller WordPress, supprimer des extensions, restaurer une ancienne sauvegarde. Chacun peut effacer des réglages ou des données récentes, alors que le message d'erreur dit en général quel composant désactiver, sans rien perdre.
Quand WordPress intercepte l'erreur, il envoie à l'adresse courriel d'administration du site un message intitulé « [Nom du site] Votre site connaît un problème technique ». Il nomme l'extension ou le thème en cause, et contient un lien qui ouvre l'administration en mode de récupération.
Connectez-vous au site en SFTP ou par le gestionnaire de fichiers de votre hébergeur, ouvrez wp-config.php à la racine, et remplacez la ligne define( 'WP_DEBUG', false ); par ces quatre lignes :
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );
Elles se placent au-dessus du commentaire qui clôt la zone modifiable du fichier, /* That's all, stop editing! Happy publishing. */. Rechargez la page en erreur, puis ouvrez wp-content/debug.log. WP_DEBUG_DISPLAY à false garde les messages dans le fichier, hors de la page que voient vos visiteurs.
Si debug.log reste vide ou n'apparaît pas, l'erreur a été consignée par PHP directement : cherchez un fichier error_log à la racine du site ou dans wp-admin, ou la rubrique des journaux d'erreurs dans le panneau de votre hébergeur.
Une erreur fatale tient en une ligne : le type d'erreur, sa description, puis in suivi du chemin complet du fichier et du numéro de ligne. Le chemin est l'information la plus utile : wp-content/plugins/nom/ désigne une extension, wp-content/themes/nom/ un thème.
| Le message contient | Ce que cela veut dire | Le geste |
|---|---|---|
Call to undefined function ou Class "…" not found, dans wp-content/plugins/nom-extension/ | L'extension appelle un code absent : mise à jour incomplète, extension dont elle dépend désactivée, ou version de PHP qu'elle ne prend pas en charge. | Désactiver cette extension, puis la réinstaller ou la mettre à jour. |
Allowed memory size of 268435456 bytes exhausted | Le script a dépassé la mémoire allouée à PHP, ici 268 435 456 octets, soit 256 Mo. | Relever WP_MEMORY_LIMIT dans wp-config.php, dans la limite fixée par l'hébergeur, puis chercher ce qui consomme autant. |
PHP Parse error: syntax error, unexpected, dans functions.php on line 42 | Une faute de syntaxe dans un fichier, très souvent après une modification faite à la main dans l'éditeur de thème. | Corriger la ligne indiquée, ou remettre la version précédente du fichier. |
Uncaught TypeError ou Uncaught ArgumentCountError, après un changement de version de PHP | Un composant écrit pour une version de PHP plus ancienne, que la version en place refuse d'exécuter. | Mettre le composant à jour. En dépannage, revenir à la version de PHP précédente dans le panneau de l'hébergeur, le temps de le remplacer. |
Maximum execution time of 30 seconds exceeded | Un traitement a dépassé la durée autorisée par PHP (max_execution_time). | Trouver le traitement (importation, sauvegarde, génération d'images) et relever la limite chez l'hébergeur si ce traitement est légitime. |
define( 'WP_MEMORY_LIMIT', '256M' );
Renommez le dossier de l'extension nommée dans le message, par exemple wp-content/plugins/nom-extension en nom-extension.off. WordPress ne trouve plus l'extension et cesse de la charger ; ses réglages restent enregistrés dans la base de données, et WordPress la désactive à la prochaine ouverture de l'écran des extensions.
Pour un thème, renommer son dossier dans wp-content/themes rend l'administration de nouveau accessible, mais les visiteurs voient une page vide tant qu'aucun thème n'est actif. Ouvrez aussitôt Apparence > Thèmes : WordPress constate que le thème actif est endommagé et revient à un thème par défaut installé.
wp plugin list --status=active
wp plugin deactivate nom-extension
wp theme list
wp theme activate twentytwentyfive
La première commande garde la liste des extensions actives, utile avant toute désactivation groupée. Si WP-CLI s'arrête lui-même sur l'erreur, ajoutez --skip-plugins --skip-themes à la commande : il se lance alors sans charger les extensions ni le thème. Les extensions du dossier wp-content/mu-plugins se chargent malgré tout ; si l'erreur vient de l'une d'elles, renommez son fichier.
Quand le message ne désigne aucun composant, wp plugin deactivate --all désactive toutes les extensions. Si le site revient, réactivez-les une à une, en rechargeant le site entre chaque : la dernière réactivée avant le retour de l'erreur est la bonne.
define( 'WP_DEBUG', false ); et retirez WP_DEBUG_LOG de wp-config.php.wp-content/debug.log : placé dans un dossier accessible depuis le Web, il peut être lu par n'importe qui et contient des chemins du serveur.Avec Serenity by Simafri, on crée votre site Internet professionnel, on l'héberge, on le sécurise et on le tient à jour. Vous nous écrivez, on s'occupe de tout. Nom de domaine et messagerie professionnelle compris.
Parce qu'une erreur fatale de PHP s'est produite, le plus souvent dans une extension ou un thème. WordPress l'intercepte, affiche ce message et envoie un courriel à l'adresse d'administration du site, avec un lien vers le mode de récupération. Le journal de débogage donne le détail de l'erreur et le fichier en cause.
Vérifiez les courriels indésirables et l'adresse courriel d'administration indiquée dans Réglages > Général. Sans courriel, activez le journal de débogage dans wp-config.php, lisez l'erreur dans wp-content/debug.log, puis désactivez le composant en cause en renommant son dossier par SFTP.
Non. Les réglages des extensions sont enregistrés dans la base de données, et non dans leur dossier. Une extension renommée apparaît désactivée ; remettez son nom d'origine et réactivez-la depuis l'écran des extensions pour la retrouver avec ses réglages.
Le composant en erreur ne se charge que dans l'administration, ou la mémoire nécessaire y est plus élevée. WordPress applique WP_MAX_MEMORY_LIMIT aux écrans d'administration et WP_MEMORY_LIMIT au site public. Le journal de débogage donne la même information dans les deux cas : chargez la page d'administration en erreur, puis lisez debug.log.
Simafri
Parlons de votre site web
Dites-nous en deux mots votre projet : on revient vers vous rapidement.
Merci ! Votre demande a bien été envoyée. Nous vous répondrons rapidement.
Vous préférez l'email ? Écrivez-nous à support@simafri.com.