The first public version
Changes with nginx 0.1.1                                         11 Oct 2004

    *) Feature: the gzip_types directive.

    *) Feature: the tcp_nodelay directive.

    *) Feature: the send_lowat directive is working not only on OSes that
       support kqueue NOTE_LOWAT, but also on OSes that support SO_SNDLOWAT.

    *) Feature: the setproctitle() emulation for Linux and Solaris.

    *) Bugfix: the "Location" header rewrite bug fixed while the proxing.

    *) Bugfix: the ngx_http_chunked_module module bug fixed that caused an
       endless loop.

    *) Bugfix: the /dev/poll module bugs fixed.

    *) Bugfix: the responses were corrupted when the temporary files were
       used while the proxing.

    *) Bugfix: the unescaped requests were passed to the backend.

    *) Bugfix: while the build configuration on Linux 2.4 the
       --with-poll_module parameter was required.
Prepare for auto/cc conversion to directory
Changes with nginx 0.1.2                                         21 Oct 2004

    *) Feature: the --user=USER, --group=GROUP, and --with-ld-opt=OPTIONS
       options in configure.

    *) Feature: the server_name directive supports *.domain.tld.

    *) Bugfix: the portability improvements.

    *) Bugfix: if configuration file was set in command line, the
       reconfiguration was impossible, bug appeared in 0.1.1.

    *) Bugfix: proxy module may get caught in an endless loop when sendfile
       is not used.

    *) Bugfix: with sendfile the response was not recoded according to the
       charset module directives, bug appeared in 0.1.1.

    *) Bugfix: very seldom bug in the kqueue processing.

    *) Bugfix: the gzip module compressed the proxied responses that was
       already compressed.
Changes with nginx 0.1.3                                         25 Oct 2004

    *) Feature: the ngx_http_autoindex_module and the autoindex directive.

    *) Feature: the proxy_set_x_url directive.

    *) Bugfix: proxy module may get caught in an endless loop when sendfile
       is not used.
Changes with nginx 0.1.4                                         26 Oct 2004

    *) Bugfix: in the ngx_http_autoindex_module.
Changes with nginx 0.1.5                                         11 Nov 2004

    *) Bugfix: on Solaris and Linux there may be too many "recvmsg() returned
       not enough data" alerts.

    *) Bugfix: there were the "writev() failed (22: Invalid argument)" errors
       on Solaris in proxy mode without sendfile. On other platforms that do
       not support sendfile at all the process got caught in an endless loop.

    *) Bugfix: segmentation fault on Solaris in proxy mode and using sendfile.

    *) Bugfix: segmentation fault on Solaris.

    *) Bugfix: on-line upgrade did not work on Linux.

    *) Bugfix: the ngx_http_autoindex_module module did not escape the
       spaces, the quotes, and the percent signs in the directory listing.

    *) Change: the decrease of the copy operations.

    *) Feature: the userid_p3p directive.
Changes with nginx 0.1.6                                         11 Nov 2004

    *) Bugfix: some location directive combiations with the regular
       expressions caused the wrong configuration choose.
Changes with nginx 0.1.7                                         12 Nov 2004

    *) Bugfix: on FreeBSD the segmentation fault may occure if the size of
       the transferred file was changed; bug appeared in 0.1.2.
Changes with nginx 0.1.8                                         20 Nov 2004

    *) Bugfix: in the ngx_http_autoindex_module if the long file names were
       in the listing.

    *) Feature: the "^~" modifier in the location directive.

    *) Feature: the proxy_max_temp_file_size directive.
Changes with nginx 0.1.9                                         25 Nov 2004

    *) Bugfix: the proxied request was sent without arguments if the request
       contains "//", "/./", "/../" or "%XX".

    *) Bugfix: the large compressed responses may be transferred not
       completely.

    *) Bugfix: the files bigger than 2G was not transferred on Linux that
       does not support sendfile64().

    *) Bugfix: while the build configuration on Linux the --with-poll_module
       parameter was required; bug appeared in 0.1.8.
Changes with nginx 0.1.10                                        26 Nov 2004

    *) Bugfix: if the request without arguments contains "//", "/./", "/../"
       or "%XX" then the lost character in the request line was lost; bug
       appeared in 0.1.9.

    *) Bugfix: the fix in 0.1.9 for the files bigger than 2G on Linux did not
       work.
Changes with nginx 0.1.11                                        02 Dec 2004

    *) Feature: the worker_priority directive.

    *) Change: both tcp_nopush and tcp_nodelay directives affect the
       transferred response.

    *) Bugfix: nginx did not call initgroups().
       Thanks to Andrew Sitnikov and Andrei Nigmatulin.

    *) Change: now the ngx_http_autoindex_module shows the file size in the
       bytes.

    *) Bugfix: the ngx_http_autoindex_module returned the 500 error if the
       broken symlink was in a directory.

    *) Bugfix: the files bigger than 4G could not be transferred using
       sendfile.

    *) Bugfix: if the backend was resolved to several backends and there was
       an error while the response waiting then process may got caught in an
       endless loop.

    *) Bugfix: the worker process may exit with the "unknown cycle" message
       when the /dev/poll method was used.

    *) Bugfix: "close() channel failed" errors.

    *) Bugfix: the autodetection of the nobody and nogroup groups.

    *) Bugfix: the send_lowat directive did not work on Linux.

    *) Bugfix: the segmentation fault occurred if there was no events section
       in configuration.

    *) Bugfix: nginx could not be built on OpenBSD.

    *) Bugfix: the double slashes in "://" in the URI were converted to ":/".
