Christophe Jacquet

User-Agent

Lorsqu’un navigateur demande une page à un serveur web, il lui transmet son identité, sous forme d’un en-tête HTTP du doux nom d’User-Agent. Dans la seconde moitié des années 1990, la surenchère de nouvelles fonctionnalités entre les deux leaders du marché, Netscape Navigator et Internet Explorer, a conduit à de nombreuses incompatibilités. Certains auteurs de sites web ont alors adapté leurs contenus à tel ou tel navigateur, conduisant à un morcellement du web, que l’on a qualifié de balkanisation. L’adaptation de contenus était basée sur la détection du User-Agent. D’où des ruses successives des fabricants de navigateurs pour se faire passer pour leurs concurrents, et ainsi afficher les contenus qui ne leur avaient pas été spécifiquement adaptés.

Aujourd’hui, les jours les plus sombres de la balkanisation du web sont heureusement derrière nous. Cependant, les vieux réflexes existent toujours. Regardons par exemple le User-Agent du tout nouveau Google Chrome :

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

Que nous apprend cet identifiant sur l’histoire du web ?

Étonnant comme un simple identifiant peut être riche de références !

Mise à jour, 10 septembre 2008 : voir aussi le billet, écrit le même jour, History of the browser user-agent string. Hilarant…

HTML5 valide ? © . ✍ Contact. Mentions légales.