在阿里云的IIS上配置https

2018-06-21  本文已影响122人  danejahn

微信小程序的API必须使用https,以下就是一篇简易的配置文章。

服务器环境

Windows Server 2008 R2 Enterprise x64, IIS7

SSL证书

因为我的服务器在阿里云上,我就先在阿里云上找SSL证书的服务,控制台-安全(云盾)-SSL证书(应用安全)里,但不是免费的。于是我就四处瞎找,最后在控制台-域名与网站-域名里,发现可以在自己的域名上申请免费的SSL证书。下图中点SSL证书:

image.png
在这里面选单域名免费证书,随后配置你的域名,并提交:
image.png
下面就进入审核阶段,没什么问题的话,三五分钟就审核完成了。
image.png
等审核完毕,就可以在SSL证书-我的证书中查到:
image.png

域名解析

将域名解析到目标服务器上


image.png

IIS配置

接下来,我们在服务器中配置我们生成好的证书。

SSL证书-我的订单中选择下载,跳转到下载证书页面,这块的文档写的比较详细,包括证书导入、分配服务器证书的说明。

image.png
这里有两点要注意的
  1. 导入证书时,要输入密码,密码就在pfx-password.txt这个文件中。
  2. IIS7选https时,主机名无法填写
    image.png
    需要在C:\Windows\System32\inetsrv\config\applicationHost.config手动配置一下。
找到这行
<binding protocol="https" bindingInformation="*:443:" />
在443后填上主机名
<binding protocol="https" bindingInformation="*:443:s.wogan.com" />
  1. 如果要配置多个证书
    IIS7中需要通过端口好的方式配置多个证书,如下:
<binding protocol="https" bindingInformation="*:5001:s1.wogan.com" />

不过这个需要你手动配置C:\Windows\System32\inetsrv\config\applicationHost.config
IIS配置好了之后,就可以通过https访问了。

TLS版本的问题

微信小程序需要TLS1.2及以上的版本。
但是我们服务器只支持TLS 1.0,这个可以在https://www.ssllabs.com/ssltest/上测试。我们服务器测试结果如下。

image.png
不支持TLS 1.2。
需要下载一个工具https://www.pianyissl.com/support/page/60
点击Best,确保TLS1.2是勾选的,然后在选择Apply,完成后需要重启一下服务器。
image.png

最后,就可以正常的访问https的API了。

上一篇 下一篇

猜你喜欢

热点阅读