Changes with nginx 0.1.12                                        06 Dec 2004

    *) Feature: the %request_length log parameter.

    *) Bugfix: when using the /dev/poll, select and poll on the platforms,
       where these methods may do the false reports, there may be the long
       delay when the request was passed via the keep-alive connection. It
       may be at least on Solaris when using the /dev/poll.

    *) Bugfix: the send_lowat directive is ignored on Linux because Linux
       does not support the SO_SNDLOWAT option.
Changes with nginx 0.1.13                                        21 Dec 2004

    *) Feature: the server_names_hash and server_names_hash_threshold
       directives.

    *) Bugfix: the *.domain.tld names in the server_name directive did not
       work.

    *) Bugfix: the %request_length log parameter logged the incorrect length.
Changes with nginx 0.1.14                                        18 Jan 2005

    *) Feature: the autoconfiguration directives:
       --http-client-body-temp-path=PATH, --http-proxy-temp-path=PATH, and
       --http-fastcgi-temp-path=PATH

    *) Change: the directory name for the temporary files with the client
       request body is specified by directive client_body_temp_path, by
       default it is <prefix>/client_body_temp.

    *) Feature: the ngx_http_fastcgi_module and the directives: fastcgi_pass,
       fastcgi_root, fastcgi_index, fastcgi_params, fastcgi_connect_timeout,
       fastcgi_send_timeout, fastcgi_read_timeout, fastcgi_send_lowat,
       fastcgi_header_buffer_size, fastcgi_buffers,
       fastcgi_busy_buffers_size, fastcgi_temp_path,
       fastcgi_max_temp_file_size, fastcgi_temp_file_write_size,
       fastcgi_next_upstream, and fastcgi_x_powered_by.

    *) Bugfix: the "[alert] zero size buf" error; bug appeared in 0.1.3.

    *) Change: the URI must be specified after the host name in the
       proxy_pass directive.

    *) Change: the %3F symbol in the URI was considered as the argument
       string start.

    *) Feature: the unix domain sockets support in the ngx_http_proxy_module.

    *) Feature: the ssl_engine and ssl_ciphers directives.
       Thanks to Sergey Skvortsov for SSL-accelerator.
Changes with nginx 0.1.15                                        19 Jan 2005

    *) Bugfix: the error while the connecting to the FastCGI server caused
       segmentation fault.

    *) Bugfix: the correct handling of the regular exporession, that has
       different number of the captures and substitutions.

    *) Feature: the location, that is passed to the FastCGI server, can be
       regualar expression.

    *) Bugfix: the FastCGI's parameter REQUEST_URI is now passed with the
       arguments and in the original state.

    *) Bugfix: the ngx_http_rewrite_module module was required to be built to
       use the regular expressions in locations.

    *) Bugfix: the directive "proxy_preserve_host  on" adds port 80 to the
       "Host" headers, if upstream listen on port 80; bug appeared in 0.1.14.

    *) Bugfix: the same pathes in autoconfiguration paramters
       --http-client-body-temp-path=PATH and --http-proxy-temp-path=PATH, or
       --http-client-body-temp-path=PATH nad --http-fastcgi-temp-path=PATH
       caused segmentation fault.
Changes with nginx 0.1.16                                        25 Jan 2005

    *) Bugfix: if the response were transferred by chunks, then on the HEAD
       request the final chunk was issued.

    *) Bugfix: the "Connection: keep-alive" header were issued, even if the
       keepalive_timeout derective forbade the keep-alive use.

    *) Bugfix: the errors in the ngx_http_fastcgi_module caused the
       segmentation faults.

    *) Bugfix: the compressed response encrypted by SSL may not transferred
       complete.

    *) Bugfix: the TCP-specific TCP_NODELAY, TCP_NOPSUH, and TCP_CORK
       options, are not used for the unix domain sockets.

    *) Feature: the rewrite directive supports the agruments rewriting.

    *) Bugfix: the response code 400 was returend for the POST request with
       the "Content-Length: 0" header; bug appeared in 0.1.14.
Changes with nginx 0.1.17                                        03 Feb 2005

    *) Feature: the ngx_http_rewrite_module was rewritten from the scratch.
       Now it is possible to redirect, to return the error codes, to check
       the variables and referrers. The directives can be used inside
       locations. The redirect directive was canceled.

    *) Feature: the ngx_http_geo_module.

    *) Feature: the proxy_set_x_var and fastcgi_set_var directives.

    *) Bugfix: the location configuration with "=" modifier may be used in
       another location.

    *) Bugfix: the correct content type was set only for requests that use
       small caps letters in extension.

    *) Bugfix: if the proxy_pass or fastcgi_pass directives were set in the
       location, and access was denied, and the error was redirected to a
       static page, then the segmentation fault occurred.

    *) Bugfix: if in a proxied "Location" header was a relative URL, then a
       host name and a slash were added to them; bug appeared in 0.1.14.

    *) Bugfix: the system error message was not logged on Linux.
Changes with nginx 0.1.18                                        09 Feb 2005

    *) Workaround: the default values of the devpoll_events and the
       devpoll_changes directives changed from 512 to 32 to be compatible
       with Solaris 10.

    *) Bugfix: the proxy_set_x_var and fastcgi_set_var directives were not
       inherited.

    *) Bugfix: in the redirect rewrite directive the arguments were
       concatenated with URI by the "&" rather than the "?".

    *) Bugfix: the lines without trailing ";" in the file being included by
       the ngx_http_geo_module were silently ignored.

    *) Feature: the ngx_http_stub_status_module.

    *) Bugfix: the unknown log format in the access_log directive caused
       the segmentation fault.

    *) Feature: the new "document_root" parameter of the fastcgi_params
       directive.

    *) Feature: the fastcgi_redirect_errors directive.

    *) Feature: the new "break" modifier of the "rewrite" directive allows
       to stop the rewrite/location cycle and sets the current
       configuration to the request.