詳細(xì)實(shí)戰(zhàn)教程!部署Flask網(wǎng)站+域名訪問(wèn)+免費(fèi)https證書(shū)
回復(fù)“書(shū)籍”即可獲贈(zèng)Python從入門(mén)到進(jìn)階共10本電子書(shū)
最近有幾個(gè)小伙伴在問(wèn)怎么給python編程的網(wǎng)站配置https,加上上次接了一個(gè)單子(用flask寫(xiě)api接口),對(duì)方也要求配置ssl加密https訪問(wèn)方式。
為了解答和記錄一下這些內(nèi)容,所以今天的文章內(nèi)容是:部署Flask網(wǎng)站+域名訪問(wèn)+免費(fèi)https證書(shū)。
這里就不啰嗦介紹Flask怎么編寫(xiě)一個(gè)網(wǎng)站,相信看到這篇文章的應(yīng)該都了解過(guò)Flask。
直接進(jìn)入干貨吧!
python實(shí)現(xiàn)在線微博數(shù)據(jù)可視化,這是我之前編程的一個(gè)flask網(wǎng)站,咱們直接拿這個(gè)進(jìn)行講解(里面有提供了開(kāi)源源碼,可以自提)
克隆源碼

https://gitee.com/lyc96/weibo將源碼克隆到本地,可以看到源碼大概是以下內(nèi)容

啟動(dòng)網(wǎng)站
下面需要配置域名和https,所以這里使用阿里云服務(wù)器來(lái)部署,首先將源碼上傳到服務(wù)器(借助xftp)

然后通過(guò)命令啟動(dòng)flask網(wǎng)站:
python3 weibo.py
出現(xiàn)這個(gè)說(shuō)明啟動(dòng)成功,可以直接去瀏覽器訪問(wèn)
(這里192.168.1.109是阿里云服務(wù)器內(nèi)網(wǎng)ip,外網(wǎng)訪問(wèn)直接訪問(wèn)公網(wǎng)就行,公網(wǎng)ip是:47.94.11.81)

訪問(wèn)網(wǎng)站
在瀏覽器輸入網(wǎng)站:http://47.94.11.81:5000/,可以打開(kāi)網(wǎng)站

下面就開(kāi)始設(shè)置通過(guò)域名訪問(wèn)!
上面訪問(wèn)的鏈接是:http://47.94.11.81:5000/,可以看出我們的設(shè)置的端口是5000

現(xiàn)在需要通過(guò)域名訪問(wèn),為了方便,我們將5000改為80,(網(wǎng)站默認(rèn)都是80端口),然后重新啟動(dòng)網(wǎng)站(方式和上面一樣)

訪問(wèn)方式變成(未配置域名時(shí))
http://47.94.11.81:80/ 或者?http://47.94.11.81/
域名解析
1.域名申請(qǐng)
(這個(gè)很簡(jiǎn)單,可以去阿里云自己申請(qǐng)一個(gè)域名,然后備案就可以了),不過(guò)我相信看到這篇文章的,基本都有域名之人。

2.域名解析
將域名解析到對(duì)應(yīng)的服務(wù)器ip(47.94.11.81)

ok,這樣我們就成功為網(wǎng)站配置了域名(lyc.chenlove.cn)!
域名訪問(wèn)
在瀏覽器輸入網(wǎng)站:http://lyc.chenlove.cn/,可以打開(kāi)網(wǎng)站

ok,F(xiàn)lask網(wǎng)站就可以通過(guò)域名直接訪問(wèn)。
下面開(kāi)始白嫖一個(gè)ssl證書(shū)(https),給我們的網(wǎng)站進(jìn)行加密訪問(wèn)!
開(kāi)始教大家白嫖https證書(shū)(免費(fèi)!免費(fèi)!免費(fèi)!)
本次的白嫖對(duì)象是寶塔面板(一個(gè)服務(wù)器管理網(wǎng)站),今天的重點(diǎn)是在這個(gè)網(wǎng)站獲取免費(fèi)的https證書(shū)?。?!
申請(qǐng)證書(shū)
###鏈接https://www.bt.cn/admin/profe

1、點(diǎn)擊SSL管理,申請(qǐng)證書(shū)

2、填寫(xiě)域名(lyc.chenlove.cn)

3、驗(yàn)證服務(wù)器

在服務(wù)器的網(wǎng)站跟目錄新建好紅框中的文件夾以及文件,在文件里面填寫(xiě)相應(yīng)的內(nèi)容,驗(yàn)證成功的結(jié)果如下:


最后把https證書(shū)下載到本地。
配置nginx以及https證書(shū)
這里不介紹nginx安裝與使用(很簡(jiǎn)單,就不多廢話了)
1.上傳證書(shū)到服務(wù)器
下載證書(shū)解壓后

因?yàn)槲覀兣渲玫氖莕ginx,所以現(xiàn)在將Nginx上傳到服務(wù)器

2.配置nginx的conf文件
在/etc/nginx/conf.d? (nginx默認(rèn)路徑)目錄下新建文件ice-qjnubk-3000.conf

編輯ice-qjnubk-3000.conf



紅框中是需要修改的內(nèi)容(域名、證書(shū)位置、以及內(nèi)網(wǎng)轉(zhuǎn)發(fā)鏈接)
這里的內(nèi)網(wǎng)轉(zhuǎn)發(fā)鏈接是http://192.168.1.109:9000,但是這里是改為http://127.0.0.1:5000,所以在Flask網(wǎng)站里面內(nèi)網(wǎng)ip我們也修改為127.0.0.1,端口是5000
然后重新啟動(dòng)網(wǎng)站

3.重啟nginx服務(wù)
service nginx restart
重啟nginx后,我們剛剛編寫(xiě)的conf文件就可以生效了!
這樣我們的https就配置好了,超級(jí)簡(jiǎn)單!?。?/p>
https訪問(wèn)網(wǎng)站
https://lyc.chenlove.cn

好,https證書(shū)已部署成功!
今天干貨:部署Flask網(wǎng)站+域名訪問(wèn)+免費(fèi)https證書(shū),已成功為你們送達(dá)!
為了讓你們體驗(yàn)一下,這個(gè)網(wǎng)站(https://lyc.chenlove.cn)我就暫時(shí)不關(guān)閉了!(起初是為了讓大家能夠感受實(shí)戰(zhàn)過(guò)程,就拿域名和服務(wù)器來(lái)進(jìn)行演示)。
-------------------?End?-------------------
往期精彩文章推薦:
解決安裝Pycharm后在C盤(pán)下生成大文件的問(wèn)題
一篇文章教會(huì)你使用Django根據(jù)現(xiàn)有數(shù)據(jù)庫(kù)反向生成models
手把手教你使用Django如何連接Mysql

歡迎大家點(diǎn)贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持
想加入Python學(xué)習(xí)群請(qǐng)?jiān)诤笈_(tái)回復(fù)【入群】
萬(wàn)水千山總是情,點(diǎn)個(gè)【在看】行不行
/今日留言主題/
隨便說(shuō)一兩句吧~~
