前言:
最近需要做一个小程序的后台,然后微信小程序的后台大家都知道,需要配置https才可以上线发布。而我本身服务器就已经有了一个博客网站了,所以这里开辟了一个二级域名给微信小程序后台,这里记录一下nginx配置https的过程。
第一步 申请ssl证书
申请ssl证书咯,这一步没啥好说的,我用的是腾讯云,域名也是腾讯云的时候买的,所以就在腾讯云搞了。
然后下载证书。解压
此时需要运用scp命令将nginx文件夹下的.crt .key结尾的文件传输的服务器处,这些是SSL证书的公共(. crt ) 和私有(. key ) 部分,不要随意泄漏出去哦,后面配置nginx会用到
第二步 配置nginx
1.配置nginx.conf文件(abc.hhahaha.com为示例写法非本人服务器)
1
2
3#house include /usr/local/nginx/vhosts/abc.hhahaha.com.conf;
由于已经有了一个博客网站了,就将其配置文件以网站url命名,以免都写在ngnix.conf中,显得太臃肿了。。在nginx目录下新建一个vhosts文件夹,然后新建abc.hhahaha.com.conf文件
2.配置abc.hhahaha.com.conf
这里是根据nginx.conf里面的一个例子改的,nginx已经写了个例子在里面,只需该参数即可。。下面要改的地方我已经加了中文解释
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30#不强制将http请求转为https server { listen 80; server_name 域名; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $http_host; proxy_pass http://127.0.0.1:8088;#需要将请求分发给那个端口下的服务 } } # HTTPS server server { listen 443 ssl; server_name 域名 ssl_certificate 路径.crt; #填写第一步中获取的文件 ssl_certificate_key 路径 .key; #填写第一步中获取的文件 ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { proxy_pass http://127.0.0.1:8088;#需要将请求分发给那个端口下的服务 } }
第三步 最简单的一步 重启nginx咯
去nginx/sbin目录下
1
2./nginx -s reload即可
不过可能会出现的报错
1
2nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:37
这就是Nginx如果未开启SSL模块,配置Https时提示错误
参考解决方案:https://www.cnblogs.com/ghjbk/p/6744131.html
第四步 也是最后最最最简单的一步 开放443端口
不同版本的操作系统有不同的开放方式,例如老一点的就iptables,博主的新一点儿就是firewall。。这个自行google就好啦
总结:
基本到这里就完成啦!!!
最后
以上就是结实雪碧最近收集整理的关于nginx二级域名https配置以及可能会遇到的错误的全部内容,更多相关nginx二级域名https配置以及可能会遇到内容请搜索靠谱客的其他文章。
发表评论 取消回复