【问题标题】:AWS S3 serving gzipped files but not readableAWS S3 提供压缩文件但不可读
【发布时间】:2017-08-03 10:22:34
【问题描述】:

我正在使用 AWS S3 托管一个静态网页,几乎所有资产在上传之前都经过 gzip 压缩。

在上传过程中,“content-encoding”标头被正确设置为“gzip”(这也反映在实际从 AWS 加载文件时)。

问题是,尽管设置了正确的标头,但文件无法读取并且仍然是 gzip 格式...

文件是使用npm s3-deploy 上传的,这是请求的截图:

以及浏览器中文件的内容:

如果我手动上传文件并将内容编码标头设置为“gzip”,它可以完美运行。可悲的是,每次部署我都有几百个文件要上传,并且不能一直手动执行此操作(我希望这是可以理解的;))。

有人知道这里发生了什么吗?任何使用 s3-deploy 的人都可以提供帮助吗?

【问题讨论】:

    标签: node.js amazon-web-services amazon-s3 gzip content-encoding


    【解决方案1】:

    我使用自己的 bash 脚本进行 S3 部署,您可以尝试这样做:

    webpath='path'
    BUCKET='BUCKETNAME'
    
    for file in $webpath/js/*.gz; do
            aws s3 cp "$file" s3://"$BUCKET/js/" --content-encoding 'gzip' --region='eu-west-1'
    done
    

    【讨论】:

    • +1 加上几个附加功能就完美了!如果有人可以使用 npm 模块提出解决方案,让我等几个小时,否则我会接受你的回答。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-26
    • 2020-02-12
    • 2013-01-07
    相关资源
    最近更新 更多