Permalink
Commits on Aug 28, 2010
Commits on Jun 19, 2010
  1. Security: nginx/Windows worker might be terminated abnormally if a re…

    …quested file name has invalid UTF-8 encoding.
    
    Change: now nginx allows to use spaces in a request line.
    
    Bugfix: the "proxy_redirect" directive changed incorrectly a backend "Refresh" response header line. Thanks to Andrey Andreew and Max Sogin.
    
    Bugfix: nginx did not support path without host name in "Destination" request header line.
    igorsysoev committed with Git Mirror Jun 15, 2010
  2. Security: now nginx/Windows ignores default file stream name. Thanks …

    …to Jose Antonio Vazquez Gonzalez.
    
    Feature: the ngx_http_uwsgi_module. Thanks to Roberto De Ioris.
    
    Feature: a "fastcgi_param" directive with value starting with "HTTP_" overrides a client request header line.
    
    Bugfix: the "If-Modified-Since", "If-Range", etc. client request header lines were passed to FastCGI-server while caching.
    
    Bugfix: listen unix domain socket could not be changed during reconfiguration. Thanks to Maxim Dounin.
    igorsysoev committed with Git Mirror Jun 7, 2010
  3. Bugfix: an inherited "alias" directive worked incorrectly in inclusiv…

    …e location.
    
    Bugfix: in "alias" with variables and "try_files" directives combination.
    
    Bugfix: listen unix domain and IPv6 sockets did not inherit while online upgrade. Thanks to Maxim Dounin.
    igorsysoev committed with Git Mirror May 31, 2010
Commits on May 24, 2010
  1. Feature: the "proxy_no_cache" and "fastcgi_no_cache" directives.

    Feature: now the "rewrite" directive does a redirect automatically if the $scheme variable is used. Thanks to Piotr Sikora.
    
    Bugfix: now "limit_req" delay directive conforms to the described algorithm. Thanks to Maxim Dounin.
    
    Bugfix: the $uid_got variable might not be used in the SSI and perl modules.
    igorsysoev committed with Git Mirror May 24, 2010
Commits on May 17, 2010
  1. Feature: the ngx_http_split_clients_module.

    Feature: the "map" directive supports keys more than 255 characters.
    
    Bugfix: nginx ignored the "private" and "no-store" values in the "Cache-Control" backend response header line.
    
    Bugfix: a "stub" parameter of an "include" SSI directive was not used, if empty response has 200 status code.
    
    Bugfix: if a proxied or FastCGI request was internally redirected to another proxied or FastCGI location, then a segmentation fault might occur in a worker process; the bug had appeared in 0.8.33. Thanks to Yichun Zhang.
    
    Bugfix: IMAP connections may hang until they timed out while talking to Zimbra server. Thanks to Alan Batie.
    igorsysoev committed with Git Mirror May 17, 2010
Commits on Apr 22, 2010
  1. Bugfix: the ngx_http_dav_module handled incorrectly the DELETE, COPY,…

    … and MOVE methods for symlinks.
    
    Bugfix: values of the $query_string, $arg_..., etc. variables cached in main request were used by the SSI module in subrequests.
    
    Bugfix: a variable value was repeatedly encoded after each an "echo" SSI-command output; the bug had appeared in 0.6.14.
    
    Bugfix: a worker process hung if a FIFO file was requested. Thanks to Vicente Aguilar and Maxim Dounin.
    
    Bugfix: OpenSSL-1.0.0 compatibility on 64-bit Linux. Thanks to Maxim Dounin.
    
    Bugfix: nginx could not be built --without-http-cache; the bug had appeared in 0.8.35.
    igorsysoev committed with Git Mirror Apr 22, 2010
