IIS服务器多域名部署多个HTTPS的方法
默认情况下,使用IIS7的HTTPS绑定是无法指定主机名的。“主机名”的内容是灰色不可编辑的。这就带来了一个很大的问题,当一台IIS服务器上绑定两个不同的域名,主机上只能启用一个网站的HTTPS,第二个网站的HTTPS无法启用,系统提示错误说,不能“使用同一主机名”。
实际上,我们并没有使用同一主机名,只要想办法把灰色不可编辑的主机名修改即可,这时,我们就需要手动修改IIS配置文件来实现主机头绑定。
IIS配置文件的位置在:C:\Windows\system32\inetsrv\config\applicationHost.config
注意:这个文件可以无法直接打开编辑,可以先把它复制到桌面上去编辑,编辑完毕后再覆盖回去。
找到如下节点位置:
<bindings>
<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.williamlong.info" />
<binding protocol="https" bindingInformation="*:443:" />
</bindings>
我们将*:443:这部分内容修改成如下配置:
<binding protocol="https" bindingInformation="*:443:www.williamlong.info" />
修改完成后,将文件覆盖回去,这时回到IIS控制台(不用重启),可以看到主机名已经成功绑定上了。
这时候就可以正常启用站点了。