De la gestion des pages d’erreur
oct
7
2008
Un des points importants des grands préceptes ergonomiques est d’anticiper et de bien répondre aux éventuelles erreurs des internautes.
Parmi les pages d’erreur les plus fréquentes le lien cassé renvoyant vers une page n’existant pas ou n’existant plus survient assez fréquemment notamment dans le cas d’accès via des moteurs de recherche qui continuent à renvoyer vers des pages n’existant plus.
Pour anticiper et informer les internautes d’une erreur, il faut :
- délivrer une page d’erreur comportant au moins la navigation principale de manière à offrir à l’internaute le moyen de reprendre une navigation correcte (c’est un moindre mal)
- délivrer une page d’erreur informative précisant l’internaute l’origine/la cause de l’erreur.
Pour mettre en oeuvre des pages d’erreur
Voici le protocole à suivre pour des sites en php :
- Créer une page d’erreur à la charte du site et contenant au moins la navigation principale + un moyen de contacter le webmaster/propriétaire du site, la nommer “error.php”;
- Configurer le fichier “.htaccess” comme suit :
1 2 3 4 5 6 7 8 9 10
ErrorDocument 500 /error.php?id=500 ErrorDocument 501 /error.php?id=501 ErrorDocument 502 /error.php?id=502 ErrorDocument 503 /error.php?id=503 ErrorDocument 504 /error.php?id=504 ErrorDocument 400 /error.php?id=400 ErrorDocument 401 /error.php?id=401 ErrorDocument 403 /error.php?id=403 ErrorDocument 404 /error.php?id=404 ErrorDocument 405 /error.php?id=405
Avant le tout début du code source de la page php, coller le code suivant :
Dans les META, on peut écrire dynamiquement le title comme suit, de manière à ce que le titre de la page soit informatif :
1 2 3 4 5 6 7 8 9 10 11 | <?php $err = $_GET['id']; ?> <?php if($err == ‘400?) $err_text = “La syntaxe de la requête est mal formulée ou est impossible à satisfaire”; ?> <?php if($err == ‘401?) $err_text = “Accès non autorisé. Vérifiez votre login et password”; ?> <?php if($err == ‘403?) $err_text = “L’accès à ce dossier ou fichier est interdit”; ?> <?php if($err == ‘404?) $err_text = “La page que vous demandez n’existe pas”; ?> <?php if($err == ‘405?) $err_text = “Méthode non permise”; ?> <?php if($err == ‘500?) $err_text = “Le serveur à rencontré un problème interne”; ?> <?php if($err == ‘501?) $err_text = “Mauvaise passerelle d’accès”; ?> <?php if($err == ‘503?) $err_text = “Service non disponible”; ?> <?php if($err == ‘501?) $err_text = “Temps d’accès à la passerelle expiré”; ?> <?php if($err == ‘501?) $err_text = “Version HTTP non gérée”; ?> |
Dans le corps de ta page appeler les variables et les mettre en page en css par exemple comme suit :
1 | <h2 class="qualite"><strong>ERREUR </strong></h2> |
Grâce à ces variables, l’internaute sera informé précisément de l’erreur rencontrée.
Pour en savoir plus et appronfondir ce sujet je vous renvoie vers l’article http://blog.zenstyle.fr/?2006/09/21/59-personnalisation-des-pages-d-erreurs. Et pour voir un exemple appliqué vous pouvez suivre le lien suivant menant vers une page n’existant pas : http://www.natural-net.fr/contact.htm.
En respectant ce protocole, vous améliorez le satisfecit des internautes commettant des erreurs, donnerez une meilleure image du site, 2 points forts pour fidéliser les internautes.

