在前面我们给群晖的应用添加了域名,在外网可以用域名访问 Heimdall 导航页,Halo 博客等,但是都是通过 HTTP 访问的。即使你能忍受浏览器上显示的 “不安全”,有时候一些应用也不可避免的需要使用 HTTPS,比如 Bitwarden,不通过 HTTPS 不允许注册。
一、前提条件
博主有一台腾讯云的轻量服务器,拥有一个songshiyu.cn的域名,本博客部署在本地的一台黑群晖中,已经通过内网穿透以及反向代理实现了外网访问,但是每次用域名访问的时候会有不安全的显示,如下图:
我们的目的就是,在浏览器无论输入 songshiyu.cn 还是 http://songshiyu.cn 都会自动转跳到 https://songshiyu.cn 并正常显示:
二、腾讯云下载证书
进入DNSPod的控制台:https://console.dnspod.cn/ ,可以查看到目前绑定在腾讯云上的域名,点击SSL:
选择免费证书:
填写对应的域名和邮箱,设置保持默认:
审核通过后,根据提示下载证书并解压:
三、上传证书并修改 nginx 配置文件
- 找到 nginx 的安装目录,将证书存放至 路径/nginx/ssl 下,我这里是 /www/server/nginx/ssl/
- 修改 ngxin/conf/ngxin.conf 文件,我这里使用的是 finalshell 上传和编辑。
- 在 http 块下添加下面的代码:
server { listen 80; server_name songshiyu.cn; return 301 https://$host$request_uri; # 这句是重定向到 https #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
以及:
server { listen 443 ssl; server_name 你的域名; ssl_certificate /www/server/nginx/ssl/你的域名_bundle.pem; # 此处是路径 ssl_certificate_key /www/server/nginx/ssl/你的域名.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { proxy_pass http:访问的ip:端口; } }
- 保存好后重启nginx
nginx -s stop nginx
大功告成!
原文链接:https://songshiyu.cn/archives/19
© 版权声明
声明📢本站内容均来自互联网,归原创作者所有,如有侵权必删除。
本站文章皆由CC-4.0协议发布,如无来源则为原创,转载请注明出处。
THE END