Mercurial > hg > nginx
diff src/http/ngx_http_header_filter_module.c @ 8653:1efee5e4194c quic
HTTP/3: introduced ngx_http_v3_filter.
The filter is responsible for creating HTTP/3 response header and body.
The change removes differences to the default branch for
ngx_http_chunked_filter_module and ngx_http_header_filter_module.
author | Roman Arutyunyan <arut@nginx.com> |
---|---|
date | Fri, 27 Nov 2020 17:46:21 +0000 |
parents | a3257a725b3d |
children | 7c2adf237091 |
line wrap: on
line diff
--- a/src/http/ngx_http_header_filter_module.c +++ b/src/http/ngx_http_header_filter_module.c @@ -187,29 +187,6 @@ ngx_http_header_filter(ngx_http_request_ r->header_only = 1; } - if (r->headers_out.status_line.len == 0) { - if (r->headers_out.status == NGX_HTTP_NO_CONTENT - || r->headers_out.status == NGX_HTTP_NOT_MODIFIED) - { - r->header_only = 1; - } - } - -#if (NGX_HTTP_V3) - - if (r->http_version == NGX_HTTP_VERSION_30) { - ngx_chain_t *cl; - - cl = ngx_http_v3_create_header(r); - if (cl == NULL) { - return NGX_ERROR; - } - - return ngx_http_write_filter(r, cl); - } - -#endif - if (r->headers_out.last_modified_time != -1) { if (r->headers_out.status != NGX_HTTP_OK && r->headers_out.status != NGX_HTTP_PARTIAL_CONTENT @@ -243,6 +220,7 @@ ngx_http_header_filter(ngx_http_request_ /* 2XX */ if (status == NGX_HTTP_NO_CONTENT) { + r->header_only = 1; ngx_str_null(&r->headers_out.content_type); r->headers_out.last_modified_time = -1; r->headers_out.last_modified = NULL; @@ -259,6 +237,10 @@ ngx_http_header_filter(ngx_http_request_ { /* 3XX */ + if (status == NGX_HTTP_NOT_MODIFIED) { + r->header_only = 1; + } + status = status - NGX_HTTP_MOVED_PERMANENTLY + NGX_HTTP_OFF_3XX; status_line = &ngx_http_status_lines[status]; len += ngx_http_status_lines[status].len;