1. 程式人生 > >Django+uWSGI+nginx部署

Django+uWSGI+nginx部署

數量 alt mage 6.5 日誌文件 驗證 加載 class bsp

uwsgi

1、

uwsgi --http :8000 --wsgi-file test.py  測試uwsgi

  • http :8000:使用HTTP協議 8000端口
  • wsgi-file:加載指定的文件

2、uwsgi --http :8000 --module mysite.wsgi  測試django

殺死:killall -9 uwsgi

啟動django:uwsgi uwsgi.ini

nginx

1、準備

# yum install gcc-c++
# yum install pcre
# yum install pcre-devel
# yum install zlib 
# yum install zlib
-devel # yum install openssl # yum install openssl-devel

2、安裝

下載:wget http://nginx.org/download/nginx-1.15.0.tar.gz
解壓:tar -zxvf nginx-1.11.5.tar.gz
安裝:make 和make install

3、開機自啟

# cd /lib/systemd/system/
# vim nginx.service
[Unit]
Description=nginx 
After=network.target 
   
[Service] 
Type=forking 
ExecStart
=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx reload ExecStop=/usr/local/nginx/sbin/nginx quit PrivateTmp=true [Install] WantedBy=multi-user.target systemctl enable nginx.service #設置自啟動 systemctl start nginx.service 啟動nginx systemctl stop nginx.service 結束nginx systemctl restart nginx.service 重啟nginx #驗證:http:
//118.25.126.94/

配置

1、/user/local/nginx.conf配置

  #如果靜態文件加載不成功,要加權限user root;
 server { listen
8888; server_name 118.25.126.94/; charset utf-8; location /media { alias /home/centos/python3.6.5/搭建個人博客/website/media; } location /static { alias /home/centos/python3.6.5/搭建個人博客/website/static; } location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8000; } } }

2、uwsgi配置:在你的項目目錄下創建一個ini文件,

技術分享圖片

  1 [uwsgi]
  2 #uwsgi監聽的socket,一會配置nginx會用到
  3 socket = 127.0.0.1:8000
  4 #在app加載前切換到該目錄,設置為django項目根目錄
  5 chdir = /home/centos/python3.6.5/搭建個人博客/website
  6 #加載指定的python wsgi模塊,設置為django項目的wsgi文件
  7 module = website.wsgi
  8 #啟動一個進程來管理其他進程
  9 master = true
 10 #工作的進程數
 11 processes = 4
 12 #每個進程下的線程數量
 13 threads = 2
 14 #當服務器退出時,自動刪除Unix socket文件
 15 vacuum = true
 16 #使進程在後臺運行,並將日誌寫到指定的日誌文件或者udp服務器
 17 daemonize = /home/centos/python3.6.5/搭建個人博客/website/uwsgi.log
~                                                                         

測試

技術分享圖片

Django+uWSGI+nginx部署