浏览器之User-Agent
一、
UserAgent中文名为用户代理,是Http协议中的一部分,属于头域的组成部分,UserAgent也简称UA。提供1浏览器类型及版本、2操作系统及版本、3浏览器内核、等信息的标识。
User-Agent标准格式:
浏览器标识、(操作系统标识;加密等级标识;浏览器语言)、 渲染引擎标识、版本信息。
但各个浏览器有所不同。
文字说明:
1、浏览器标识
出于兼容及推广等目的,很多浏览器的标识相同,因此浏览器标识并不能说明浏览器的真实版本,真实版本信息在UA字串尾部可以找到。
2、操作系统标识
Windows Windows NT 6.1 对应windows7
Windows NT 6.0 对应windows Vista
Windows NT 5.2 对应windows 2003
Windows NT 5.1 对应windows xp
3、加密等级标识
N:表示无安全加密
I:表示弱安全加密
U:表示强安全加密
4、浏览器语言
在首选项>常规>语言中指定的语言
5、渲染引擎(浏览器内核)
显示浏览器使用的主流渲染引擎有:Gecko、WebKit、KHTML、Presto、Trident、Tasman等,格式为:渲染引擎/版本信息
6、版本信息
显示浏览器的真实版本信息,格式为:浏览器/版本信息
采用IE内核的判断的标准是”MSIE“字段,MSIE字段后面的数字为版本号。移动设备还需要判断IEMobile+版本号。
chrome浏览器的判断标准是chrome字段,chrome后面的数字为版本号;移动端的chrome浏览器判断”android“、”linux“、”mobilesafari“等字段,version后面的数字为版本号。
来源:https://blog.csdn.net/u012175089/article/details/61199238
二、内核
浏览器内核是浏览器的核心,也称“渲染引擎”。
五大主流浏览器是:IE、Firefox、Google Chrome、Safari、Opera。 四大内核分别是:Trident(也称IE内核)、webkit、Blink、Gecko。
而随着浏览器的发展现在也出现了双内核。像360浏览器、QQ浏览器都是采用双内核。
来源:https://blog.csdn.net/yuyanjing123456789/article/details/78689595
三、浏览器大战
1.第一款浏览器 Mosaic
2.第二款浏览器 Mozilla,中文名称摩斯拉。后来Mozilla更名为Netscape,也就是网景。Netscape自称“Mozilla/1.0(Win3.1)”
3.IE是兼容Mozilla,并且模仿Netscape称IE为“Mozilla/1.22(compatible; MSIE 2.0; Windows 95)”
4.
Netscape居然以Mozilla的名义重生了,并且开发了Gecko,这次它自称为“Mozilla/5.0(Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826”。
Gecko是一款渲染引擎并且很出色。Mozilla后来变成了Firefox,并自称“Mozilla/5.0 (Windows; U; Windows NT 5.1; sv-SE; rv:1.7.5) Gecko/20041108 Firefox/1.0”。
其他新的浏览器使用了它的代码,每一个都将自己装作Mozilla,而它们全都使用Gecko。Gecko很出色,而IE完全跟不上它,因此user agent探测规则变了,使用Gecko的浏览器被发送了更好的代码,而其他浏览器则没有这种待遇。Linux的追随者对此很难过,因为他们编写了Konqueror,它的引擎是KHTML,他们认为KHTML和Gecko一样出色,但却因为不是Gecko而得不到好的页面,于是Konqueror为得到更好的页面开始将自己伪装成“like Gecko”,并自称为“Mozilla/5.0 (compatible; Konqueror/3.2; FreeBSD) (KHTML, like Gecko)”。自此user agent变得更加混乱。
5.Safari,使用KHTML作为渲染引擎,但苹果加入了许多新的特性,于是苹果从KHTML另辟分支称之为WebKit,但它又不想抛弃那些为KHTML编写的页面,
于是Safari自称为“Mozilla/5.0 (Macintosh; U; PPC Mac OS X; de-de) AppleWebKit/85.7 (KHTML, like Gecko) Safari/85.5”
6.IE重装上阵,这次它自称为“Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0) ”,并且渲染效果同样出色,但是需要网站管理员的指令它这么做才行。
7.再后来,谷歌开发了Chrome浏览器,Chrome使用Webkit作为渲染引擎,和Safari之前一样,它想要那些为Safari编写的页面,于是它伪装成了Safari。于是Chrome使用WebKit,并将自己伪装成Safari,WebKit伪装成KHTML,KHTML伪装成Gecko,最后所有的浏览器都伪装成了Mozilla,这就是为什么所有的浏览器User-Agent里都有Mozilla。
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”。
来源:https://zhidao.baidu.com/question/1767408752449075980.html?qbl=relate_question_0&word=360AppleWebKit/537.36%20%28KHTML%2C%20like%20Gecko%29
附各大浏览器诞生年表:
1993年1月23日:Mosaic
1994年12月:Netscape
1994年:Opera
1995年8月16日:Internet Explorer
1996年10月14日:Kongqueror
2003年1月7日:Safari
2008年9月2日:Chrome