range_filter_module get duplicated Accept-Ranges response headers

webber nginx-forum at forum.nginx.org
Wed Jul 8 08:14:39 UTC 2020


Hi, 

Sorry to bother you, I rechange the patch as follow: 

Previously, if an Accept-Ranges header was already present in the first
slice
response, client received two copies of this header. Now, the slice filters
removes the Accept-Ranges header for partital request and if original server

response Accept-Ranges header, has  from the response prior to setting the
r->allow_ranges flag.


diff --git a/src/http/modules/ngx_http_slice_filter_module.c
b/src/http/modules/ngx_http_slice_filter_module.c
index c1edbca2..9a215e43 100644
--- a/src/http/modules/ngx_http_slice_filter_module.c
+++ b/src/http/modules/ngx_http_slice_filter_module.c
@@ -180,6 +180,11 @@ ngx_http_slice_header_filter(ngx_http_request_t *r)
     r->headers_out.content_range->hash = 0;
     r->headers_out.content_range = NULL;

+    if (!r->headers_in.range && r->headers_out.accept_ranges) {
+        r->headers_out.accept_ranges->hash = 0;
+        r->headers_out.accept_ranges = NULL;
+    }
+
     r->allow_ranges = 1;
     r->subrequest_ranges = 1;
     r->single_range = 1;

Posted at Nginx Forum: https://forum.nginx.org/read.php?2,288569,288629#msg-288629



More information about the nginx mailing list