Notez cet article :
Cet article vous a été utile ?
Oui
Non
Vous avez noté 0 étoile(s)
Sommaire
Définition
Lorsque vous gérez un site Web, il est inévitable que des erreurs se produisent de temps en temps. L'une des erreurs les plus courantes que vous pourriez rencontrer est l'erreur 500, également connue sous le nom d'Internal Server Error. Cette erreur peut être causée par divers facteurs, tels qu'un problème de code, un conflit de plugin ou de module, ou une erreur de configuration du serveur.
Pour diagnostiquer et résoudre rapidement les erreurs 500, il est essentiel d'avoir les bons outils à portée de main. Dans cette documentation, nous allons vous présenter un outil très utile appelé WebDiag.
WebDiag est un outil de diagnostic des erreurs 500 sur cPanel qui vous permet de localiser rapidement l'emplacement de l'erreur et de prendre les mesures nécessaires pour la corriger. Dans les sections suivantes, nous allons vous guider à travers les étapes pour utiliser WebDiag et résoudre les erreurs 500 sur votre site Web hébergé sur cPanel.
Procédure
L'utilisation de WebDiag pour diagnostiquer les erreurs 500 sur cPanel est simple et rapide. Voici les étapes à suivre :
1. Connectez vous à votre panneau de contrôle cPanel
Pour cela, il vous suffit de vous connecter à votre espace client LWS via ce lien : https://panel.lws.fr
Puis de vous rendre dans la gestion de votre service en cliquant sur le bouton "Gérer" de celui-ci
Puis cliquez sur le bouton "Accès à cPanel"
2. Accéder à l'outil WebDiag
Une fois sur votre panneau de contrôle cPanel, recherchez la rubrique "Logiciel" et cliquez "Erreur Diag".
3. Utilisez WebDiag pour localiser l'emplacement de l'erreur 500
Une fois que vous êtes dans l'outil WebDiag, la première chose qu'on vous demandera, c'est l'url de la page où vous avez une erreur. Renseignez l'url complète en faisant simplement un copier coller de l'URL de la page en question se trouvant dans votre navigateur.
Ensuite, vous arriverez sur une page avec quelques options à définir avant d'arriver sur le rapport d'erreurs.
Nous allons faire un tour de chaque option :
Loguer les erreurs PHP
Avec l'option "Loguer les erreurs PHP", toutes les erreurs PHP qui se produisent sur votre site web sont enregistrées dans un fichier journal nommé "log_errors". Cela signifie que vous pouvez facilement accéder à ces informations pour diagnostiquer les problèmes qui se produisent sur votre site web. L'enregistrement de ces erreurs dans un fichier journal peut également aider à améliorer la sécurité de votre site web en vous permettant de repérer rapidement les erreurs de code ou les vulnérabilités potentielles.
Afficher les erreurs PHP
Lorsque vous activez cette option, vous pouvez facilement détecter les erreurs sur toutes les pages de votre site web en temps réel. Contrairement à un simple message d'erreur générique qui ne fournit aucune information utile, cette option vous permet de voir immédiatement toutes les erreurs qui se produisent en naviguant sur les différentes pages de votre site web.
En activant cette option, vous pouvez collecter des informations détaillées sur les erreurs rencontrées sur votre site web, ce qui peut vous aider à diagnostiquer et à résoudre les problèmes plus rapidement. Cependant, gardez à l'esprit que l'activation de cette option peut ralentir les performances de votre site web, en particulier si votre site reçoit beaucoup de trafic. Il est donc recommandé d'activer temporairement cette option le temps du debugage.
Erreurs PHP à afficher/loguer
Pour cette option, nous avons 4 possibilités de configuration :
E_ALL & ~E_NOTICE : Cette constante est utilisée pour activer la journalisation de toutes les erreurs PHP, à l'exception des avertissements de type "notice". Les avertissements de type "notice" sont des messages d'information qui ne sont pas considérés comme des erreurs, mais plutôt comme des indications de comportement du script. En utilisant cette constante, vous pouvez limiter la journalisation des erreurs à celles qui sont considérées comme importantes.
E_ALL & ~E_DEPRECATED & ~E_STRICT : Cette constante est utilisée pour activer la journalisation de toutes les erreurs PHP, à l'exception des avertissements de type "deprecated" et des erreurs de type "strict". Les avertissements de type "deprecated" indiquent que le code utilise une fonction ou une méthode qui est obsolète et qui pourrait être supprimée dans une version future de PHP, tandis que les erreurs de type "strict" indiquent que le code utilise une variable qui n'a pas été déclarée. En utilisant cette constante, vous pouvez limiter la journalisation des erreurs à celles qui sont considérées comme importantes, mais évitez la journalisation de messages d'avertissement moins critiques.
~E_ALL : Cette constante est utilisée pour désactiver la journalisation de toutes les erreurs PHP. Cela signifie que votre script PHP s'exécutera sans journaliser les erreurs, ce qui peut être utile si vous voulez ignorer temporairement les erreurs pour des raisons de débogage ou de performance. Cependant, il est important de noter que la désactivation de la journalisation des erreurs peut rendre plus difficile la détection et la résolution des problèmes dans votre script.
OPCache
Lorsque l'OPCache est activé, PHP compile les fichiers PHP en bytecode et les stocke en mémoire cache pour accélérer l'exécution des scripts ultérieurs. Toutefois, cela peut causer des problèmes lors de la mise à jour de fichiers PHP, car les modifications apportées ne sont pas immédiatement prises en compte. En effet, le fichier mis à jour ne sera pas utilisé tant que la version précédemment compilée du fichier sera en cache.
En désactivant l'OPCache, vous pouvez constater immédiatement les changements effectués sur les fichiers PHP sans attendre que la version compilée du fichier expire. Cela signifie que vous pouvez vérifier immédiatement si une page fonctionne correctement après avoir effectué des modifications. Pour cette raison, il est recommandé de désactiver l'OPCache, en particulier lors du développement ou du débogage de scripts PHP.
Mise en cache de page
Lorsque le système de mise en cache Fastest Cache est activé sur votre site web, il stocke des copies des pages web en cache pour accélérer leur chargement. Cela peut améliorer considérablement les performances de votre site, mais peut également causer des problèmes lors de la mise à jour du contenu, car les changements apportés ne sont pas immédiatement pris en compte.
En désactivant Fastest Cache, vous pouvez constater immédiatement les changements effectués sur votre site web sans avoir à vider le système de cache NGINX/Varnish. Cela peut être particulièrement pratique lors du débogage de scripts, car vous pouvez voir immédiatement les résultats de vos modifications sans avoir à attendre que le système de cache se mette à jour.
Protection WAF
Le pare-feu applicatif (WAF) est une mesure de sécurité importante pour protéger votre site web contre les attaques malveillantes. Cependant, certaines règles de sécurité strictes du WAF peuvent entraîner la suppression d'informations précieuses lorsqu'une erreur se produit sur votre site web, tels que des requêtes SQL ou des chemins de dossier. Ces informations sont essentielles pour le débogage de votre site web, mais elles sont souvent cachées pour des raisons de sécurité.
En désactivant la protection WAF, vous pouvez accéder à ces messages d'erreur détaillés, ce qui peut faciliter la résolution de problèmes sur votre site web. Toutefois, il est important de comprendre que la désactivation de la protection WAF peut également rendre votre site web plus vulnérable aux attaques. Par conséquent, il est recommandé de désactiver temporairement la protection WAF uniquement lors du débogage de votre site web, puis de la réactiver une fois que les problèmes ont été résolus.
Une fois les options configurées, il vous suffit de cliquer sur le bouton bleu "Commencer la diagnostic" pour visualiser le rapport sur la page.
Voici une configuration que je vous conseille pour une grande majorité des cas :
Après avoir validé les options, un rapport détaillé vous sera présenté. Ce rapport est composé de trois parties distinctes :
Le code de statut HTTP
Le code de statut HTTP est une partie importante de la réponse HTTP, qui indique si la requête a réussi ou échoué. Les codes de statut HTTP sont des nombres à trois chiffres qui sont divisés en cinq classes :
Voici quelques exemples de codes de statut HTTP courants :
Les informations d'en-tête HTTP
L'en-tête HTTP (HTTP header en anglais) est une partie de la requête et de la réponse HTTP qui précède le corps du message. Elle contient des informations supplémentaires sur la requête ou la réponse qui ne sont pas visibles dans le corps du message.
Les en-têtes HTTP peuvent contenir des informations telles que :
Les en-têtes HTTP sont souvent utilisées pour spécifier des options supplémentaires pour la requête ou la réponse, ou pour fournir des informations contextuelles qui sont utiles pour comprendre la requête ou la réponse.
Les logs d'erreur PHP
Les logs d'erreurs PHP sont un outil utile pour diagnostiquer les problèmes de site web, car ils fournissent des informations détaillées sur les erreurs qui se produisent. Ils peuvent être utilisés pour identifier les erreurs dans le code PHP, les problèmes de configuration du serveur, les problèmes de sécurité et d'autres problèmes liés au site web.
Les logs d'erreurs PHP peuvent contenir des informations telles que :
Grâce aux informations que vous trouverez dans cette partie, vous pourrez comprendre et corriger les problèmes rencontrés sur votre site. Vous aurez très souvent le type de problème rencontré, la page dans laquelle le script a rencontré un problème et le numéro de ligne. Vous pouvez donc via ces informations trouver votre erreur et la corriger.
Assurez-vous que votre code est bien structuré et exempt d'erreurs syntaxiques. Utilisez des outils tels que des linters (inspecteur de code) et des IDE (logiciels de programmation) pour vous aider à détecter les erreurs de syntaxe.
Vérifiez que votre site web est compatible avec la version de PHP que vous utilisez. Si vous utilisez une version obsolète de PHP, cela peut entraîner des erreurs 500.
Évitez les boucles infinies dans votre code, car cela peut causer des problèmes de performances et des erreurs 500.
Vérifiez que vous avez suffisamment de ressources (mémoire, espace disque, etc.) allouées à votre site web. Si vous manquez de ressources, cela peut entraîner des erreurs 500. Vous pourrez cependant augmenter certaines valeurs via l'onglet option de l'outil "Sélectionner une version de PHP" de la rubrique Logiciel.
Mettez à jour régulièrement votre site web et tous les composants (plugins, thèmes, etc.) pour éviter les problèmes de compatibilité et les vulnérabilités de sécurité.
Effectuez des sauvegardes régulières de votre site web pour pouvoir le restaurer rapidement en cas de problème.
En suivant ces conseils, vous pouvez aider à prévenir les erreurs 500 et maintenir votre site web en bonne santé.
Notez cet article :
Cet article vous a été utile ?
Oui
Non