django+nginx+uwsgi上线过程

一. 前记

二. 配置文件

三. 启动


一. 前记:

项目目录:

/home/user1/tools/btadmin/

网站:

demo.wktadmin.com

静态文件路径:

/home/user1/tools/btadmin/static/

主要参考: uWSGI+django+nginx的工作原理流程与部署历程以及pdf django上线流程

二. 配置文件:

  1. uwsgi
  • 安装uwsgi
pip install uwsgi
  • 新建uwsgi配置文件
vim /home/user1/tools/btadmin/uwsgi.ini

写入

[uwsgi]
socket = 127.0.0.1:8000
chdir=/home/wukt/tools/btadmin
module=btadmin.wsgi
master = true
processes=2
threads=2
max-requests=2000
chmod-socket=664
vacuum=true
daemonize = uwsgi.log
  • 命令(暂时不要运行):
uwsgi --ini uwsgi.ini  # 启动
uwsgi --stop uwsgi.pid  # 停止
  1. nginx域名配置:

server { listen 80; server_name demo.wktadmin.com; charset utf-8; client_max_body_size 75M; location /static { # 注意静态文件路径配置 alias /home/user1/tools/btadmin/static/; } location / { include /usr/local/nginx/conf/uwsgi_params; # uwsgi_params的位置, 否则域名无法访问, 一般与nginx默认配置目录同级 uwsgi_pass 127.0.0.1:8000; # 端口与uwsgi一致 } }
  • nginx命令
nginx -t # 检测是否有误
nginx -s reload  # 重启服务
  1. django的配置
  • setting.py末尾添加
STATIC_ROOT = '/home/user1/tools/btadmin/static/'
STATIC_URL = '/static/'

注释掉(如果有):

'''
STATICFILES_DIRS =[
    os.path.join(BASE_DIR, 'static'),
]
'''

三. 启动

python manage.py collectstatic   # 采集静态文件

uwsgi --ini uwsgi.ini   # 以指定的配置文件启动