zoukankan      html  css  js  c++  java
  • 浏览器之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


  • 相关阅读:
    Spring+Quartz实现文件中转站
    Velocity中的ComparisonDateTool、MathTool、NumberT...
    Adobe Flash Builder 4.7破解方法(绝对可用)
    12c weblogic需要输入用户名密码
    velocity+spring mvc+spring ioc+ibatis初试感觉(与struts+spring+hibernate比较)
    基于tomcat7 web开发中的一点小东西
    Positional parameter are considered deprecated; use named parameters or JPA-style positional parameters instead.
    spring service事务传播
    Spring注解方式实现任务调度【官方文档翻译】
    Tomcat 下 Memcached 集群与 Terracotta 集群比较
  • 原文地址:https://www.cnblogs.com/wangyuyanhello/p/9266877.html
Copyright © 2011-2022 走看看