在javascript中检测SNI(服务器名称指示)浏览器支持

And*_*rte 12 javascript ssl ssl-certificate

我希望能够检测浏览器是否支持SNI - 服务器名称指示.我希望将不合规的客户端重定向到不同的地址.

我正在考虑通过SSL加载一些内容并确保它被安全地传输.否则浏览器不支持SNI.可以这样做吗?

Bru*_*uno 4

您可以设置一台支持 SNI 的服务器,在您需要 SNI 的地方提供两个主机名,而另一台服务器是后备解决方案,两者都提供它们所托管的名称。

大致如下:

  • https://www.example.com/name返回一个表示I'm www.example.com
  • https://www.example.net/name返回I'm www.example.net(并且需要 SNI)。

如果您向 发出 XHR 请求https://www.example.net/name并且返回www.example.com,则浏览器不支持 SNI。