最早的时候有一个浏览器叫NCSAMosaic,把自己标称为NCSA_Mosaic/2.0(Windows
3.1)。它支持文字显示的同一时候还支持图片。于是Web開始好玩起来

然后出现了一个新的网页浏览器。“Mozilla”,事实上就是“Mosaic终结者”的意思,这搞的Mosaic非常不爽,(毕竟Mosaic出道早。江湖老),为了避免与NCSA的法律纠葛。新浏览器最后改名为Netscape,它把自己标称为Mozilla/1.0
(Win3.1),更好玩了。Netscape支持框架显示。后来框架在大家中间流行起来了,但Mosaic不支持框架啊,于是伟大的“用户代理人探測”(User-Agent)技术出现了。假设是“Mozilla”,那就发给支持框架的页面。至于其它的浏览器,则发给不含框架的页面

>Netscape想逗Microsoft玩儿,把Windows叫做“差点儿不曾做过调试的设备驱动器”,后者非常恼火。Microsoft于是推出了自己的网页浏览器,叫做Internet
Explorer希望它能成为“Netscape终结者”。

Internet
Explorer也支持框架,但它不是Mozilla啊,所以没人给它发送带有框架的页面。Microsoft慢慢烦躁起来。不再寄希望于站点管理员逐渐认识IE并给它发框架,而是宣称自己是“兼容Mozilla”的。開始模仿Netscape。把自己标称为Mozilla/1.22
(compatible; MSIE 2.0; Windows 95)。这样Internet Explorer也能收到框架了。整个Microsoft狂喜。但站点管理员開始有点被搞糊涂了。

Microsoft把IE和Windows一起卖。而且把产品也弄得比Netscape更好了,拉开了第一场浏览器之战。结果和大家知道的一样,Netscape被干掉了,Microsoft大胜、大喜。

可是后来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。而且Firefox表现也很优秀。

Gecko扩张迅速。一些浏览器使用了它的代码并标称为Mozilla/5.0
(Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.7.2)Gecko/20040825 Camino/0.8.1
,这是一个,还有Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.8)Gecko/20071008 SeaMonkey/1.0,还有一个。它们都伪装成Mozilla。同一时候也都是基于Gecko支持的。

Gecko表现优秀。IE则非常差劲。于是身份甄别再次发生,输送给Gecko的是设计良好的网页代码。其它浏览器就没有这个待遇了。Linux的尾随者非常伤心。由于他们创建了基于KHTML引擎支持的Konqueror。但却不会被输送好代码,尽管他们自己觉得KHTML和Gecko一样优秀,于是Konquerer開始伪装自己“像Gecko”那样以得到好的网页。并标称自己为Mozilla/5.0
(compatible; Konqueror/3.2; FreeBSD)

(KHTML, like Gecko),这个世界更让人困惑了

后来出现了Opera这种主儿,宣称“同意用户自己决定让浏览器装成谁”,它的菜单中提供了Mozilla/4.0
(compatible; MSIE 6.0; Windows NT 5.1; en) Opera 9.51。 Mozilla/5.0(Windows NT 6.0;

U;en; rv:1.8.1) Gecko/20061208 Firefox/2.0.0 Opera 9.51,Opera/9.51(Windows
NT 5.1; U; en) 供大家来选择,选谁是谁。

Apple开发了Safari。使用了KHTML。同一时候也添加了非常多新特性,后来干脆一锅煮。另起炉灶叫了WebKit,可是它有希望可以得到那些为KHTML编写的网页。于是Safari标称自己为Mozilla/5.0
(Macintosh; U; PPC Mac OS X;de-de) AppleWebKit/85.7 (KHTML, like Gecko) Safari/85.5。这个世界更混乱了。

AppleWebKit/85.7 (KHTML, like Gecko)Safari/85.5,这个世界更混乱了。

Microsoft越来越操心Firefox的发展,又一次启动了InternetExplorer的开发,标称自己为Mozilla/4.0
(compatible; MSIE 8.0; Windows NT 6.0) 。能够非常好的渲染代码,但那要看站点管理员是否指示它这么做。Google也开发了自己的浏览器Chrome,使用了Webkit,有点像Safari。希望能得到为Safari编写的网页。于是决定装成Safari。这样啊,Chrome使用了WebKit渲染引擎,想装成Safari,而WebKit呢又伪装自己是KHTML,KHTML呢又是伪装成Gecko的。同一时候全部的浏览器又都宣称自己是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,,UserAgent字符串彻底混乱了。也差点儿不再发挥不论什么作用,每一个人都宣称自己是别人,混乱充斥人间啊



