User agent

Page d’aide sur l’homonymie

Pour les articles homonymes, voir Agent.

Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.
Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.

Cet article ne cite pas suffisamment ses sources ().

Si vous disposez d'ouvrages ou d'articles de référence ou si vous connaissez des sites web de qualité traitant du thème abordé ici, merci de compléter l'article en donnant les références utiles à sa vérifiabilité et en les liant à la section « Notes et références ».

En pratique : Quelles sources sont attendues ? Comment ajouter mes sources ?

Un agent utilisateur (aussi appelé user agent) est une application logicielle cliente qui utilise un protocole réseau particulier ; l'expression est principalement employée pour identifier l'application permettant aux internautes et aux moteurs de recherche de parcourir le Web. Les agents utilisateur du Web vont de la gamme des navigateurs (browser en anglais) jusqu'aux robots d'indexation (crawler en anglais), en passant par les lecteurs d'écran ou les navigateurs braille pour les personnes ayant une déficience physique.

Quand un internaute visite une page Web, une chaîne de caractères est généralement envoyée au serveur pour identifier l'agent utilisateur. Elle est incluse dans la requête HTTP par l'en-tête « User-Agent » et elle donne des informations comme : le nom de l'application, la version, le système d'exploitation, la langue, etc.

Les robots d'indexation incluent souvent une URL et/ou une adresse électronique si le webmestre veut contacter l'opérateur du robot. La chaîne « User-Agent » est l'un des critères utilisé pour exclure un certain nombre de pages ou une partie d'un site Web en utilisant le « protocole d'exclusion des robots » (robots.txt). Ceci permet aux webmestres qui estiment que certaines parties de leur site Web ne devraient pas être incluses dans les données recueillies par un robot en particulier, ou qu'un robot en particulier épuise trop la bande passante, de l'inviter à ne pas visiter ces pages.

Modification

Cette section ne cite pas suffisamment ses sources (janvier 2019). 
Pour l'améliorer, ajoutez des références de qualité et vérifiables (comment faire ?) ou le modèle {{Référence nécessaire}} sur les passages nécessitant une source.

À des moments divers[évasif] de son histoire, l'utilisation du Web a été dominée par un navigateur et beaucoup de sites ont été conçus pour fonctionner avec celui-ci en particulier, plutôt que de suivre les normes telles que celles du W3C et de l'IETF.

Au niveau du code de ces sites[style à revoir], se situe une partie dédiée à la détection du navigateur. En fonction de ce que renvoie cette partie, le site retourne du contenu différent. Dans des cas extrêmes, il existe aussi des sites complètement inaccessibles.

Pour contrer ces pratiques, les divers navigateurs ont masqué ou détourné la chaîne, afin de s'identifier autrement au niveau du code de détection ; souvent, la véritable identité du navigateur est incluse plus loin dans la chaîne.

