Soit cet ua :
Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.9.0.11) Gecko/2009063000 Gentoo Firefox/3.0.11
C'est reconnu en tant que Firefox/3.0 sous Linux, très bien.

En revanche, si je change juste la fin (pour ne pas me retrouver avec un message d'erreur ou une sous-version de certains sites comme gmail, par exemple) pour obtenir
Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.9.0.11) Gecko/2009063000 Gentoo Triton/3.0.11
C'est reconnu comme Mozilla/1, ce qui :
1 - est faux puisqu'il s'agit de Mozilla/5.0 avec le moteur Gecko/1.9
2 - est réducteur, très réducteur

La forme de l'ua est la suivante pour les dérivés :
Mozilla/5.0 ([Système]; [sécurité] = U; [architecture]; [locale]; rv: [révision.du.moteur]) [moteur] = Gecko/[date_de_build] [Nom]/[version]

Ma proposition est la suivante : prendre la fin de la chaîne pour chopper le nom et la version s'il y a la chaîne Gecko/date.
De cette manière, on reconnaît toujours correctement Firefox mais aussi
- Netscape
- Iceweasel
- Shiretoko
- Autres dérivés
- Légers changements d'ua sans /nick (utile pour les tribunes qui bouffent les cookies comme @finss)

Comments

SeeSchloss’s picture

Assigned: Unassigned » SeeSchloss
Status: Active » Fixed

Should work better now :)

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

EnigmaTriton’s picture

Status: Closed (fixed) » Active

Je répète, l'utilisation de [version] tel que décrit lors de la première ouverture du bug devrait rendre les choses plus faciles, plus propres, plus mieux, quoi...

SeeSchloss’s picture

Status: Active » Fixed

Non mais c'est vrai, là c'est fait, mais les UA peuvent aussi avoir autre chose après le Shiretoko/3.5: normalement je prends le string et la version qui suivent immédiatement le Gecko/234567

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.