![](/img/trans.png)
[英]Django not serving static files on Heroku when DEBUG=False
[英]Django Heroku not serving static files when Debug=False
我在Heroku上托管我的Django應用程序並使用白噪聲來處理靜態文件。
以下是settings.py的內容
DEBUG = False
ALLOWED_HOSTS += [
'example.com',
]
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'whitenoise.middleware.WhiteNoiseMiddleware',
...
]
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static_my_project')
]
STATIC_ROOT = os.path.join(BASE_DIR, 'static_cdn', 'static_root')
但是靜態文件不起作用。
設置Debug=True
是服務靜態文件,但不是Debug=False
。
從帖子中得到解決方案
新增collectstatic
到Procfile
web: python manage.py collectstatic --no-input; gunicorn myapp.wsgi --log-file - --log-level debug
現在每個靜態文件都在服務,包括 CSS、js、圖像和視頻。
Whitenoise 中間件應該在安全中間件之后,在所有其他中間件之前。 您目前正在將其添加到最后。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.