前言:最近在开发微信小程序,需要https协议才能测试请求,很久没有安装安全证书了,记录一下避免遗忘,同时也积累学习经验。
第一步:
既然是安装https安全证书,肯定要有https安全证书才能进行安装,那么首先就是申请https安全证书,推荐去腾讯云申请,免费快捷而且有腾讯云官网有教程,百度也可以找到很多详细的教程,这里不过多叙述。
第二步:
将申请到的证书下载下来,进入下载页面,找到ngin页签中nginx配置信息,并“下载证书 for Nginx”:
下载的文件有两个:
1,214292799730473.pem
2,214292799730473.key
第三步:
首先找到Nginx的安装目录,例如我的nginx的安装目录为:/etc/nginx/。进入目录,增加cert/文件夹,把刚刚下载的两个文件上传到cert/文件夹中。
然后找到nginx.conf文件,使用vi nginx.conf进入编辑,添加如下内容:
server {
listen 443;
server_name abc.com; // 你的域名
ssl on;
index index.html index.htm;// 上面配置的文件夹里面的index.html
ssl_certificate /etc/nginx/cert/214292799730473.pem;// 改成你的证书的名字和你存放的路径
ssl_certificate_key /etc/nginx/cert/214292799730473.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;
location / {
root html;
proxy_pass http://localhost/; //改为你的tomcat地址
proxy_read_timeout 300;
proxy_connect_timeout 300;
proxy_redirect off;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
}
}
配置完成后,检查一下nginx配置文件是否可用,有successful表示可用。
$ nginx -t // 检查nginx配置文件
配置正确后,重新加载配置文件使配置生效:
$ nginx -s reload // 使配置生效
至此,nginx的https访问就完成了,并且通过rewrite方式把所有http请求也转成了https请求,更加安全。
如需重启nginx,用以下命令:
$ service nginx stop // 停止
$ service nginx start // 启动
$ service nginx restart // 重启
最后,有什么错误欢迎指正,鞠躬。