Comment réparer une erreur de serveur interne 500 sur votre site WordPress
Publié: 2017-12-25La redoutable erreur de serveur interne 500. Cela semble toujours arriver au moment le plus inopportun et vous vous retrouvez soudainement à vous démener pour comprendre comment remettre votre site WordPress en ligne. Faites-nous confiance, nous sommes tous passés par là. D'autres erreurs qui se comportent de la même manière que vous avez peut-être également vues incluent l'erreur effrayante établissant une connexion à la base de données et le redoutable écran blanc de la mort. Mais à partir du moment où votre site tombe en panne, vous perdez des visiteurs et des clients. Sans oublier que cela semble tout simplement mauvais pour votre marque.
Aujourd'hui, nous allons nous plonger dans l'erreur de serveur interne 500 et vous expliquer comment remettre rapidement votre site en ligne. En savoir plus ci-dessous sur les causes de cette erreur et ce que vous pouvez faire pour l'empêcher à l'avenir.
- Qu'est-ce qu'une erreur de serveur interne 500 ?
- Comment corriger l'erreur de serveur interne 500
500 Erreur de serveur interne (causes les plus courantes) :
500 Une erreur de serveur interne dans WordPress peut être causée par de nombreux facteurs. Si vous en rencontrez un, il y a de fortes chances qu'un (ou plusieurs) des éléments suivants soit à l'origine du problème :
- Cache du navigateur.
- Identifiants de connexion à la base de données incorrects.
- Base de données corrompue.
- Fichiers corrompus dans votre installation WordPress.
- Problèmes avec votre serveur de base de données.
- Fichiers principaux de WordPress corrompus.
- Fichier .htaccess et limite de mémoire PHP corrompus.
- Problèmes avec les plugins et thèmes tiers.
- Expiration de PHP ou erreurs PHP fatales avec des plugins tiers.
- Mauvaises autorisations de fichiers et de dossiers.
- Limite de mémoire PHP épuisée sur votre serveur
- Fichier .htaccess corrompu ou cassé.
- Erreurs dans les scripts CGI et Perl.
Consultez notre guide ultime pour corriger l'erreur de serveur interne 500
Qu'est-ce qu'une erreur de serveur interne 500 ?
L'Internet Engineering Task Force (IETF) définit l'erreur de serveur interne 500 comme :
Le code d'état 500 (Erreur interne du serveur) indique que le serveur a rencontré une condition inattendue qui l'a empêché de répondre à la demande.
Lorsque vous visitez un site Web, votre navigateur envoie une requête au serveur sur lequel le site est hébergé. Le serveur prend cette requête, la traite et renvoie les ressources demandées (PHP, HTML, CSS, etc.) avec un en-tête HTTP. Le HTTP inclut également ce qu'ils appellent un code d'état HTTP. Un code d'état est un moyen de vous informer de l'état de la demande. Il peut s'agir d'un code d'état 200 qui signifie "Tout va bien" ou d'un code d'état 500 qui signifie que quelque chose s'est mal passé.
Il existe de nombreux types de codes d'erreur d'état 500 (500, 501, 502, 503, 504, etc.) et ils signifient tous quelque chose de différent. Dans ce cas, une erreur de serveur interne 500 indique que le serveur a rencontré une condition inattendue qui l'a empêché de répondre à la demande (RFC 7231, section 6.6.1).

500 variantes d'erreur de serveur interne
En raison des différents serveurs Web, systèmes d'exploitation et navigateurs, une erreur de serveur interne 500 peut se présenter de différentes manières. Mais ils communiquent tous la même chose. Vous trouverez ci-dessous quelques-unes des nombreuses variantes que vous pourriez voir sur le Web :
- "Erreur de serveur interne 500"
- "HTTP 500"
- "Erreur Interne du Serveur"
- "HTTP 500 - Erreur interne du serveur"
- "Erreur 500"
- "Erreur HTTP 500"
- "500 - Erreur interne du serveur"
- "Erreur interne du serveur 500. Désolé, quelque chose s'est mal passé."
- "500. C'est une erreur. Il y avait une erreur. Veuillez réessayer plus tard. C'est tout ce que nous savons."
- "Le site Web ne peut pas afficher la page - HTTP 500."
- "N'est actuellement pas en mesure de traiter cette demande. ERREUR HTTP 500."
Vous pouvez également voir ce message l'accompagnant :
Le serveur a rencontré une erreur interne ou une mauvaise configuration et n'a pas pu traiter votre demande. Veuillez contacter l'administrateur du serveur, [email protected] et informez-le de l'heure à laquelle l'erreur s'est produite, et de tout ce que vous auriez pu faire qui aurait pu causer l'erreur. Plus d'informations sur cette erreur peuvent être disponibles dans le journal des erreurs du serveur.

