天天看點

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

首先保證你有一個可運作的django工程

然後在虛拟環境裡面安裝好uwsgi

pip install uwsgi
           

配置nginx的服務如下

server {                                                                                                                                         
    listen  default_server;
    listen [::]: default_server;
    root /var/www/html;
    server_name _;
    location / {
        try_files $uri $uri/ =;
    }
    location /account {
        include uwsgi_params;    #表示使用uwsgi代理
        uwsgi_pass :; #這裡配置的必須和uwsgi裡的一緻
    }
}
           

這裡需要注意的是,nginx中的 location /account 要和你在django中的位址一緻,即django 和nginx是可以找到的路由

先在腳本中測試使用簡單指令啟動服務

注意:這裡的yourproject 用你自己的目錄替換

如果能走到這兒,可以正常運作,那麼就是成功的,否則自己檢視控制台中輸出的錯誤資訊,然後對應的去修改。

最後是寫入到配置檔案的運作方式,建立一個test.ini 檔案

[uwsgi]
#監聽的位址 必須和nginx中的一緻
socket = :
#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 =            
# 退出、重新開機時清理檔案    
vacuum = true         
           

然後啟動

啟動後會輸出

[uWSGI] getting INI configuration from test.ini

這時候再去通路檢視是否啟動成功

如果服務挂了,去日志檔案檢視

這裡需要檢視端口使用情況

附:相關指令Linux環境下

檢視已經連接配接的服務端口(ESTABLISHED)

檢視所有的服務端口(LISTEN,ESTABLISHED)

檢視指定端口,可以結合grep指令:

也可以使用lsof指令:

若要關閉使用這個端口的程式,使用kill + 對應的pid

kill - PID号
           

本例小竅門:關閉所有uwsgi程序指令

killall -9 uwsgi