windows10 + putty
進入**目錄下
收集靜態檔案
python3 manage.py collectstatic
啟動django
python3 manage.py runserver 0.0.0.0:80
確保**可以使用
pip安裝uwsgi
pip3 install uwsgi
在專案根目錄新建資料夾uwsgi用於存放配置檔案等
啟動uwsgi[uwsgi]
# 專案根目錄,根據實際情況修改
chdir=/usr/www/test
# sock的檔案路徑,根據實際情況修改
socket=/usr/www/test/uwsgi/uwsgi.sock
# 程序個數
workers=5
# 程序檔案位置,根據實際情況修改
pidfile=/usr/www/test/uwsgi/uwsgi.pid
# 監聽http的ip及埠
# 靜態檔案目錄,根據實際情況修改
static-map=/static=/usr/www/test/static
# 啟動uwsgi的使用者名稱和使用者組
uid=root
gid=root
# 啟用主程序
master=true
# 當服務停止的時候自動移除unix sock和pid檔案
vacuum=true
# 序列化接受的內容,如果可能的話
thunder-lock=true
# 啟用多執行緒
enable-threads=true
# 設定自中斷時間
harakiri=30
# 設定緩衝
post-buffering=4096
# 設定日誌目錄,根據實際情況修改
daemonize=/usr/www/test/uwsgi/uwsgi.log
# 修改.py檔案時uwsgi自動重啟
py-autoreload=1
uwsgi --ini /usr/www/test/uwsgi/uwsgi.ini
訪問admin介面,訪問成功,靜態檔案正常
yum安裝nginx
yum install -y nginx
在/etc/nginx/conf.d/中新建檔案test.conf
這裡需要解釋一下,nginx把收到的動態請求都**給uwsgi所監聽的socket,由uwsgi處理,而靜態檔案由nginx處理。所以在nginx執行時uwsgi也必須執行。server
# 指定靜態檔案路徑
location /static/
}
由於剛才測試uwsgi的配置檔案也監聽了80埠,這將導致nginx無法啟動,所以需要修改uwsgi配置檔案,關閉http埠監聽及靜態檔案處理(因為靜態檔案的請求不會**給uwsgi)。
重新啟動uwsgi[uwsgi]
# 專案根目錄,根據實際情況修改
chdir=/usr/www/test
# sock的檔案路徑,根據實際情況修改
socket=/usr/www/test/uwsgi/uwsgi.sock
# 程序個數
workers=5
# 程序檔案位置,根據實際情況修改
pidfile=/usr/www/test/uwsgi/uwsgi.pid
# 啟動uwsgi的使用者名稱和使用者組
uid=root
gid=root
# 啟用主程序
master=true
# 當服務停止的時候自動移除unix sock和pid檔案
vacuum=true
# 序列化接受的內容,如果可能的話
thunder-lock=true
# 啟用多執行緒
enable-threads=true
# 設定自中斷時間
harakiri=30
# 設定緩衝
post-buffering=4096
# 設定日誌目錄,根據實際情況修改
daemonize=/usr/www/test/uwsgi/uwsgi.log
# 修改.py檔案時uwsgi自動重啟
py-autoreload=1
啟動nginxkillall -9 uwsgi
uwsgi --ini /usr/www/test/uwsgi/uwsgi.ini
service nginx start
再次訪問admin介面,訪問成功,靜態檔案正常
檢視nginx日誌,找到剛才的訪問記錄,證明請求的確經由nginx處理
安裝uwsgi和使用uwsgi
部落格說明 安裝依賴apt get install build essential python dev安裝 uwsgi 使用python3的pip來安裝 pip3 install uwsgi建立配置檔案 建立類似配置檔案,uwsgi.ini uwsgi socket 127.0.0.1 3031 ...
nginx基於uwsgi部署django專案
1.安裝nginx yum install y nginx 需要epel源 2.安裝環境 可以考慮使用虛擬化環境,本處不再使用3.安裝uwsgi yum groupinstall development tools yum install zlib devel bzip2 devel pcre de...
nginx 基於uwsgi部署Django
1.安裝nginx yum install y nginx 需要epel源 2.安裝環境 可以考慮使用虛擬化環境,本處不再使用3.安裝uwsgi yum groupinstall development tools yum install zlib devel bzip2 devel pcre de...