python–Django压缩器使用gzip来提供javascript

python–Django压缩器使用gzip来提供javascript,第1张

概述我正在尝试从amazon s3提供gzip文件.这是我的settings.py:AWS_IS_GZIPPED = True AWS_PRELOAD_METADATA = True DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage' STATICFILES_STORAGE = 'st

我正在尝试从amazon s3提供gzip文件.
这是我的settings.py:

AWS_IS_GZIPPED = TrueAWS_PRELOAD_MetaDATA = True DEFAulT_file_STORAGE = 'storages.backends.s3boto.S3BotoStorage'STATICfileS_STORAGE = 'storages.backends.s3boto.S3BotoStorage'AWS_STORAGE_BUCKET_name = 'elasticbeanstalk-eu-west-1-2051565523'STATIC_URL = 'https://%s.s3.amazonaws.com/' % AWS_STORAGE_BUCKET_nameCOMPRESS_OFFliNE = TrueCOMPRESS_ENABLED = TrueCOMPRESS_URL = STATIC_URLCOMPRESS_CSS_FILTERS = [    'compressor.filters.CSS_default.CSSabsoluteFilter','compressor.filters.CSSmin.CSSMinFilter']COMPRESS_Js_FILTERS = [    'compressor.filters.Jsmin.JsMinFilter',]COMPRESS_STORAGE = 'compressor.storage.GzipCompressorfileStorage' 

当我这样做时,django为每个* .Js和* .CSS压缩创建* .gz文件,但奇怪的是只有* .CSS文件作为gzip提供.我可以在aws s3上看到.CSS文件有content-encoding:gzip而* .Js没有.这里发生了什么?最佳答案我遇到了同样的问题,并且可以通过将文本/ JavaScript添加到GZIP_CONTENT_TYPES设置来解决此问题,如下所示:

GZIP_CONTENT_TYPES = (    'text/CSS','application/JavaScript','application/x-JavaScript','text/JavaScript')

我不知道为什么,但是django-storages == 1.1.8中GZIP_CONTENT_TYPES的默认值似乎不包含text / JavaScript所以似乎django-compress跳过GZIP用于具有此内容类型的压缩.Js文件.

见:http://code.larlet.fr/django-storages/src/e27c8b61ab57e5afaf21cccfee005c980d89480f/storages/backends/s3boto.py?at=default#cl-236 总结

以上是内存溢出为你收集整理的python – Django压缩器使用gzip来提供javascript全部内容,希望文章能够帮你解决python – Django压缩器使用gzip来提供javascript所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/langs/1205257.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存