L'exemple le plus ancien est celui d'Internet Explorer qui utilise une chaîne User-Agent commençant par « Mozilla/<version> (compatible; MSIE<version>... », afin de recevoir le contenu destiné à Netscape Navigator, son rival principal au début de son développement. Il ne s'agit pas d'une référence au navigateur Firefox, développé beaucoup plus tard, mais au nom de code original pour le navigateur, qui était également le nom de la mascotte de la société Netscape.

Ce format de chaîne User-Agent a été depuis copié par d'autres, en partie parce qu'Internet Explorer est devenu, à son tour, le navigateur dominant.

Opera et Safari, des rivaux d'Internet Explorer, ont alors mis en place des systèmes où l'utilisateur peut choisir une fausse chaîne User-Agent pour l'envoyer. Certains, par exemple comme Safari, reproduisent entièrement la chaîne User-Agent ; d'autres, comme Opera, reproduisent la chaîne User-Agent mais ajoutent le véritable nom du navigateur à son extrémité. Cette dernière approche mène à une chaîne contenant trois noms et versions : en premier, la chaîne User-Agent prétend être Mozilla (Netscape Navigator), puis MSIE (Internet Explorer) et finalement Opera.

D'autres programmes utilisant le protocole HTTP, comme les outils de téléchargement ou les navigateurs en mode différé, ont la capacité de changer la chaîne User-Agent envoyée aux serveurs. Ceci pour être accepté par des serveurs qui refusaient de servir ces programmes tout de suite, ou pas du tout parce qu'ils sont la plupart du temps considérés comme responsable de la surcharge.

Ce cercle vicieux n'est pas près de s'arrêter dans le domaine des navigateurs Web. Quelques développeurs utilisant les standards ont commencé une campagne intitulée Viewable With Any Browser pour encourager les créateurs de page Web à respecter les standards officiels, et pas les particularités des navigateurs.

En 2005, beaucoup de sites Web sont devenus plus conformes aux normes qu'auparavant. À cause de cette modification, la part de marché des navigateurs comme Opera et Safari est souvent minimisée, alors que la part de marché des navigateurs plus populaires comme Mozilla Firefox et Internet Explorer est souvent exagérée.[réf. nécessaire]

La modification régulière de l'user-agent peut avoir un intérêt du point de vue de la protection de la vie privée, vu qu'il sera difficile de savoir si plusieurs user-agent sont du fait d'un seul ou de plusieurs utilisateurs. Il existe des extensions de navigateur permettant de changer périodiquement l'user-agent.

Exemples

Exemple
Version O.S. User Agent
1.0 Windows XP Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041202 Firefox/1.0
1.0.4 Ubuntu Linux, avec AMD64 Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.7.6) Gecko/20050512 Firefox
1.0.4 FreeBSD 5.4 avec i386 Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.8) Gecko/20050609 Firefox/1.0.4
1.0.6 Windows XP Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.10) Gecko/20050716 Firefox/1.0.6
1.0.7 Mac OS X 10.3 PPC Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7
1.5b1 Windows XP Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b4) Gecko/20050908 Firefox/1.4
1.5 Windows XP Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8) Gecko/20051111 Firefox/1.5
2.0 Windows XP Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1) Gecko/20061010 Firefox/2.0
2.0 Ubuntu Linux Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.8.1.1) Gecko/20060601 Firefox/2.0.0.1 (Ubuntu-edgy)
2.0.0.6 Ubuntu Linux, avec AMD64 Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.1.6) Gecko/20071008 Ubuntu/7.10 (gutsy) Firefox/2.0.0.6
2.0.0.14 Windows XP Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14
2.0.0.20 Windows 7 Mozilla/5.0 (Windows; U; Windows NT 6.1; fr; rv:1.8.1.20) Gecko/20081217 Firefox/2.0.0.20
2.0.0.21 Haiku Mozilla/5.0 (BeOS; U; Haiku BePC; en-US; rv:1.8.1.21) Gecko/20090218 Firefox/2.0.0.21
3.0b5 Ubuntu Linux Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.9b5) Gecko/2008041514 Firefox/3.0b5
3.0.1 Windows XP Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1
3.0.1 Windows Vista Mozilla/5.0 (Windows; U; Windows NT 6.0; fr; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1
3.0.3 Mac OS X 10.5 Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; fr; rv:1.9.0.3) Gecko/2008092414 Firefox/3.0.3
3.0.4 Fedora 10 Mozilla/5.0 (X11; U; Linux x86_64; fr; rv:1.9.0.4) Gecko/2008111217 Fedora/3.0.4-1.fc10 Firefox/3.0.4
3.0.4 OpenSolaris Mozilla/5.0 (X11; U; SunOS i86pc; fr; rv:1.9.0.4) Gecko/2008111710 Firefox/3.0.4
3.1b2 Windows 7 Mozilla/5.0 (Windows; U; Windows NT 6.1; fr; rv:1.9.1b2) Gecko/20081201 Firefox/3.1b2
3.5.1 Linux Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.9.1.1) Gecko/20090715 Firefox/3.5.1
3.6 Windows 7 Mozilla/5.0 (Windows; U; Windows NT 6.1; fr; rv:1.9.2) Gecko/20100115 Firefox/3.6
4.0.1 Debian Mozilla/5.0 (X11; Linux x86_64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
5.0 Windows XP Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0
5.0 Android Mozilla/5.0 (Android; Linux armv7l; rv:5.0) Gecko/20110615 Firefox/5.0 Fennec/5.0
15.0.1 Windows XP Mozilla/5.0 (Windows NT 5.1; rv:15.0) Gecko/20100101 Firefox/15.0.1
19.0.2 OpenSuse Mozilla/5.0 (X11; Linux x86_64; rv:19.0) Gecko/20100101 Firefox/19.0
19.0.2 Android Mozilla/5.0 (Android; Tablet; rv:19.0) Gecko/19.0 Firefox/19.0
34.0 Linux Mint 17 Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:34.0) Gecko/20100101 Firefox/34.0
64.0 64 bits Windows 8 64 bits Mozilla/5.0 (Windows NT 6.3; Win64; x64; rv:64.0) Gecko/20100101 Firefox/64.0
129.0 64 bits Windows 11 Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:129.0) Gecko/20100101 Firefox/129.0
Exemple
Version O.S. User Agent
0.2.149.27 Windows XP Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13
3.0.195.0 Linux Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US) AppleWebKit/532.0 (KHTML, like Gecko) Chrome/3.0.195.0 Safari/532.0
4.0.202.0 Linux Mozilla/5.0 (X11; U; Linux x86_64; en-US) AppleWebKit/532.0 (KHTML, like Gecko) Chrome/4.0.202.0 Safari/532.0
13.0.782.107 Windows Vista Mozilla/5.0 (Windows NT 6.0) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.107 Safari/535.1
14.0.835.186 Windows 7 Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.186 Safari/535.1
21.0.1180.75 Windows 7 (64 bits) Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.75 Safari/537.1
26.0.1410.43 Linux Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.43 Safari/537.31
26.0.1410.49 Android Mozilla/5.0 (Linux; Android 4.2.2; Nexus 7 Build/JDQ39) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.49 Safari/537.31
27.0.1453.110 Windows 7 Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.110 Safari/537.36
39.0 Linux Mint 17 Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.99 Safari/537.36

