Django+Nginx+uWSGI部署到服务器admin后台样式消失

问题描述:

使用uwsgi作为主要服务器,nginx为反向代理服务器,运行项目之后,发现admin后台的css样式消失。
而不使用反向代理则正常运行。

解决办法:

1. 项目的setting文件配置加入以下代码:

STATIC_URL = '/static/'
STATICFILES_DIR = [
    os.path.join(BASE_DIR,'static'),
]
STATIC_ROOT = '/home/centostest/static/'

2. nginx的配置文件nginx.conf中添加如下代码:
编辑命令:vi /etc/nginx/conf.d/default.conf

location /static/ {
	root /home/centostest/;
	break;
}

3. 进行静态文件的收集
收集命令:python3 manage.py collectstatic
执行之后,搜集到的静态文件就会存入/home/centostest/static/目录下

4. 重新启动uwsgi与nginx
启动uwsgi命令:

uwsgi –ini uwsgi.ini    # uwsgi.ini是自己创建的uwsgi配置文件的名称

启动nginx命令:

systemctl restart nginx

然后刷新admin的页面就ok了

你可能感兴趣的:(Django,Python,Linux)