scgi_cache_max_range_offset
配置用于 SCGI 缓存范围检索的最大偏移量。 — NGINX HTTP Core
scgi_cache_max_range_offset
httpserverlocation
语法scgi_cache_max_range_offset size;
默认值none
上下文http, server, location
模块NGINX HTTP Core
参数1
说明
`scgi_cache_max_range_offset` 指令指定在检索 SCGI 请求的缓存响应时允许的最大范围偏移量。该指令允许用户设置可从缓存中请求的特定字节范围,从而控制在对部分内容请求时可以发送的数据量。通过配置此限制,您可以有效管理带宽使用并根据内容类型和预期客户端使用情况优化缓存行为。 当客户端从缓存的 SCGI 响应请求字节范围时,NGINX 会检查所请求的范围是否超过 `scgi_cache_max_range_offset` 定义的限制。如果请求超过该限制,NGINX 可能会返回错误,或根据故障转移配置回退到获取整个资源。在某些场景下,该指令非常重要,例如当极大的缓存对象可能导致过度的资源使用,或需要对交付内容进行精确控制时。 此指令接受一个参数,指定以字节为单位的最大范围偏移量。它可在 `http`、`server` 和 `location` 等不同上下文级别设置,允许基于您的 NGINX 配置结构进行灵活实现。
配置示例
location /api {
scgi_pass unix:/var/run/scgi.sock;
scgi_cache on;
scgi_cache_path /tmp/scgi_cache levels=1:2 keys_zone=scgi_cache:10m;
scgi_cache_max_range_offset 100000;
}⚠
在设置非常高的偏移量时要小心,因为这可能允许客户端请求超出预期的数据,从而影响服务器性能。
⚠
如果未设置,当客户端请求的范围大于默认行为且没有有效处理时,客户端可能会接收到整个内容。