Commits on Apr 1, 2010
  1. Change: now the charset filter runs before the SSI filter.

    Feature: the "chunked_transfer_encoding" directive.
    
    Bugfix: an "&" character was not escaped when it was copied in arguments part in a rewrite rule.
    
    Bugfix: nginx might be terminated abnormally while a signal processing or if the directive "timer_resolution" was used on platforms which do not support kqueue or eventport notification methods. Thanks to George Xie and Maxim Dounin.
    
    Bugfix: if temporary files and permanent storage area resided at different file systems, then permanent file modification times were incorrect. Thanks to Maxim Dounin.
    
    Bugfix: ngx_http_memcached_module might issue the error message "memcached sent invalid trailer". Thanks to Maxim Dounin.
    
    Bugfix: nginx could not built zlib-1.2.4 library using the library sources. Thanks to Maxim Dounin.
    
    Bugfix: a segmentation fault occurred in a worker process, if there was large stderr output before FastCGI response; the bug had appeared in 0.8.34. Thanks to Maxim Dounin.
    igorsysoev committed with Git Mirror Apr 1, 2010
Commits on Mar 3, 2010
  1. Bugfix: nginx did not support all ciphers and digests used in client …

    …certificates. Thanks to Innocenty Enikeew.
    
    Bugfix: nginx cached incorrectly FastCGI responses if there was large stderr output before response.
    
    Bugfix: nginx did not support HTTPS referrers.
    
    Bugfix: nginx/Windows might not find file if path in configuration was given in other character case; the bug had appeared in 0.8.33.
    
    Bugfix: the $date_local variable has an incorrect value, if the "%s" format was used. Thanks to Maxim Dounin.
    
    Bugfix: if ssl_session_cache was not set or was set to "none", then during client certificate verify the error "session id context uninitialized" might occur; the bug had appeared in 0.7.1.
    
    Bugfix: a geo range returned default value if the range included two or more /16 networks and did not begin at /16 network boundary.
    
    Bugfix: a block used in a "stub" parameter of an "include" SSI directive was output with "text/plain" MIME type.
    
    Bugfix: $r->sleep() did not work; the bug had appeared in 0.8.11.
    igorsysoev committed with Git Mirror Mar 3, 2010
Commits on Feb 1, 2010
  1. Security: now nginx/Windows ignores trailing spaces in URI. Thanks to…

    … Dan Crowley, Core Security Technologies.
    
    Security: now nginx/Windows ignores short files names. Thanks to Dan Crowley, Core Security Technologies.
    
    Change: now keepalive connections after POST requests are not disabled for MSIE 7.0+. Thanks to Adam Lounds.
    
    Workaround: now keepalive connections are disabled for Safari. Thanks to Joshua Sierles.
    
    Bugfix: if a proxied or FastCGI request was internally redirected to another proxied or FastCGI location, then $upstream_response_time variable may have abnormally large value; the bug had appeared in 0.8.7.
    
    Bugfix: a segmentation fault might occur in a worker process, while discarding a request body; the bug had appeared in 0.8.11.
    igorsysoev committed with Git Mirror Feb 1, 2010
Commits on Jan 11, 2010
  1. Bugfix: UTF-8 encoding usage in the ngx_http_autoindex_module. Thanks…

    … to Maxim Dounin.
    
    Bugfix: regular expression named captures worked for two names only. Thanks to Maxim Dounin.
    
    Bugfix: now the "localhost" name is used in the "Host" request header line, if an unix domain socket is defined in the "auth_http" directive. Thanks to Maxim Dounin.
    
    Bugfix: nginx did nor support chunked transfer encoding for 201 responses. Thanks to Julian Reich.
    
    Bugfix: if the "expires modified" set date in the past, the a negative number was set in the "Cache-Control" response header line. Thanks to Alex Kapranoff.
    igorsysoev committed with Git Mirror Jan 11, 2010
Commits on Dec 23, 2009
  1. Feature: now the "error_page" directive may redirect the 301 and 302 …

    …responses.
    
    Feature: the $geoip_city_continent_code, $geoip_latitude, and $geoip_longitude variables. Thanks to Arvind Sundararajan.
    
    Feature: now the ngx_http_image_filter_module deletes always EXIF and other application specific data if the data consume more than 5% of a JPEG file.
    
    Bugfix: nginx closed a connection if a cached response had an empty body. Thanks to Piotr Sikora.
    
    Bugfix: nginx might not be built by gcc 4.x if the -O2 or higher optimization option was used. Thanks to Maxim Dounin and Denis F. Latypoff.
    
    Bugfix: regular expressions in location were always tested in case-sensitive mode; the bug had appeared in 0.8.25.
    
    Bugfix: nginx cached a 304 response if there was the "If-None-Match" header line in a proxied request. Thanks to Tim Dettrick and David Kostal.
    
    Bugfix: nginx/Windows tried to delete a temporary file twice if the file should replace an already existent file.
    igorsysoev committed with Git Mirror Dec 23, 2009
