我正在使用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'中找到;或者使用静态文件。
答案 0 :(得分:1)
我遇到了同样的问题而且错误很愚蠢 - 静态文件是通过https
访问的,但压缩文件是通过http
访问的。
您已使用https
将COMPRESS_URL设置为STATIC_URL,但实际文件路径是相对的,因此我猜测如果您的网站是通过{{http
访问的,则会通过http
访问它1}}以及?
PS-你似乎已经解决了这个问题。是这个吗?