Résoudre l'écran blanc de la mort WordPress

L'"écran blanc de la mort" (WSOD) est l'un des problèmes WordPress les plus frustrants. Votre site n'affiche qu'un écran blanc sans message d'erreur, vous laissant sans savoir ce qui ne va pas. Dans cet article, nous vous aidons étape par étape à trouver la cause et à la résoudre.

Qu'est-ce qui cause l'écran blanc de la mort ?

Le WSOD survient quand WordPress rencontre une erreur PHP fatale mais ne peut pas afficher de message d'erreur. Les causes les plus courantes sont :

  • Conflits de plugins - Un plugin incompatible avec votre version WordPress ou d'autres plugins
  • Problèmes de thème - Une erreur dans votre thème actif ou thème enfant
  • Limite de mémoire PHP - WordPress n'a pas assez de mémoire pour fonctionner
  • Fichiers corrompus - Fichiers core WordPress endommagés
  • Incompatibilité de version PHP - Votre site tourne sur une version PHP trop ancienne ou trop récente

Étape 1 : Activer WP_DEBUG

La première étape est de rendre les erreurs PHP visibles. Faites-le via FTP ou le gestionnaire de fichiers dans DirectAdmin.

Se connecter via FTP

Établissez d'abord une connexion FTP avec votre site. Cherchez le fichier wp-config.php dans le répertoire racine.

Activer WP_DEBUG

Ouvrez wp-config.php et trouvez la ligne : define( WP_DEBUG, false );

Changez-la en : define( WP_DEBUG, true );

Enregistrez le fichier et rechargez votre site. Vous devriez maintenant voir un message d'erreur PHP indiquant le problème.

Important : Désactivez WP_DEBUG après avoir résolu le problème, car les messages d'erreur contiennent des informations sensibles.

Étape 2 : Désactiver les plugins via FTP

Si vous ne pouvez plus vous connecter à WordPress, vous pouvez désactiver manuellement les plugins :

  1. Connectez-vous via FTP à votre site
  2. Naviguez vers wp-content/plugins/
  3. Renommez le dossier "plugins" en "plugins_disabled"
  4. Rechargez votre site - ça marche ? Alors c'est un plugin
  5. Renommez le dossier en "plugins"
  6. Renommez les dossiers de plugins individuels pour trouver le coupable

Tester systématiquement

  1. Renommez les dossiers de plugins un par un (ex. "akismet" en "akismet_disabled")
  2. Testez votre site après chaque modification
  3. Le plugin causant le problème est celui après lequel votre site refonctionne
  4. Supprimez ou mettez à jour ce plugin

Étape 3 : Vérifier le thème

Si les plugins ne sont pas le problème, vérifiez votre thème :

  1. Via FTP, allez dans wp-content/themes/
  2. Renommez le dossier de votre thème actif (ex. "twentytwentyfour_disabled")
  3. WordPress active automatiquement un thème par défaut
  4. Le site fonctionne ? Installez un autre thème ou corrigez le vôtre

Conseil : Gardez toujours un thème WordPress par défaut installé pour ce genre de situations.

Étape 4 : Augmenter la limite de mémoire PHP

Une limite de mémoire trop basse est une cause fréquente. Il y a plusieurs façons de l'augmenter.

Via wp-config.php

Ajoutez cette ligne à wp-config.php, avant la ligne "That is all, stop editing!" : define( WP_MEMORY_LIMIT, 256M );

Via .htaccess

Ajoutez à votre fichier .htaccess dans le répertoire racine : php_value memory_limit 256M

Via DirectAdmin

La meilleure solution permanente est via DirectAdmin :

  1. Connectez-vous à DirectAdmin
  2. Allez dans "Select PHP version" ou "PHP Settings"
  3. Trouvez "memory_limit" et augmentez à 256M ou plus
  4. Enregistrez les paramètres

Pour plus de détails sur les limites PHP, voir notre article sur PHP mémoire et limites.

Étape 5 : Restaurer les fichiers core WordPress

Parfois les fichiers WordPress deviennent corrompus. Voici comment les restaurer :

  1. Téléchargez une copie fraîche de WordPress via wordpress.org
  2. Via FTP, uploadez uniquement les dossiers wp-admin et wp-includes
  3. Uploadez aussi les fichiers individuels dans le répertoire racine (sauf wp-config.php !)
  4. Attention : ne touchez PAS à wp-content, c'est là que se trouvent vos uploads et thèmes

Étape 6 : Vérifier la version PHP

Une version PHP incompatible peut causer le WSOD :

  1. Connectez-vous à DirectAdmin
  2. Allez dans "Select PHP version"
  3. Vérifiez quelle version PHP est active
  4. WordPress 6.x nécessite au minimum PHP 7.4, recommandé PHP 8.1 ou 8.2
  5. Certains anciens plugins ne fonctionnent pas avec PHP 8.x - essayez PHP 7.4

Étape 7 : Vérifier les logs d'erreurs

Si WP_DEBUG ne donne pas de sortie, vérifiez les logs d'erreurs du serveur :

  1. Dans DirectAdmin, allez dans "Error Log"
  2. Regardez les dernières lignes pour les erreurs PHP
  3. Le message d'erreur vous indique souvent directement le problème

Avec l'hébergement Theory7, vous avez toujours accès aux logs d'erreurs via DirectAdmin.

Messages d'erreur courants

"Allowed memory size exhausted"

Augmentez la limite de mémoire PHP comme décrit à l'étape 4.

"Maximum execution time exceeded"

Augmentez max_execution_time dans DirectAdmin PHP Settings à 300 secondes.

"Parse error: syntax error"

Il y a une faute de frappe dans un fichier PHP. Le message d'erreur indique exactement quel fichier et quelle ligne.

"Fatal error: Call to undefined function"

Un plugin ou thème utilise une fonction qui n'existe pas dans votre version PHP. Mettez à jour le plugin ou changez de version PHP.

Mesures préventives

Prévenez les futurs problèmes WSOD :

  • Faites des sauvegardes régulières - Utilisez un plugin de sauvegarde ou la fonction de sauvegarde dans DirectAdmin
  • Testez les mises à jour en staging - Mettez d'abord à jour plugins et thèmes sur un environnement de staging
  • Gardez tout à jour - Les plugins obsolètes sont la principale cause de problèmes
  • Utilisez des plugins de qualité - Choisissez des plugins avec de bons avis et des mises à jour régulières

Besoin d'aide ?

Si vous n'y arrivez pas, contactez le support Theory7. Nous vous aidons volontiers à résoudre les problèmes WordPress.