我在 Windows2008 上有一个 IIS 7.5,托管了几十个网站。
两个站点使用 HTTPS,我们分别称它们为 www.site1.com 和 www.site2.com
现在的问题是,如果我(出于任何原因)浏览到https://www.site3.com连接没有像我预期的那样断开,但是浏览器显示不安全内容的警报,因为域与证书不匹配。
我不知道如何避免这种行为,并且我想知道它是否可以解决。
答案1
IIS 会将特定 IP 地址的流量发送到使用端口 443 为该 IP 配置的站点。SSL 或 HTTPS 要求每个地址 1 个 IP(不包括通配符)。因此,如果您将 IP 127.0.0.1 绑定到 443 上的 site1.com 和所有 IP 上的 site2.com,那么当您浏览到https://site2.com无论主机头如何,您仍调用相同的 IP 地址,IIS 都会将您发送到 site1 并抛出证书警告。
为了防止这种行为,您需要为 site2.com 设置另一个 IP,并将每个站点绑定到 IIS 中的这些 IP。
答案2
1.单击并打开注册表编辑器工具。
2.在编辑器中,放置以下注册表项,如下所示:
HKey_Local_Machine\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0。
3.右键单击 SSL 2.0,然后选择新建,然后单击密钥选项。
4.将新文件夹命名为服务器。
5.在服务器文件夹中,单击编辑菜单,选择新建,然后单击 DWORD(32 位)值。
- 输入 Enabled 作为名称并按 Enter。
8.确保数据列下显示 0×00000000 (0)(默认情况下显示)。
- 重启系统