您的位置:首页 >市场行情 >

十多亿网友即将打不开网页只因为更新了波浏览器?

2022-02-02 11:25:05 来源:

  你想想,你吃着泡面、哼着歌、还在网上冲着浪,突然就发现浏览器用不了了,这可多难受啊。

  当然啦,这可不是差评君在瞎带节奏啊,因为这事还真有那么点可能会发生。

  因为全世界最流行浏览器之一的Chrome,马上就要发布第100个版本了。而这次更新,很可能会引发一些BUG,导致网页直接打不开。

  冲浪板要是坏了,这可让咱们怎么冲浪啊?

  

  Chrome大伙们可再熟悉不过了,这款有内存吞噬者之称的浏览器,在这颗行星上有超过20亿的装机量。

  至少在编辑部,除了少数几个Safari用户外,Chrome的覆盖率没有9成也有8成。而剩下的也大都是在用各种chromium “套壳”浏览器。

  

  那么问题就来了,别人的软件更新不是内置个虚幻引擎,加些新功能,就是修复一些BUG,让产品更加稳定。

  Chrome你这个坐拥数十亿的大咖咋一更新,反而修复了“ BUG过少的 BUG ”呢?

  这不是把用户做宝搞吗?

  

  其实啊,这锅还真怪不到谷歌的工程师身上,引发这一场 BUG 的,是一个名叫版本号的东西。

  因为在某些网站的眼里,版本号100竟然小于40。

  接下来就请准备好薯片和可乐,差评君这就和大伙们讲讲,这道火锅都能做对的比大小题目背后、这个让大伙们可能上不了网的 BUG 背后,究竟发生了什么。

  

  简单地说,当你访问某某小网站时,网站是需要知道你用的是啥浏览器和啥版本的。

  一方面,网站就能向那些用最新版浏览器的用户展示新功能、新交互,反过来对那些“古董”浏览器提供适合它们的内容。

  就像 IE9之前的 IE 浏览器不装插件的话,是不支持 SVG 功能的。而对如今的各大浏览器来说,SVG 早已经算是个平平无奇的玩意儿了。

  

  在另一方呢,出于网络安全的考虑,网站还能根据版本号,直接拒绝那些早就不更新的浏览器访问网站。

  总得来说,网站要知道“来者是何人”,然后再决定就接不接客,并在接客之后看碟下菜。

  而这次 Chrome 浏览器即将带来的版本号为100的更新,就很可能让一部分网站认错客人,然后直接把用户拒之门外。

  

  就拿能差评君所用的 Chrome 浏览器为例,网站会通过检查以下的浏览器 UA(用户代理字符串)来查一波户口:

  Mozilla/5。0(Windows NT 10。0; Win64; x64)AppleWebKit/537。36(KHTML,like Gecko)Chrome/97。0。4692。99Safari/537。36

  这里面的东西很多,我们要找的是Chrome/97。0。4692。99这一段。

  对于大部分的网站开发者来说,他们只需要关注紧接着Chrome/后的字符“ 97 ”,其实就足够网站辨别浏览器身份,并根据版本看碟下菜了。

  

  而巧就巧在,一个国外小有名气,名叫 Duda 的网页设计工具包它更懒。

  因为它只读取 Chrome/背后的两个数字。。。

  所以在 Chrome 浏览器的版本号升到100之后,在访问那些用 Duda 开发的网站时,认字只认一半的它们会以为你的版本号是10。

  

  更搞人心态的是,Duda 还会自动屏蔽版本号低于40的 Chrome 浏览器访问。。。

  所以说在它们的眼里100 = 10 <; 40,你的浏览器就这样被禁止访问了。

  虽然这一波无疑是 Duda 程序员的锅,但是在某种程度上,Chrome 的程序员们其实也还是有那么一捏捏责任的。

  

  而错就错在 Chrome 的程序员们太能爆肝了,从而导致 Chrome 的更新实在太勤快了。

  这么说吧,今年已经13岁的 Chrome 在早期可是12周才更新一次,后来加快到了6周一次,到后面更是到了4周更新一次。

  就这样,Chrome 的版本号便迅速疯涨,到今年的三月份也即将迎来第100个版本。

  所以说 Chrome 的工程师要是多摸点鱼,多摆点烂,这个 BUG 就不会这么早出现。

  

  分完锅,但问题总要解决吧。

  早就发现可能会出现 BUG 的谷歌,在去年就提供了个测试 flag。

  大伙们只要在浏览器中输入 chrome !//flags 然后输入并打开#force-major-version-to-100就能让网站打破两位数的魔咒,强制显示版本号为100了。

  

  而老外的性情似乎也是调和折中的,因为还有网友提出了另外中庸的解决办法。

  那就是让谷歌的版本永远停在99,之后的更新变后面的小数点就可以了。

  只不过,这些人再怎么出谋划策也都是“皇上不急太监急”,要知道古话说的好:解铃还须系铃人啊!

  好在真正的罪魁祸首 Duda 在不久发布了公告,表示已经更新了代码,并解决了这个问题。

  

  而在谷歌反馈 BUG 的网站上,这个问题也已经被标注为已修复( Fixed )。

  

  而在 Chrome、FireFox 这些浏览器的版本号真正到达100之后,还有多少的类似 Duda 的 BUG 没被发现,咱们就不得而知了。

  只能说这个浏览器界的“千年虫”问题,只是暂时得到了解决。

  

  另外,记性比较好的差友应该还记得在今年年初,微软公司也出过类似的千年虫问题。

  它让微软员工们的年都没跨好。

  这个 BUG 的大概剧情是在今年的1月1日当天,不少使用微软 Exchange 的公司发现邮箱居然发不出去了。

  

  背后的原因其实也相当简单,那就是微软用了一种名叫 yymmddhhmm (年年月月日日时时分分)的符号变量( int32 )来存储时间。

  而有符号的 int32只能存储-2147483648到2147483648的数据,也就是2的32次方那么多个。

  原本在上世纪是为了节省存储空间的设定,在如今却成为了 BUG。因为2022年的后两位22带入到“ yymmddhhmm ”中,直接就超过 int32的取值范围。。。

  好在微软攻城狮的加班加点之下,相关的问题已经得到了解决,连夜捉虫或许就是他们的新年礼物吧。

  

  总得来说呢,在科技互联网领域其实一直都存在类似的祖传代码存在,或是为了兼容,或许是为了节省时间不重复造轮子,那些具有时代局限性的代码,还有代码中那些千年万年的 BUG,也就一代又一代地传了下来。

  而大伙们也把这些又臭 BUG 又多的代码称为“屎山”。

  所以啊,类似于浏览器版本号、日期存储的 BUG 并不是第一次出现,也肯定不会是最后一次。

  

  最后呢,大伙们可以再等待一波即将到来的2038年问题。

  因为那些使用 POSIX 时间的32位程序,它们的计时方式是用秒来表示的。其中格林尼治时间1970年的1月1日0时0分0秒为起点,第2147483648秒为上限。

  而第2147483648秒的时间正好是2038年1月19日的凌晨3点14分07秒,而到过了这那一秒,应该有又不少的设备会有 BUG 了。

  当然,到时候应该不会还有32位的设备存在了吧,或许,没了吧。

  图片、资料来源:

  知乎问题:Chrome 100会再次造成“千年虫”现实吗?@FydeOS 的回答

  新智元,Chrome 浏览器全球大翻车?「满100减90」让20多亿用户无网可上。

  量子位,微软2022新 bug :大量程序员连夜加班,只因日期数据溢出

  

