AWS S3服务gzip文件但不可读

问题描述:

我正在使用AWS S3托管一个静态网页,几乎所有资产在上传前都会被gzip压缩。AWS S3服务gzip文件但不可读

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

的事情是,这些文件无法读取,而且仍然gzip格式虽然正确的标头设置...

的文件正在使用npm s3-deploy上载,这里的请求是什么样子的截图:

file request

和文件在浏览器中的内容:

​​

如果我手动上传文件并将content-encoding标头设置为“gzip”,它可以很好地工作。可悲的是,我有几百个文件要上传用于每个部署,并且无法一直手动执行此操作(我希望这可以理解;))。

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

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

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 
+0

+1完美的作品有几个新增罚款!如果有人能够使用npm模块提出解决方案,请等待几个小时,否则我会接受您的答案。谢谢! –