Rails vite fait : empêcher les bots de créer des sessions
By jul on Friday, April 6 2007, 17:07 - Permalink
Quand le traffic d'un site augmente; il y a fort à parier que googlebot, msnbot et d'autres viennent y jeter un coup d'oeil. Le problème est que ces bots ne connaissent pas les cookies, et font générer une nouvelle session à rails à chacune de leurs visites. Ce qui peut vite devenir un cauchemar pour le répertoire tmp/sessions.
Pour éviter cela, on peut empêcher les bots de créer une session, il suffit de déterminer si le visiteur est un bot et de désactiver les sessions. Dans le contrôleur :
session :off,
:if => Proc.new { |request| request.user_agent =~ /(Baidu|Gigabot|Googlebot|Exabot|QihooBot|crawler|Crawler|Spider|Nutch|psbot|Seekbot|MJ12bot|IRLbot|libwww-perl|lwp-trivial|msnbot|SiteUptime|Slurp|WordPress|ZIBB|ZyBorg)/i }
Il s'agit bien sur d'une liste non exhaustive des bots existants. Vous pouvez en trouver d'autres en étudiant un peu les logs de votre site.
Source (en) : http://gurge.com/blog/2007/01/08/turn-off-rails-sessions-for-robots/
Comments
Disclaimer | Privacy Policy
The Warlock can be one of the best damage casters in World of Warcraft, but it's also a very complicated class with its damage-over-time (DoT) spells and minions for any occasion. You learn a variety of curses that you will use depending on your situation, and you also gain the ability to send your enemies running away from you in terror.
This post's comments feed