参考文档
安装:
pip install uwsgi
启动命令:
方法一、直接命令启动
/home/zabbix/application/python/bin/uwsgi --socket 0.0.0.0:9090 --chdir /home/zabbix/application/websugar --wsgi-file /home/zabbix/application/websugar/websugar/wsgi.py --master --processes 4 --threads 2 --stats 0.0.0.0:9191
方法二、配置文件方法启动
配置文件内容: [uwsgi] chdir=/path/to/your/project module=mysite.wsgi:application master=True pidfile=/tmp/project-master.pid vacuum=True max-requests=5000 daemonize=/var/log/uwsgi/yourproject.log 使用配置文件启动命令: uwsgi --ini uwsgi.ini
参数介绍:
uwsgi --chdir=/path/to/your/project #项目目录(manage.py 所在目录) --module=mysite.wsgi:application #application为项目下的app --env DJANGO_SETTINGS_MODULE=mysite.settings #配置项目的配置文件 --master #作为主进程运行 --pidfile=/tmp/project-master.pid #指定进程文件 --socket=127.0.0.1:49152 #配置监听端口和地址 也可以指定成文件如--socket=/tmp/zqxt.sock --processes=5 #worker进程数 --threads #每个进程的线程数 --uid=1000 --gid=2000 #如果是root用户,可以指定运行用户 --harakiri=20 #请求超时20秒则重启进程 --max-requests=5000 #处理5000请求后重启进程 --vacuum #退出时清空环境 --home=/path/to/virtual/env #python 环境路径 --daemonize=/var/log/uwsgi/yourproject.log #项目日志文件
django settings.py配置修改:
DEBUG = False ALLOWED_HOSTS = ['*']
nginx配置:
location /static { root static; } location / { uwsgi_pass 127.0.0.1:9090; #指定监听地址和端口时使用,如uwsgi指定的是文件则使用uwsgi_pass unix:///tmp/zqxt.sock; include uwsgi_params; }