2010-05-08 4 views
0

Il s'agit d'une question générale sur l'écriture d'applications Web.Comment puis-je empêcher mon application de suivre les demandes des robots sous forme de vues?

J'ai une application qui compte les pages vues des articles ainsi qu'un script shorter url que j'ai installé pour un de mes clients. Le problème est que, chaque fois que les robots touchent le site, ils ont tendance à gonfler les pages vues.

Est-ce que quelqu'un a une idée sur la façon d'éliminer les vues de bot du nombre de vues de ces applications?

Répondre

4

Il y a quelques façons dont vous pouvez déterminer si vos articles sont considérés par un utilisateur réel ou par un bot de moteur de recherche. Probablement le meilleur moyen est de vérifier l'en-tête User-Agent envoyé par le navigateur (ou bot). L'en-tête User-Agent est essentiellement un champ qui est envoyé identifiant l'application cliente utilisée pour accéder à la ressource. Par exemple, Internet Explorer peut envoyer un message Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US). Le bot de Google pourrait envoyer quelque chose comme Googlebot/2.1 (+http://www.google.com/bot.html). Il est possible d'envoyer un faux en-tête User-Agent, mais je ne peux pas voir l'utilisateur moyen du site ou une grande entreprise comme Google le faire. Si elle est vide ou une chaîne User-Agent commune associée à un bot commercial, il s'agit probablement d'un bot.

Pendant que vous y êtes, vous voudrez peut-être vous assurer que vous avez un fichier robots.txt à jour. C'est un simple fichier texte qui fournit des règles que les robots automatisés doivent respecter en termes de contenu qu'ils ne sont pas autorisés à récupérer pour l'indexation.

est ici quelques ressources qui peuvent être utiles:

2

Vérifiez User-Agent. Utilisez cette valeur d'en-tête pour distinguer les robots des navigateurs/utilisateurs habituels.

Par exemple,

Google bot:

Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) 

Safari:

Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; lv-lv) AppleWebKit/531.22.7 (KHTML, like Gecko) Version/4.0.5 Safari/531.22.7 
Questions connexes