macOS Big Sur 下包含奇怪版本号的用户代理字符串
User agent string containing strange version number under macOS Big Sur
我正在使用 macOS Big Sur 11.0.1.
我正在尝试使用此脚本从用户代理获取 OS 版本:
$ua = $_SERVER['HTTP_USER_AGENT'];
echo "User Agent: $ua";
使用 Firefox(版本 83.0)输出:
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.16; rv:82.0) Gecko/20100101 Firefox/82.0
使用 Safari(版本 14.0.1)输出:
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.1 Safari/605.1.15
所以:
- Firefox 报告 Mac OS X 10.16
- Safari 报告 Mac OS X 10.15.6
Firefox 报告的 10.16 高于最新的 Catalina 版本 10.15.7。因为那里 是 没有 Catalina 10.16 这可以用来检测“比最新的 Catalina 更新的任何东西”。
但 Safari 报告的 10.15.6 是 Catalina 的实际版本号,因此 Safari 无法检测到 Big Sur。
有人知道这是怎么回事吗?
IMO 两种浏览器都应报告 11.0.1。
这是临时更改。
“世界显然还没有为用户代理中的 macOS 11.0 做好准备。由于网络上令人沮丧的 UA 嗅探代码,让我们只报告我们当前的发布版本,直到事情稳定下来。”
我正在使用 macOS Big Sur 11.0.1.
我正在尝试使用此脚本从用户代理获取 OS 版本:
$ua = $_SERVER['HTTP_USER_AGENT'];
echo "User Agent: $ua";
使用 Firefox(版本 83.0)输出:
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.16; rv:82.0) Gecko/20100101 Firefox/82.0
使用 Safari(版本 14.0.1)输出:
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.1 Safari/605.1.15
所以:
- Firefox 报告 Mac OS X 10.16
- Safari 报告 Mac OS X 10.15.6
Firefox 报告的 10.16 高于最新的 Catalina 版本 10.15.7。因为那里 是 没有 Catalina 10.16 这可以用来检测“比最新的 Catalina 更新的任何东西”。
但 Safari 报告的 10.15.6 是 Catalina 的实际版本号,因此 Safari 无法检测到 Big Sur。
有人知道这是怎么回事吗?
IMO 两种浏览器都应报告 11.0.1。
这是临时更改。
“世界显然还没有为用户代理中的 macOS 11.0 做好准备。由于网络上令人沮丧的 UA 嗅探代码,让我们只报告我们当前的发布版本,直到事情稳定下来。”