最近更新时间:2024.05.12 11:48:34
首次发布时间:2021.08.12 16:34:57
本文档介绍如何在火山引擎内容分发网络中启用智能压缩。
开启智能压缩后,您可以创建规则,指定哪些类型的文件需要压缩以及所使用的压缩算法。在收到请求时,如果请求匹配了某条规则,内容分发网络会根据规则的配置对请求的文件进行压缩。该功能可以减小文件的大小,提高文件传输速度,降低流量消耗。
智能压缩支持 Gzip 和 Brotli 压缩算法。
如果客户端可以接收压缩的数据,请求需要包含 Accept-Encoding
头部并指明客户端支持的压缩算法以及权重。权重是可选的。比如 Accept-Encoding: gzip;q=0.8, br;q=0.6
表示客户端同时支持 Gzip 和 Brotli,但是 Gzip 优先。如果请求中不包含该头部,表示客户端不能处理压缩数据。
内容分发网络的响应中包含 Content-Encoding
头部,指示了响应的文件所使用的压缩算法。
Content-Encoding
头部值不为空且不为 identity
,表明源站已经对该文件进行了压缩。在这种情况下,内容分发网络不再对该文件进行压缩。Accept-Encoding
头部的值包含 br
和 gzip
时,有以下两种情况:
Accept-Encoding
不包含算法的权重,内容分发网络对请求文件进行 Brotli 压缩。Accept-Encoding
包含算法的权重,内容分发网络使用权重高的算法对请求文件进行压缩。配置 | 说明 |
---|---|
优先级 | 表示规则的优先级。数字为 1 的规则优先级最高。在收到请求时,内容分发网络按优先级,尝试将请求与每一条规则中的过滤条件匹配。如果请求满足规则中的过滤条件,内容分发网络就停止处理其余规则。您可以通过拖拽调整规则的优先级。 |
规则类型 | 表示规则中的过滤类型。该配置有以下选项:
说明 规则列表中只能有一条过滤类型是 Content-Type 的规则。这条规则的优先级是最低的,您也无法调整其优先级。 |
规则 | 表示规则的内容,长度不能超过 1,024 个字符,不能包含以下字符:
同时,
|
文件范围(最小值) | 表示一个文件大小。如果请求文件的大小小于该值,则内容分发网络不会压缩该文件。该配置的取值范围 0 - 2,147,483,647,单位是 KB,使用的进制是 1,024。如果该配置值是 0 ,表示无论文件大小,内容分发网络始终对文件进行压缩。 |
压缩方式 | 表示该规则对指定类型的文件所使用的压缩算法。该配置有以下取值:
内容分发网络在使用 Brotli 算法压缩请求文件时,使用的压缩级别是 6。 说明 Brotli 有 12 个压缩级别,从 0 到 11,其中 0 提供最快的压缩速度,但压缩比最低,11 提供最高的压缩比,但需要更多的计算资源和压缩时间。 |