mirror of
https://github.com/nginx/nginx.git
synced 2025-02-25 18:55:26 -06:00
Xslt: disabled ranges.
Previously, the document generated by the xslt filter was always fully sent to client even if a range was requested and response status was 206 with appropriate Content-Range. The xslt module is unable to serve a range because of suspending the header filter chain. By the moment full response xml is buffered by the xslt filter, range header filter is not called yet, but the range body filter has already been called and did nothing. The fix is to disable ranges by resetting the r->allow_ranges flag much like the image filter that employs a similar technique.
This commit is contained in:
parent
80daef96f1
commit
4dd43dfca7
@ -233,6 +233,7 @@ ngx_http_xslt_header_filter(ngx_http_request_t *r)
|
|||||||
ngx_http_set_ctx(r, ctx, ngx_http_xslt_filter_module);
|
ngx_http_set_ctx(r, ctx, ngx_http_xslt_filter_module);
|
||||||
|
|
||||||
r->main_filter_need_in_memory = 1;
|
r->main_filter_need_in_memory = 1;
|
||||||
|
r->allow_ranges = 0;
|
||||||
|
|
||||||
return NGX_OK;
|
return NGX_OK;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user