相关阅读
热门新闻
蚂蚁庄园今日答案:在哪个星球上能看到太阳“西升东落”?

蚂蚁庄园今日答案:在哪个星球上能看到太阳“西升东落”?

  11月5日蚂蚁庄园今日答案更新。。在哪个星球上能看到太阳西升东落?这个问题答对即可获得一份180g小鸡宝宝饲料作为奖励。下面,让我们一起

2022-11-05 10:37
iphone14plus屏幕亮度怎么设置息屏显示开关在哪

iphone14plus屏幕亮度怎么设置息屏显示开关在哪

  iphone14plus搭载iOS16系统,我们可以开启常亮的息屏显示功能,这样就可以直接在手机屏幕上看到各种消息。那么iphone14plus息屏显示开关在

2022-11-04 12:39
中国空间站“T”字基本构型组装完成

中国空间站“T”字基本构型组装完成

  据中国载人航天工程办公室消息,北京时间2022年11月3日9时32分,空间站梦天实验舱顺利完成转位。转位期间,梦天实验舱先完成相关状态设置

2022-11-04 11:56
电信研究院余晓晖:通信业正在重复IT发展规律

电信研究院余晓晖:通信业正在重复IT发展规律

网易科技讯 10月22日消息,在2008中国国际通信展举行的ICT中国高层论坛上,信息产业部电信研究院 副总工程师余晓辉总结了国内电信业正在经历

2022-11-04 09:11
淘宝双十一拍照锦鲤怎么玩拍照锦鲤开奖时间玩法攻略

淘宝双十一拍照锦鲤怎么玩拍照锦鲤开奖时间玩法攻略

  11月3-11日,淘宝拍照推出的锦鲤活动,每天有9万人中奖,预计共有双十一将诞生100万拍照锦鲤哦,还不赶快参与起来。那么双十一拍照锦鲤玩

2022-11-03 17:21
微信电脑版3.8.0更新内容新增3项十分实用的功能

微信电脑版3.8.0更新内容新增3项十分实用的功能

  根据腾讯2022年第二季度财报,截止今年6月30日,微信及WeChat合并月活跃账户数12。991亿。截稿前应该已经破13亿了。  作为社交、工作、

2022-11-03 16:40