D'autres fois, vous pouvez simplement voir un écran blanc vide. Lorsqu'il s'agit de 500 erreurs de serveur internes, cela est en fait assez courant dans des navigateurs comme Firefox et Safari.

Les grandes marques peuvent même avoir leurs propres messages d'erreur de serveur interne 500 personnalisés, comme celui-ci d'Airbnb.

Voici un autre exemple d'erreur de serveur creative 500 des gens de readme.

Même le puissant YouTube n'est pas à l'abri de 500 erreurs de serveur internes.

S'il s'agit d'un serveur IIS 7.0 (Windows) ou supérieur, ils disposent de codes d'état HTTP supplémentaires pour indiquer plus précisément la cause de l'erreur 500 :
- 500.0 – Une erreur de module ou ISAPI s'est produite.
- 500.11 - L'application se ferme sur le serveur Web.
- 500.12 - L'application est occupée à redémarrer sur le serveur Web.
- 500.13 – Le serveur Web est trop occupé.
- 500.15 – Les demandes directes pour global.asax ne sont pas autorisées.
- 500.19 – Les données de configuration ne sont pas valides.
- 500.21 – Module non reconnu.
- 500.22 – Une configuration httpModules ASP.NET ne s'applique pas en mode Managed Pipeline.
- 500.23 – Une configuration ASP.NET httpHandlers ne s'applique pas en mode Managed Pipeline.
- 500.24 – Une configuration d'emprunt d'identité ASP.NET ne s'applique pas en mode Managed Pipeline.
- 500.50 – Une erreur de réécriture s'est produite lors du traitement de la notification RQ_BEGIN_REQUEST. Une erreur de configuration ou d'exécution de règle entrante s'est produite.
- 500.51 – Une erreur de réécriture s'est produite lors du traitement de la notification GL_PRE_BEGIN_REQUEST. Une erreur de configuration globale ou d'exécution de règle globale s'est produite.
- 500.52 – Une erreur de réécriture s'est produite lors du traitement de la notification RQ_SEND_RESPONSE. Une exécution de règle sortante s'est produite.
- 500.53 – Une erreur de réécriture s'est produite lors du traitement de la notification RQ_RELEASE_REQUEST_STATE. Une erreur d'exécution de règle sortante s'est produite. La règle est configurée pour être exécutée avant la mise à jour du cache utilisateur de sortie.
500.100 – Erreur ASP interne.
500 Erreurs Impact sur le SEO
Contrairement aux erreurs 503, qui sont utilisées pour le mode de maintenance de WordPress et indiquent à Google de vérifier ultérieurement, une erreur 500 peut avoir un impact négatif sur le référencement si elle n'est pas corrigée immédiatement. Si votre site n'est en panne que pendant 10 minutes et qu'il est exploré de manière constante de nombreuses fois, le robot obtiendra simplement la page livrée à partir du cache. Ou Google pourrait même ne pas avoir la possibilité de le réexplorer avant qu'il ne soit sauvegardé. Dans ce scénario, tout va bien.
Cependant, si le site est indisponible pendant une période prolongée, disons plus de 6 heures, Google peut considérer l'erreur 500 comme un problème au niveau du site qui doit être résolu. Cela pourrait avoir un impact sur votre classement . Si vous craignez de répéter 500 erreurs, vous devez d'abord comprendre pourquoi elles se produisent. Certaines des solutions ci-dessous peuvent vous aider.
Comment réparer l'erreur 500 du serveur interne
Par où commencer le dépannage lorsque vous voyez une erreur de serveur interne 500 sur votre site WordPress ? Parfois, vous ne savez même pas par où commencer. Généralement, 500 erreurs se trouvent sur le serveur lui-même, mais d'après notre expérience, ces erreurs proviennent de deux choses, la première est une erreur de l'utilisateur (problème côté client) et la seconde est qu'il y a un problème avec le serveur . Nous allons donc plonger dans un peu des deux.
Ce n'est jamais gênant pic.twitter.com/pPKxbkvI9K
– Osez Obasanjo (@Carnage4Life) 26 septembre 2019
Découvrez ces causes courantes et les moyens de corriger l'erreur de serveur interne 500 et de vous remettre en marche en un rien de temps.
1. Essayez de recharger la page
Cela peut sembler un peu évident pour certains, mais l'une des premières choses les plus simples que vous devriez essayer lorsque vous rencontrez une erreur de serveur interne 500 est simplement d'attendre environ une minute et de recharger la page (F5 ou Ctrl + F5). Il se peut que l'hôte ou le serveur soit simplement surchargé et que le site revienne tout de suite. Pendant que vous attendez, vous pouvez également essayer rapidement un autre navigateur pour éliminer ce problème.
Une autre chose que vous pouvez faire est de coller le site Web dans downforeveryoneorjustme.com. Ce site Web vous indiquera si le site est en panne ou s'il s'agit d'un problème de votre côté. Un outil comme celui-ci vérifie le code d'état HTTP renvoyé par le serveur. Si c'est autre chose qu'un 200 "Tout va bien", alors il renverra une indication vers le bas.
Nous avons également remarqué que cela peut parfois se produire immédiatement après la mise à jour d'un plugin ou d'un thème sur votre site WordPress. Il s'agit généralement d'hôtes qui ne sont pas configurés correctement. Ce qui se passe, c'est qu'ils subissent un délai d'attente temporaire juste après. Cependant, les choses se résolvent généralement en quelques secondes et il suffit donc de rafraîchir.
2. Videz le cache de votre navigateur
Vider le cache de votre navigateur est toujours une autre bonne étape de dépannage avant de plonger dans un débogage plus approfondi de votre site. Vous trouverez ci-dessous des instructions sur la façon de vider le cache dans les différents navigateurs :
- Comment forcer l'actualisation d'une seule page pour tous les navigateurs
- Comment effacer le cache du navigateur pour Google Chrome
- Comment effacer le cache du navigateur pour Mozilla Firefox
- Comment effacer le cache du navigateur pour Safari
- Comment vider le cache du navigateur pour Internet Explorer
- Comment effacer le cache du navigateur pour Microsoft Edge
- Comment effacer le cache du navigateur pour Opera
3. Vérifiez les journaux de votre serveur
Vous devriez également tirer parti de vos journaux d'erreurs. Si vous êtes un client Kinsta, vous pouvez facilement voir les erreurs dans la visionneuse de journaux du tableau de bord MyKinsta. Cela peut vous aider à affiner rapidement le problème, surtout s'il résulte d'un plugin sur votre site.

