最近公司新开发了一个微信小程序,只能使用https协议,由于还在实验阶段,不准备给域名买昂贵的ssl证书,毕竟一年也几千块呢.
我在七牛云和阿里云都申请了免费的证书,由于公司使用的是阿里云的服务器,最后使用了在阿里申请的免费证书,都在一个账号下,方便管理
七牛云免费证书申请页面阿里云在产品与服务-安全-ssl证书里面
要这样选择才是免费的证书
购买完证书以后,七牛云和阿里云都会给你一个txt文件,这个txt文件是用来验证的
牛云获得txt文件
七牛云获得txt文件阿里云购买完成后,点击申请
阿里云购买完成后,点击申请填写信息,这里选择文件验证
填写信息,这里选择文件验证接下来步骤我都使用阿里云,七牛云类似
下载txt文件
txt文件下载按照阿里云给的路径部署文件,我这里因为使用phoneix作为后台,所以直接把文件当做静态资源挂上,文件放在/home/.well-known/pki-validation底下,nginx配置只修改http 80的就可以
location /.well-known {
alias /home/.well-known;
autoindex off;
charset utf-8;
}
配置好了,重启nginx
点击验证验证过了就可以申请证书了,然后你会得到两个文件.pem和.key
在服务器nginx下新建目录cert,将两个文件上传到目录下,修改nginx配置
server {
listen 443;
server_name www.abc.com; #填写绑定证书的域名
ssl on;
ssl_certificate cert/1835011_www.abc.com.pem; #注意修改文件名
ssl_certificate_key cert/1835011_www.abc.com.key; #注意修改文件名
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
}
#http加入路径跳转
server {
server_name abc.com;
server_name www.abc.com;
listen 80;
rewrite ^(.*) https://$host$1 permanent; #路径跳转
}
网友评论