本篇博客主要內容為 介紹 阿里云服務器(centos) 搭建 django 程序。
在正式開始之前,你需要有一臺服務器。
安裝寶塔
寶塔官網:https://www.bt.cn/
如果使用的是 centos 系統,使用下述命令安裝即可。
1
|
yum install - y wget && wget - o install.sh http: / / download.bt.cn / install / install_6. 0.sh && sh install.sh |
安裝完畢出現訪問地址,賬號和密碼。
此時要做的第一個操作是去云服務器的控制面板,把 8888
端口放開,具體的可以檢索安全組配置,開啟端口即可。
再次訪問寶塔安裝之后的地址,能看到登錄界面,表示端口開啟,寶塔可以正常操作。
配置 python 運行環境
打開寶塔的軟件商店,按照下圖所示安裝相關內容,默認登錄寶塔之后,它會推薦安裝 lamp
或者 lnmp
,選擇推薦安裝即可。
尤其注意上述的 python 項目管理器 是我們后續操作 python 程序的必備插件。
安裝 python
點擊 python 項目管理器 右側的設置按鈕,彈窗選擇 版本管理,之后安裝你需要的 python 版本,這個地方安裝的速度有點慢,略微等待一會即可。
配置 django 環境
配置 django 環境時,一定要注意參照下圖配置,關于是否安裝模塊依賴,需要看你的項目中是否存在 requirements.txt
文件,如果存在,才可勾選,模塊也可以在項目開啟之后,另行配置。
安裝模塊
項目初始化完畢之后,點擊右側的模塊,手動安裝項目中用到的模塊,例如 django
。
模塊安裝 一定要注意 版本號問題,例如 django 我本地使用的是 2.x 版本,所以服務器安裝的也是該版本。
所有模塊安裝完畢,就可以重啟 python 服務了,這里需要時刻關注日志內容,確定可以重啟成功。
這里會展示出 python django 運行過程中出現的各種問題。
例如在首次運行會出現 centos 系統自帶的 sqlite3
版本過低,在日志中會出現 sqlite 3.x.x or later
等字樣,這時就需要去升級 sqlite 的版本了。
以下內容轉載自網絡(,感謝原作者,大家可以參考進行升級)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
#更新sqlite 3 #獲取源代碼(在主目錄中運行) [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 #構建并安裝 [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設置到/usr/bin目錄下 [root@djangoserver ~] # ln -s /usr/local/sqlite/bin/sqlite3 /usr/bin/sqlite3 ## 查看當前全局sqlite3的版本 [root@djangoserver ~] # sqlite3 --version 3.27 . 2 2019 - 02 - 25 16 : 06 : 06 bd49a8271d650fa89e446b42e513b595a717b9212c91dd384aab871fc1d0f6d7 [root@djangoserver ~] # #將路徑傳遞給共享庫 # 設置開機自啟動執行,可以將下面的export語句寫入 ~/.bashrc 文件中,如果如果你想立即生效,可以執行source ?/.bashrc 將在每次啟動終端時執行 [root@djangoserver ~] # export ld_library_path=/usr/local/sqlite/lib |
只要運行中,日志無錯誤數據產生,就表示配置成功,接下來就可以設置 nginx 反向代理了。
nginx 反向代理
點擊下圖映射 按鈕,輸入域名或者服務器外網 ip。
返回寶塔網站功能菜單,會看到出現一個新的站點。
點擊網站名,可以查閱其反向代理配置,確保其在運行中即可。
此時,你可以打開瀏覽器,輸入域名或者 ip,測試是否可以正常訪問 django 程序,如果還報錯,那查看項目根目錄中 settings.py
文件,是否配置如下內容,即 allowed_host
。
如果你的 django 程序還存在靜態資源,注意去反向代理配置中(找個空行),增加靜態目錄配置。
1
2
3
4
|
location / static / { alias / www / wwwroot / 項目地址 / static / ; } |
最后記得確定寶塔里面,網站端口是否準入,例如本案例中的 8000
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/hihell/article/details/121730584