nginx uwsgi Django部署線上環境

2022-04-07 16:39:12 字數 1521 閱讀 7157

python點這裡

nginx點這裡

pip3 install uwsgi

#不建立軟連線可能會出現找不到命令

ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi3

1、首先客戶端請求服務資源,

2、nginx作為直接對外的服務介面,接收到客戶端傳送過來的http請求,會解包、分析,

3、如果是靜態檔案請求就根據nginx配置的靜態檔案目錄,返回請求的資源,

4、如果是動態的請求,nginx就通過配置檔案,將請求傳遞給uwsgi;uwsgi 將接收到的包進行處理,並**給wsgi,

5、wsgi根據請求呼叫django工程的某個檔案或函式,處理完後django將返回值交給wsgi,

6、wsgi將返回值進行打包,**給uwsgi,

7、uwsgi接收後**給nginx,nginx最終將返回值返回給客戶端(如瀏覽器)。

#注:不同的元件之間傳遞資訊涉及到資料格式和協議的轉換

在django專案manage.py同級目錄建立uwsgi ini啟動檔案

[uwsgi]

#與nginx通訊的埠,必須與nginx一致

socket = :8001

#專案路徑

chdir = /root/homs/wsgi-file = homs/wsgi.py

#是否使用主線程

master =true

#程序數

processes = 4

#執行緒數

threads = 2

#後台執行日誌儲存

daemonize = /root/homs/log/uwsgi.log

#日誌大小,當大於這個值會進行切分 (byte)

log-maxsize = 5000000

#當伺服器退出的時候自動清理環境

vacuum =true

#排隊請求數 可以理解為最高併發量範圍是0 - 65000

listen = 60000#許可權

chmod-socket = 666

homs_uwsgi.ini

建立好後,uwsgi檔案啟動專案

#

ini檔案啟動

uwsgi3 --ini homs_uwsgi.ini

在/etc/nginx/conf.d目錄下新建乙個uwsgi.conf檔案

upstream django 

#configuration of the server

server

location /static

#finally, send all non-media requests to the django server.

location /

}

uwsgi.conf

1、如果出現無法載入css、js等靜態檔案將/etc/nginx/nginx.con中的user修改為root即可。

Nginx uwsgi Django專案部署

基於ubuntu 16.04系統,使用 uwsgi nginx 進行佈署 阿里雲伺服器控制台 1 進入控制台,檢視例項建立情況 2 給安全組配置規則,新增5000埠 一併加上5001埠 3 利用命令列進行遠端伺服器登入 ssh 使用者名稱 ip位址 以下操作都在遠端伺服器上進行操作 ubuntu 1...

nginx uwsgi django部署各模組作用

1.概念 uwsgi web伺服器 和nginx類似 什麼是uwsgi uwsgi是乙個全功能的http伺服器,實現了 wsgi協議 uwsgi協議 http協議 等。uwsgi作用 它要做的就是把http協議轉化成語言支援的網路協議,比如把 http協議轉化成wsgi 協議,讓python可以直接...

線上環境部署問題

1 缺少openssl md5.h檔案 a find name md5.h 找到系統是否存在md5.h b 如果存在,直接拷貝檔案到相應目錄下 usr local include usr include 或者編譯的 i選項 c 如果不存在,openssl version 檢視 openssl 的版本...