最近在做微信小程序项目遇到一个问题,微信方面是必须要一个https的域名作为小程序的服务器域名,之前没有搭https服务器的经验,所以做个笔记。
- 第一步、购买证书,过程就忽略了,跟着阿里云的步骤点,都描述得很清晰了
详见阿里云证书服务
点击“立即购买”
默认不是免费证书的,自己俺需要选择
购买成功之后,去到证书控制台。点击申请,没什么难点,跟着填信息就好
然后就是下一步,验证,提交审核。一般等几分钟就可以通过审核了。
然后点击部署到自己服务器对应的地方去,下载nginx文件
- 第二步、nginx配置。
其实官方已经有教程文档了,在上面帮助那里,这里不重复帮助文档的描述了。
以下是我存放证书文件的路径:
下面是nginx配置,略有不同,只要符合nginx文档要求就可以,根据各自需求相应修改
server {
listen 443 ssl;
server_name 127.0.0.1; // 服务器域名
ssl_certificate ../cert/hbk.pem;
ssl_certificate_key ../cert/hbk.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
// 地址、代理端口等,具体参考nginx文档
// 比如这里配置了两个路径分发“/server1”对应到端口为8080的服务,“/server2”对应到端口为9090的服务并设置主页为nginx/html/app2/index.html
location /server1 {
proxy_pass http://127.0.0.1:8080;
}
location /server2 {
proxy_pass http://127.0.0.1:9090;
root: html/app2;
index index.html;
}
}
至此就完成了nginx的https配置了,一个443端口就可以代理多个Tomcat或Jboss、nodejs等服务