详细实战教程!部署Flask网站+域名访问+免费https证书

Python编程与实战

共 1765字,需浏览 4分钟

 · 2021-02-05


简介

最近有几个小伙伴在问怎么给python编程的网站配置https,加上上次接了一个单子(用flask写api接口),对方也要求配置ssl加密https访问方式。


为了解答和记录一下这些内容,所以今天的文章内容是:部署Flask网站+域名访问+免费https证书


一、部署Flask网站

这里就不啰嗦介绍Flask怎么编写一个网站,相信看到这篇文章的应该都了解过Flask。


直接进入干货吧!


python实现在线微博数据可视化,这是我之前编程的一个flask网站,咱们直接拿这个进行讲解(里面有提供了开源源码,可以自提

克隆源码


03eb78e04ea5a626314fab87728e7043.webp


https://gitee.com/lyc96/weibo


将源码克隆到本地,可以看到源码大概是以下内容


f15cb8aa3a72a4e1333e3ba73c7ffadd.webp


启动网站

下面需要配置域名和https,所以这里使用阿里云服务器来部署,首先将源码上传到服务器(借助xftp


e94db20dfabe0f0b18265ff99d995a9f.webp


然后通过命令启动flask网站:

python3 weibo.py


1882605dd330f6f4f8c91169344c9080.webp


出现这个说明启动成功,可以直接去浏览器访问

这里192.168.1.109是阿里云服务器内网ip,外网访问直接访问公网就行,公网ip是:47.94.11.81


349a373529a15391b1e9d961be5adea5.webp


访问网站

在浏览器输入网站:http://47.94.11.81:5000/,可以打开网站


3cd075bd9dc745e0128cab3173f884ee.webp


下面就开始设置通过域名访问!


二、设置域名访问


上面访问的链接是:http://47.94.11.81:5000/,可以看出我们的设置的端口是5000


4b4885dc4eb9681f5e5319b82eadd656.webp


现在需要通过域名访问,为了方便,我们将5000改为80,(网站默认都是80端口),然后重新启动网站(方式和上面一样)


d13313f58223a29e09048be7170fa518.webp


访问方式变成(未配置域名时

http://47.94.11.81:80/ 或者 http://47.94.11.81/

域名解析

1.域名申请



(这个很简单,可以去阿里云自己申请一个域名,然后备案就可以了),不过我相信看到这篇文章的,基本都有域名之人。


be7d975ad16b8cb3e375f17bca120d94.webp


2.域名解析


将域名解析到对应的服务器ip(47.94.11.81


0fa734ac107db4a5e03bdb864aefec66.webp


ok,这样我们就成功为网站配置了域名(lyc.chenlove.cn)!

域名访问

在浏览器输入网站:http://lyc.chenlove.cn/,可以打开网站


bad227a36334c9305223ee22e0aada27.webp


ok,Flask网站就可以通过域名直接访问。


下面开始白嫖一个ssl证书(https),给我们的网站进行加密访问!


三、https证书


开始教大家白嫖https证书(免费!免费!免费!


本次的白嫖对象是宝塔面板(一个服务器管理网站),今天的重点是在这个网站获取免费的https证书!!!

申请证书

###链接https://www.bt.cn/admin/profe


4cb3b1376417a059b7a0ce6324a1e378.webp


1、点击SSL管理,申请证书


2af4f43b84f402ce5bee1fe265c27c4e.webp


2、填写域名(lyc.chenlove.cn)


3d8550672f253f5fc8669d7aeecf0d3e.webp


3、验证服务器


b3f9d8c256365c31eb6388fc160a1826.webp


在服务器的网站跟目录新建好红框中的文件夹以及文件,在文件里面填写相应的内容,验证成功的结果如下:


db0af825f2a670791c4d68888c7145fd.webp


a9400ee24f013ce359c91c98406c0748.webp


最后把https证书下载到本地。

配置nginx以及https证书

这里不介绍nginx安装与使用(很简单,就不多废话了)


1.上传证书到服务器


下载证书解压后


be6b3d2def0d1daadd7988afb403213f.webp

因为我们配置的是nginx,所以现在将Nginx上传到服务器


2e2f2e54a7c81f7362f6049075cdd5cf.webp


2.配置nginx的conf文件


在/etc/nginx/conf.d  (nginx默认路径)目录下新建文件ice-qjnubk-3000.conf


51484c5bd5c686f6e6bc1eb866449c1d.webp


编辑ice-qjnubk-3000.conf


8e8add8948dc731678d4719b804671f1.webp


3ab227f36236e93e7be5441032ca2e81.webp


7327f4e1b856abda49ef1116f293987e.webp


红框中是需要修改的内容(域名、证书位置、以及内网转发链接


这里的内网转发链接是http://192.168.1.109:9000,但是这里是改为http://127.0.0.1:5000,所以在Flask网站里面内网ip我们也修改为127.0.0.1,端口是5000


然后重新启动网站


444537e1a67ccdf4500cc7c02fcee0fa.webp


3.重启nginx服务


service nginx restart


62c1f31189df7cf543c3ca85b5f6fc88.webp


重启nginx后,我们刚刚编写的conf文件就可以生效了!


这样我们的https就配置好了,超级简单!!!

https访问网站

https://lyc.chenlove.cn


399bf2fa2caf75a5f6479e2f3fdff63e.webp



13023b2a913915783d3ffbfcae74f61d.webp


好,https证书已部署成功!


四、总结

今天干货:部署Flask网站+域名访问+免费https证书,已成功为你们送达!



- EOF -


da324ca9042ef58dead00209bf645a2a.webp

Python 进程、线程和协程实战指南


4644e703b8302acd6f20293ce40991d0.webp

全面拥抱FastApi — 蓝图APIRouter


浏览 41
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报