Prenez le temps à personnaliser les choses les plus anodines. Toutes les raisons de personnaliser sa page 404 - page non trouvée - sur votre serveur.
Choisir de personnaliser sa page d'erreur 404 c'est éviter de voir des visiteurs potentiels se diriger vers des sites concurrents et s'afficher comme site plus fiable et sérieux.
Pourquoi personnaliser sa page 404? Faîtes le test, que faîtes vous si vous tombez vous-même sur une page 404?
Comme la majorité des gens vous allez chercher votre requête d’origine sur un autre site. Si vous souhaitez fidéliser votre clientèle ou seulement ne pas l'effrayer cela passe par la personnalisation de votre page 404.
Si la majorité des url invalides sur un site proviennent d'erreurs facilement rattrapables par le webmaster (erreur de frappe durant le développement, redirections, etc.), d’autres sont quant à elles plus dures à détecter voir impossibles à éviter. Exemple, un lien entrant corrompu ou une faute de frappe d’un visiteur.
Avant tout une page 404 personnalisée, comme toute autre page de votre site, doit être élégante et entrée dans le design – template - de votre site. En effet que ce soit la page 404 par défaut de IIS ou celle d'Apache, elles ne sont ni informatives et encore moins rassurantes pour le visiteur (voir ci-dessous – exemple d'Apache)
Il est important donc de rassurer le visiteur, par le design premièrement, pour qu'il sache qu’il navigue bien sur votre site web, mais surtout par le contenu que vous allez choisir d'y mettre.
Le premier but est de relocaliser le visiteur vers la page qu'il souhaite, si elle existe toujours bien entendu. Pour ce faire intégrer votre module de recherche et/ou des liens vers des pages que vous croyez intéressantes pour le visiteur comme la page d'accueil, un sitemap, un lien vers un article dont l'url est souvent mal écrite...Profitez-en pour diriger le client vers d'autres articles – vos nouveaux par exemple – et également un formulaire de contact s'il souhaite vous contacter pour trouver l'article en question. Cela montre que vous êtes disponible et actif pour aider les visiteurs égarés. La plupart des visiteurs ne vous écrieront pas, et peu importe en fin de compte, votre but est qu'il « rebondisse » sur une autre page de votre site.
Gardez en tête que tomber sur une page 404 est frustrant pour le visiteur. Le fait de personnaliser votre page d'erreur est une opportunité pour vous de ne pas le faire fuir. Le fait de s'excuser peut donc être important, tout comme le fait d'insérer une touche d'humour dans cette page qui fait le plus souvent peur au visiteur.
Si votre page 404 personnalisée englobe la plupart des points vus plus haut, vous avez tout fait pour que votre visiteur errant ne prenne pas peur et reste sur votre site. La première raison de vivre de notre page est donc accomplie, la deuxième étant de connaître quelle page pose problème. Vous pouvez mettre en place un log automatisé de vos pages 404 avec le code suivant :
<?php
mail("yourname@gmail.com", "404 report", $_SERVER['REQUEST_URI'], "From: yourname@gmail.comn")
?>
A deconseillé toute fois pour les gros sites, on favorsiserait plutôt dans ce cas l'utilisation d’une base de données.
Il vous suffit de modifier votre fichier .htaccess pour que votre nouvelle page 404 soit prise en compte.
ErrorDocument 404 /404.php
La directive ErrorDocument 404 dira à Apache d'afficher la page du nom de 404.php dès qu’un visiteur tentera d’afficher une page dont l’url est fausse.
Il faut bien indiquer les chemins absolus et non relatifs dans votre page, peu importe d'où votre page sera chargée tous les liens et imports seront ainsi chargés avec succès.
A noter aussi que votre page 404 doit au moins peser 512 bytes, sinon Internet Explorer chargera sa page 404 par défaut.
Commentaires (+ajouter le vôtre?)
3. Par Paul le Samedi 01 Mai 2010 à 18h48 :
ca ma énormement aidé pour mon site . jai essayé de faire pareil ! bon peut etre pas aussi bien.. merci
2. Par seb le Jeudi 29 Avril 2010 à 13h39 :
Je viens juste de le faire pour mon site www.webarena.fr ! :S
Par contre je vais bien ajouter une petite phrase d'excuse !
Sinon j'ai ajouté en plus dans le mail de retour :
gethostbyaddr($_SERVER['REMOTE_ADDR'])
histoire de récupérer l'IP du visiteur.
Ca peut toujours servir...
1. Par \3i110u le Jeudi 29 Avril 2010 à 13h23 :
Merci pour le tuto, vraiment très utile !! Mon site aura l'air pro maintenant