Comment afficher les erreurs sur mon site ?

créé le .

Cette partie de page n'est ni plus ni moins qu'un extrait du manuel PHP. Ce manuel est la bible de tout codeur en php. De ce fait, cette partie pour afficher les erreurs n'affichera que les erreurs PHP. Je vous mets cet extrait uniquement afin de vous le rendre accessible plus rapidement : http://php.net/manual/fr/function.error-reporting.php N'oubliez pas qu'il faut que votre page soit en .php. Ce détail peut sembler à certains ridicule mais je préfère le préciser. En effet, du code PHP ne pourra pas fonctionner si votre page est au format .html ou .htm Ensuite, il vous suffit de placer dans les premières lignes de votre page le bout de code qui correspond à vos attentes. Tout code commençant par // représente des commentaires pour indiquer l'objectif du code qui suit. <?php // Désactiver le rapport d'erreurs error_reporting(0); // Rapporte les erreurs d'exécution de script error_reporting(E_ERROR | E_WARNING | E_PARSE); // Rapporter les E_NOTICE peut vous aider à améliorer vos scripts // (variables non initialisées, variables mal orthographiées..) error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE); // Rapporte toutes les erreurs à part les E_NOTICE // C'est la configuration par défaut de php.ini error_reporting(E_ALL & ~E_NOTICE); // Reporte toutes les erreurs PHP (Voir l'historique des modifications) error_reporting(E_ALL); // Reporte toutes les erreurs PHP error_reporting(-1); // Même chose que error_reporting(E_ALL); ini_set('error_reporting', E_ALL); ?>

Que signifie le code d'erreur sur mon site ?

Pour découvrir le code de l'erreur, vous pouvez utiliser le module Firebug.
Firebug est un plugin de Firefox très utile pour décrypter le fonctionnement de la page. Les codes d'erreurs du web sont notés entre 300 à 599.
Voici un code pour afficher les erreurs.Vous devez le placer sur toutes les pages. il est donc préférable de le mettre dans le header.

<?php ini_set('display_errors', 1); error_reporting(e_all); ?>

Pour les enregistrer dans un fichier de log, vous pouvez rajouter le code suivant :

<?php ini_set('log_errors', 1); ini_set('error_log', dirname(__file__) . '/log_erreurs_web.txt'); ?>

Le fichier log_erreurs_web.txt comportera l'ensemble des erreurs présentées sur votre site. Faites attention à lui donner les bons droits d'accès.

Supprimer le cache sur son site

Afin de travailler plus rapidement sur votre site, il est quasi indispensable de supprimer la gestion du cache. Pour cela, rien de plus simple. Dans le fichier .htaccess placé à la racine de votre site, rajoutez la ligne suivante :

Header set Cache-Control "no-cache"

Formaweb a référencé pour vous une série d'erreur et vous propose quelques solutions pour réparer votre site web. Si vous êtes perdu face à une telle situation, n'hésitez pas à nous contacter. Nous trouverons une solution ensemble.

erreur 301

Cette erreur signifie que la ressource demandée n'est plus disponible sur le serveur. Vérifiez que vous êtes bien sur la bonne page.

erreur 302

Cette erreur signifie que la ressource demandée est temporairement indisponible sur le serveur. Vous êtes donc invité à patienter.

erreur 305

L'utilisation d'un Proxy est obligatoire pour visualiser cette page.

erreur 400

Aie, une erreur de syntaxe est présente sur la page. C'est certainement l'erreur la plus difficile à corriger si vous n'avez pas plus de détail. Je vous invite donc à afficher les erreurs comme présenté en haut de cette page. Vous pouvez également trouver sur le web un correcteur de syntaxe qui pourrait vous être d'une grande utilité.

erreur 401

Ce code est un immense panneau interdit. Le document ou le répertoire que vous essayez de visualiser est protégé.

accès forbidden / site indisponible

L'erreur 403 est liée à des droits mal attribués aux dossiers et fichiers nécessaires au bon affichage du site. Pour en savoir plus sur la gestion des droits, je vous invite à lire la page :A quoi correspondent les droits sur les fichiers. Il est également possible que le fichier .htaccess empêche la connexion à cette page ou à des fichiers. Pensez à vérifier qu'il n'y ait pas la ligne denyforall dans le fichier .htaccess Pour en savoir plus sur ce fichier, je vous invite à aller sur la page comment protéger mon site si cette erreur est affiché sur le site = prb de droits

erreur 404 / accès forbidden / site indisponible

L'erreur 404 est une erreur d'url. Cela signifie que l'adresse url appelée par le navigateur n'est pas la page ayant le contenu attendu. Cette erreur est souvent liée à une simple erreur d'orthographe, un tiret ou un format de page (html au lieu de php). Il vous faut donc vérifier que l'adresse de la page correspond bien à celle souhaitée. Vous devez également, dans ce cas de figure, penser à la réécriture d'url. De nombreux CMS appellent leur page par des identifiants et non par des noms de pages clairs et compréhensifs. Dans le nom réellement attribué par les CMS, vous pouvez retrouver la catégorie de l'article et son numéro de référence. Dans un souci de référencement, les CMS vous permettent de faire de la réécriture d'url. Le CMS va alors transformer intégralement le nom de la page pour lui attribuer un nom SEO friendly, entendez par là efficace pour le référencement. Ces réécritures d'url sont alors notées, selon les cas de figure, soit dans la base de données soit dans le fichier .htaccess.