Si votre hébergeur ne dispose pas d'un outil de journalisation, vous pouvez également activer le mode de débogage de WordPress en ajoutant le code suivant à votre fichier wp-config.php pour activer la journalisation :
define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false );
Les journaux se trouvent généralement dans le répertoire /wp-content. D'autres, comme ici chez Kinsta, pourraient avoir un dossier dédié appelé "logs".

Vous pouvez également consulter les fichiers journaux dans Apache et Nginx, qui se trouvent généralement ici :
- Apache : /var/log/apache2/error.log
- Nginx : /var/log/nginx/error.log
Si vous êtes un client Kinsta, vous pouvez également profiter de notre outil d'analyse pour obtenir une ventilation du nombre total de 500 erreurs et voir à quelle fréquence et quand elles se produisent. Cela peut vous aider à résoudre s'il s'agit d'un problème persistant, ou peut-être quelque chose qui s'est résolu de lui-même.

Identifiez et résolvez facilement les erreurs dans la visionneuse de journaux de votre puissant tableau de bord centralisé MyKinsta. Essayez Kinsta gratuitement.
Si l'erreur 500 s'affiche en raison d'une erreur PHP fatale, vous pouvez également essayer d'activer le rapport d'erreur PHP. Ajoutez simplement le code suivant au fichier qui génère l'erreur. En règle générale, vous pouvez affiner le fichier dans l'onglet console de Google Chrome DevTools.
ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL);
Et vous devrez peut-être également modifier votre fichier php.ini avec ce qui suit :
display_errors = on
4. Erreur lors de l'établissement d'une connexion à la base de données
500 erreurs de serveur internes peuvent également se produire à partir d'une erreur de connexion à la base de données. En fonction de votre navigateur, vous pouvez rencontrer différentes erreurs. Mais les deux généreront un code d'état HTTP 500 indépendamment des journaux de votre serveur.
Vous trouverez ci-dessous un exemple de ce à quoi ressemble un message "Erreur lors de l'établissement d'une connexion à la base de données" dans votre navigateur. La page entière est vide car aucune donnée ne peut être récupérée pour afficher la page, car la connexion ne fonctionne pas correctement. Non seulement cela casse le front-end de votre site, mais cela vous empêchera également d'accéder à votre tableau de bord WordPress.

