summaryrefslogtreecommitdiffhomepage
path: root/src/http/modules (follow)
AgeCommit message (Collapse)AuthorFilesLines
2011-10-05Version bump.Igor Sysoev1-1/+1
2011-09-30Added uwsgi_buffering and scgi_buffering directives.Maxim Dounin2-2/+20
Patch by Peter Smit.
2011-09-30Using strtod() instead of atofp() to support a lot of digits after dot inIgor Sysoev1-2/+9
"start" parameter value.
2011-09-29Fix of building on platforms with 32-bit off_t. (closed #23)Igor Sysoev1-9/+9
2011-09-27Fix for "ssl_session_cache builtin" (broken since 1.1.1, r3993).Maxim Dounin1-2/+2
2011-09-27Fix for "return 202" not discarding body.Maxim Dounin1-7/+0
Big POST (not fully preread) to a location / { return 202; } resulted in incorrect behaviour due to "return" code path not calling ngx_http_discard_request_body(). The same applies to all "return" used with 2xx/3xx codes except 201 and 204, and to all "return ... text" uses. Fix is to add ngx_http_discard_request_body() call to ngx_http_send_response() function where it looks appropriate. Discard body call from emtpy gif module removed as it's now redundant. Reported by Pyry Hakulinen, see http://mailman.nginx.org/pipermail/nginx/2011-August/028503.html
2011-09-27Fix for double content when return is used in error_page handler.Maxim Dounin1-2/+2
Test case: location / { error_page 405 /nope; return 405; } location /nope { return 200; } This is expected to return 405 with empty body, but in 0.8.42+ will return builtin 405 error page as well (though not counted in Content-Length, thus breaking protocol). Fix is to use status provided by rewrite script execution in case it's less than NGX_HTTP_BAD_REQUEST even if r->error_status set. This check is in line with one in ngx_http_script_return_code(). Note that this patch also changes behaviour for "return 302 ..." and "rewrite ... redirect" used as error handler. E.g. location / { error_page 405 /redirect; return 405; } location /redirect { rewrite ^ http://example.com/; } will actually return redirect to "http://example.com/" instead of builtin 405 error page with meaningless Location header. This looks like correct change and it's in line with what happens on e.g. directory redirects in error handlers.
2011-09-25Proxy: logging levels tuned, double logging fixed.Maxim Dounin1-6/+3
2011-09-25Proxy: whitespaces after chunk size allowed.Maxim Dounin1-0/+4
Whitespaces after chunk size seems to be be allowed by the "implied *LWS" rule and emitted by some servers.
2011-09-20Fixed loss of chain links in fastcgi module.Maxim Dounin1-2/+4
2011-09-19Replaced "can not" with "cannot" and "could not" in a bunch of places.Ruslan Ermilov3-3/+3
Fixed nearby grammar errors.
2011-09-16Trailing space fix.Maxim Dounin1-1/+1
2011-09-15Upstream keepalive module.Maxim Dounin1-0/+569
2011-09-15Proxy: basic HTTP/1.1 support (including keepalive).Maxim Dounin1-5/+773
By default we still send requests using HTTP/1.0. This may be changed with new proxy_http_version directive.
2011-09-15Protocol version parsing in ngx_http_parse_status_line().Maxim Dounin1-0/+5
Once we know protocol version, set u->headers_in.connection_close to indicate implicitly assumed connection close with HTTP before 1.1.
2011-09-15Keepalive support in fastcgi.Maxim Dounin1-7/+69
By default follow the old behaviour, i.e. FASTCGI_KEEP_CONN flag isn't set in request and application is responsible for closing connection once request is done. To keep connections alive fastcgi_keep_conn must be activated.
2011-09-15Keepalive support in memcached.Maxim Dounin1-0/+16
2011-09-15Upstream: r->upstream->length type change to off_t.Maxim Dounin1-1/+1
Previous use of size_t may cause wierd effects on 32bit platforms with certain big responses transferred in unbuffered mode. Nuke "if (size > u->length)" check as it's not usefull anyway (preread body data isn't subject to this check) and now requires additional check for u->length being positive.
2011-09-15Upstream: content_length_n API change.Maxim Dounin1-2/+2
We no longer use r->headers_out.content_length_n as a primary source of backend's response length. Instead we parse response length to u->headers_in.content_length_n and copy to r->headers_out.content_length_n when needed.
2011-09-15API change: ngx_chain_update_chains() now requires pool.Maxim Dounin2-3/+3
The ngx_chain_update_chains() needs pool to free chain links used for buffers with non-matching tags. Providing one helps to reduce memory consumption for long-lived requests.
2011-09-15Buffers reuse in chunked filter.Maxim Dounin1-31/+68
There were 2 buffers allocated on each buffer chain sent through chunked filter (one buffer for chunk size, another one for trailing CRLF, about 120 bytes in total on 32-bit platforms). This resulted in large memory consumption with long-lived requests sending many buffer chains. Usual example of problematic scenario is streaming though proxy with proxy_buffering set to off. Introduced buffers reuse reduces memory consumption in the above problematic scenario. See here for initial report: http://mailman.nginx.org/pipermail/nginx/2010-April/019814.html
2011-09-15MP4 co64 atom support added.Igor Sysoev1-6/+164
2011-09-15Fix of struct field name.Igor Sysoev1-4/+4
2011-09-14Style fix.Igor Sysoev1-1/+2
2011-09-14Fixing building by gcc-4.7.Igor Sysoev1-3/+0
2011-09-14Version bump.Igor Sysoev1-1/+1
2011-09-14Skipping traks with unsupported media formats.Igor Sysoev1-14/+42
2011-09-14Fix of case when start sample does not reside on chunk boundary.Igor Sysoev1-67/+134
2011-09-12Fix of debug message format.Igor Sysoev1-6/+6
2011-09-12Fix of codec debug message.Igor Sysoev1-1/+3
2011-09-12Fix of error message.Igor Sysoev1-2/+2
2011-09-12Fix of error message.Igor Sysoev1-1/+1
2011-09-12mp4_max_moov_size directive has been renamed to mp4_max_buffer_size.Igor Sysoev1-7/+7
2011-09-09bugfix of r4086: nginx could not be built without debug log.Igor Sysoev1-4/+4
2011-09-09Bugfix of r4086: directio was always enabled if mp4 file was sent as is.Igor Sysoev1-0/+3
2011-09-09ngx_http_mp4_moduleIgor Sysoev1-0/+2591
2011-09-05Version bump.Igor Sysoev1-1/+1
2011-09-01Now if client requests more ranges than "max_ranges" permits,Igor Sysoev1-2/+2
nginx disables ranges and returns just the source response.
2011-08-31The "max_ranges" directive.Igor Sysoev1-3/+15
"max_ranges 0" disables ranges support at all, "max_ranges 1" allows the single range, etc. By default number of ranges is unlimited, to be precise, 2^31-1.
2011-08-31Style fix: removal of tabs introduced in the previous commit.Igor Sysoev1-7/+7
2011-08-30*) fix of r4060: start value should be tested after the "found" label;Igor Sysoev1-13/+9
*) optimization: start value may be tested against end value only, since end value here may not be greater than content_length.
2011-08-30Unsatisfiable range with start value greater than content lengthIgor Sysoev1-5/+1
was not properly skipped. The bug has been introduced in r4057.
2011-08-30ngx_http_range_parse() should be static.Igor Sysoev1-2/+2
2011-08-30Ranges processing small optimization.Igor Sysoev1-8/+9
2011-08-30Now unsatisfiable ranges are processed according to RFC 2616.Igor Sysoev1-6/+8
2011-08-30Ranges processing small optimization.Igor Sysoev1-24/+15
2011-08-30Style fix.Igor Sysoev1-2/+2
2011-08-26Now if total size of all ranges is greater than source response size,Igor Sysoev1-12/+21
then nginx disables ranges and returns just the source response. This fix should not affect well-behaving applications but will defeat DoS attempts exploiting malicious byte ranges.
2011-08-23Version bump.Igor Sysoev1-1/+1
2011-08-19Fix ignored headers handling in fastcgi/scgi/uwsgi.Maxim Dounin3-3/+27
The bug had appeared in r3561 (fastcgi), r3638 (scgi), r3567 (uwsgi).