web-dev-qa-db-fra.com

Comment fonctionne HTTP_USER_AGENT?

Duplicata possible:
Pourquoi navigator.appCodeName renvoie Mozilla?

Quand j'obtiens la variable de serveur PHP HTTP_USER_AGENT avec ce code:

<?php
   $useragent = $_SERVER ['HTTP_USER_AGENT'];
   echo "<b>Your User Agent is</b>: " . $useragent;
?>

Je reçois ceci dans Google Chrome:

Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.4 (KHTML, comme Gecko) Chrome/22.0.1229.94 Safari/537.4

Ceci dans Firefox:

Mozilla/5.0 (Windows NT 6.1; rv: 16.0) Gecko/20100101 Firefox/16.0

Et cela dans IE:

Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; BOIE9; NLNL)

Ma question évidente est de savoir comment cela fonctionne. Pourquoi mon agent utilisateur dit-il Mozilla et Windows NT lorsque j'utilise Google Chrome?

Aussi pourquoi dit-on que j'utilise Firefox lorsque j'utilise IE?

24
botenvouwer

La chaîne d'agent utilisateur est un texte que les navigateurs eux-mêmes envoient au serveur Web pour s'identifier, afin que les sites Web puissent envoyer des contenus différents en fonction du navigateur ou en fonction de la compatibilité du navigateur.

Mozilla est un moteur de rendu de navigateur (celui au cœur de Firefox) et le fait que Chrome et IE contiennent la chaîne que Mozilla/4 ou/5 identifie comme étant compatible avec ce moteur de rendu.

28
Roy Dictus

http://www.useragentstring.com/

Visitez cette page, cela vous donnera une bonne explication de chaque élément de votre agent utilisateur.

Mozilla:

MozillaProductSlice. Affirme être un agent utilisateur basé sur Mozilla, ce qui n'est vrai que pour les navigateurs Gecko comme Firefox et Netscape. Pour tous les autres agents utilisateurs, cela signifie "compatible avec Mozilla". Dans les navigateurs modernes, cela n'est utilisé que pour des raisons historiques. Ça n'a plus vraiment de sens

12
Prash