2019-01-07

django 部署上线 uwsgi+nginx+django

安装uwsgi

  • uwsgi是python的一个模块,安装uwsgi只需要pip安装
    pip3 install uwsgi

拷贝django项目到服务器目录

uwsgi --http 192.168.31.38:8080 --file shanwu/wsgi.py --static-map=/static=static

参数说明:

  • –http 这个就和runserver一样指定IP 端口
  • –file 这个文件就里有一个反射,如果你在调用他的时候没有指定Web Server就使用默认的
  • – static 做一个映射,指定静态文件

使用uwsgi配置文件启动django项目

  • 在django项目创建script目录,创建uwsgi.ini文件
# uwsig使用配置文件启动
[uwsgi]
# 项目目录
chdir=/opt/proj/shanwu/
# 指定项目的application
module=shanwu.wsgi:application
# 指定sock的文件路径       
socket=/opt/proj/script/uwsgi.sock
# 进程个数       
workers=5
pidfile=/opt/proj/script/uwsgi.pid
# 指定IP端口       
http=192.168.2.108:8080
# 指定静态文件
static-map=/static=/opt/proj/shanwu/static
# 启动uwsgi的用户名和用户组
uid=root
gid=root
# 启用主进程
master=true
# 自动移除unix Socket和pid文件当服务停止的时候
vacuum=true
# 序列化接受的内容,如果可能的话
thunder-lock=true
# 启用线程
enable-threads=true
# 设置自中断时间
harakiri=30
# 设置缓冲
post-buffering=4096
# 设置日志目录
daemonize=/opt/proj/script/uwsgi.log
  • 配置nginx配置文件nginx.conf
server {
        listen 80;
        server_name 192.168.2.108;
        index index.php index.html;
        location / {
            include    uwsgi_params;
            uwsgi_pass  unix:/opt/proj/script/uwsgi.sock;
            uwsgi_param UWSGI_CHDIR  /opt/proj/shanwu;
            uwsgi_param UWSGI_SCRIPT django_wsgi;
            access_log /etc/nginx/logs/access.log;
            }
        location /static {
          alias /opt/proj/shanwu/static;
        }

    }

猜你喜欢

转载自blog.csdn.net/wushan1992/article/details/86031884