Django UncompressableFileError

时间:2015-04-30 16:59:13

标签: python django amazon-s3 django-compressor

我正在使用Amazon S3存储桶来存储我的静态文件。 我在Django中有压缩器应用程序来压缩所有静态文件。 Django给了我错误:

  

' home_page / CSS / bootstrap.min.css'无法通过COMPRESS_URL(' https://alphagravel.s3.amazonaws.com/static/')访问,无法压缩

您可以在此处查看:http://52.5.32.9/

但是:网址 - ' https://alphagravel.s3.amazonaws.com/static/home_page/css/bootstrap.min.css'可以访问

这是我的setting.py快照 """

INSTALLED_APPS = (
    ...
    'storages',
    'compressor',
    '...
)
AWS_ACCESS_KEY_ID = '****'
AWS_SECRET_ACCESS_KEY = '***********'
AWS_QUERYSTRING_AUTH = False

DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage'
STATICFILES_STORAGE = 'storages.backends.s3boto.S3BotoStorage'

AWS_STORAGE_BUCKET_NAME = 'alphagravel'
AWS_PRELOAD_METADATA = True

STATIC_URL = 'https://alphagravel.s3.amazonaws.com/static/'
ADMIN_MEDIA_PREFIX = 'https://s3-us-west-2.amazonaws.com/alphagravel/admin/'

COMPRESS_ROOT = STATIC_URL
COMPRESS_URL = STATIC_URL
COMPRESS_STORAGE = STATICFILES_STORAGE
COMPRESS_ENABLED = True
COMPRESS_OFFLINE_MANIFEST = "manifest.json" # Is created in CACHE directory
COMPRESS_PARSER = 'compressor.parser.HtmlParser'
STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder',
    'django.contrib.staticfiles.finders.AppDirectoriesFinder',
    'compressor.finders.CompressorFinder',
)

任何人都可以告诉我为什么压缩程序URL无法找到用于压缩的静态文件。 以及如何解决错误。

此外,在命令行上:执行命令python manage.py compress --force 我收到以下错误:

  

CommandError:渲染/var/www/alphagravel/dashboard/templates/header.html期间发生错误:' css / bootstrap.min.css'无法在COMPRESS_ROOT' / var / www / alphagravel / https:/algragravel.s3.amazonaws.com/static'中找到;或者使用静态文件。

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题而且错误很愚蠢 - 静态文件是通过https访问的,但压缩文件是通过http访问的。

您已使用https将COMPRESS_URL设置为STATIC_URL,但实际文件路径是相对的,因此我猜测如果您的网站是通过{{http访问的,则会通过http访问它1}}以及?

PS-你似乎已经解决了这个问题。是这个吗?