Skip to content

Commit 74a9e04

Browse files
committed
bugfix: HEAD requests might result in response bodies.
1 parent f25fe90 commit 74a9e04

File tree

1 file changed

+18
-3
lines changed

1 file changed

+18
-3
lines changed

src/ngx_http_srcache_store.c

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,19 +92,25 @@ ngx_http_srcache_header_filter(ngx_http_request_t *r)
9292
/* pr_ctx->fetch_error = 1; */
9393
r->header_sent = 1;
9494

95+
if (r->method == NGX_HTTP_HEAD) {
96+
r->header_only = 1;
97+
}
98+
9599
return NGX_OK;
96100
}
97101

98102
ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
99103
"srcache_fetch decides to send the response in cache");
100104

101105
r->filter_need_in_memory = 1;
102-
103106
pr_ctx->from_cache = 1;
104-
105107
ctx->parsing_cached_headers = 1;
106-
107108
r->header_sent = 1;
109+
110+
if (r->method == NGX_HTTP_HEAD) {
111+
r->header_only = 1;
112+
}
113+
108114
return NGX_OK;
109115
}
110116

@@ -117,6 +123,11 @@ ngx_http_srcache_header_filter(ngx_http_request_t *r)
117123
r->headers_out.status);
118124

119125
r->header_sent = 1;
126+
127+
if (r->method == NGX_HTTP_HEAD) {
128+
r->header_only = 1;
129+
}
130+
120131
return NGX_OK;
121132
}
122133

@@ -244,6 +255,10 @@ ngx_http_srcache_header_filter(ngx_http_request_t *r)
244255
ctx->http_status = r->headers_out.status;
245256
ctx->store_response = 1;
246257

258+
if (r->method == NGX_HTTP_HEAD) {
259+
r->header_only = 1;
260+
}
261+
247262
return NGX_OK;
248263
}
249264

0 commit comments

Comments
 (0)