合作机构:阿里云 / 腾讯云 / 亚马逊云 / DreamHost / NameSilo / INWX / GODADDY / 百度统计
IIS7下的https无法绑定主机头,显示灰色,原因是IIS7不支持SNI,即一个IP只能绑定到一个HTTPS站点上。
网上的资料大部分都是建议修改IIS7配置文件直接指定主机名,内容如下:
打开C:\Windows\system32\inetsrv\config\applicationHost.config
定位到如下位置:
<bindings>
<binding protocol="https" bindingInformation="*:443" />
<binding protocol="net.tcp" bindingInformation="808:*" />
<binding protocol="net.pipe" bindingInformation="*" />
<binding protocol="net.msmq" bindingInformation="localhost" />
<binding protocol="msmq.formatname" bindingInformation="localhost" />
<binding protocol="http" bindingInformation="*:80:www.feedoo.cn" />
</bindings>
找到https的配置项目行,修改为:
<binding protocol="https" bindingInformation="*:443:www.feedoo.cn" />
注意这里的www.feedoo.cn要换成你自己的域名,之后保存即可。
这样操作的确是主机头和443端口对应了,但是我们会发现其实多个站点https访问后请求到的证书只是最后一个配置的站点,这就导致还是只有一个域名可以正常使用https.
如何处理这个问题呢?
方式1:购买多个IP,每个IP解析一个域名,在绑定HTTPS时指定IP
方式2:使用kangle,apache等来做反代IIS,在前端web服务器上绑定https.
方式3:更换为支持SNI的IIS版本,比如2012R2系统。
TOP