Alors, pourquoi cela se produit-il exactement ? Eh bien, voici quelques raisons courantes ci-dessous.

- Le problème le plus courant est que vos identifiants de connexion à la base de données sont incorrects . Votre site WordPress utilise des informations de connexion distinctes pour se connecter à sa base de données MySQL.
- Votre base de données WordPress est corrompue. Avec autant de pièces mobiles avec des thèmes, des plugins et des utilisateurs qui les suppriment et les installent constamment, les bases de données sont parfois corrompues. Cela peut être dû à une table manquante ou individuellement corrompue, ou peut-être que certaines informations ont été supprimées par accident.
- Vous pouvez avoir des fichiers corrompus dans votre installation WordPress. Cela peut même arriver parfois à cause de pirates.
- Problèmes avec votre serveur de base de données. Un certain nombre de choses peuvent être erronées du côté des hôtes Web, telles que la surcharge de la base de données à cause d'un pic de trafic ou l'absence de réponse à cause d'un trop grand nombre de connexions simultanées. Ceci est en fait assez courant avec les hôtes partagés car ils utilisent les mêmes ressources pour un grand nombre d'utilisateurs sur les mêmes serveurs.
Consultez notre article détaillé sur la façon de corriger l'erreur d'établissement d'une connexion à une base de données dans WordPress.
5. Vérifiez vos plugins et thèmes
Les plugins et thèmes tiers peuvent facilement provoquer 500 erreurs de serveur internes. Nous avons vu tous les types les provoquer ici chez Kinsta , des plugins de curseur aux plugins de rotation des publicités. Souvent, vous devriez voir l'erreur immédiatement après avoir installé quelque chose de nouveau ou exécuté une mise à jour. C'est l'une des raisons pour lesquelles nous recommandons toujours d'utiliser un environnement intermédiaire pour les mises à jour ou au moins d'exécuter les mises à jour une par une. Sinon, si vous rencontrez une erreur de serveur interne 500, vous vous efforcez soudainement de déterminer celle qui l'a provoquée.
Vous pouvez résoudre ce problème de plusieurs manières en désactivant tous vos plugins. N'oubliez pas que vous ne perdrez aucune donnée si vous désactivez simplement un plugin. Si vous pouvez toujours accéder à votre administrateur, un moyen rapide de le faire est de naviguer jusqu'à "Plugins" et de sélectionner "Désactiver" dans le menu des actions en masse. Cela désactivera tous vos plugins.

Si cela résout le problème, vous devrez trouver le coupable. Commencez à les activer un par un, en rechargeant le site après chaque activation. Lorsque vous voyez le retour d'erreur interne du serveur 500, vous avez trouvé le plugin qui se comporte mal. Vous pouvez ensuite contacter le développeur du plugin pour obtenir de l'aide ou publier un ticket d'assistance dans le référentiel WordPress.
Si vous ne pouvez pas vous connecter à l'administrateur WordPress, vous pouvez FTP sur votre serveur et renommer votre dossier de plugins en quelque chose comme plugins_old. Ensuite, vérifiez à nouveau votre site. Si cela fonctionne, vous devrez alors tester chaque plugin un par un. Renommez votre dossier de plugins en "plugins", puis renommez chaque dossier de plugins à l'intérieur de celui-ci, un par un, jusqu'à ce que vous le trouviez. Vous pouvez également essayer de le reproduire d'abord sur un site intermédiaire.

