summaryrefslogtreecommitdiffhomepage
path: root/src/http/ngx_http_special_response.c (follow)
AgeCommit message (Collapse)AuthorFilesLines
2012-11-26Request body: improved handling of incorrect chunked request body.Maxim Dounin1-1/+1
While discarding chunked request body in some cases after detecting request body corruption no error was returned, while it was possible to correctly return 400 Bad Request. If error is detected too late, make sure to properly close connection. Additionally, in ngx_http_special_response_handler() don't return body of 500 Internal Server Error to a client if ngx_http_discard_request_body() fails, but disable keepalive and continue.
2012-11-21Request body: fixed "501 Not Implemented" error handling.Maxim Dounin1-2/+3
It is not about "Method" but a generic message, and is expected to be used e.g. if specified Transfer-Encoding is not supported. Fixed message to match RFC 2616. Additionally, disable keepalive on such errors as we won't be able to read request body correctly if we don't understand Transfer-Encoding used.
2012-07-07Entity tags: clear on entity changes.Maxim Dounin1-0/+2
2012-02-27Added support for the 307 Temporary Redirect.Ruslan Ermilov1-6/+17
2012-02-22Renamed constants and fixed off-by-one error in "msie_padding on" handling.Ruslan Ermilov1-18/+15
2012-01-18Copyright updated.Maxim Konovalov1-0/+1
2011-10-12Clear old Location header (if any) while adding a new one.Maxim Dounin1-0/+2
This prevents incorrect behaviour when another redirect is issued within error_page 302 handler.
2011-10-12Stylistic change in checking the boolean expression.Ruslan Ermilov1-1/+1
2011-09-27Fix for incorrect 201 replies from dav module.Maxim Dounin1-3/+2
Replies with 201 code contain body, and we should clearly indicate it's empty if it's empty. Before 0.8.32 chunked was explicitly disabled for 201 replies and as a result empty body was indicated by connection close (not perfect, but worked). Since 0.8.32 chunked is enabled, and this causes incorrect responses from dav module when HTTP/1.1 is used: with "Transfer-Encoding: chunked" but no chunks at all. Fix is to actually return empty body in special response handler instead of abusing r->header_only flag. See here for initial report: http://mailman.nginx.org/pipermail/nginx-ru/2010-October/037535.html
2011-02-01fix "error_page 497 https://" caseIgor Sysoev1-1/+8
patch by Maxim Dounin the bug has been introduced in r3782
2011-01-20introduce 494 code "Request Header Too Large"Igor Sysoev1-0/+12
2010-12-14rename NGX_HTTP_OWN_CODES to NGX_HTTP_NGINX_CODESIgor Sysoev1-4/+4
2010-10-18allow override redirect status in error_pageIgor Sysoev1-3/+5
2010-06-30remove r->zero_body unused since the previous commitIgor Sysoev1-22/+15
2010-06-18303 See OtherIgor Sysoev1-1/+9
2010-05-24remove r->zero_in_uriIgor Sysoev1-2/+0
2010-05-14ngx_str_set() and ngx_str_null()Igor Sysoev1-6/+3
2009-11-12add MSIE padding for Chrome tooIgor Sysoev1-11/+11
2009-05-25reset content_type hash value, this fixes a bug when XSLT responsesIgor Sysoev1-0/+2
could not be processed by SSI, charset, and gzip filters
2009-05-08fix the previous commitIgor Sysoev1-0/+2
2009-05-08allow to pass image filter errors via the same location where the filter is setIgor Sysoev1-2/+12
2009-05-08handle big responses for "size" and "test" image_filtersIgor Sysoev1-1/+11
2009-05-01ngx_http_filter_finalize_request() and ngx_http_clean_header()Igor Sysoev1-0/+34
2009-04-11allow any statusIgor Sysoev1-6/+22
2009-04-07fix r2590: error_page made an external redirect without query stringIgor Sysoev1-6/+6
2009-03-22use complex value in error_pageIgor Sysoev1-51/+12
2008-12-26send "100 Continue" just before reading request bodyIgor Sysoev1-1/+10
2008-08-19leave HEAD method while error_page redirectionIgor Sysoev1-2/+4
2008-08-19do not discard body while error_page redirectionIgor Sysoev1-7/+4
2008-08-13disable error_page loop in 500 error when recursive errors are enabledIgor Sysoev1-1/+1
2008-05-28fix building by bcc/etc introduced in r2038Igor Sysoev1-1/+1
2008-05-26fix debug loggingIgor Sysoev1-1/+2
2008-05-22style fixIgor Sysoev1-2/+2
2008-05-21style fixIgor Sysoev1-1/+1
2008-04-29args support in static error_pageIgor Sysoev1-2/+2
2008-03-10do not change method while error redirection to named locationIgor Sysoev1-3/+4
2007-11-30fix commentIgor Sysoev1-1/+1
2007-10-26divide special response handling into several functionsIgor Sysoev1-235/+299
fix "?" escaping introduced in r1467
2007-10-22server_tokensIgor Sysoev1-4/+18
2007-08-06rename ngx_http_discard_body() to ngx_http_discard_request_body()Igor Sysoev1-1/+1
2007-07-29named locationIgor Sysoev1-0/+4
2007-07-13msie_refresh should escape at least '"' to prevent XSSIgor Sysoev1-5/+19
2007-01-18NGX_HTTP_PRECONDITION_FAILEDIgor Sysoev1-1/+9
2006-10-02set "Content-Length: 0" for errors handled by "return 204"Igor Sysoev1-16/+23
2006-09-25fix msvc build failure introduced by previous commitIgor Sysoev1-1/+1
2006-09-25allowing handling 400 errors via proxy_passIgor Sysoev1-0/+4
2006-08-30nginx-0.4.0-RELEASE importrelease-0.4.0Igor Sysoev1-1/+16
*) Change in internal API: the HTTP modules initialization was moved from the init module phase to the HTTP postconfiguration phase. *) Change: now the request body is not read beforehand for the ngx_http_perl_module: it's required to start the reading using the $r->has_request_body method. *) Feature: the ngx_http_perl_module supports the DECLINED return code. *) Feature: the ngx_http_dav_module supports the incoming "Date" header line for the PUT method. *) Feature: the "ssi" directive is available inside the "if" block. *) Bugfix: a segmentation fault occurred if there was an "index" directive with variables and the first index name was without variables; the bug had appeared in 0.1.29.
2006-08-28nginx-0.3.61-RELEASE importrelease-0.3.61Igor Sysoev1-39/+97
*) Change: now the "tcp_nodelay" directive is turned on by default. *) Feature: the "msie_refresh" directive. *) Feature: the "recursive_error_pages" directive. *) Bugfix: the "rewrite" directive returned incorrect redirect, if the redirect had the captured escaped symbols from original URI.
2006-08-18nginx-0.3.60-RELEASE importrelease-0.3.60Igor Sysoev1-1/+2
*) Bugfix: a worker process may got caught in an endless loop while an error redirection; the bug had appeared in 0.3.59.
2006-08-16nginx-0.3.59-RELEASE importrelease-0.3.59Igor Sysoev1-3/+5
*) Feature: now is possible to do several redirection using the "error_page" directive. *) Bugfix: the "dav_access" directive did not support three parameters. *) Bugfix: the "error_page" directive did not changes the "Content-Type" header line after the "X-Accel-Redirect" was used; the bug had appeared in 0.3.58.