头铁是什么意思(浏览器用户代理的有趣历史)
admin
2023-09-10 01:22:49
0

编辑导语:UserAgent(简称UA),中文名称为用户代理,是一个提供浏览器类型和版本、操作系统和版本、浏览器内核等信息的标识。你过去经常访问网站。通过这个logo,用户访问的网站可以显示不同的排版,从而为用户提供更好的体验或者进行信息统计。接下来,作者为我们总结了它发展的有趣历史。

最近在看《给产品经理讲技术》,里面有一段简单提到了浏览器UserAgent的意义和作用。最后,作者提出用户代理的变化是一段有趣的历史。为了满足好奇心,我深深地看了一眼。

我不知道结果,但我很震惊。今天就和大家分享这个老瓜。

首先,我们简单了解一下各大浏览器的诞生日期:

先大致了解一下这些浏览器的诞生时间,然后拿着板凳和西瓜,开始吧~

一、第一款浏览器:Nexus 1989年,超级大神Berners Lee教授发明了WorldWideWeb(简称3W)。然而,大神并不满足于此。为了让大家更方便的访问万维网,大神一挥手推出了全球首款浏览器。

李想到了给它取什么名字?

这时,李可能是个懒鬼,他不愿意去想。不然他应该叫WorldWideWeb,用他大儿子的名字(环球网)!

后来大神觉得不太方便交流。他经常不知道WorldWideWeb指的是谁,有点对不起小儿子这么懒,就把小儿子的名字改成了Nexus。

因为是浏览器的始祖,没有竞争对手,所以Nexus马上就火了起来。

作为最早的浏览器,Nexus只支持文本显示,不支持图片显示,这正好给了竞争对手可乘之机,也是UserAgent的由来。

二、第一个带图片的浏览器:马赛克1993年,伊利诺伊州的NCSA组织认为,一个没有图片的网页就像一个没有颜色的世界!作为一群完美主义者,这是完全无法忍受的!

于是,他们发明了第一个可以显示图片的浏览器:马赛克,可以显示图片,但是大神们武断的给它取名为马赛克!很多吃瓜的人都忍不住给专家打电话!

由于其显示图片的能力,马赛克很快流行起来。但是在这里,你可能会发现,这个时候的霸主是Nexus,它不能显示图片,而Mosaic可以,这就叫html的发展进退两难。

在html开发者们挠头的时候,善解人意的Mosaic想了一个办法:这本质上是一个身份的问题,那我为什么不在给你发请求的时候告诉你我的身份,和Nexus区分开呢?

这就是UserAgent的由来,它最初的作用只是向服务器表明自己的身份。——Mosaic的用户代理是NCSA _马赛克/2.0(Windows3.1)。

NCSA _马赛克代表你是什么浏览器,2.0代表版本号,Windows3.1代表你能在什么系统下运行。

这样的话,html开发者应该怎么开发或者应该怎么开发?只有UserAgent表明是马赛克,他们才会发有图片的页面,否则就发没有图片的页面。

不过伊利诺伊的大神们绝对不会想到,这么简单的UserAgent被年轻一代玩出来了。

三、马赛克杀手:Mozilla看到Mozilla,大家熟悉吗?只要打开一个浏览器,看看它的UserAgent,就会发现Mozilla标签。是不是很奇怪,不同公司的浏览器,无论是IE,Google,Safari等。都有Mozilla?慢慢听我说。

当马赛克进行得如火如荼的时候,一个新生的怪物拒绝接受它。它给自己定下了一个伟大的目标:推翻马赛克的霸权!

这个新生的怪物就是后来著名的网景公司。他们发明了浏览器,希望取代马赛克!是新生的怪物,无非是头铁。大神们将其浏览器命名为Mozilla。

