各种坑各种蛋疼,搞了两天终于能用了。整体分2步:

1. 通过uwsgi 启动django项目

在manage.py同级目录,新建uwsgi.ini文件

[uwsgi]
# 配置服务器的监听ip和端口,让uWSGI作为nginx的支持服务器的话,设置socke就行;如果要让uWSGI作为单独的web-server,用http
http = 127.0.0.1:8088
#socket = 127.0.0.1:3309
# 配置项目目录(此处设置为项目的根目录)
chdir = /srv/qa-platform/back-server
# 配置入口模块 (django的入口函数的模块,即setting同级目录下的wsgi.py)
wsgi-file = back-server/wsgi.py
# 开启master, 将会多开一个管理进程, 管理其他服务进程
master = True
# 服务器开启的进程数量
processes = 2
# 以守护进程方式提供服, 输出信息将会打印到log中
daemonize = /srv/qa-platform/back-server/logs/wsgi.log
# 服务器进程开启的线程数量
threads = 4
# 退出的时候清空环境变量
vacuum = true
# 进程pid
pidfile = uwsgi.pid
# 配uWSGI搜索静态文件目录(及django项目下我们存放static文件的目录,用uWSGI作为单独服务器时才需要设置;如果用nginx处理静态文件不需配置)
#check-static = /srv/qa-platform/back-server/static

2. nginx转发请求(注意配置静态文件处理

server {
        listen       80;
        server_name  localhost qa.xxx.com;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;
        
        #转发
        location / {
            proxy_pass http://127.0.0.1:8088/;
        }
        #静态文件访问
        location /static/ {
            alias /srv/qa-platform/back-server/static/;
        }
}

 ----------------解决admin样式未加载问题------------------

1.执行 python manage.py collectstatic

2.修改nginx配置文件中的静态文件路径。重新加载即可 /usr/local/nginx/sbin/nginx -s reload

location /static/ {
    alias /srv/qa-platform/back-server/collectstatic/;
}

posted on 2019-01-09 15:42  蛋尼  阅读(253)  评论(0编辑  收藏  举报