问题描述:
使用django启动项目(python manage.py runserver 0.0.0.0:8000),admin后台页面正常;
但是使用uwsgi作为主要服务器,nginx为反向代理服务器,运行项目之后,发现admin后台的css样式消失。
解决办法:
1.项目的setting文件配置加入以下代码:
STATIC_URL = '/static/'
STATICFILES_DIR = [
os.path.join(BASE_DIR,'static'),
]
STATIC_ROOT = '/home/jingke/static/' 存放文件的绝对路径
各个文件夹的作用参考以下url
2.nginx的配置文件nginx.conf中添加如下代码:
vim /usr/local/nginx/conf/nginx.conf
location /static/ {
root /home/jingke/;
break;
}
- 进行静态文件的收集
在项目根目录执行收集命令:
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