我的一个朋友(不是技术人员)将 Web 应用程序的 API 从 azure 迁移到了 Liquidweb。使用 FireFox 和 Edge 的用户可以正常浏览该网站。但是使用 Chrome 的用户会遇到 SSL 问题。当我使用 Chrome 访问 api urlhttps://api.example.com
时,我注意到地址栏给出了一个感叹号,而不是通常的锁定图标。点击感叹号给出了典型的Your site connection is not secure message
。同样,这在 FireFox 或 Edge 中不是问题。
我查看了我朋友的 IIS 设置,如下所示:
并且证书的详细信息都是“绿色图标”,除了key usage
和basic constraints
显示在这里
我个人在 bluehost.com 共享主机上托管了其他网站,这些网站使用 linux、nginx,让我们加密显示相同设置key usage
且basic constraints
没有相同问题的 ssl。
我朋友的 SSL 设置有什么问题可能会导致 Chrome 出现问题?
额外的
这是我在 Chrome 中看到的内容:
此外,我朋友的服务器在 IIS 版本 10 的 build 1607 上使用 Windows Server 2016。
附加 2
FireFox 显示 Subject Alt Name 与 Common name 相同。截图在这里:
附加 3
这可能是因为域名未列在证书的“主题备用名称”(SAN)字段中,并且自 Chrome 58 以来它是强制性的:https: //support.google.com/chrome/a/answer/7391219? hl=en
确保域名列在主题备用名称中,即使主题名称是正确的。
或者您正在使用已撤销的 Let's Encrypt 证书,请在此处查看:https ://checkhost.unboundtest.com/
看起来以下 IIS 设置解决了我的问题:
转到您应用的 SSL 设置
然后将单选选项更改为忽略:
这个答案更深入地了解了为什么它有效:
https://stackoverflow.com/questions/19383538/what-is-the-difference-between-requiring-an-ssl-cert-and-accepting-an-ssl-cert