Assurez-vous toujours que vos plugins, thèmes et noyau WordPress sont à jour. Et vérifiez que vous utilisez une version prise en charge de PHP. S'il s'avère qu'il s'agit d'un conflit avec un mauvais code dans un plugin, vous devrez peut-être faire appel à un développeur WordPress pour résoudre le problème.
6. Réinstallez WordPress Core
Parfois, les fichiers principaux de WordPress peuvent être corrompus, en particulier sur les sites plus anciens. Il est en fait assez facile de télécharger à nouveau uniquement le cœur de WordPress sans affecter vos plugins ou vos thèmes. Nous avons un guide détaillé avec 5 façons différentes de réinstaller WordPress. Et bien sûr, assurez-vous de faire une sauvegarde avant de continuer. Passez à l'une des sections ci-dessous :
- Comment réinstaller WordPress à partir du tableau de bord WordPress tout en préservant le contenu existant
- Comment réinstaller manuellement WordPress via FTP tout en préservant le contenu existant
- Comment réinstaller manuellement WordPress via WP-CLI tout en préservant le contenu existant
7. Erreur d'autorisation
Une erreur d'autorisations avec un fichier ou un dossier sur votre serveur peut également provoquer une erreur de serveur interne 500. Voici quelques recommandations typiques pour les autorisations en ce qui concerne les autorisations de fichiers et de dossiers dans WordPress :
- Tous les fichiers doivent être 644 (-rw-r–r–) ou 640.
- Tous les répertoires doivent être 755 (drwxr-xr-x) ou 750.
- Aucun répertoire ne devrait jamais recevoir 777, même les répertoires de téléchargement.
- Durcissement : wp-config.php peut également être défini sur 440 ou 400 pour empêcher les autres utilisateurs du serveur de le lire.
Voir l'article WordPress Codex sur la modification des autorisations de fichiers pour une explication plus détaillée.
Vous pouvez facilement voir vos autorisations de fichiers avec un client FTP (comme indiqué ci-dessous). Vous pouvez également contacter l'équipe d'assistance de votre hébergeur WordPress et lui demander de rapidement obtenir les autorisations de fichiers GREP sur vos dossiers et fichiers pour vous assurer qu'ils sont correctement configurés.

8. Limite de mémoire PHP
Une erreur de serveur interne 500 peut également être causée par l'épuisement de la limite de mémoire PHP sur votre serveur. Vous pouvez essayer d'augmenter la limite. Suivez les instructions ci-dessous pour modifier cette limite dans cPanel, Apache, votre fichier php.ini et le fichier wp-config.php
.
Augmenter la limite de mémoire PHP dans cPanel
Si vous utilisez un hôte qui utilise cPanel, vous pouvez facilement le modifier à partir de l'interface utilisateur. Sous Logiciel, cliquez sur "Sélectionner la version PHP".

Cliquez sur "Basculer vers les options PHP".

Vous pouvez ensuite cliquer sur l'attribut memory_limit
et modifier sa valeur. Cliquez ensuite sur "Enregistrer".

Augmenter la limite de mémoire PHP dans Apache
Le fichier .htaccess
est un fichier caché spécial qui contient divers paramètres que vous pouvez utiliser pour modifier le comportement du serveur, jusqu'à un niveau spécifique de répertoire. Connectez-vous d'abord à votre site via FTP ou SSH, jetez un œil à votre répertoire racine et voyez s'il y a un fichier .htaccess
.

Si c'est le cas, vous pouvez modifier ce fichier pour ajouter le code nécessaire pour augmenter la limite de mémoire PHP. Il est très probablement défini sur 64M ou moins, vous pouvez essayer d'augmenter cette valeur.
php_value memory_limit 128M
Augmenter la limite de mémoire PHP dans le fichier php.ini
Si ce qui précède ne fonctionne pas, vous pouvez essayer de modifier votre fichier php.ini
. Connectez-vous à votre site via FTP ou SSH, accédez au répertoire racine de votre site et ouvrez ou créez un fichier php.ini
.