Commits on Dec 15, 2009
  1. Change: now the default buffer size of the "large_client_header_buffe…

    …rs" directive is 8K. Thanks to Andrew Cholakian.
    
    Feature: the conf/fastcgi.conf for simple FastCGI configurations.
    
    Bugfix: nginx/Windows tried to rename a temporary file twice if the file should replace an already existent file.
    
    Bugfix: of "double free or corruption" error issued if host could not be resolved; the bug had appeared in 0.8.22. Thanks to Konstantin Svist.
    
    Bugfix: in libatomic usage on some platforms. Thanks to W-Mark Kubacki.
    igorsysoev committed with Git Mirror Dec 15, 2009
Commits on Nov 30, 2009
  1. Change: now the "009" status code is written to an access log for pro…

    …xied HTTP/0.9 responses.
    
    Feature: the "addition_types", "charset_types", "gzip_types", "ssi_types", "sub_filter_types", and "xslt_types" directives support an "*" parameter.
    
    Feature: GCC 4.1+ built-in atomic operations usage. Thanks to W-Mark Kubacki.
    
    Feature: the --with-libatomic[=DIR] option in the configure. Thanks to W-Mark Kubacki.
    
    Bugfix: listen unix domain socket had limited access rights.
    
    Bugfix: cached HTTP/0.9 responses were handled incorrectly.
    
    Bugfix: regular expression named captures given by "?P<...>" did not work in a "server_name" directive. Thanks to Maxim Dounin.
    igorsysoev committed with Git Mirror Nov 30, 2009
Commits on Nov 23, 2009
  1. Bugfix: nginx could not be built with the --without-pcre parameter; t…

    …he bug had appeared in 0.8.25.
    Git Mirror committed Nov 23, 2009
Commits on Nov 17, 2009
  1. Bugfix: regular expressions did not work in nginx/Windows; the bug ha…

    …d appeared in 0.8.25.
    Git Mirror committed Nov 17, 2009
Commits on Nov 16, 2009
  1. Bugfix: in captures usage in "rewrite" directive; the bug had appeare…

    …d in 0.8.25.
    
    Bugfix: nginx could not be built without the --with-debug option; the bug had appeared in 0.8.25.
    Git Mirror committed Nov 16, 2009
  2. Change: now no message is written in an error log if a variable is no…

    …t found by $r->variable() method.
    
    Feature: the ngx_http_degradation_module.
    
    Feature: regular expression named captures.
    
    Feature: now URI part is not required a "proxy_pass" directive if variables are used.
    
    Feature: now the "msie_padding" directive works for Chrome too.
    
    Bugfix: a segmentation fault occurred in a worker process on low memory condition; the bug had appeared in 0.8.18.
    
    Bugfix: nginx sent gzipped responses to clients those do not support gzip, if "gzip_static on" and "gzip_vary off"; the bug had appeared in 0.8.16.
    Git Mirror committed Nov 16, 2009
Commits on Nov 11, 2009
  1. Bugfix: nginx always added "Content-Encoding: gzip" response header l…

    …ine in 304 responses sent by ngx_http_gzip_static_module.
    
    Bugfix: nginx could not be built without the --with-debug option; the bug had appeared in 0.8.23.
    
    Bugfix: the "unix:" parameter of the "set_real_ip_from" directive inherited incorrectly from previous level.
    
    Bugfix: in resolving empty name.
    Git Mirror committed Nov 11, 2009
  2. Security: now SSL/TLS renegotiation is disabled. Thanks to Maxim Dounin.

    Bugfix: listen unix domain socket did not inherit while online upgrade.
    
    Bugfix: the "unix:" parameter of the "set_real_ip_from" directive did not without yet another directive with any IP address.
    
    Bugfix: segmentation fault and infinite looping in resolver.
    
    Bugfix: in resolver. Thanks to Artem Bokhan.
    Git Mirror committed Nov 11, 2009
