我按照http://senko.net/en/django-nginx-gunicorn/中的说明部署我的 django 应用程序。我的应用程序在 gunicorn 下运行,并且我已配置 nginx 来为该站点提供服务。一切都很好,只是静态文件在实际静态文件目录的“静态”子目录中查看。
我在 nginx 配置文件中有以下静态文件节:
location /static {
root /webapps/myproject/project_staticfiles;
}
/webapps/myproject/project_staticfiles 是我拥有所有静态文件的地方(我使用 manage.py collectstatic 将静态文件放在那里)。但是,在 nginx 配置中配置的端口访问站点时,找不到它们。error.log 显示它们在更深的目录中查看:/webapps/myproject/project_staticfiles/static。
确实,当我创建一个新目录“静态”并将所有静态文件放在那里时,一切都找到了。在我的项目 settings.py 文件中,我有:
STATIC_URL = '/static/'
STATIC_ROOT = '/webapps/myproject/project_staticfiles'
导致这种奇怪行为的设置是什么?