我们在使用IIS 8的Windows Server 2012 R2上testingSNI的情况如下。下面列出的域名和IP地址是假的,仅供举例 。
WEB SITE NAME IP ADDRESS Host Name/Header (SNI) Certificate Domain ============================================================================== x.domain.com 10.10.0.1 x.domain.com x.domain.com y.domain.com 10.10.0.1 y.domain.com y.domain.com
当只有“x.domain.com”和“y.domain.com”使用SNI和自己的证书在同一IP地址上configuration时,两个站点在所有浏览器上都能正常工作,但是当您select任一站点时,IIS将显示会显示一条消息,指出“没有默认的SSL站点已经创build。为了支持没有SNIfunction的浏览器,build议创build一个默认的SSL站点”。

如果我创build了一个默认的SSL站点(使用HTTPS但是没有主机名/ SNI的IP地址相同的站点),则会在同一IP地址上的其他SNI站点上打开证书。 如果我添加如下的默认SSL网站
WEB SITE NAME IP ADDRESS Host Name/Header (SNI) Certificate Domain ============================================================================== somedomain.com 10.10.0.1 NULL somedomain.com
一旦存在(与使用什么证书无关),该IP地址上的其他SNI域就会生成证书错误,因为IIS显然会向用户提供缺省SSL站点的证书,而不是为站点指定的证书IIS。
任何人都可以请阐明如何在IIS中正确configuration默认SSL站点?
我想如果你把somedomain.com绑定的IP地址改成“All unassigned”,而不是10.10.0.1,那么它将不会妨碍你的SNI站点。