Si le fichier s'y trouvait déjà, recherchez les trois paramètres et modifiez-les si nécessaire. Si vous venez de créer le fichier ou si les paramètres sont introuvables, vous pouvez coller le code ci-dessous. Vous pouvez bien sûr modifier les valeurs pour répondre à vos besoins.
memory_limit = 128M
Certains hébergeurs partagés peuvent également exiger que vous ajoutiez la directive suPHP dans votre fichier .htaccess
pour que les paramètres du fichier php.ini
ci-dessus fonctionnent. Pour cela, éditez votre fichier .htaccess
, également situé à la racine de votre site, et ajoutez le code suivant vers le haut du fichier :
<IfModule mod_suphp.c> suPHP_ConfigPath /home/yourusername/public_html </IfModule>
Si ce qui précède n'a pas fonctionné pour vous, il se peut que votre hôte ait verrouillé les paramètres globaux et l'ait plutôt configuré pour utiliser les fichiers .user.ini
. Pour modifier votre fichier .user.ini
, connectez-vous à votre site via FTP ou SSH, accédez au répertoire racine de votre site et ouvrez ou créez un fichier .user.ini
. Vous pouvez ensuite coller le code suivant :
memory_limit = 128M
Augmenter la limite de mémoire PHP dans wp-config.php
La dernière option n'est pas celle dont nous sommes fans, mais si tout le reste échoue, vous pouvez l'essayer. Tout d'abord, connectez-vous à votre site via FTP ou SSH et localisez votre fichier wp-config.php, qui se trouve généralement à la racine de votre site.

Ajoutez le code suivant en haut de votre fichier wp-config.php
:
define('WP_MEMORY_LIMIT', '128M');
Vous pouvez également demander à votre hôte si vous rencontrez des problèmes de limite de mémoire. Nous utilisons l'outil Kinsta APM et d'autres méthodes de dépannage ici chez Kinsta pour aider les clients à déterminer quel plugin, requête ou script pourrait épuiser la limite. Vous pouvez également utiliser votre propre clé New Relic personnalisée à partir de votre propre licence.

9. Problème avec votre fichier .htaccess
Kinsta n'utilise que Nginx, mais si vous utilisez un hébergeur WordPress qui exécute Apache, il se peut très bien que votre fichier .htaccess
ait un problème ou soit corrompu. Suivez les étapes ci-dessous pour en recréer un nouveau à partir de zéro.
Tout d'abord, connectez-vous à votre site via FTP ou SSH et renommez votre fichier .htaccess
en .htaccess_old
.

