Mercurial > hg > nginx-quic
comparison auto/modules @ 6317:29f35e60840b
Slice filter.
Splits a request into subrequests, each providing a specific range of response.
The variable "$slice_range" must be used to set subrequest range and proper
cache key. The directive "slice" sets slice size.
The following example splits requests into 1-megabyte cacheable subrequests.
server {
listen 8000;
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://127.0.0.1:9000;
}
}
author | Roman Arutyunyan <arut@nginx.com> |
---|---|
date | Mon, 07 Dec 2015 16:30:48 +0300 |
parents | 257b51c37c5a |
children | c529555949b7 |
comparison
equal
deleted
inserted
replaced
6316:f44de0d12143 | 6317:29f35e60840b |
---|---|
67 HTTP_SRCS="$HTTP_SRCS $HTTP_FILE_CACHE_SRCS" | 67 HTTP_SRCS="$HTTP_SRCS $HTTP_FILE_CACHE_SRCS" |
68 fi | 68 fi |
69 | 69 |
70 | 70 |
71 if [ $HTTP_SSI = YES ]; then | 71 if [ $HTTP_SSI = YES ]; then |
72 HTTP_POSTPONE=YES | |
73 fi | |
74 | |
75 | |
76 if [ $HTTP_SLICE = YES ]; then | |
72 HTTP_POSTPONE=YES | 77 HTTP_POSTPONE=YES |
73 fi | 78 fi |
74 | 79 |
75 | 80 |
76 if [ $HTTP_ADDITION = YES ]; then | 81 if [ $HTTP_ADDITION = YES ]; then |
108 # ngx_http_userid_filter | 113 # ngx_http_userid_filter |
109 # ngx_http_headers_filter | 114 # ngx_http_headers_filter |
110 # ngx_http_copy_filter | 115 # ngx_http_copy_filter |
111 # ngx_http_range_body_filter | 116 # ngx_http_range_body_filter |
112 # ngx_http_not_modified_filter | 117 # ngx_http_not_modified_filter |
118 # ngx_http_slice_filter | |
113 | 119 |
114 HTTP_FILTER_MODULES="$HTTP_WRITE_FILTER_MODULE \ | 120 HTTP_FILTER_MODULES="$HTTP_WRITE_FILTER_MODULE \ |
115 $HTTP_HEADER_FILTER_MODULE \ | 121 $HTTP_HEADER_FILTER_MODULE \ |
116 $HTTP_CHUNKED_FILTER_MODULE" | 122 $HTTP_CHUNKED_FILTER_MODULE" |
117 | 123 |
175 fi | 181 fi |
176 | 182 |
177 if [ $HTTP_USERID = YES ]; then | 183 if [ $HTTP_USERID = YES ]; then |
178 HTTP_FILTER_MODULES="$HTTP_FILTER_MODULES $HTTP_USERID_FILTER_MODULE" | 184 HTTP_FILTER_MODULES="$HTTP_FILTER_MODULES $HTTP_USERID_FILTER_MODULE" |
179 HTTP_SRCS="$HTTP_SRCS $HTTP_USERID_SRCS" | 185 HTTP_SRCS="$HTTP_SRCS $HTTP_USERID_SRCS" |
186 fi | |
187 | |
188 if [ $HTTP_SLICE = YES ]; then | |
189 HTTP_SRCS="$HTTP_SRCS $HTTP_SLICE_SRCS" | |
190 else | |
191 HTTP_SLICE_FILTER_MODULE="" | |
180 fi | 192 fi |
181 | 193 |
182 | 194 |
183 if [ $HTTP_V2 = YES ]; then | 195 if [ $HTTP_V2 = YES ]; then |
184 have=NGX_HTTP_V2 . auto/have | 196 have=NGX_HTTP_V2 . auto/have |
459 modules="$modules $HTTP_MODULES $HTTP_FILTER_MODULES \ | 471 modules="$modules $HTTP_MODULES $HTTP_FILTER_MODULES \ |
460 $HTTP_HEADERS_FILTER_MODULE \ | 472 $HTTP_HEADERS_FILTER_MODULE \ |
461 $HTTP_AUX_FILTER_MODULES \ | 473 $HTTP_AUX_FILTER_MODULES \ |
462 $HTTP_COPY_FILTER_MODULE \ | 474 $HTTP_COPY_FILTER_MODULE \ |
463 $HTTP_RANGE_BODY_FILTER_MODULE \ | 475 $HTTP_RANGE_BODY_FILTER_MODULE \ |
464 $HTTP_NOT_MODIFIED_FILTER_MODULE" | 476 $HTTP_NOT_MODIFIED_FILTER_MODULE \ |
477 $HTTP_SLICE_FILTER_MODULE" | |
465 | 478 |
466 NGX_ADDON_DEPS="$NGX_ADDON_DEPS \$(HTTP_DEPS)" | 479 NGX_ADDON_DEPS="$NGX_ADDON_DEPS \$(HTTP_DEPS)" |
467 fi | 480 fi |
468 | 481 |
469 | 482 |