Mozilla5.0的含义
最早的时候有一个浏览器叫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的含义的更多相关文章
- JS中javascript:void(0)真正含义
对于下面的代码,其中void(0)的含义是什么? <a href="javascript:Test();void(0);">hello</a> 其实,Jav ...
- 在Qt示例项目的C ++ / QML源中的//! [0]的含义是什么?
在Qt示例项目的C ++ / QML源中的//! [0]的含义是什么? 例如: //! [0] GLWidget :: GLWidget(Helper * helper,QWidget * pare ...
- 转:js中javascript:void(0) 真正含义
from:http://www.jb51.net/article/71532.htm 在Javascript中void是一个操作符,该操作符指定要计算一个表达式但是不返回值. 我想使用过ajax的都常 ...
- js javascript:void(0) 真正含义
我想使用过ajax的都常见这样的代码:<a href="javascript:doTest2();void(0);">here</a>但这儿的void(0) ...
- javascript:void(0) 真正含义
大家常见这种代码: <a href="javascript:doTest2();void(0);">here</a> 但这儿的void(0)到底是何含义呢? ...
- Linux中shell变量$0,$?等含义
linux中shell变量$#,$@,$0,$1,$2的基本含义: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行 ...
- ((void *) 0)的含义和void的一些细节
一.在c语言中,0是一个特殊的值,它可以表示:整型数值0,空字符,逻辑假(false).表示的东西多了,有时候不好判断.尤其是空字符和数字0之间. 为了明确的指出,0是空字符的含义,用用到了: (() ...
- JS中void(0)的含义
看别人些的JavaScript脚本可以看到这样的代码: <a href="javascript:doTest2();void(0);">here</a> 但 ...
- javascript:void(0);的含义以及使用场景
一.含义: javascript:是伪协议,表示内容通过javascript执行. void(0)表示不作任何操作. 二.使用场景 1.href=”javascript:void(0);” 作用:为了 ...
随机推荐
- 使用Maven管理Spring
原文链接: Spring with Maven原文日期: 2013年04月17日翻译日期: 2014年06月29日翻译人员: 铁锚 1. 概述本教程向您展示怎样通过 Maven 管理 Spring 的 ...
- python学习之list
list: 创建:list = [5,7,9] 取值和改值:list[1] = list[1] * 5 列表尾插入:list.append(4) 去掉第0个值并返回第0个值的数值:list.pop(0 ...
- RMQ之ST算法
#include <stdio.h> #include <string.h> ; int a[N]; ]; inline int min(const int &a, c ...
- Linux内核源代码的学习过程转换完成细节
linux中的进程是个最主要的概念,进程从执行队列到開始执行有两个開始的地方, 一个就是switch_to宏中的标号1:"1:/t",//仅仅要不是新创建的进程,差点儿都是从上面的 ...
- [Django](1093, "You can't specify target table 'fee_details_invoices' for update in FROM clause") 错误
dele_id = Fee_details_invoices.objects.filter(fee_detail_id__in=fee_id_list, return_type='2').values ...
- TCP/IP详细说明--滑模、拥塞窗口、慢启动、Negle算法
TCP的数据流大致能够分为两类,交互数据流与成块的数据流. 交互数据流就是发送控制命令的数据流.比方relogin,telnet.ftp命令等等.成块数据流是用来发送数据的包,网络上大部分的TCP包都 ...
- poj 1959 Darts 同意反复组合
水题.直接贴代码. //poj 1959 //sep9 #include <iostream> using namespace std; int n; int f[128]; int so ...
- 如何设置多个同一页的tinymce编辑
的页面设置多个tinymce编辑器 This example shows how to setup multiple editors on the same page and with differe ...
- Android锁定屏幕或关闭状态-screen,高速按两次音量向下键来实现拍摄功能(1.1Framework在实现的形式层广播)
思想的实现: WindowManagerService循环读取下面的关键信息和分发形式.在PhoneWindowManager.interceptKeyBeforeQueueing方法中进行消 ...
- Android异步任务
本文主要探讨Android平台提供的各种异步载入机制,包括它们的适用场景.用法等. 1. AsynTask AsynTask适用于最长能够持续几秒钟的短时间的操作,对于长时间的操作,建议使用java. ...