Amazon s3 我如何加上「;“接受编码”;我的CloudFront发行版的标题?
我打开CloudFront仪表板并单击分发ID,然后单击Origin选项卡并单击,选择默认的Origin,然后单击Edit。 尝试在自定义源标题下的“标题名称”中添加“接受编码”,并将其值设置为“gzip”,但显示以下错误:Amazon s3 我如何加上「;“接受编码”;我的CloudFront发行版的标题?,amazon-s3,compression,gzip,amazon-cloudfront,Amazon S3,Compression,Gzip,Amazon Cloudfront,我打开CloudFront仪表板并单击分发ID,然后单击Origin选项卡并单击,选择默认的Origin,然后单击Edit。 尝试在自定义源标题下的“标题名称”中添加“接受编码”,并将其值设置为“gzip”,但显示以下错误: com.amazonaws.services.cloudfront.model.InvalidArgumentException: The parameter HeaderValue for Accept-Encoding is not empty. (Service: A
com.amazonaws.services.cloudfront.model.InvalidArgumentException: The parameter HeaderValue for Accept-Encoding is not empty. (Service: AmazonCloudFront; Status Code: 400; Error Code: InvalidArgument; Request ID: 05685bb6-ca02-11e7-8a62-0b7037d34a58)
如何通过CloudFront实现gzip压缩 您不能基于
接受编码
头将CloudFront配置为缓存。引自:
您可以根据任何请求头的值将CloudFront配置为缓存,以下情况除外:
- 接受编码
- 联系,
内容长度
头的响应,以便确定文件大小是否在CloudFront压缩的范围内。如果您使用的是S3,请转到CORS配置,并将内容长度
标题添加到允许的标题列表中
如果希望您的源站压缩文件,则设置取决于您在该源站上运行的服务器Server应设置为使用content Encoding:gzip
头向CloudFront提供gzip-ed内容,这样它就不会被CloudFront压缩。
这些是基本的指导原则,但具体的设置取决于您的具体配置。如果您试图使客户端能够在发送到CloudFront之前压缩文件/数据,则不能。这是不受支持的。其中一个原因是很容易创建zip(gzip)文件,当解压缩时,这些文件的大小会爆炸(zip炸弹)。一个糟糕的演员可以通过这种类型的黑客很容易地破坏你的CloudFront/后端连接。非常感谢。