将django项目部署到Heroku:错误配置错误; STATIC_ROOT设置

时间:2017-06-12 15:03:52

标签: python django heroku deployment web-deployment

谢谢你看看这里! 当我想将一个Django项目部署到Heruko时,我遇到了一个问题。

以下是错误信息。

remote:        django.core.exceptions.ImproperlyConfigured: You're using the staticfiles app without having set the STATIC_ROOT setting to a filesystem path.
remote: 
remote:  !     Error while running '$ python manage.py collectstatic --    noinput'
remote:        See traceback above for details.
remote: 
remote:        You may need to update application code to resolve this error.
remote:        Or, you can disable collectstatic for this application:
remote: 
remote:           $ heroku config:set DISABLE_COLLECTSTATIC=1

当我尝试:

'$ python manage.py collectstatic --noinput'

我得到了:

django.core.exceptions.ImproperlyConfigured: You're using the staticfiles app without having set the STATIC_ROOT setting to a filesystem path.

以下是我的设置(与https://devcenter.heroku.com/articles/django-assets相同):

# Heroku settings
if os.getcwd() == '/app':
    import dj_database_url
    DATABASES = {
        'default': dj_database_url.config(default='postgres://localhost')
    }

    # let request.is_secure() admit X-Forwarded-Proto header
    SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')

    # support all host header
    ALLOWED_HOSTS = ['*']

    PROJECT_ROOT = os.path.dirname(os.path.abspath(__file__))

    STATIC_ROOT = os.path.join(PROJECT_ROOT, 'staticfiles')
    STATIC_URL = '/static/'

    STATICFILES_DIRS = (
        os.path.join(PROJECT_ROOT, 'static'),
    )

我已经看到了关于堆栈溢出的类似问题,但它们对我不起作用。 任何指南都可能有所帮助。谢谢!

0 个答案:

没有答案