Azure CDN Blob存储手动压缩

时间:2016-11-21 23:17:28

标签: azure-storage-blobs azure-cdn

我们拥有超过1mb的文件,并通过Azure Verizon CDN从自动压缩中排除。

为了适应我们在上传到Azure Blob主干之前手动压缩文件。我们上传了该文件的压缩和未压缩版本。

uploaded files

我们还配置了Azure CDN来处理json文件:

mime config

现在,如果我用适当的标题卷曲blob或cdn,我不会得到压缩内容。

enter image description here

那么使用Azure执行此操作的标准方法是什么?我错过了设置或标题吗?

基于Accept-Encoding标头,内容交换是不可行的?

我是否需要删除.gz扩展名并始终将json压缩为拉链?

任何见解都将不胜感激。

1 个答案:

答案 0 :(得分:3)

为了清晰起见进行编辑:

这里推荐的解决方案是将您的资源gzip并上传到没有.gz扩展名的博客存储,并确保它返回"内容编码:gzip"报头中。

之后,只需通过CDN端点请求该资产。如果您的请求包含 Accept-Encoding:gzip 标头,则CDN将返回压缩资产。如果您的请求不包含 Accept-Encoding 标头,则CDN将动态解压缩该文件,并为客户端提供资产的未压缩版本。

原始答案:

嘿,我来自Azure CDN团队。

首先,您使用的是Verizon或Akamai个人资料吗?

Verizon的边缘压缩限制为1MB,而Akamai则没有。此外,此限制仅适用于CDN边缘压缩,因此如果您的来源使用正确的压缩文件进行响应,则CDN仍应将其提供给客户端。

就我所知,Blob存储不会自动进行内容交换。

请注意,如果文件的未压缩版本已经缓存在CDN边缘,它将继续提供该文件,直到它过期。您可以使用'清除'重置此功能。功能

我们还在此处提供了问题排查说明文件:https://docs.microsoft.com/en-us/azure/cdn/cdn-troubleshoot-compression

如果以上方面没有帮助,我很乐意帮助您进一步排查问题。 只需将您的来源和cdn端点URL私下发送到rli@microsoft.com。