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

问题描述:

使用django启动项目(python manage.py runserver 0.0.0.0:8000),admin后台页面正常;
但是使用uwsgi作为主要服务器,nginx为反向代理服务器,运行项目之后,发现admin后台的css样式消失。


image.png

解决办法:

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

STATIC_URL = '/static/'
STATICFILES_DIR = [
    os.path.join(BASE_DIR,'static'),
]
STATIC_ROOT = '/home/jingke/static/'  存放文件的绝对路径

各个文件夹的作用参考以下url

https://blog.csdn.net/qq_24551305/article/details/84865025

2.nginx的配置文件nginx.conf中添加如下代码:

vim /usr/local/nginx/conf/nginx.conf

location /static/ {
    root /home/jingke/;
    break;
}
  1. 进行静态文件的收集
    在项目根目录执行收集命令:
python manage.py collectstatic
执行之后,搜集到的静态文件就会存入/home/jingke/static/目录下

注意:在执行python manage.py collectstatic 如果出现无权限 需要修改文件夹权限 chmod 权限数字 文件名

4.重启uwsgi

uwsgi --stop *.pid文件路径
uwsgi --stop uwsgi.pid  停止uwsgi服务

uwsgi --ini  .ini文件路径
uwsgi --ini uwsg.ini  启动uwsgi服务器

5.重启nginx服务

sudo nginx执行文件位置 -s reload
sudo /usr/loacal/nginx/sbin/nginx -s reload

你可能感兴趣的:(Django+Nginx+uWSGI部署到服务器Django xadmin后台样式消失)