功夫码

同一台服务器上多个站点绑定不同的SSL证书的方法

晓峰 时间:2019-08-01 18:07:01 阅读:38
--------------------------------------------------------- Ta 只分享的内容开始 ---------------------------------------------------------------------

最近在做小程序时发现,一个主机只能绑定的一个ssl证书,所以在网上搜到了一些解决方法,希望能帮到码夫

方法1 

将每个https站点绑定到不同的端口。

但是这样的话客户端浏览网页时必须手动指定端口,

例如 https://gongfuma.com:444;

方案 2 

为不同的站点分配一个独立的ip

方案 3

购买通配证书;

方案 4 

升级为IIS8,IIS8中添加的对于SNI(Server Name Indication)的支持,服务器可以从请求中提取出相应的主机头从而找到相应的证书。 

方案分析:

方案1

明显不太好,访问是需要带上端口号,如果是小程序使用的话就无所谓了,如果网页端也是需要的话,访问就有些费劲了,对用户体验不好;

方案2虽然可行,但由于我们使用的是阿里云的服务器,是固定IP,没办法再给服务器再分配一个IP,故该方案不适合我们的场景;

方案3

虽然可行,但我们使用的是域名型SSL证书,而且要购买通配型SSL证书的话,价格也比较贵,故该方案不适合我们的场景;

方案4

我们使用的服务器安装的操作系统是Windows Server 2012R2,而该系统预装的就是IIS8,不是IIS8的可以自行升级为IIS8,在IIS8中,因为添加了对SNI的支持(具体概念及原理,读者可自行查阅相关资料,这里就不多说),所以可以很方便的解决我们所面临的问题。 

现在就方案4做一下具体使用说明:

安装服务器证书,进入IIS,点击主机名,选择服务器证书,如下图, 

这里写图片描述

2.点击右侧导入,如下图, 

这里写图片描述

3.选择自己的证书文件,确定即可; 

4.给自己的网站绑定相应的SSL证书:从IIS网站中选择自己的网站,右键,编辑绑定,出现下图, 

 è¿™é‡Œå†™å›¾ç‰‡æè¿°

5.添加网站绑定,如下图 

这里写图片描述

 

注意:类型选择https,端口号输入443,主机名填写自己的域名,“需要服务器名称只指示”前面的勾选框必须勾选,这个是解决问题的关键,SSL证书选择自己网站的证书(这里的选项是之前导入的证书); 

6.确定后,该网站SSL证书绑定成功,可以使用https访问该网站,同样的方式,你需要配置另外一个网站(PS:除过主机名和SSL证书不一样外,其他配置都是一样的); 

7.至此,两个网站都已配置成可以使用https访问; 

8.测试是否成功:浏览器地址栏输入你要访问的地址:如https://www.domain.com, 

如果浏览器中两个网站地址栏呈现类似以下状态,则配置成功:


如果一步一步操作到这里,那么恭喜你,你已经解决了这个问题。

--------------------------------------------------------- Ta 只分享了这些内容 ---------------------------------------------------------------------

本文来源:功夫码(gongfuma.com)
声明:本文系功夫码原创稿件,版权属[功夫码 gongfuma.com]所有。
未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:功夫码",违者将依法追究责任。

相关文章

回到顶部