伸缩自如的Flask [day 21] Nginx with https

为了网页服务的安全性,我们需要将提供的HTTP协定页面,透过 SSL/TLS加密,升级成HTTPs。

这篇主要参考官网的攻略:

https://www.nginx.com/blog/using-free-ssltls-certificates-from-lets-encrypt-with-nginx/

而因为受限於资金有限,所以我将只提供攻略流程,而不会实际执行一次。

首先第一步可以先购买一个domain,大家可以到google domain购买自己喜欢的domain名称:

https://ithelp.ithome.com.tw/upload/images/20210603/20122678ehRknz5AhZ.png

再来依据Ubuntu版本不同来安装certbot(利用Let’s Encrypt的服务来进行SSL/TLS加密,官网:
https://letsencrypt.org/ )

16.04

apt-get update
sudo apt-get install certbot
apt-get install python-certbot-nginx

18.04

apt-get update
sudo apt-get install certbot
apt-get install python3-certbot-nginx

至於其他OS或是版本,可以参考Certbot的官网:
https://certbot.eff.org/lets-encrypt/ubuntufocal-nginx

接着可以修改上次[Day 19]在site-enabled中的default指令:

server {
        listen 80 default_server;
        listen [::]:80 default_server;

        root /home/wilson/myapp;

        server_name   <购买的domain 网址>;
        location / {
        proxy_pass http://127.0.0.1:5000/;
        proxy_set_header Host $host;
        }
}

测试及reload Nginx:

nginx -t && nginx -s reload

SSL/TLS 验证:

sudo certbot --nginx -d <购买的domain 网址> 

看结果:

https://ithelp.ithome.com.tw/upload/images/20210603/20122678r40tlXRkG1.png

由於Let’s Encrypt只有90天的验证有效性,所以可以使用 crontab 定期更新验证:

https://ithelp.ithome.com.tw/upload/images/20210603/20122678moU6muWMOD.png


<<:  锂电池与铅酸电池都会爆炸?

>>:  【OkHttp拦截器 Intercept + Android Kotlin】拦截送出去的request

如何用笔电内建镜头制作即时监控网站

想请问用什麽程序可以做即时监控网站? 做完後可以透过搜寻可以观看 ...

第 51 天 - 研究 shell 解释器 - part1

今天研究 shell 解释器 鸟哥说建议 shell 开头都要写 #!/bin/bash 我这边查询...

Day05 捷径环境介绍

Hello 大家, 来到了连假的第三天, 时间消逝得太快... 总觉得还没有太放松假期就要结束了QQ...

予焦啦!参数与环境变数

本节是以 Golang 上游 8854368cb076ea9a2b71c8b3c8f675a8e1...

第11天 - PHP修改MySQL资料表内容

今天来做从网页修改MySQL资料表内容(修改会员的名称) 首先要做出一个修改按钮(虽然说是按钮,但我...