版权声明:本文博客原创文章,博客,未经同意,不得转载。

Mozilla5.0的含义的更多相关文章

  1. JS中javascript:void(0)真正含义

    对于下面的代码,其中void(0)的含义是什么? <a href="javascript:Test();void(0);">hello</a> 其实,Jav ...

  2. 在Qt示例项目的C ++ / QML源中的//! [0]的含义是什么?

    在Qt示例项目的C ++ / QML源中的//! [0]的含义是什么? 例如:  //! [0] GLWidget :: GLWidget(Helper * helper,QWidget * pare ...

  3. 转:js中javascript:void(0) 真正含义

    from:http://www.jb51.net/article/71532.htm 在Javascript中void是一个操作符,该操作符指定要计算一个表达式但是不返回值. 我想使用过ajax的都常 ...

  4. js javascript:void(0) 真正含义

    我想使用过ajax的都常见这样的代码:<a href="javascript:doTest2();void(0);">here</a>但这儿的void(0) ...

  5. javascript:void(0) 真正含义

    大家常见这种代码: <a href="javascript:doTest2();void(0);">here</a> 但这儿的void(0)到底是何含义呢? ...

  6. Linux中shell变量$0,$?等含义

    linux中shell变量$#,$@,$0,$1,$2的基本含义: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行 ...

  7. ((void *) 0)的含义和void的一些细节

    一.在c语言中,0是一个特殊的值,它可以表示:整型数值0,空字符,逻辑假(false).表示的东西多了,有时候不好判断.尤其是空字符和数字0之间. 为了明确的指出,0是空字符的含义,用用到了: (() ...

  8. JS中void(0)的含义

    看别人些的JavaScript脚本可以看到这样的代码: <a href="javascript:doTest2();void(0);">here</a> 但 ...

  9. javascript:void(0);的含义以及使用场景

    一.含义: javascript:是伪协议,表示内容通过javascript执行. void(0)表示不作任何操作. 二.使用场景 1.href=”javascript:void(0);” 作用:为了 ...

随机推荐

  1. java中final的意义

    1.如果一个数据既是static又是final,那么它会拥有一块无法改变的存储空间. 2.final data: 当final用于基本数据类型时,final让其值(value)保持不变,但是当用于ob ...

  2. CSS之box-sizing的用处简介

    前几天才发现有 box-sizing 这么个样式属性.研究了一番感觉非常有意思, 通过指定容器的盒子模型类型,达到不同的展示效果 比如:当一个容器宽度定义为 width:100%;  之后.假设再添加 ...

  3. 从零開始学习OpenCL开发(一)架构

    多谢大家关注 转载本文请注明:http://blog.csdn.net/leonwei/article/details/8880012 本文将作为我<从零開始做OpenCL开发>系列文章的 ...

  4. zigbee学习:示例程序SampleApp中按键工作流程

    zigbee学习:示例程序SampleApp中按键工作流程 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境: 主机:WIN7 开发环境:IAR8. ...

  5. VS解决BEX错误但不能关闭DEP保存

    报道近期计划BEX错误: 问题签名: 问题事件名称: BEX 应用程序名: Auth.exe 应用程序版本号: 0.0.0.0 应用程序时间戳: 546d9e0c 故障模块名称: Auth.exe 故 ...

  6. 《Effective C++ 》学习笔记——规定10

    ***************************************转载请注明出处:http://blog.csdn.net/lttree************************** ...

  7. 使用NSCondition实现多线程同步

    iOS中实现多线程技术有非常多方法. 这里说说使用NSCondition实现多线程同步的问题,也就是解决生产者消费者问题(如收发同步等等). 问题流程例如以下: 消费者取得锁,取产品,假设没有,则wa ...

  8. 懒人模式Singleton模式Meyers版本号

    直接看代码: /* Singleton模式保证:在一个程序,,一个类有且只有一个实例.并提供一个访问 它的全局访问点 在编程其中.很多情况下,需要确保有一类的一个实例 比如: windopws系统中仅 ...

  9. WPF中的三维空间(2)

    原文:WPF中的三维空间(2) 2.10.3 三维对象操作 1.在二维平面空间移动.缩放.旋转Viewport3D控件对象         图2-196 选中Viewport3D控件对象      图 ...

  10. Blend4精选案例图解教程(三):一键拖拽

    原文:Blend4精选案例图解教程(三):一键拖拽 拖拽效果,常规实现方法是定义MoveLeftDwon.MoveLeftUp.MouseMove事件,在Blend的世界里,实现对象的拖拽,可以不写一 ...