Commits on Nov 3, 2009
  1. Feature: the "proxy_bind", "fastcgi_bind", and "memcached_bind" direc…

    …tives.
    
    Feature: the "access" and the "deny" directives support IPv6.
    
    Feature: the "set_real_ip_from" directive supports IPv6 addresses in request headers.
    
    Feature: the "unix:" parameter of the "set_real_ip_from" directive.
    
    Bugfix: nginx did not delete unix domain socket after configuration testing.
    
    Bugfix: nginx deleted unix domain socket while online upgrade.
    
    Bugfix: the "!-x" operator did not work. Thanks to Maxim Dounin.
    
    Bugfix: a segmentation fault might occur in a worker process, if limit_rate was used in HTTPS server. Thanks to Maxim Dounin.
    
    Bugfix: a segmentation fault might occur in a worker process while $limit_rate logging. Thanks to Maxim Dounin.
    
    Bugfix: a segmentation fault might occur in a worker process, if there was no "listen" directive in "server" block; the bug had appeared in 0.8.21.
    Git Mirror committed Nov 3, 2009
Commits on Oct 26, 2009
  1. Feature: now the "-V" switch shows TLS SNI support.

    Feature: the "listen" directive of the HTTP module supports unix domain sockets. Thanks to Hongli Lai.
    
    Feature: the "default_server" parameter of the "listen" directive.
    
    Feature: now a "default" parameter is not required to set listen socket options.
    
    Bugfix: nginx did not support dates in 2038 year on 32-bit platforms;
    
    Bugfix: socket leak; the bug had appeared in 0.8.11.
    Igor Sysoev committed with Git Mirror Oct 26, 2009
Commits on Oct 14, 2009
  1. Change: now default SSL ciphers are "HIGH:!ADH:!MD5".

    Bugfix: the ngx_http_autoindex_module did not show the trailing slash in links to a directory; the bug had appeared in 0.7.15.
    
    Bugfix: nginx did not close a log file set by the --error-log-path configuration option; the bug had appeared in 0.7.53.
    
    Bugfix: nginx did not treat a comma as separator in the "Cache-Control" backend response header line.
    
    Bugfix: nginx/Windows might not create temporary file, a cache file, or "proxy/fastcgi_store"d file if a worker has no enough access rights for top level directories.
    
    Bugfix: the "Set-Cookie" and "P3P" FastCGI response header lines were not hidden while caching if no "fastcgi_hide_header" directives were used with any parameters.
    
    Bugfix: nginx counted incorrectly disk cache size.
    Igor Sysoev committed with Git Mirror Oct 14, 2009
Commits on Oct 6, 2009
  1. Change: now SSLv2 protocol is disabled by default.

    Change: now default SSL ciphers are "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM".
    
    Bugfix: a "limit_req" directive did not work; the bug had appeared in 0.8.18.
    Igor Sysoev committed with Git Mirror Oct 6, 2009
  2. Feature: the "read_ahead" directive.

    Feature: now several "perl_modules" directive may be used.
    
    Feature: the "limit_req_log_level" and "limit_conn_log_level" directives.
    
    Bugfix: now "limit_req" directive conforms to the leaky bucket algorithm. Thanks to Maxim Dounin.
    
    Bugfix: nginx did not work on Linux/sparc. Thanks to Marcus Ramberg.
    
    Bugfix: nginx sent '\0' in a "Location" response header line on MKCOL request. Thanks to Xie Zhenye.
    
    Bugfix: zero status code was logged instead of 499 status code; the bug had appeared in 0.8.11.
    
    Bugfix: socket leak; the bug had appeared in 0.8.11.
    Igor Sysoev committed with Git Mirror Oct 6, 2009
Commits on Sep 28, 2009
  1. Security: now "/../" are disabled in "Destination" request header line.

    Change: now $host variable value is always low case.
    
    Feature: the $ssl_session_id variable.
    
    Bugfix: socket leak; the bug had appeared in 0.8.11.
    Igor Sysoev committed with Git Mirror Sep 28, 2009
