云服務(wù)器使用寶塔搭建Python環(huán)境,運(yùn)行django程序
在正式開(kāi)始之前,你需要有一臺(tái)服務(wù)器。
安裝寶塔
寶塔官網(wǎng):https://www.bt.cn/
如果使用的是 CentOS 系統(tǒng),使用下述命令安裝即可。
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
安裝完畢出現(xiàn)訪問(wèn)地址,賬號(hào)和密碼。
此時(shí)要做的第一個(gè)操作是去云服務(wù)器的控制面板,把 8888
端口放開(kāi),具體的可以檢索安全組配置,開(kāi)啟端口即可。
再次訪問(wèn)寶塔安裝之后的地址,能看到登錄界面,表示端口開(kāi)啟,寶塔可以正常操作。
配置 Python 運(yùn)行環(huán)境
打開(kāi)寶塔的軟件商店,按照下圖所示安裝相關(guān)內(nèi)容,默認(rèn)登錄寶塔之后,它會(huì)推薦安裝 LAMP
或者 LNMP
,選擇推薦安裝即可。
尤其注意上述的 Python 項(xiàng)目管理器 是我們后續(xù)操作 Python 程序的必備插件。
安裝 Python
點(diǎn)擊 Python 項(xiàng)目管理器 右側(cè)的設(shè)置按鈕,彈窗選擇 版本管理,之后安裝你需要的 Python 版本,這個(gè)地方安裝的速度有點(diǎn)慢,略微等待一會(huì)即可。
配置 django 環(huán)境
配置 django 環(huán)境時(shí),一定要注意參照下圖配置,關(guān)于是否安裝模塊依賴,需要看你的項(xiàng)目中是否存在 requirements.txt
文件,如果存在,才可勾選,模塊也可以在項(xiàng)目開(kāi)啟之后,另行配置。
安裝模塊
項(xiàng)目初始化完畢之后,點(diǎn)擊右側(cè)的模塊,手動(dòng)安裝項(xiàng)目中用到的模塊,例如 django
。
模塊安裝 一定要注意 版本號(hào)問(wèn)題,例如 django 我本地使用的是 2.x 版本,所以服務(wù)器安裝的也是該版本。
所有模塊安裝完畢,就可以重啟 Python 服務(wù)了,這里需要時(shí)刻關(guān)注日志內(nèi)容,確定可以重啟成功。
這里會(huì)展示出 Python django 運(yùn)行過(guò)程中出現(xiàn)的各種問(wèn)題。
例如在首次運(yùn)行會(huì)出現(xiàn) Centos 系統(tǒng)自帶的 sqlite3
版本過(guò)低,在日志中會(huì)出現(xiàn) SQLite 3.x.x or later
等字樣,這時(shí)就需要去升級(jí) SQlite 的版本了。
以下內(nèi)容轉(zhuǎn)載自網(wǎng)絡(luò)(http://www.dbjr.com.cn/article/231391.htm,感謝原作者,大家可以參考進(jìn)行升級(jí))
#更新SQLite 3 #獲取源代碼(在主目錄中運(yùn)行) [root@djangoServer ~]# cd ~ [root@djangoServer ~]# wget https://www.sqlite.org/2019/sqlite-autoconf-3270200.tar.gz [root@djangoServer ~]# tar -zxvf sqlite-autoconf-3270200.tar.gz #構(gòu)建并安裝 [root@djangoServer ~]# cd sqlite-autoconf-3270200 [root@djangoServer sqlite-autoconf-3270200]# ./configure --prefix=/usr/local/sqlite [root@djangoServer sqlite-autoconf-3270200]# make && make install #檢查版本 ## 最新安裝的sqlite3版本 [root@djangoServer ~]# /usr/local/sqlite/bin/sqlite3 --version 3.27.2 2019-02-25 16:06:06 bd49a8271d650fa89e446b42e513b595a717b9212c91dd384aab871fc1d0f6d7 [root@djangoServer ~]# ## Centos7自帶的sqlite3版本 [root@djangoServer ~]# /usr/bin/sqlite3 --version 3.7.17 2013-05-20 00:56:22 118a3b35693b134d56ebd780123b7fd6f1497668 [root@djangoServer ~]# ## 可以看到sqlite3的版本還是舊版本,那么需要更新一下。 [root@djangoServer ~]# sqlite3 --version 3.7.17 2013-05-20 00:56:22 118a3b35693b134d56ebd780123b7fd6f1497668 [root@djangoServer ~]# ## 更改舊的sqlite3 [root@djangoServer ~]# mv /usr/bin/sqlite3 /usr/bin/sqlite3_old ## 軟鏈接將新的sqlite3設(shè)置到/usr/bin目錄下 [root@djangoServer ~]# ln -s /usr/local/sqlite/bin/sqlite3 /usr/bin/sqlite3 ## 查看當(dāng)前全局sqlite3的版本 [root@djangoServer ~]# sqlite3 --version 3.27.2 2019-02-25 16:06:06 bd49a8271d650fa89e446b42e513b595a717b9212c91dd384aab871fc1d0f6d7 [root@djangoServer ~]# #將路徑傳遞給共享庫(kù) # 設(shè)置開(kāi)機(jī)自啟動(dòng)執(zhí)行,可以將下面的export語(yǔ)句寫(xiě)入 ~/.bashrc 文件中,如果如果你想立即生效,可以執(zhí)行source ?/.bashrc 將在每次啟動(dòng)終端時(shí)執(zhí)行 [root@djangoServer ~]# export LD_LIBRARY_PATH=/usr/local/sqlite/lib
只要運(yùn)行中,日志無(wú)錯(cuò)誤數(shù)據(jù)產(chǎn)生,就表示配置成功,接下來(lái)就可以設(shè)置 nginx 反向代理了。
nginx 反向代理
點(diǎn)擊下圖映射 按鈕,輸入域名或者服務(wù)器外網(wǎng) IP。
返回寶塔網(wǎng)站功能菜單,會(huì)看到出現(xiàn)一個(gè)新的站點(diǎn)。
點(diǎn)擊網(wǎng)站名,可以查閱其反向代理配置,確保其在運(yùn)行中即可。
此時(shí),你可以打開(kāi)瀏覽器,輸入域名或者 IP,測(cè)試是否可以正常訪問(wèn) django 程序,如果還報(bào)錯(cuò),那查看項(xiàng)目根目錄中 settings.py
文件,是否配置如下內(nèi)容,即 ALLOWED_HOST
。
如果你的 Django 程序還存在靜態(tài)資源,注意去反向代理配置中(找個(gè)空行),增加靜態(tài)目錄配置。
location /static/ { alias /www/wwwroot/項(xiàng)目地址/static/; }
最后記得確定寶塔里面,網(wǎng)站端口是否準(zhǔn)入,例如本案例中的 8000
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Nginx + consul + upsync 完成動(dòng)態(tài)負(fù)載均衡的方法詳解
這篇文章主要介紹了Nginx + consul + upsync 完成動(dòng)態(tài)負(fù)載均衡,需要的朋友可以參考下2020-11-11nginx的限流和網(wǎng)關(guān)gatway限流詳解
這篇文章主要介紹了nginx的限流和網(wǎng)關(guān)gatway限流,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08通過(guò)Nginx反向代理實(shí)現(xiàn)IP訪問(wèn)分流的示例代碼
本篇文章主要介紹了通過(guò)Nginx反向代理實(shí)現(xiàn)IP訪問(wèn)分流的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-11-11nginx實(shí)現(xiàn)靜態(tài)文件的token認(rèn)證過(guò)程
這篇文章主要介紹了nginx實(shí)現(xiàn)靜態(tài)文件的token認(rèn)證過(guò)程,2024-06-06深入解析nginx路由location匹配規(guī)則及其優(yōu)先級(jí)
Nginx是一款高性能的Web服務(wù)器和反向代理服務(wù)器,它的路由功能是通過(guò)location指令來(lái)實(shí)現(xiàn)的,location指令用于匹配請(qǐng)求的URL,并將請(qǐng)求轉(zhuǎn)發(fā)到相應(yīng)的處理程序或靜態(tài)文件,需要的朋友可以參考下2023-10-10Nginx反向代理多域名的HTTP和HTTPS服務(wù)的實(shí)現(xiàn)
這篇文章主要介紹了Nginx反向代理多域名的HTTP和HTTPS服務(wù)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06nginx FastCGI錯(cuò)誤Primary script unknown解決辦法
這篇文章主要介紹了nginx錯(cuò)誤Primary script unknown解決辦法,需要的朋友可以參考下2014-03-03Linux下Tomcat+Nginx服務(wù)器環(huán)境安裝配置的簡(jiǎn)明教程
以Nginx作為反向代理再用Tomcat驅(qū)動(dòng)Java Web程序是當(dāng)今很流行的一種方案,那么這里我們就著眼于最基本的生產(chǎn)環(huán)境搭建,一起來(lái)看一下Linux下Tomcat+Nginx服務(wù)器環(huán)境安裝配置的簡(jiǎn)明教程2016-05-05