HTTP_USER_AGENT如何运作?

2022-08-30 16:32:58

当我用这个代码得到PHP服务器变量时:HTTP_USER_AGENT

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

我在谷歌浏览器中得到这个:

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

这在火狐中:

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

在IE中:

Mozilla/5.0 (兼容;MSIE 9.0;视窗 NT 6.1;三叉戟/5.0;BOIE9;NLNL)

我显而易见的问题是:这是如何工作的?为什么我的用户代理在我使用谷歌浏览器时说Mozilla和Windows NT?

另外,为什么它说我在使用IE时使用Firefox?


答案 1

用户代理字符串是浏览器本身发送到 Web 服务器以标识自己的文本,以便网站可以根据浏览器或基于浏览器兼容性发送不同的内容。

Mozilla是一个浏览器渲染引擎(Firefox的核心引擎),Chrome和IE包含字符串Mozilla / 4或/ 5的事实表明它们与该渲染引擎兼容。


答案 2

http://www.useragentstring.com/

访问该页面,它将为您提供有关用户代理的每个元素的良好解释。

Mozilla:

MozillaProductSlice.声称是基于Mozilla的用户代理,这仅适用于Firefox和Netscape等Gecko浏览器。对于所有其他用户代理,它意味着“Mozilla兼容”。在现代浏览器中,这仅用于历史原因。它不再有真正的意义


推荐