Commits on Sep 22, 2009
  1. Feature: the "image_filter_transparency" directive.

    Bugfix: "addition_types" directive was incorrectly named "addtion_types".
    
    Bugfix: resolver cache poisoning. Thanks to Matthew Dempsky.
    
    Bugfix: memory leak in resolver. Thanks to Matthew Dempsky.
    
    Bugfix: invalid request line in $request variable was written in access_log only if error_log was set to "info" or "debug" level.
    
    Bugfix: in PNG alpha-channel support in the ngx_http_image_filter_module.
    
    Bugfix: nginx always added "Vary: Accept-Encoding" response header line, if both "gzip_static" and "gzip_vary" were on.
    
    Bugfix: in UTF-8 encoding support by "try_files" directive in nginx/Windows.
    
    Bugfix: in "post_action" directive usage; the bug had appeared in 0.8.11. Thanks to Igor Artemiev.
    Igor Sysoev committed with Git Mirror Sep 22, 2009
Commits on Sep 14, 2009
  1. Security: a segmentation fault might occur in worker process while sp…

    …ecially crafted request handling. Thanks to Chris Ries.
    
    Bugfix: if names .domain.tld, .sub.domain.tld, and .domain-some.tld were defined, then the name .sub.domain.tld was matched by .domain.tld.
    
    Bugfix: in transparency support in the ngx_http_image_filter_module.
    
    Bugfix: in file AIO.
    
    Bugfix: in X-Accel-Redirect usage; the bug had appeared in 0.8.11.
    
    Bugfix: in embedded perl module; the bug had appeared in 0.8.11.
    Igor Sysoev committed with Git Mirror Sep 14, 2009
Commits on Sep 7, 2009
  1. Bugfix: an expired cached response might stick in the "UPDATING" state.

    Bugfix: a segmentation fault might occur in worker process, if error_log was set to info or debug level. Thanks to Sergey Bochenkov.
    
    Bugfix: in embedded perl module; the bug had appeared in 0.8.11.
    
    Bugfix: an "error_page" directive did not redirect a 413 error; the bug had appeared in 0.6.10.
    Igor Sysoev committed with Git Mirror Sep 7, 2009
Commits on Aug 31, 2009
  1. Bugfix: in the "aio sendfile" directive; the bug had appeared in 0.8.12.

    Bugfix: nginx could not be built without the --with-file-aio option on FreeBSD; the bug had appeared in 0.8.12.
    Igor Sysoev committed with Git Mirror Aug 31, 2009
  2. Feature: the "sendfile" parameter in the "aio" directive on FreeBSD.

    Bugfix: in try_files; the bug had appeared in 0.8.11.
    
    Bugfix: in memcached; the bug had appeared in 0.8.11.
    Igor Sysoev committed with Git Mirror Aug 31, 2009
Commits on Aug 28, 2009
  1. Change: now directive "gzip_disable msie6" does not disable gzipping …

    …for MSIE 6.0 SV1.
    
    Feature: file AIO support on FreeBSD and Linux.
    
    Feature: the "directio_alignment" directive.
    Igor Sysoev committed with Git Mirror Aug 28, 2009
Commits on Aug 24, 2009
  1. Bugfix: memory leaks if GeoIP City database was used.

    Bugfix: in copying temporary files to permanent storage area; the bug had appeared in 0.8.9.
    Igor Sysoev committed with Git Mirror Aug 24, 2009
Commits on Aug 17, 2009
  1. Feature: now the start cache loader runs in a separate process; this …

    …should improve large caches handling.
    
    Feature: now temporary files and permanent storage area may reside at different file systems.
    Igor Sysoev committed with Git Mirror Aug 17, 2009
Commits on Aug 10, 2009
  1. Bugfix: in handling FastCGI headers split in records.

    Bugfix: a segmentation fault occurred in worker process, if a request was handled in two proxied or FastCGIed locations and a caching was enabled in the first location; the bug had appeared in 0.8.7.
    Igor Sysoev committed with Git Mirror Aug 10, 2009