Normalement, pour recréer ce fichier, vous pouvez simplement réenregistrer vos permaliens dans WordPress. Cependant, si vous êtes au milieu d'une erreur de serveur interne 500, vous ne pouvez probablement pas accéder à votre administrateur WordPress, ce n'est donc pas une option. Par conséquent, vous pouvez créer un nouveau fichier .htaccess
et saisir le contenu suivant. Téléchargez-le ensuite sur votre serveur.
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
Voir le WordPress Codex pour plus d'exemples, comme un fichier .htaccess
par défaut pour le multisite.
10. Erreurs de codage ou de syntaxe dans votre script CGI/Perl
500 erreurs causées par des erreurs dans CGI et Perl sont beaucoup moins courantes qu'auparavant. Bien que cela mérite toujours d'être mentionné, en particulier pour ceux qui utilisent cPanel, où de nombreux scripts CGI en un clic sont encore utilisés. Comme le dit AEM sur Stack Overflow :
CGI a été remplacé par une grande variété de technologies de programmation Web, y compris PHP, diverses extensions Apache comme mod_perl, Java de différentes saveurs et frameworks, y compris Java EE, Struts, Spring, etc., des frameworks basés sur Python comme Django, Ruby on Rails et bien d'autres d'autres frameworks Ruby et diverses technologies Microsoft.
Voici quelques conseils lorsque vous travaillez avec des scripts CGI :
- Lors de l'édition, utilisez toujours un éditeur de texte brut, tel qu'Atom, Sublime ou Notepad++. Cela garantit qu'ils restent au format ASCII.
- Assurez-vous que les autorisations correctes de chmod 755 sont utilisées sur les scripts et les répertoires CGI.
- Téléchargez vos scripts CGI en mode ASCII (que vous pouvez sélectionner dans votre éditeur FTP) dans le répertoire cgi-bin de votre serveur.
- Vérifiez que les modules Perl dont vous avez besoin pour votre script sont installés et pris en charge.
Identifiez et résolvez facilement les erreurs dans la visionneuse de journaux de votre puissant tableau de bord centralisé MyKinsta. Essayez Kinsta gratuitement.
11. Problème de serveur (vérifiez auprès de votre hôte)
Enfin, étant donné que 500 erreurs de serveur internes peuvent également survenir à cause de l'expiration du délai PHP ou d'erreurs PHP fatales avec des plugins tiers , vous pouvez toujours vérifier auprès de votre hébergeur WordPress. Parfois, ces erreurs peuvent être difficiles à résoudre sans un expert. Voici quelques exemples courants d'erreurs qui déclenchent 500 codes d'état HTTP sur le serveur et qui pourraient vous faire vous gratter la tête.
PHP message: PHP Fatal error: Uncaught Error: Call to undefined function mysql_error()...
PHP message: PHP Fatal error: Uncaught Error: Cannot use object of type WP_Error as array in /www/folder/web/shared/content/plugins/plugin/functions.php:525
Nous surveillons tous les sites de nos clients ici chez Kinsta et sommes automatiquement avertis lorsque ces types d'erreurs se produisent . Cela nous permet d'être proactifs et de commencer à résoudre le problème immédiatement. Nous utilisons également des hôtes gérés LXD et des conteneurs logiciels LXC orchestrés pour chaque site. Cela signifie que chaque site WordPress est hébergé dans son propre conteneur isolé, qui dispose de toutes les ressources logicielles nécessaires à son fonctionnement (Linux, Nginx, PHP, MySQL). Les ressources sont 100% privées et ne sont partagées avec personne d'autre ni même avec vos propres sites.
Les délais d'attente PHP peuvent également survenir en raison du manque de travailleurs PHP , bien que ceux-ci provoquent généralement des erreurs 504, et non 500. Ceux-ci déterminent le nombre de requêtes simultanées que votre site peut gérer à un moment donné. Pour faire simple, chaque requête non mise en cache pour votre site Web est gérée par un PHP Worker.
Lorsque les travailleurs PHP sont déjà occupés sur un site, ils commencent à constituer une file d'attente. Une fois que vous avez atteint votre limite de travailleurs PHP, la file d'attente commence à repousser les requêtes plus anciennes, ce qui peut entraîner 500 erreurs ou requêtes incomplètes. Lisez notre article détaillé sur les travailleurs PHP.
Surveillez votre site
Si vous craignez que ces types d'erreurs ne se produisent sur votre site à l'avenir, vous pouvez également utiliser un outil comme updown.io pour surveiller et vous avertir immédiatement si elles se produisent. Il envoie périodiquement une requête HTTP HEAD à l'URL de votre choix. Vous pouvez simplement utiliser votre page d'accueil. L'outil vous permet de définir des fréquences de contrôle de :
- 15 secondes
- 30 secondes
- 1 minute
- 2 minutes
- 5 minutes
- 10 minutes
Il vous enverra un e-mail si et quand votre site tombe en panne. Voici un exemple ci-dessous.
Cela peut être particulièrement utile si vous essayez de déboguer un plugin défectueux ou si vous êtes sur un hôte partagé, qui a tendance à surcharger ses serveurs. Cela peut vous donner la preuve de la fréquence à laquelle votre site est effectivement en panne (même au milieu de la nuit). C'est pourquoi nous recommandons toujours d'utiliser un hébergeur WordPress géré. Assurez-vous de consulter notre article qui explore les 9 principales raisons de choisir l'hébergement WordPress géré.
Résumé
500 erreurs de serveur internes sont toujours frustrantes, mais j'espère que vous connaissez maintenant quelques moyens supplémentaires de les résoudre pour remettre rapidement votre site en état de fonctionnement. N'oubliez pas que ces types d'erreurs sont généralement causés par des plugins tiers, des erreurs PHP fatales, des problèmes de connexion à la base de données, des problèmes avec votre fichier .htaccess ou des limites de mémoire PHP, et parfois des délais d'attente PHP.
Y a-t-il quelque chose que nous avons manqué? Peut-être avez-vous une autre astuce pour résoudre les 500 erreurs de serveur internes. Si oui, faites-le nous savoir ci-dessous dans les commentaires.