gpt4 book ai didi

php - 检测浏览器的 SNI 支持

转载 作者:可可西里 更新时间:2023-11-01 12:37:15 27 4
gpt4 key购买 nike

我想知道除了验证用户代理和猜测之外,是否有任何方法可以确定发出 HTTP 请求的浏览器是否支持 SNI。

我会考虑服务器端或客户端选项。

我想做的是为指向同一个 PHP 应用程序的多个域设置 SSL 证书。然后我会尝试找出发出请求的客户端是否支持 SNI,如果支持,则将他重定向到支持 SSL 的版本。

最佳答案

首先,我们知道目前支持SNI的浏览器有哪些:

歌剧 8.0;MSIE 7.0(但仅限于 Windows Vista 或更高版本);Firefox 2.0 和其他使用 Mozilla Platform rv:1.8.1 的浏览器;Safari 3.2.1(Windows 版本在 Vista 或更高版本上支持 SNI);Chrome(Windows 版本也支持 Vista 或更高版本的 SNI)。

所以一个廉价的方法是确定浏览器,如果是以上之一,它有 SNI。

虽然这不是最佳实践(优先于特征检测),但似乎没有办法避免它,因为 SNI 检测需要 SSL 握手。因此,在您的 SSL 证书失败后再做一些事情已经太晚了。

关于php - 检测浏览器的 SNI 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7363948/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com