本周早些时候,jQuery CDN 出现了一个问题,导致 jquery-latest.js 和 jquery-latest.min.js 文件在某些地理区域内无法访问几个小时。(这与 CDN 本身无关,而是与为 CDN 提供文件的存储库有关。)虽然我们始终希望实现 100% 的正常运行时间,但这一次停机事件突出了使用此文件的生产网站的数量。因此,让我们明确一点:在生产网站上不要使用 jquery-latest.js。
我们知道 jquery-latest.js 被滥用,因为 CDN 统计数据 显示它是最受欢迎的文件。如果它只是被开发者用于创建本地副本,则不会出现这种情况。jquery-latest.js 和 jquery-latest.min.js 文件旨在提供一种简单的方法来下载最新发布的 jQuery 核心版本。相反,一些开发者直接在他们的生产网站中包含了此版本,这使得用户在每次发布新版本的 jQuery 时都面临着网站崩溃的风险。当然,团队会尽力将这些风险降至最低,但 jQuery 生态系统非常庞大,我们在发布新版本之前不可能对所有内容进行检查。
为了最大限度地降低“破坏网络”的风险,jQuery 团队在 2013 年决定 jquery-latest.js 无法升级到 2.0 分支,即使从技术上讲这是最新版本。因为会有太多网站莫名其妙地停止使用旧版本的 Internet Explorer,而其中很多网站可能今天不再维护了。
随着 jQuery 的采用不断增长,即使是这种保障似乎也不足以防止对 https://code.jqueryjs.cn/jquery-latest.js 的不当使用。因此,我们决定停止更新此文件,以及它的缩小版本,将这两个文件永远保留在 1.11.1 版本。最新发布的版本始终可以通过 jQuery 核心下载页面 或 CDN 主页 获取。开发者可以从这些页面之一下载最新版本,或者通过版本号在脚本标签中直接引用它。
Google CDN 团队加入了我们的努力,以防止意外的网络崩溃,不再更新 https://ajax.googleapis.ac.cn/ajax/libs/jquery/1/jquery.js 上的文件。该文件也将一直锁定在 1.11.1 版本。但是,请注意,此文件当前的缓存时间非常短,这意味着当你请求像 1.11.1 这样的完整版本时,你将失去 CDN 提供的长时间缓存的性能优势。
所以请广而告之!如果你看到某个网站直接使用 jQuery CDN 的 jquery-latest.js 或 Google CDN 的等效文件,请告知他们应该更改为特定版本。如果你需要最新版本,请从下载页面或我们的 CDN 页面获取。对于 jQuery 和 Google CDN,在脚本标签中引用文件时,始终提供完整的版本号。谢谢!