實驗七:Linux命令進階篇之二
阿新 • • 發佈:2021-09-07
Python Django部署
uwsgi的配置
WSGI是一個web伺服器閘道器介面,是python應用程式或框架和web伺服器之間的一種介面,python並不懂得http協議,需要通過wsgi進行翻譯。uwsgi是WSGI的一種,它實現了http協議,以及WSGI協議。
# 檢查是否安裝
pip freeze|grep -i ‘uwsgi’
# 安裝語句
pip install uwsgi==[版本號]
uwsgi配置檔案與Django專案的seeting.py檔案同一個目錄,檔案格式為uwsgi.ini
[uwsgi] # 這個一定要放在首行,必須存在 http=IP地址加埠號 chdir=/home/ymy/<專案名稱> # 這裡放的是絕對引用的地址 wsgi-file=<專案名稱>/wsgi.py # 這裡的地址是以chdir為目標,相對飲用的地址資訊 process=4 # 程序數,cpu核數 threads=2 # 執行緒數 pidfile=uwsgi.pid # wsgi程序啟動後,會將主程序的ID寫進該檔案,會運用該檔案來進行wsgi服務的關閉 daemonize=uwsgi.log # 這個選項存在就表示後臺啟動,並且所有之前在前臺現實的資訊,都會錄入進該檔案 master=true
uwsgi的啟動和關閉命令
uwsgi --ini uwsgi.ini # 啟動命令
uwsgi --stop uwsgi.pid # 停止命令
uwsgi的啟動失敗原因排查
- 埠被佔用,通過lsof -i:埠號查詢出具體程序,關閉程序後,重新啟動uwsgi
- 停止失敗,stop無法關閉,原因可能是重複啟動uwsgi,導致pid檔案中的程序號失準。通過ps命令查詢出uwsgi程序,手動kill。