我最近更改了 django 应用程序的目录结构,这迫使我设置DISABLE_COLLECTSTATIC
并指定 collectstatic 以在发布时运行。查看部署日志 - 我没有发现任何问题:
/app/.heroku/python/lib/python3.8/site-packages/environ/environ.py:637: UserWarning: Error reading /app/.env - if you're not configuring your environment separately, check this.
warnings.warn(
Adding $DATABASE_URL to default DATABASE Django setting.
Adding $DATABASE_URL to TEST default DATABASE Django setting.
Applying Heroku ALLOWED_HOSTS configuration to Django settings.
Applying Heroku logging configuration to Django settings.
Adding $SECRET_KEY to SECRET_KEY Django setting.
548 static files copied to '/app/static', 1574 post-processed.
但是,当我尝试访问我的站点时,我无法访问任何静态文件。此外,如果我打开一个 shell 到 heroku 中heroku run bash
,静态目录(我有一个static
提交给 git 的空目录)是完全空的。所以heroku说它复制了静态文件,但据我所知 - 它没有。
有没有人知道这是怎么发生的?我正在使用 webpack 和 whitenoise 来提供静态文件。