转载自:http://lazynight.me/2523.html
在上一篇文章《CentOS+uWSGI+Nginx 配置Django Web服务器》我们搭建好了Django的Ngnix平台,但是在后台admin登陆的时候,却找不到css文件,导致以下情况:
OK,Django把静态文件交给服务器区解决了,那下面咱来配置下就搞定。
我的项目位置在 /z/mysite/
其中我们需要在mysite下新建一个static文件夹,用来存放admin需要的一些css、img、js
1.修改mysite/settings.py:
2.使用命令将django安装目录下的static文件拷贝过来:
python manage.py collectstatic
'''
如果执行出现无法找到 /static 的报错,则需要调整settings.py的设置
STATIC_URL = '/static/'
STATIC_ROOT = 'static' ## 新增行
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static/'),
'reports/',
)
我的问题是出现在STATICFILES_DIRS 中的os.path.join(BASE_DIR, 'static/'), 中static/ 写成了 /static/,导致STATICFILES_DIRS定位不到
----------------------------------------------------------------2020.4.17更新线---------------------------------------------------------------------------
在上述中修改了STATICFILES_DIRS的值启动时会报错(提示包含了STATIC_ROOT),所以我们将STATICFILES_DIRS 中的os.path.join(BASE_DIR, 'static/'),删除,则也可以执行:python manage.py collectstatic
'''
OK,现在已经在/z/mysite/static/下生成admin文件夹,里边有css、img、js
3.修改Ngnix的ngnix.conf ,添加以下代码:
location ~/static/ {
root /z/mysite/ ;
break;
}
4.重启uwsgi和nginx,再看看admin是不是已经恢复了呢。