该模块默认不会构建,需要通过–with-http_slice_module配置参数启用。
示例配置
location / { slice 1m; proxy_cache cache; proxy_cache_key $uri$is_args$args$slice_range; proxy_set_header Range $slice_range; proxy_cache_valid 200 206 1h; proxy_pass http://localhost:8000; }
这个例子中,响应被分割成了1M的可缓存的分片。
slice
语法:slice size
默认:slice 0
上下文:http, server, location
设置分片的大小。零值禁用响应分片。注意过低的值会导致过多的内存消耗以及大量的文件描述符。
为了让子请求返回需要的范围,$slice_range变量需要传给被代理服务器作为Range请求头。如果启用缓存,$slice_range应添加到缓存的关键字中,并启用返回响应206状态码。
内嵌变量