Page d'Erreur Personnalisée
Voici la solution pour personnaliser vos pages d'erreur et être prévenu lorsqe'une erreur se produit.
Première étape : Configurer le fichier .htaccess
Pour plus de simplicité, nous utilisons qu'un seul fichier pour gérer toutes les erreurs, ce fichier récupère le code d'errer pour adapter le message d'erreur.
ErrorDocument 400 /erreur.php
ErrorDocument 404 /erreur.php
ErrorDocument 410 /erreur.php
ErrorDocument 500 /erreur.php
ErrorDocument 403 /erreur.php
Deuxième étape : Créer la page d'erreur
Intégrer ce code dans un fichier erreur.php enregistré à la racine de votre site web.
Renseignez votre adresse email pour recevoir les emails de notification.
<?php
$destinataire =votreadresse@votredomaine.com;
$url_erreur = $_SERVER["REQUEST_URI"];
$serveur_erreur = $_SERVER["REDIRECT_STATUS"];
$message_erreur['401'] = "Authentification nécessaire";
$message_erreur['403'] = "Accès interdit";
$message_erreur['404'] = "La page spécifiée n'existe pas";
$message_erreur['410'] = "Le contenu auquel vous faites référence a été définitivement supprimé du serveur.";
$message_erreur['500'] = "Erreur interne du serveur";
$libelle_erreur = "Erreur $message_erreur";
$sujet="ERREUR sur ".$_SERVER['SERVER_NAME'];
if(empty($_SERVER['HTTP_REFERER'])) { $provenance="Pas de lien intermédiaire, connexion directe"; } else { $provenance=($_SERVER['HTTP_REFERER']); }
$message_error="\nUne erreur s'est produite sur www.".$_SERVER['SERVER_NAME']." \n
Erreur: ".$serveur_erreur."\n
Provenance : ".$provenance."\n
Page Demandee: ".($_SERVER['REQUEST_URI']). " \n
Navigateur : ".($_SERVER['HTTP_USER_AGENT'])." \n
Adresse IP : ".($_SERVER['REMOTE_ADDR'])." \n
Nom de domaine : ".gethostbyaddr($_SERVER['REMOTE_ADDR'])." \n";
if($serveur_erreur == 404){@mail($destinataire,$sujet,$message_error,"FROM:erreur@".$_SERVER['SERVER_NAME']);}
$affichage_contenu .= "<h3>ERREUR [$serveur_erreur]</h3>";
$affichage_contenu .= $message_error." \n";
$affichage_contenu .= "$message_erreur[$serveur_erreur]";
$affichage_contenu = notifications(nl2br($affichage_contenu), 0);
$meta_titre = 'Erreur '.$serveur_erreur;
?>







