1. 程式人生 > 程式設計 >Django使用uwsgi部署時的配置以及django日誌檔案的處理方法

Django使用uwsgi部署時的配置以及django日誌檔案的處理方法

首先保證你有一個可執行的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日誌檔案的處理方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。