【发布时间】:2020-11-04 04:39:26
【问题描述】:
使用 Django 3
我遵循了 Django 文档 https://docs.djangoproject.com/en/3.0/ref/contrib/staticfiles/#manifeststaticfilesstorage 导出带有哈希附加的静态文件。
settings.py 生产
STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.ManifestStaticFilesStorage'
static_root 文件夹(输出)
static_root/
staticfiles.json
static_root/css/
project_styles.87c2920e7bc3.css
project_styles.css
一切都正确收集。
之后,我将所有内容上传到我的 apache 静态服务器。
我开始/评论STATICFILES_STORAGE。这就是我对Doc的理解?如果我在生产中保留此设置,我会收到 500 Error。
settings.py 生产
# STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.ManifestStaticFilesStorage'
在生产中重新启动我的 Django 应用程序后,我的网站仍在我的浏览器中加载 project_styles.css 但不是哈希版本 project_styles.87c2920e7bc3.css。即使我删除project_styles.css Django 也不会提供哈希版本。
问题
我是否错过了生产模式下settings.py 中的一些设置?
在文档中,他们提到要设置STATICFILES_STORAGE = django.contrib.staticfiles.storage.StaticFilesStorage,但没有区别。正如它所提到的,它仅用于测试。
我必须做些什么才能在生产中加载正确的静态哈希版本?我是否必须在我的模板中设置一些东西,以便 django 将查看 json 文件以获取正确的哈希版本?还是我必须命名哈希文件?
【问题讨论】:
标签: django django-templates django-staticfiles django-static