erreur 414

Cette erreur est assez rare mais elle existe encore. Elle signifie que l'url de la page est trop longue.

erreur 415

Vous tentez actuellement de visualiser un média. Son format n'est pas supporté.

erreur 429

Même si la page est blanche, FireBug permet de trouver des erreurs intéressantes. Exemple : l'erreur 429 erreur 429 = trop de requête, donc activation du php-pfm si le soucis persiste => upgrade d'offre

erreur 500

internal serveur error prb de droit .htacess Délai de script Maximum dépassé - max execution time chmod 777

erreur 501

L'affichage de la page nécessite une action qui n'est pas gérée par le serveur.

erreur 502

bad getaway Nginx APache >>> Contactez le service client. Leur serveur est probablement défaillant.

erreur 503

Le serveur est temporairement indisponible.

erreur 505

La page tente de suivre un protocole non supporté par le serveur.

erreur 520/523

erreur liée au CDN >>> modifier l'IP pour une IP sans geocache. ou S'assurer que son nom de domaine est bien déclaré avec le CDN. Retrouvez l'adresse IP de votre hébergement web.

site non installé

Possibilité 1 : Erreur dans le déploiement d'une redirection web
> la redirection web a été ajoutée partiellement. Vérifiez que : > la redirection est correctement ajoutée pour le domaine principal et le sous-domaine "www" > l'IP de pointagepour la redirection est correcte Guide redirection d'un nom de domaine
Possibilité 2 : l'un des domaines ou sous-domaine n'a pas été correctement installé.
Exemple : je pointe mon domaine vers l'IP du serveur web (cluster), mais il n'est pas attaché dans l'espace client. Vérifiez que : Votre domaine ou sous-domaine est ajouté depuis l'espace client via le bouton "Attacher un domaine". Vérifier que cela est aussi réalisé pour le sous-domaine "www". Il faut aussi vérifier que l'IP de pointage est correcte (l'IP de l'hébergement apparaît dans l'espace client). Exemple sur OVH.com : Guide de mise en place des multi-domaines
Possibilité 3: votre nom de domaine ne pointe pas vers la bonne IP
ou pointe vers l'IP d'un hébergement web sur laquelle votre nom de domaine n'est pas installé. Exemple :votre nom de domaine est sur le cluster12, mais pointe vers l'adresse IP du cluster14.

page blanche

- Activer les erreurs PHP
dans les fichiers index.php de son site rajouter la ligne de code : ini_set("display_errors",1); Attention cela doit être ajouté après la balise d'ouverture de PHP : De cette manière la site affichera une erreur plus parlante qu'il sera possible de corriger. Activer la variable display errors et plus pertinent que d'activer le mode débug du CMS en question. Il est aussi intéressant d'activer : error_reporting(E_ALL); Toujours après la balise d'ouverture de PHP : Cf: http://www.php.net/manual/fr/function.error-reporting.php
- Vérifier s'il s'agit d'un soucis de cache
Rajouter à la fin de l'url du site du client :82 Exemple : http://votresite.tld:82 Cela permet de faire un appel direct au site sans utiliser le cache Cela fonctionne avec les port de 81 à 85.
- FireBug est mon ami !
Même si la page est blanche, FireBug permet de trouver des erreurs intéressantes. Exemple : vérifier si l'erreur 429 est présente erreur 429 = trop de requête, donc activation du php-pfm si le soucis persiste => upgrade d'offre
Astuce
Afin de s'assurer que le soucis provienne du site vous pouvez aussi tester d'appeler un fichier autre que du php, exemple une image, un fichier texte. S'il répond correctement, c'est que l'erreur est liée au site web.
Chez OVH, Mettre son fichier .ovhconfig en mode développement :
Ce fichier .ovhconfig devra contenir le code : app.engine=php app.engine.version=5.4 http.firewall=none environment=development Un guide est disponible à ce sujet pour les sites hébergés chez ovh : -> https://www.ovh.com/fr/g1175.optimisation-php-fpm

database error

Si cela arrive toujours : prb de connexion à la BDD ou page introuvable Si c'est aléatoire : Trop de connexion simultanées

Serveur has gone away

Cette erreur se produit lorsque votre serveur de base de données est en panne.
Le message s'affiche lorsque le serveur SQL n'est plus disponible ou surchargé.

html et php = txt

Si votre site affiche vos scripts php comme du texte, vous devez enlever la variable php handler dans le fichier .htaccess



Vous notre contenu ?

Lisez toute l'info de Formaweb avec votre café

Erreur : SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known