nginx+uwsgi+django 配置详细步骤:

1.配置好virtualenvwrapper虚拟环境,创建一个新的虚拟环境
mkvirtualenv new_django

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。


2.准备好django项目
django-admin startproject mysite

 

3.安装uwsgi
在虚拟环境下安装 uwsgi
pip3 install uwsgi

 

 

4.创建uwsgi配置文件 /etc/ uwsgi.ini  
vim /etc/ uwsgi.ini

[uwsgi]
#使用nginx连接时使用
socket=0.0.0.0:9000
#不用nginx直接当做web服务器使用
#http=0.0.0.0:9000
#项目目录绝对路径
chdir=/root/new_django/django15/mysite
#wsgi文件路径,在项目底下
wsgi-file=mysite/wsgi.py
#指定解释器目录
home=/root/new_django/django15
processes=4
threads=2
master=True
pidfile=uwsgi.pid

 

5.配置nginx支持转发uwsgi请求
主要修改配置如下:
#负载均衡池
upstream django {
server 0.0.0.0:9000 weight=10;
}
#gzip on;
#虚拟主机标签段,在这定义mytb.com
server {
listen 80;
server_name www.s12django.com;
location / {
include /opt/nginx1-12/conf/uwsgi_params;
uwsgi_pass django;
#root /opt/static/mytb/;
#index index.html index.htm;
}
#nginx处理静态资源配置
location /static {
alias /opt/static/django;
}


6.配置django项目,收集静态文件
#关闭debug模式
debug=False

#收集静态文件的目录,静态文件内容都放这里了
STATIC_ROOT='/opt/static/django'
STATIC_URL = '/static/'
STATICFILES_DIRS=[
os.path.join(BASE_DIR,"static"),
]

7.执行命令统一收集静态文件,使得网站正常加载js,css
python3 manage.py collectstatic

 

8.安装supervisor进程管理工具
  1.通过easy_install下载
  easy_install supervisor

  2.生成supervisor配置文件
  echo_supervisord_conf > /etc/supervisord.conf

  3.添加进程管理命令
  [program:my_django15]
  command=/root/Envs/django15/bin/uwsgi --ini /root/Envs/django15/mysite15/uwsgi.ini

  4.启动supervosrd,管理uwsgi
  supervisord -c /etc/supervisord.conf #启动supervisor
  supervisorctl -c /etxc/supervisord.conf restart my #重启my项目
  supervisorctl -c /etc/supervisord.conf [start|stop|restart] [program-name|all]

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