solidot新版网站常见问题,请点击这里查看。
2019 年, Google Chrome 浏览器引入了名为 Scroll to Text 的新功能,允许用户分享页面内特定语句或段落的链接。去年 Google 发布了扩展 Link to Text Fragment,将这项功能通过扩展提供给用户。现在,Chrome 90 直接整合了该功能。当用户访问一个网页,高亮一段文字,点击右键,选择“copy link to highlight”,会产生一个以 # 结尾的链接,用户可以与其他人分享该链接。
Google Chromium 博客宣布,从 Chrome v90 开始地址栏将默认使用 https。Google 称,当访问支持 https 的网站时,默认使用 https 能改进隐私保护提高加载速度。用户在地址栏手动输入网址时,通常不会包含 http:// 或 https://,如果是首次访问一个网站,Chrome 默认是使用 http://。这一做法源自过去,那个时候 https 的普及度还不高。随着 https 广泛使用,Chrome 将默认使用 https。对于不支持 https 的网站,Chrome 将在尝试失败之后后退到 http。 Chrome 桌面版和 Android 将率先支持这一变化,iOS 版本将在稍后支持。
在 Mozilla 的 Firefox 之后,Google Chrome 也开始加快发布频率。2019 年 9 月 Mozilla 宣布 Firefox 的发布周期从六到八周减少到四周。现在,Google 学习了 Mozilla 的做法,宣布 Chrome 的发布周期将从六周减少到四周。它将从今年第三季度开始采用这一发布周期。如果你担心更短的发布周期可能会引入破坏功能等兼容性问题,不用担心,Google 将同时推出一个扩展稳定版本( Extended Stable),每八周发布大更新。
Google 本周释出了 Chrome 的安全更新 v89.0.4389.72,修复了 47 个漏洞,其中包括正被利用 0day。编号为 CVE-2021-21166 的漏洞是微软安全研究员 Alison Huffman 在 2 月 11 日报告的,Google 没有披露漏洞细节,只是表示它知道漏洞正被利用。这是 Google 在今年修复的第二个 0day,上一个是 2 月 4 日修复的 V8 堆溢出漏洞 CVE-2021-21148。
10 月份释出的 Chrome 86 改变了缓存系统,引入了缓存分区去储存不同网站的缓存,防止利用缓存共享资源的攻击方法。但新的缓存系统影响到了设计使用缓存的 Web 服务如 Google Fonts。Google Fonts 被数百万网站广泛使用,它允许网站使用一行代码加载托管在 Google 服务器里的任意字体。当字体下载到缓存之后,用户无需访问每个网站重新下载一遍字体。但新的缓存分区系统事实上让 Google Fonts 变得无用,因为新系统强迫用户访问一个网站后需要重新下载一遍字体,网站在自己的服务器上托管字体将比 Google 托管更高效。
Google 计划在 Chrome Web Store 商店页面加入一个新的区域,要求扩展开发者披露收集的用户数据以及如何处理用户信息。这一要求将于 2021 年 1 月 18 日生效。Google 现在已经在扩展开发者的 Web Store 控制面板中加入了相关选项。Google 不是唯一一个引入数据披露政策的公司,苹果在 WWDC 2020 上宣布所有 App Store 应用将要求展示隐私提示,列出应用收集的用户数据点,哪些数据点被用于跟踪用户。
Net Applications 的 NetMarketShare 工具被广泛用于跟踪桌面浏览器和操作系统市场份额,但上个月的报告将是它是最后一次记录桌面浏览器市场份额。它停止跟踪浏览器市场份额不是因为 Google Chrome 的市场地位难以动摇,而是因为 Google 准备做的事情。今年 1 月,Google 透露作为反指纹技术的一部分它计划淘汰 User-Agent 字符串,而 User-Agent 字符串被 Net Applications 用于识别浏览器和操作系统的版本和类型。Net Applications 称这一改变将会破坏它的设备检测技术,导致很长一段时间识别不精确。再加上过滤机器人程序防止结果偏差的问题,Net Applications 认为最好放弃这一持续了 14 年的记录。
基于 Debian Linux 和 Ubuntu 的桌面发行版 Linux Mint 项目决定构建自己的 Chromium 浏览器。多年来,Linux Mint 一直使用 Ubuntu 构建的 Chromium 版本。但 Ubuntu 的开发商 Canonical 发布的 Chromium 版本开始从 APT 兼容的 DEB 包迁移到 Snap 打包格式。Snap 通过整合需要加载的不同库来减少依赖问题,但也存在容量过大启动过慢的缺陷。Canonical 强推 Snap 打包格式的做法已经在社区引发了争议,而 Linux Mint 早些时候宣布不会安装任何 Snap 应用。它现在决定利用源代码构建自己的 Chromium 版本。为了加快构建速度,Linux Mint 项目为此分配了一台高端计算机——Ryzen 9 3900、128GB RAM、NMVe——将构建时间从 6 个多小时减少到 1 个多小时。
一位扩展开发者注意到,在 Chrome 的“Cookie 和网站数据”设置中,用户可以启用“关闭 Chrome 时删除 Cookie 与网站数据”。但在启用该选项之后,Google 旗下网站如搜索和 YouTube 的数据在关闭之后并没有删除。他对其进行了一番测试,在没有登陆 Chrome 或任何 Google 服务的情况下 YouTube 等 Google 服务的数据在浏览器关闭之后仍然保留了,也就是说 Google 旗下网站默认豁免于用户设置。Google 的做法再次引发了争议
为了保护用户隐私,Chrome 改变了浏览器缓存系统的工作方式。HTTP Cache 或 Shared Cache 保存了网页加载的资源副本,如图像、CSS 文件和 JS 文件。如果用户重新访问了同一个网站或使用相同资源的网站,浏览器可以直接从内部缓存里加载资源,无需重新下载文件。这一缓存机制已经行之有效的工作了许多年,但最近几年被广告商和分析公司利用去跟踪用户,比如能检测用户访问了哪些网站,能发动跨站搜索攻击和实施跨站跟踪等等。从刚刚发布的 Chrome 86 开始,Google 将逐步改变缓存机制。Google 引入了名为 cache partitioning 的功能去改变资源的保存,以前资源的存储键只有一个项,现在将包含三个项,包括域名、当前帧和网址。新的机制能阻挡之前对缓存机制的攻击。
Chromium 官方博客宣布,Chrome 准备支持 IETF QUIC。Google 开发者称,QUIC 是新的网络传输协议,结合了 TCP 和 TLS 等协议的特性,最新版本的 HTTP 协议 HTTP/3 就是运行在 QUIC 之上(即 HTTP-over-QUIC)。QUIC 最早由 Google 开发,在 2013 年宣布,如今已经成熟,负责传输三分之一的 Google 流量。2015 年 Google 将 QUIC 递交到行业标准组织 IETF 进行标准化,形成了两个相似但不同的协议:Google QUIC 和 IETF QUIC。Chrome 目前使用的是 Google QUIC,但已经在实现 IETF QUIC。Google 称 IETF QUIC 的性能显著优于 HTTP over TLS 1.3 over TCP,Google 搜索延迟减少 2% 以上,YouTube 重缓冲减少 9%,桌面和移动客户端吞吐分别提高 3% 和 7%。
使用 Google 的服务就要做好有一天突然遭到关闭的心理准备。Google 宣布它的 Chrome Web Store 支付系统将在未来几个月内关闭,使用该支付系统的扩展需要迁移到其它支付方法。从 9 月 21 日起,开发者将无法创建新的 Chrome 付费扩展和应用内购买物品;12 月 1 日起关闭免费试用;2021 年 2 月 1 日起,现有的可购买物品和应用内购买将无法通过 Chrome Web Store 支付。Google 表示无法向扩展开发者提供批量导出现有用户授权的选项,所以开发者需要用户帮忙完成迁移。但这听起来完全不现实。
Google 从 Chrome Mobile 中移除了禁用视频自动播放的选项。根据 Google 开发者的回答Chromium 问题报告,Google 做出这一决定背后的理由是:禁用视频自动播放会鼓励网站从视频转换到大容量 Gif 动画(出现了上百 MB 大小的动画),或者在 JS 中解码视频绘到画板上,这两种情况对用户来说都是不理想的。其他开发者认为保留选项比一刀切的移除选项更合乎情理。
Google 释出了 Chrome 85。新版的一个重要变化是在编译时启用了名为 Profile Guided Optimization 的技术优化性能。Google 称,页面加载速度提升了 10%。Chrome 85 的其它特性包括标签组支持折叠和展开,改进 PDF,新的开发者特性。Chrome 还引入了名为 Tab Throttling 的特性减少不活动后台标签页的影响,该功能尚未引入正式版还在 Beta 版本测试。
Google 宣布 Chrome For Android 的右键菜单将显示“快速网页(Fast page)”标签:用户右键网页中的一个超链接,会看到有关该链接相应的标记。快速网页由 Google 的 Web Vitals 判断。Web Vitals 是 Google 今年早些时候提出的一个倡议,为 Web 开发者和网站站长提供一组统一的衡量指标,改进网站用户体验和性能。这组指标将测量网页加载性能,Google 建议在 2.5 秒内完成大部分内容加载;交互延迟低于 100 毫秒;网页需要有良好的视觉稳定性。
Google 多次尝试在浏览器地址栏隐藏完整的网址,搜索巨人也许是认为长地址是邪恶的。它的每一次尝试都遭到了批评,但这并没有阻止了它继续推进这一计划。它此前在 Chrome 85 的测试版本引入了名为“Omnibox UI Hide Steady-State URL Path, Query, and Ref”的新特性,提供了两种变化:一种是你将鼠标悬浮在地址栏上就会显示完整网址,另一种是你在与网页互动之后才会隐藏网址。现在它在 Chrome 86 中隐藏完整网址时还加入了悬浮动画。支持者认为隐藏完整域名将有助于增加钓鱼的难度,但批评者认为此举旨在让用户一直停留在 Google 内容上,而它将能展示更多的广告。
Google Chrome 多年来一直是占据绝对统治地位的浏览器,但自从微软重新发布基于 Chromium 的 Microsoft Edge 后,它的地位受到了挑战。现在,通过定向通知 Google 准备推动更多 Android 用户恢复使用 Chrome。Google Chrome for Android 被发现引入了一项新“功能”叫“Enable re-engagement notifications”,如果你在 Android 设备上安装了多个浏览器,有一段时间没有使用 Chrome,那么它将会发送通知提醒用 Chrome。Google 此举可能有点过分,Chrome 是 Android 平台默认的浏览器,用户是无法将其卸载的,它的市场份额超过了六成。
Windows 10 2004(Windows May 2020)提供了 Segment Heap API 来帮助非常吃内存的应用如 Chrome 减少内存占用。但 Google Chrome 即将发布的下一个版本 v85 将默认禁用该 API,原因是该功能被发现会对 CPU 性能有负面影响。CPU 问题是一位英特尔工程师发现的,这位工程师发现 Chrome 启用 Segment Heap 后在使用 Core i9-9900K 处理器的 PC 上执行基准测试表现出显著的性能下降。微软工程师对内存和 CPU 之间的权衡进行辩护,称用一种资源交换另一种资源是很常见的策略,但承认可以实现更好的版本以减少对 CPU 的影响。在测试中,启用 Segment Heap 导致了在 Speedometer 2.0 中 CPU 性能下降 10%,CPU/功耗增加 13%。Chromium 开发者认为这影响太大了。
Google Chrome 和 Mozilla Firefox 准备加入对新图像格式 AVIF 的支持,相关工作接近完成。AVIF 是新的轻量级免版税图像格式。流媒体巨头 Netflix 认为它优于现有的图像格式如 JPEG、PNG 和 WebP。AVIF 代表 AV1 Image File Format,顾名思义,它是基于视频编解码器 AV1。AV1 是 AOMedia 释出的开源的免专利费编解码器,而 AOMedia 由亚马逊、ARM、思科、Facebook、Google、英特尔、英伟达、Mozilla、Netflix、微软、Adobe、AMD、苹果等著名科技公司组建。
Chrome 的 Canary 版本被发现引入了名叫 Throttle Javascript timers in background 的新设置,新实验功能可以大幅减少耗电量,可能给笔记本电脑增加 2 个小时的运行时间。 Javascript 计时器通常被用于跟踪用户与网页之间的交互,检查如滚动位置、标签打开下的广告互动。对于后台未活动的标签计时器仍然会运行,虽然根据定义用户与后台标签之间并没有交互。如果你的浏览器打开了大量的标签,这些 JS 计时器会在没有任何意义的情况下消耗大量的电。新的 Throttle Javascript timers 设置如果启用的话,它将在后台标签不活动 5 分钟后关闭计时器,限制其每分钟唤醒一次。而在正常情况下,后台标签会每秒钟触发一次唤醒。测试显示,启用该设置能将笔记本电脑的电池续航力延长 28% 或两小时。