Vous pouvez modifier votre User Agent sur cette page : Microsoft EnhanceIE

Exemple
Version O.S. User Agent
1.0 Windows 95 Microsoft Internet Explorer/4.0b1 (Windows 95)
1.5 Windows NT Mozilla/1.22 (compatible; MSIE 1.5; Windows NT)
2.0 Windows 95 Mozilla/1.22 (compatible; MSIE 2.0; Windows 95)
3.01 Windows 98 Mozilla/2.0 (compatible; MSIE 3.01; Windows 98)
5.0 SunOS Mozilla/4.0 (compatible; MSIE 5.0; SunOS 5.9 sun4u; X11)
5.2 Mac OS X Mozilla/4.0 (compatible; MSIE 5.23; Mac_PowerPC)
5.5 Windows 2000 Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
6.0 MSN Explorer Windows 98 Mozilla/4.0 (compatible; MSIE 6.0; MSN 2.5; Windows 98)
6.0 Windows Server 2003 Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)
7.0 beta Windows XP Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 5.1)
7.0 Windows XP SP2 Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)
7.0 Windows Vista Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)
7.0 Windows Server 2008 Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727)
8.0 beta Windows Vista Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; GoogleT5; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506; .NET CLR 1.1.4322)
8.0 beta 32-bit Windows Vista 64-bit Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; WOW64; Trident/4.0)
8.0 beta 64-bit Windows Vista 64-bit Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Win64; x64; Trident/4.0)
8.0 beta Windows 7 Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)
8.0 Windows Server 2003 Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 4.0.20506)
9.0 Windows Vista 64-bit Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0)
9.0 (mode compatibilité) Windows Vista 64-bit Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/5.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; OfficeLiveConnector.1.5; OfficeLivePatch.1.3; .NET4.0C)
10.0 Windows 8 64-bit Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Win64; x64; Trident/6.0)
11.0 Windows 8 64-bit Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko
11.0 Windows 10 avec écran tactile Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; Touch; rv:11.0) like Gecko
Exemple
Version O.S. User Agent
3.1 (Français) Linux Mozilla/5.0 (compatible; Konqueror/3.1; Linux 2.4.22-10mdk; X11; i686; fr, fr_FR)
3.5 (informations minimales) Linux Mozilla/5.0 (compatible; Konqueror/3.5) KHTML/3.5.0 (like Gecko)
4.1 Linux Fedora 10 Mozilla/5.0 (compatible; Konqueror/4.1; Linux; X11) KHTML/4.1.3 (like Gecko) Fedora/4.1.3-3.fc10
4.2.1 Linux Fedora 10 Mozilla/5.0 (compatible; Konqueror/4.2; Linux; X11) KHTML/4.2.1 (like Gecko) Fedora/4.2.1-4.fc10
4.7 beta 1 (KHTML) Chakra GNU/Linux Mozilla/5.0 (X11; Linux i686) AppleWebKit/533.3 (KHTML, like Gecko) konqueror/4.6.80 Safari/533.3
4.7 beta 1 (Webkit) Chakra GNU/Linux Mozilla/5.0 (X11; U; Linux i686; fr-FR) AppleWebKit/533.3 (KHTML, like Gecko) konqueror/4.6.80 Safari/533.3

