diff options
author | Sergey Kandaurov <pluknet@nginx.com> | 2019-08-19 15:16:06 +0300 |
---|---|---|
committer | Sergey Kandaurov <pluknet@nginx.com> | 2019-08-19 15:16:06 +0300 |
commit | 9cb22efa3fe947f8474338b99d389a35da177bb9 (patch) | |
tree | 9f4f5eb35871d230cb084226c132f25f20b1fe0d /src/http/ngx_http_parse.c | |
parent | 1f960ed92a632cc60ac22c34237fe2f0eb1f8658 (diff) | |
download | nginx-9cb22efa3fe947f8474338b99d389a35da177bb9.tar.gz nginx-9cb22efa3fe947f8474338b99d389a35da177bb9.zip |
HTTP/2: discard remaining request body after redirect.
Previously, if unbuffered request body reading wasn't finished before
the request was redirected to a different location using error_page
or X-Accel-Redirect, and the request body is read again, this could
lead to disastrous effects, such as a duplicate post_handler call or
"http request count is zero" alert followed by a segmentation fault.
This happened in the following configuration (ticket #1819):
location / {
proxy_request_buffering off;
proxy_pass http://bad;
proxy_intercept_errors on;
error_page 502 = /error;
}
location /error {
proxy_pass http://backend;
}
Diffstat (limited to 'src/http/ngx_http_parse.c')
0 files changed, 0 insertions, 0 deletions