【发布时间】:2016-04-22 06:13:49
【问题描述】:
伙计们,我的 Django 管理部分的默认 CSS 没有加载(设置使用 nginx 反向代理 + gunicorn,操作系统是基于 Debian 的 Ubuntu)。
以下是etc/nginx/sites-available/myproject的一部分:
location /static/admin {
alias /home/mhb11/.virtualenvs/myenv/local/lib/python2.7/site-packages/django/contrib/admin/static/;
}
顺便说一句,它指向 django admin 的 css 文件的正确位置,并且写在 下面 location /static/ {} sn-p(此处未显示)。
请注意,我也尝试了 root 指令而不是 alias,但无济于事。另请注意,此错误仅与 django 管理静态文件有关。与项目相关的静态文件运行良好。另请注意,我的 settings.py 文件在 INSTALLED_APPS 中包含 'django.contrib.staticfiles', 和 STATIC_URL = '/static/'。
我错过了什么? 如果需要,请询问更多信息。
【问题讨论】:
-
你应该已经定义了一个 static_dir 并运行 collectstatic。
-
嘿丹尼尔。我在settings.py中有
STATICFILES_DIRS = ( os.path.join(BASE_DIR, 'static'), ),如果这就是你的意思。所以你的意思是说我应该运行python manage.py collectstatic? -
是的,他的意思是,但是对于命令,您必须指定 static_root(必须与 staticfiles_dirs 不同,最常见的位置是 /var/www/your_domain/static/)。
-
在 settings.py 我有
STATIC_ROOT = 'staticfiles'。