Robots

Agent
(propriétaire/utilisateur)
Chaîne User agent
Alexa ia_archiver
Ask Jeeves/Teoma Mozilla/2.0 (compatible; Ask Jeeves/Teoma)
Baidu Spider Baiduspider ( http://www.baidu.com/search/spider.htm)
cURL on Mac OS X / Darwin PPC (public) curl/7.13.1 (powerpc-apple-darwin8.0) libcurl/7.13.1 OpenSSL/0.9.7b zlib/1.2.2
Exabot
(Exalead)
Mozilla/5.0 (compatible; Exabot/3.0; +http://www.exabot.com/go/robot)
Exabot-NG
(Exalead)
NG/4.5.5082.67
Exabot-Thumbnails
(Exalead)
Mozilla/5.0 (compatible; Konqueror/3.5; Linux) KHTML/3.5.5 (like Gecko) (Exabot-Thumbnails)
GameSpy HTTP (GameSpy) GameSpyHTTP/1.0
Gigabot
(Gigablast)
Gigabot/2.0
Googlebot
(Google)
Googlebot/2.1 (+http://www.google.com/bot.html)
Googlebot alternateMozilla/5.0 (compatible; googlebot/2.1; +http://www.google.com/bot.html)
Googlebot-Image
(Google)
Googlebot-Image/1.0
Grub
(usage: public)
(propriétaire: LookSmart)
Mozilla/4.0 (compatible; grub-client-1.4.3; Crawl your own stuff with http://grub.org) Mozilla/4.0 (compatible; grub-client-2.3)
Inktomi Slurp Mozilla/3.0 (Slurp/si; slurp@inktomi.com; http://www.inktomi.com/slurp.html)
msnbot
(Microsoft MSN Search)
msnbot/1.0 (+http://search.msn.com/msnbot.htm)
Qwantify
(Qwant)
Qwantify
Scooter (AltaVista) Scooter-3.2.EX
wget
(public)
Wget/1.9
W3C validatorW3C_Validator/1.654
Yahoo! Slurp
(Yahoo! Search)
Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)

Lettre "U"/"I"

Netscape Navigator utilisait ces deux lettres pour spécifier le niveau de chiffrement, parce que le gouvernement américain n'autorisait pas un chiffrement supérieur à 40 bits à l'extérieur des États-Unis. « U » pour les États-Unis (version avec chiffrement à 128 bits) et « I » pour l'International (le navigateur a un chiffrement de 40 bits et peut être utilisé partout dans le monde). À l'origine, la version « U » était autorisée et téléchargée uniquement depuis les États-Unis, mais depuis que le gouvernement a stoppé cette politique et élevé le chiffrement maintenant autorisé (voir en:Export of cryptography pour plus d'information), il n'est plus obligatoire d'avoir deux versions. Netscape, Opera et Mozilla distribuent leurs navigateurs uniquement dans la version "U", puisqu'une version internationale n'est plus exigée.

.NET CLR <version>

Ce texte est inclus dans les user agent Internet Explorer pour spécifier quel framework Microsoft .NET a été installé sur l'ordinateur. On peut souvent trouver dans les chaînes s'il s'agit de Windows XP ou de Windows Server 2003.

Notes et références

Internet explorer
  1. ↑ IEblog.
  2. ↑ MSDN Understanding User-Agent Strings.
Autres références
  1. ↑ Mozilla Developer Network, "User-Agent – HTTP | MDN", MDN Web Docs, consulté en juin 2025.
  2. ↑ MmnGoms, « Modifier son user-agent », Astuce, no 3,‎ , p. 3 (lire en ligne).
  3. ↑ (en) « AnyBrowser Pages », sur anybrowser.org (consulté le ).
  4. ↑ « Robots.txt pour Qwant / Qwantify », sur robots-txt.com (consulté le ).

Voir aussi

Article connexe

Liens externes