summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)AuthorFilesLines
2012-01-30nginx-1.1.14-RELEASErelease-1.1.14Maxim Dounin1-0/+61
2012-01-30Update OpenSSL and PCRE used for win32 builds.Maxim Dounin1-2/+2
2012-01-30Limit req: unbreak compilation with MSVC.Maxim Dounin1-0/+4
2012-01-30Fixed memory leak on HUP signal when PCRE JIT was used.Valentin Bartenev1-1/+54
The PCRE JIT compiler uses mmap to allocate memory for its executable codes, so we have to explicitly call the pcre_free_study() function to free this memory.
2012-01-30Fixed proxy_redirect off inheritance.Valentin Bartenev1-0/+2
Example configuration to reproduce: server { proxy_redirect off; location / { proxy_pass http://localhost:8000; proxy_redirect http://localhost:8000/ /; location ~ \.php$ { proxy_pass http://localhost:8000; # proxy_redirect must be inherited from the level above, # but instead it was switched off here } } }
2012-01-30Fixed error handling in ngx_event_connect_peer().Maxim Dounin1-6/+5
Previously if ngx_add_event() failed a connection was freed two times (once in the ngx_event_connect_peer(), and again by a caller) as pc->connection was left set. Fix is to always use ngx_close_connection() to close connection properly and set pc->connection to NULL on errors. Patch by Piotr Sikora.
2012-01-30Limit req: support for multiple "limit_req" limits.Valentin Bartenev1-78/+229
2012-01-30Limit req: number of cleanup calls reduced.Valentin Bartenev1-2/+2
Doing a cleanup before every lookup seems to be too aggressive. It can lead to premature removal of the nodes still usable, which increases the amount of work under a mutex lock and therefore decreases performance. In order to improve cleanup behavior, cleanup function call has been moved right before the allocation of a new node.
2012-01-30Limit req: allocation and initialization of a new node moved to the lookupValentin Bartenev1-52/+45
function. No functional changes.
2012-01-30Limit req: improved error handling when parsing "zone" parameter ofValentin Bartenev1-15/+23
"limit_req_zone" directive; minimum size of zone is increased. Previously an unsigned variable was used to keep the return value of ngx_parse_size() function, which led to an incorrect zone size if NGX_ERROR was returned. The new code has been taken from the "limit_conn_zone" directive.
2012-01-30Limit req: error messages fixed.Valentin Bartenev1-4/+4
2012-01-30Fixed AIO error handling on FreeBSD.Maxim Dounin2-19/+10
The aio_return() must be called regardless of the error returned by aio_error(). Not calling it resulted in various problems up to segmentation faults (as AIO events are level-triggered and were reported again and again). Additionally, in "aio sendfile" case r->blocked was incremented in case of error returned from ngx_file_aio_read(), thus causing request hangs.
2012-01-30Removed ENGINE_load_builtin_engines() call.Maxim Dounin1-2/+0
It's already called by OPENSSL_config(). Calling it again causes some openssl engines (notably GOST) to corrupt memory, as they don't expect to be created more than once.
2012-01-24Fixed grammar in PCRE JIT error log message.Valentin Bartenev1-1/+1
2012-01-18Copyright updated.Maxim Konovalov362-0/+362
2012-01-18Version bump.Maxim Konovalov1-1/+2
2012-01-18Version bump.Maxim Konovalov1-2/+2
2012-01-17Fixed spelling.Ruslan Ermilov1-2/+2
2012-01-16release-1.1.13 tagMaxim Dounin1-0/+1
2012-01-16nginx-1.1.13-RELEASErelease-1.1.13Maxim Dounin1-0/+76
2012-01-16Updated OpenSSL version used for win32 build.Maxim Dounin1-1/+1
2012-01-162012 year.Igor Sysoev1-1/+1
2012-01-16Fixed division by zero exception in ngx_hash_init().Valentin Bartenev1-1/+1
The ngx_hash_init() function did not expect call with zero elements count, which caused FPE error on configs with an empty "types" block in http context and "types_hash_max_size" > 10000. Example configuration to reproduce: events { } http { types_hash_max_size 10001; types {} server {} }
2012-01-16Fixed sched_setaffinity(2) to correctly pass size.Maxim Dounin1-1/+4
Second argument (cpusetsize) is size in bytes, not in bits. Previously used constant 32 resulted in reading of uninitialized memory and caused EINVAL to be returned on some Linux kernels.
2012-01-16Fixed handling of mp4 above 2G and 32bit offsets (ticket #84).Maxim Dounin1-4/+4
2012-01-16Fixed proxy_cache_use_stale in "no live upstreams" case.Maxim Dounin4-5/+21
2012-01-11Added support for TLSv1.1, TLSv1.2 in ssl_protocols directive.Maxim Dounin5-20/+34
Support for TLSv1.1 and TLSv1.2 protocols was introduced in OpenSSL 1.0.1 (-beta1 was recently released). This change makes it possible to disable these protocols and/or enable them without other protocols.
2012-01-11Fixed limit_req burst/nodelay inheritance (ticket #76).Maxim Dounin1-0/+2
The problem was introduced in r4381 (1.1.12).
2012-01-10Fixed: proxy_redirect with regex might broke Refresh header.Valentin Bartenev1-1/+19
The problem was localized in ngx_http_proxy_rewrite_redirect_regex() handler function which did not take into account prefix when overwriting header value.
2012-01-10Changed ngx_log_debugN() macros to verify the number of argumentsRuslan Ermilov1-9/+32
when built with debugging.
2011-12-29Fixed configure with system PCRE library on Solaris.Valentin Bartenev1-1/+1
The bug has been introduced in r4389.
2011-12-29Some questionable optomizations flags for icc were removedMaxim Konovalov1-29/+4
in order to simplify support of its future versions.
2011-12-28Fixed punctuation.Maxim Dounin1-4/+4
2011-12-27libraries versions updatedSergey Budnevitch1-3/+3
2011-12-27zlib license file include fixedSergey Budnevitch1-1/+1
2011-12-27Version bump.Maxim Dounin2-3/+3
2011-12-26release-1.1.12 tagMaxim Dounin1-0/+1
2011-12-26nginx-1.1.12-RELEASErelease-1.1.12Maxim Dounin1-0/+140
2011-12-26Added support for regex study and PCRE JIT (ticket #41) optimizations onValentin Bartenev7-12/+247
configuration phase.
2011-12-26Fixed build without debug.Maxim Dounin1-2/+2
2011-12-26Cache lock support for fastcgi, scgi, uwsgi.Maxim Dounin3-0/+66
2011-12-26Cache locks initial implementation.Maxim Dounin5-14/+181
New directives: proxy_cache_lock on/off, proxy_cache_lock_timeout. With proxy_cache_lock set to on, only one request will be allowed to go to upstream for a particular cache item. Others will wait for a response to appear in cache (or cache lock released) up to proxy_cache_lock_timeout. Waiting requests will recheck if they have cached response ready (or are allowed to run) every 500ms. Note: we intentionally don't intercept NGX_DECLINED possibly returned by ngx_http_file_cache_read(). This needs more work (possibly safe, but needs further investigation). Anyway, it's exceptional situation. Note: probably there should be a way to disable caching of responses if there is already one request fetching resource to cache (without waiting at all). Two possible ways include another cache lock option ("no_cache") or using proxy_no_cache with some supplied variable. Note: probably there should be a way to lock updating requests as well. For now "proxy_cache_use_stale updating" is available.
2011-12-26Fixed interaction of limit_rate and sendfile_max_chunk.Maxim Dounin1-7/+11
It's possible that configured limit_rate will permit more bytes per single operation than sendfile_max_chunk. To protect disk from takeover by a single client it is necessary to apply sendfile_max_chunk as a limit regardless of configured limit_rate. See here for report (in Russian): http://mailman.nginx.org/pipermail/nginx-ru/2010-March/032806.html
2011-12-26Fixed throughput problems with large limit_rate.Maxim Dounin1-1/+1
Previous attempt to fix this was in r1658 (0.6.18), though that one wasn't enough (it was a noop).
2011-12-26Fixed mp4 if first entry in stsc was skipped (ticket #72).Maxim Dounin1-0/+2
If first entry in stsc atom was skipped, and seek was to chunk boundary, than first_chunk in the generated stsc table wasn't set to 1.
2011-12-25SSI: added regex captures support in the expression of the "if" command.Valentin Bartenev2-29/+148
2011-12-25Fixed limit_conn_log_level/limit_req_log_level inheritance.Valentin Bartenev2-2/+2
The directives did not work if there were no limit_conn/limit_req specified on the same level.
2011-12-25Added the HTTPS fastcgi_param to fastcgi.conf.Valentin Bartenev1-0/+1
2011-12-24Words duplications removed.Maxim Konovalov1-6/+6
2011-12-23Proxy: made proxy_pass with variables more consistent.Maxim Dounin1-6/+3
If proxy_pass was used with variables and there was no URI component, nginx always used unparsed URI. This isn't consistent with "no variables" case, where e.g. rewrites are applied even if there is no URI component. Fix is to use the same logic in both cases, i.e. only use unparsed URI if it's valid and request is the main one.