为什么所有浏览器的用户代理都以“Mozilla /”开头?

时间:2009-07-11 17:42:22

标签: user-agent

所有流行浏览器的用户代理字符串,甚至是Internet Explorer,都以Mozilla/开头。为什么会这样?

6 个答案:

答案 0 :(得分:230)

这是long and sad story

总结:

  1. 使用User-Agent Mozilla/1.0 (Win3.1)发布Mozilla浏览器。它被公开重命名为Netscape,但在其User-Agent中保留了其原始名称。
  2. Internet Explorer已发布。它通过使用Mozilla/启动其User-Agent来欺骗Netscape,因为Web服务器通常是浏览器嗅探并为具有帧的页面提供服务 - 这是Netscape和IE支持的功能,但不支持该时代的其他浏览器 - 仅限Netscape。 / LI>
  3. 随着时间的推移,Gecko,Konqueror,Opera,Safari和Chrome各自决定同样欺骗以前某些浏览器的User-Agent,以便操纵浏览器嗅探网页以正确理解其浏览器的功能。作为此欺骗的一部分,所有浏览器都使用Mozilla/启动其用户代理,就像之前的浏览器一样。还有很多其他废话,例如现代Chrome的用户代理同时声称是Mozilla,Chrome,Safari和“像Gecko”。

答案 1 :(得分:27)

我认为这与:http://en.wikipedia.org/wiki/User_agent#User_agent_spoofing

有关 回到早期,Netscape(代号为Mozilla)是IE的主要竞争对手,他们希望防止被拒绝Netscape以外的浏览器的网站拒绝。

答案 2 :(得分:6)

如@Jason所说“这是一个漫长的故事”。总结这个故事“它只是每个浏览器都假装成Mozilla”

尝试完所有内容后,我终于使用了:http://www.useragentstring.com/

您可以使用上述网站获取格式化的用户代理和操作系统。
他们有API你可以直接使用......

答案 3 :(得分:2)

因为这就是Netscape如何识别自己,并且微软想要使用可以检测Netscape并拒绝任何其他内容的网站。

答案 4 :(得分:0)

Mozilla / 5.0是一般标记,表示浏览器与Mozilla兼容,并且几乎每个浏览器都是通用的。 更多细节click here

答案 5 :(得分:0)

这是臭名昭著的浏览器战争

简而言之-浏览器开始伪装成其他浏览器,因为某些网站根据请求哪个浏览器提供内容,并且他们还希望内容适用于其他浏览器。

令人惊讶的是,它至今仍未解决。由于userAgent由于遗留原因无法安全删除,为什么没有引入一些明确标识浏览器的新功能?是的,大多数时候您不需要浏览器检测,而需要功能检测,但是它也不是内置JS!