你什么意思?Mozilla是由& quot马赛克Killa”(Killa & quot;(killa是俚语中黑仔的拼法),是怪兽哥斯拉的谐音,也就是& quotGodzillaeattheMosaic!"

这是池果果的挑衅!你看,网络的源头都是血!

Mozilla大喝一声,问道,马赛克,你怕这个老头吗?马赛克看着这个嚣张的小怪物瑟瑟发抖(不知道是生气还是害怕),勃然大怒(恼羞成怒)说,& quot给我动粗!"

所以网景被迫改名为NetscapeNavigator & quot发自内心& quot因为马赛克当时在江湖上的地位。

然而,& quot小怪物& quot对口服不服,还在他的UserAgent后面偷偷写了Mozilla/1.0(Win3.1)。

四、流氓来了:IE怪兽还是有点能力的。网景最早支持html框架显示,就是简单的表格布局,内外边距之类的。

这点在体验上就远超Mosaic。

所以,最后Mozilla如愿”吃掉了”Mosaic,成为了霸主。

开发者为了区别这两个浏览器,还是用的UserAgent。约定如果是UserAgent里含有“Mozilla”字样,就发送支持框架的页面,否则就发送不含框架的页面。

浏览器作为万维网的入口,从来都是战略必争之地,竞争自然无法避免。微软率先使出了”不要脸“战术”,仗着自己的操作系统地位,开发了一款强行和系统绑定的浏览器。

古语云:流氓不可怕,就怕流氓有文化!古人诚不欺我!

那么这个浏览器叫什么好呢?

吃瓜群众:Mozillakiller?

微软大神:滚蛋,能不能像我们一样成熟一点?!

务实的微软大神们取名可不搞这些花里胡哨的,直接取名叫IE,即InternetExplore,虽然没有Mozilla这么霸气,但是简单易懂且易记啊。

要想和Mozilla竞争,IE肯定也是支持html框架的,但是开发者们才不管,开发者们只会给UserAgent带有Mozilla的浏览器发送带框架的页面。

但是你以为这点小事就能难倒我大微软,天真!

微软眼咕噜一转,呵呵一笑:切,既然如此,那我易容成Mozilla不就行了?

于是,微软给IE披上了一层怪兽皮,把自己的UserAgent改成了:Mozilla/1.22(compatible;MSIE2.0;Windows95)。

你看,我也是Mozilla,这样你就可以把带框架的页面发给我了~

尝到耍流氓甜头的微软一发不可收拾,利用自己操作系统的优势,将易容后的IE强制和操作系统绑定:你就用我的系统免费赠送的IE浏览器,还要啥自行车?!

凭借不输Mozilla的性能和流氓的手段,IE最终战胜了Mozilla,但是从此IE也永久带上了Mozilla的标记。

五、浴火重生的狐狸:FireFox

但是,怪兽不愧是怪兽,强大的怪兽怎么能被流氓轻易击败呢?!

曾经Mozilla的大神们卷土重来,他们使用浏览器排版引擎Gecko(壁虎)发明了另一款优秀的浏览器,它在插件拓展和开发调试领域做出的贡献,绝对可以载入互联网历史。

这么跨时代的创造,叫什么好呢?众所周知,Mozilla的大神们总是对怪兽情有独钟,既然我们从失败中浴火重生,那么其名曰:Phoenix(凤凰)!!

但是Phoenix(凤凰)还没起飞就遭遇了折翼,旁边一家叫凤凰科技的公司强烈抗议:魂淡,是我先叫Phoenix(凤凰)的,你们侵权了!

大神们很无奈,没办法,那我们叫Firebird(火鸟),总行了吧?!虽然听起来挺中二的,但是也不行。因为有一款数据库也叫这个名字。

大神们抓狂,起个名字怎么这么难?!泪流满面的大神们最终给这款划时代的浏览器起名叫FireFox(火狐)。

FireFox(火狐)至今还是最常用的浏览器之一,可见其优秀程度竟恐怖如斯!

大神们为了告诉开发者们,我是如此的优秀,你们可以给我更好更炫酷的页面了!

于是,FireFox(火狐)标志自己的UserAgent为:Mozilla/5.0(Windows;U;WindowsNT5.1;sv-SE;rv:1.7.5)Gecko/20041108Firefox/1.0。

虽然这个UserAgent看起来很长,但是信息还是比较清晰,表明了自己的身份是Moziila5.0和Firefox/1.0,支持的系统和使用的Gecko的引擎。

和之前一样,开发者们只会给作为开创者的FireFox(火狐)发送更优质的html页面。FireFox(火狐)凭借优秀的性能,发展非常迅速,虽然没有打败IE,但是也能和IE分庭抗礼。

六、萌贱萌贱的Konqueror

而在IE和FireFox(火狐)互掐的时候,其实市场上还存在另外一个著名的操作系统Linux。Linux看着Window的IE浏览器非常眼红,于是寻思着也开发一款基于Linux的浏览器。

大神就是大神,开发浏览器就是小菜一碟!成功以后,Linux大神们一样不能免俗,要为自己的孩子起一个响亮且霸气的名字。

前有Moziila(哥斯拉),后有IE(探索者),那我们…..嗯,就叫:Konqueror(Conqueror的变体,低调低调)征服者吧!(666666)。

但是,Konqueror使用的是KHTML排版引擎,失去了先发优势。所以,Konqueror也遇到了和IE类似的问题:开发者们只认UserAgent里面带有Gecko的浏览器,不带就休想获得带有良好排版的页面!

小Konqueror非常无奈,万分纠结之下,做出了一个又骚又贱但是又特别萌的操作,把自己的UserAgent写成:Mozilla/5.0(compatible;Konqueror/3.2;FreeBSD)(KHTML,likeGecko)。

就这样,伟大的Konqueror为了获取更优质的页面,也不得不耍了点小心机。从此,(KHTML,likeGecko)与IE的Mozilla一样成了一道抹不去的印记。

七、魑魅魍魉,群魔乱舞!

发展到这,你以为就结束了吗?天真!在互联网这个狂热的世界,只有你想不到,没有你做不到!

脑洞大开的Opera觉得IE和Konqueror的做法真的太棒了,甚得吾心!那咱也不能示弱啊:既然有这么多可以选择的UserAgent(马甲),那我们是不是可以想变成谁就变成谁?!(Opera的大神们可能是百变小樱的忠实粉丝)。

Opera直接在菜单提供了三个选择项:

Mozilla/4.0(compatible;MSIE6.0;WindowsNT5.1;en)Opera9.51;Mozilla/5.0(WindowsNT6.0;U;en;rv:1.8.1)Gecko/20061208Firefox/2.0.0;Opera9.51Opera/9.51(WindowsNT5.1;U;en)。

第一个是IE,第二个是火狐,第三个才是自己,芭芭拉小魔仙,你想变谁就变谁!

与此同时,在科技的贵圈里,怎么能少得了我大Apple?!苹果公司依靠“自己的”WebKit,开发出Safari,并将UserAgent命名为:Mozilla/5.0(Macintosh;U;PPCMacOSX;de-de)AppleWebKit/85.7(KHTML,likeGecko)Safari/85.5。

诶?!仔细一看,这不对啊,AppleWebKit不是苹果公司自己的吗,为啥还会带有(KHTML,likeGecko)?!

苹果邪魅一笑:呵呵,大惊小怪,因为我们的内核Webkit排版引擎的核心叫WebCore,而WebCore是KHTML衍生而来的。也就是说,WebCore是KHTML的儿子,子承父业,苹果公司只能在UserAgent加上(KHTML,likeGecko)。

在越发混乱的浏览器贵圈里,谷歌也不甘寂寞,跳出来大声宣布:我大谷歌也开发了一款浏览器,它叫Chrome!

而Chrome设定的UserAgent为:Mozilla/5.0(Windows;U;WindowsNT5.1;en-US)AppleWebKit/525.13(KHTML,likeGecko)Chrome/0.2.149.27Safari/525.13。

Safari一看:卧槽,从未见过如此厚颜无耻之徒!你怎么也在后面写有Safari?

Chrome呵呵一笑,你懂的——原来Chrome浏览器的内核也是Webkit。

所以,最后让我们来顺一下:

Chrome希望获得Safari的页面,所以伪装成了Safari;而Safari的内核是WebKit引擎,而WebKit又是KHTML的儿子;KHTML又不得不易容成Gecko;而由于IE的骚操作,浏览器又都宣称自己是Mozilla……

至此,现在的浏览器,你随便打开一个,查看他们的UserAgent,都会发现或多或少带有这些印记。

大家现在应该明白浏览器中那长长的UserAgent是怎么来的了吧。

作者:Jarvan;公众号:产品叨比叨

本文由@Jarvan原创发布于人人都是产品经理。未经许可,禁止转载

题图来自Unsplash,基于CC0协议

相关内容

热门资讯

今日重大通报“羊城牌乐汇其实是... 您好:羊城牌乐汇这款游戏可以开挂,确实是有挂的,需要软件加微信【8700483】,很多玩家在羊城牌乐...
第一次了解!尽欢棋盘外挂辅助神... 第一次了解!尽欢棋盘外挂辅助神器(确实有挂)原来真的有挂(有挂秘诀)详细教程(哔哩哔哩)是一款可以让...
玩家实测!桂林八一字牌外挂辅助... 亲,您好桂林八一字牌这款游戏可以开挂,确实是有挂的,非常多玩家都在用呢。很多玩家在这款游戏中打牌都会...
今日教程!微信斗牛房卡获取方式... 今日教程!微信斗牛房卡获取方式/微信玩链接金花房卡获取咨询房/卡添加微信:【55051770】进入游...
第一次了解!乐享牛牛外挂辅助神... 亲,乐享牛牛这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好,总...