我有两个网站绑定到一个IP地址(10.10.0.1)在两个不同的域(xyz.example.com和abc.example.com)。 使用xyz.example.com域的证书将HTTPS绑定到端口443,而abc.example.com仅使用HTTP。 这是在IIS 7.5服务器上。
我没有任何问题在http上同时使用https,对xyz.example.com工作正常,但是如果我尝试访问https://abc.example.com ,则会显示xyz.example.com的SSL站点,我不想要。
有没有办法阻止https://abc.example.com ? 即使有单一IP,多个SSL站点的解决scheme,我也找不到任何类似的问题。
这是IIS 7 / 7.5和SSL / TLS(Pre SNI)中的一个限制,因为它不允许您将HTTPS绑定到单个站点,而只是绑定到IP地址/端口组合,因此所有到该IP的通信地址/端口将转到它绑定的站点。
可以用于IIS 7 / 7.5的变通办法
IIS 8+支持SNI,它是TLS的扩展,允许在握手中传递主机信息以允许服务器显示正确的站点。 这要求客户端支持SNI,但在所有现代浏览器中都是如此。 (在Windows XP上的任何版本的IE都不支持,但在这一点上这不是现代的。)
类似的问题在StackOverflow 这里回答。