Django使用uwsgi部署時的配置以及django日誌檔案的處理方法
阿新 • • 發佈:2020-01-09
首先保證你有一個可執行的django工程
然後在虛擬環境裡面安裝好uwsgi
pip install uwsgi
配置nginx的服務如下
server { listen 80 default_server; listen [::]:80 default_server; root /var/www/html; server_name _; location / { try_files $uri $uri/ =404; } location /account { include uwsgi_params; #表示使用uwsgi代理 uwsgi_pass 127.0.0.1:8000; #這裡配置的必須和uwsgi裡的一致 } }
這裡需要注意的是,nginx中的 location /account 要和你在django中的地址一致,即django 和nginx是可以找到的路由
先在指令碼中測試使用簡單命令啟動服務
uwsgi --socket 127.0.0.1:8000 --wsgi-file yourproject/wsgi.py
注意:這裡的yourproject 用你自己的目錄替換
如果能走到這兒,可以正常執行,那麼就是成功的,否則自己檢視控制檯中輸出的錯誤資訊,然後對應的去修改。
最後是寫入到配置檔案的執行方式,新建一個test.ini 檔案
[uwsgi] #監聽的地址 必須和nginx中的一致 socket = 127.0.0.1:8000 #wsgi檔案,在你的專案配置目錄下可以找到 注意:最後輸入絕對地址 wsgi-file = /home/aeasringnar/my_Project/jwt-test/my_jwt_test/wsgi.py # 你的專案的根目錄 絕對地址 chdir = /home/aeasringnar/my_Project/jwt-test # 你專案使用的虛擬環境的根目錄 絕對地址 home = /home/aeasringnar/.envs/jwt-test #你的日誌目錄,注意的是,你的django控制檯輸出的日誌都會在這裡輸出,uwsgi的相關日誌也在這裡 daemonize = /home/aeasringnar/my_Project/jwt-test/test.log ####下面的配置可以有 也可以沒有,看個人需求,不建議配置 # 主程序 master = true # 多站模式 vhost = true # 多站模式時不設定入口模組和檔案 no-site = true # 子程序數 workers = 2 # 退出、重啟時清理檔案 vacuum = true
然後啟動
uwsgi --ini test.ini
或
uwsgi test.ini
啟動後會輸出
[uWSGI] getting INI configuration from test.ini
這時候再去訪問檢視是否啟動成功
如果服務掛了,去日誌檔案檢視
這裡需要檢視埠使用情況
附:相關命令Linux環境下
檢視已經連線的服務埠(ESTABLISHED)
netstat -a
檢視所有的服務埠(LISTEN,ESTABLISHED)
netstat -ap
檢視指定埠,可以結合grep命令:
netstat -ap | grep 8000
也可以使用lsof命令:
lsof -i:8000 #可以檢視對應的PID
若要關閉使用這個埠的程式,使用kill + 對應的pid
kill -9 PID號
本例小竅門:關閉所有uwsgi程序命令
killall -9 uwsgi
以上這篇Django使用uwsgi部署時的配置以及django日誌檔案的處理方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。