Fixer une erreur 500 d’un site WordPress
L’erreur 500 Internal Server Error est très fréquente sur WordPress. Surtout lorsque vous effectuez des modifications au niveau des paramètres ou des codes. Et pourtant, retrouver la source de l’erreur n’est pas toujours facile. En effet, outre les causes fréquentes comme les erreurs au niveau des fichiers .htaccess, les permissions de fichiers incorrectes, les timeouts de script, la version PHP incompatible ou les incompatibilités dues à des mises à jour WordPress, toute une multitude de possibilités peuvent causer une erreur 500.
Si vous venez d’effectuer quelques modifications, dans ce cas, il peut être aisé de retrouver la source en remontant sur vos manipulations ou tout simplement en les inversant. Mais lorsque l’erreur 500 apparaît par exemple après une mise à jour du système, vous pourrez rencontrer quelques difficultés à en trouver la cause. C’est ainsi que nous allons vous présenter une liste de méthodes qui vont vous aider à résoudre une erreur 500. Notez que certaines d’entre elles ne permettent même pas de localiser la source du problème, mais contournent celle-ci en cherchant directement une solution valable.
1 – Vérifier si l’erreur 500 a été causée par un plugin ou un thème
Si vous venez d’installer un plugin ou un thème, la solution saute aux yeux. Il suffit de le désactiver. Le problème vient surtout d’une incompatibilité entre le plugin et votre version WordPress ou votre serveur. Si vous n’avez rien touché à votre site, essayez tout de même de désactiver un à un vos plugins et de vous assurer que l’un d’eux ne soit pas la source du problème.
Pour désactiver un plugin ou un thème, il vous suffit de vous rendre dans votre tableau de bord. Les plugins peuvent être désactivés dans « Extensions » puis « Extensions installées ». Par contre, pour un thème, il vous suffit de vous rendre dans « Apparence » puis « Thème », et de choisir un autre thème que celui que vous utilisez. Ne désactivez pas complètement votre thème. Donnez-vous la possibilité d’y revenir facilement s’il n’est pas la source du problème.
Si vous n’avez plus accès à votre tableau de bord (à cause de l’erreur 500), vous devez vous rendre dans le répertoire racine de votre site web, grâce à un logiciel FTP par exemple ou au File manager du tableau d’administration de votre serveur d’hébergement. Les plugins et les thèmes se trouvent dans le répertoire « wp-content ». Il vous suffit alors de modifier le nom du répertoire de votre plugin ou de votre thème pour que le système ne le retrouve pas, et le désactive automatiquement.
2 – Vérifier si l’erreur 500 a été causée par le fichier .htaccess
Toujours grâce au File manager ou au logiciel FTP, rendez-vous dans le répertoire racine de votre site et trouvez le fichier .htaccess. Renommez le fichier existant (toujours cette technique pour éviter de supprimer définitivement et de se donner la possibilité d’y revenir). Créez ensuite un nouveau fichier avec le même nom et mettez-y ces lignes de code :
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
Ces lignes de codes correspondent à celles utilisées par une nouvelle installation vierge de WordPress. Ils ne doivent générer aucune erreur. Si votre site est réparé, ouvrez votre ancien fichier .htacess, le problème se trouve parmi les lignes de code qui s’y trouvent.
3 – Vérifier si l’erreur 500 a été causée par les limites php
Si vous avez un site lourd, il se peut que l’erreur 500 soit causée par une insuffisance de mémoire, de temps d’exécution… liés aux paramètres par défaut de php. Les limites php sont justement instaurées pour éviter que les processus trop lourds ne monopolisent les ressources du serveur. Pour augmenter les capacités php, vous devez ajouter quelques lignes dans le même fichier .htaccess, après la ligne « # END WordPress ». N’oubliez pas d’enregistrer votre fichier avant d’actualiser votre site.
Voici les valeurs que nous recommandons :
php_value upload_max_filesize 128M
php_value post_max_size 128M
php_value max_execution_time 300
php_value max_input_time 300
php_value memory_limit 256M
4 – Vérifier si l’erreur 500 a été causée par la version du php
Certains plugins et thèmes demandent des versions spécifiques de php. Il peut aussi arriver que certains plugins se mettent à jour alors que la version php que vous avez choisie pour votre hébergement n’a pas évolué. En effet, même si les versions antérieures nous sont accessibles, votre hébergeur ne met pas automatiquement votre serveur à jour pour éviter les problèmes de compatibilité. Nous sommes donc invités à mettre à jour notre version de php.
Pour le réaliser, vous devez vous rendre dans le panneau de contrôle de votre hébergement. Vous y trouverez le bouton « Sélectionner la version de php » ou équivalent.
5 – Activer l’affichage des erreurs
Si votre hébergeur vous le permet, vous pouvez avoir accès à l’outil d’affichage des erreurs. Toutefois, vous devez activer ce service pour en bénéficier à moins que ce dernier soit automatique. Rendez-vous dans votre panneau de contrôle, et trouvez le bouton « Configuration php ». Vous devez trouver dans cette section le moyen d’accéder au service.
Vous devez alors avoir à l’écran une information de type : « Parse error : syntax error…. in wp-config.php line 108 ». Dans ce cas, il vous suffit de vous rendre dans le fichier indiqué, de retrouver la ligne spécifiée, et d’y trouver la source de votre problème.
6 – Utiliser le débogage WordPress
Le débogage vous donnera à peu près le même résultat que celui du point précédent. Mais pour cette fois, vous aurez la réponse dans un fichier. Pour retrouver le débogage, ouvrez le fichier « wp-config.php », présent dans la racine de votre site. Retrouvez la ligne « define(‘WP_DEBUG’, false); ».
Remplacez ensuite le tout par :
// Enable WP_DEBUG mode
define( ‘WP_DEBUG’, true );
// Enable Debug logging to the /wp-content/debug.log file
define( ‘WP_DEBUG_LOG’, true );
// Disable display of errors and warnings
define( ‘WP_DEBUG_DISPLAY’, false );
@ini_set( ‘display_errors’, 0 );
// Use dev versions of core JS and CSS files (only needed if you are modifying these core files)
define( ‘SCRIPT_DEBUG’, true );
Actualisez votre site et retrouvez les erreurs dans le fichier « debug.log » du dossier « wp-content ».
7 – Restaurer une sauvegarde
Si vous avez la chance d’avoir une sauvegarde récente en main, il vous suffit de « raser » votre site et d’installer votre fichier de sauvegarde. Vous pouvez aussi utiliser le plugin All-In-One WP Migration ou un autre plugin équivalent, uniquement si vous avez accès à votre tableau de bord. Malheureusement, les modifications antérieures à la sauvegarde vont disparaître. Vous pouvez retrouver vos sauvegardes gratuitement directement depuis votre espace client, rubrique « Sauvegardes ».
8 – Installer une version fraîche de WordPress
Télécharger une nouvelle version de WordPress. Utilisez ensuite un logiciel FTP pour accéder à votre serveur. Attention ! Il est impératif de supprimer le fichier « wp-config-sample.php » du nouveau package, ainsi que le dossier « wp-content » et de tout son contenu. Il est même préférable d’effectuer une sauvegarde du contenu de votre serveur avant de continuer, grâce au tableau de contrôle de votre serveur ou grâce au logiciel FTP (sauvegarde manuelle).
Télécharger ensuite la nouvelle installation WordPress sur votre serveur, sans effacer son contenu, et en confirmant que les fichiers présents sur le site soient écrasés. Vous l’avez compris, les fichiers qui correspondent à ceux que vous avez supprimés plus tôt ne seront pas écrasés.
Nous espérons que cet article a pu vous être utile pour résoudre votre erreur 500 sur votre site WordPress. N’hésitez pas à nous suivre sur Facebook et à partager l’article autour de vous 🙂