nginx 0.3.37
[nginx-catap.git] / CHANGES
blob2808a46ef67a78aeb3371cd9082a586141fce21e
2 Changes with nginx 0.3.37                                        07 Apr 2006
4     *) Feature: the "limit_except" directive.
6     *) Feature: the "if" directive supports the "!~", "!~*", "-f", and 
7        "!-f" operators.
9     *) Feature: the ngx_http_perl_module supports the $r->request_body 
10        method.
12     *) Bugfix: in the ngx_http_addition_filter_module.
15 Changes with nginx 0.3.36                                        05 Apr 2006
17     *) Feature: the ngx_http_addition_filter_module.
19     *) Feature: the "proxy_pass" and "fastcgi_pass" directives may be used 
20        inside the "if" block.
22     *) Feature: the "proxy_ignore_client_abort" and 
23        "fastcgi_ignore_client_abort" directives.
25     *) Feature: the "$request_completion" variable.
27     *) Feature: the ngx_http_perl_module supports the $r->request_method 
28        and $r->remote_addr.
30     *) Feature: the ngx_http_ssi_module supports the "elif" command.
32     *) Bugfix: the "\/" string in the expression of the "if" command of the 
33        ngx_http_ssi_module was treated incorrectly.
35     *) Bugfix: in the regular expressions in the "if" command of the 
36        ngx_http_ssi_module.
38     *) Bugfix: if the relative path was specified in the 
39        "client_body_temp_path", "proxy_temp_path", "fastcgi_temp_path", and 
40        "perl_modules" directives, then the directory was used relatively to 
41        a current path but not to a server prefix.
44 Changes with nginx 0.3.35                                        22 Mar 2006
46     *) Bugfix: the accept-filter and the TCP_DEFER_ACCEPT option were set 
47        for first "listen" directive only; bug appeared in 0.3.31.
49     *) Bugfix: in the "proxy_pass" directive without the URI part in a 
50        subrequest.
53 Changes with nginx 0.3.34                                        21 Mar 2006
55     *) Feature: the "add_header" directive supports the variables.
58 Changes with nginx 0.3.33                                        15 Mar 2006
60     *) Feature: the "http_503" parameter of the "proxy_next_upstream" or 
61        "fastcgi_next_upstream" directives.
63     *) Bugfix: ngx_http_perl_module did not work with inlined in the 
64        configuration code, if it was not started with the "sub" word.
66     *) Bugfix: in the "post_action" directive.
69 Changes with nginx 0.3.32                                        11 Mar 2006
71     *) Bugfix: the debug logging on startup and reconfiguration time was 
72        removed; bug appeared in 0.3.31.
75 Changes with nginx 0.3.31                                        10 Mar 2006
77     *) Change: now nginx passes the malformed proxied backend responses.
79     *) Feature: the "listen" directives support the address in the "*:port" 
80        form.
82     *) Feature: the EVFILER_TIMER support in MacOSX 10.4.
84     *) Workaround: for MacOSX 64-bit kernel kqueue millisecond timeout bug. 
85        Thanks Andrei Nigmatulin.
87     *) Bugfix: if there were several "listen" directives listening one 
88        various addresses inside one server, then server names like 
89        "*.domain.tld" worked for first address only; bug appeared in 0.3.18.
91     *) Bugfix: if the HTTP protocol was used in the "proxy_pass" directive 
92        and the request body was in temporarily file then the request was 
93        not transferred.
95     *) Bugfix: perl 5.8.8 compatibility.
98 Changes with nginx 0.3.30                                        22 Feb 2006
100     *) Change: the ECONNABORTED error log level was changed to "error" from 
101        "crit".
103     *) Bugfix: the ngx_http_perl_module could not be build without the 
104        ngx_http_ssi_filter_module.
106     *) Bugfix: nginx could not be built on i386 platform, if the PIC was 
107        used; bug appeared in 0.3.27.
110 Changes with nginx 0.3.29                                        20 Feb 2006
112     *) Feature: now nginx uses less memory, if PHP in FastCGI mode sends 
113        many warnings before the response.
115     *) Bugfix: the "Transfer-Encoding: chunked" header line was issued in 
116        the 204 responses for the HTTP/1.1 requests.
118     *) Bugfix: nginx returned the 502 response, if the complete response 
119        header lines were transferred in a separate FastCGI records.
121     *) Bugfix: if the proxied URI was specified in the "post_action" 
122        directive, then it ran only after a successful completion of a 
123        request.
126 Changes with nginx 0.3.28                                        16 Feb 2006
128     *) Feature: the "restrict_host_names" directive is canceled.
130     *) Feature: the --with-cpu-opt=ppc64 configuration parameter.
132     *) Bugfix: on some condition the proxied connection with a client was 
133        terminated prematurely. Thanks to Vladimir Shutoff.
135     *) Bugfix: the "X-Accel-Limit-Rate" header line was not taken into 
136        account if the request was redirected using the "X-Accel-Redirect" 
137        header line.
139     *) Bugfix: the "post_action" directive ran only after a successful 
140        completion of a request.
142     *) Bugfix: the proxied response body generated by the "post_action" 
143        directive was transferred to a client.
146 Changes with nginx 0.3.27                                        08 Feb 2006
148     *) Change: the "variables_hash_max_size" and 
149        "variables_hash_bucket_size" directives.
151     *) Feature: the $body_bytes_sent variable can be used not only in the 
152        "log_format" directive.
154     *) Feature: the $ssl_protocol and $ssl_cipher variables.
156     *) Feature: the cache line size detection for widespread CPUs at start 
157        time.
159     *) Feature: now the "accept_mutex" directive is supported using 
160        fcntl(2) on platforms different from i386, amd64, sparc64, and ppc.
162     *) Feature: the "lock_file" directive and the --with-lock-path=PATH 
163        autoconfiguration directive.
165     *) Bugfix: if the HTTP protocol was used in the "proxy_pass" directive 
166        then the requests with the body was not transferred.
169 Changes with nginx 0.3.26                                        03 Feb 2006
171     *) Change: the "optimize_host_names" directive was renamed to the 
172        "optimize_server_names".
174     *) Bugfix: if in the "proxy_pass" directive was no the URI part, then 
175        the main request URI was transferred to a backend while proxying the 
176        SSI subrequest.
179 Changes with nginx 0.3.25                                        01 Feb 2006
181     *) Bugfix: the segmentation fault was occurred on start or while 
182        reconfiguration if there was invalid configuration; bug appeared in 
183        0.3.24.
186 Changes with nginx 0.3.24                                        01 Feb 2006
188     *) Workaround: for bug in FreeBSD kqueue.
190     *) Bugfix: now a response generated by the "post_action" directive is 
191        not transferred to a client.
193     *) Bugfix: the memory leaks were occurring if many log files were used.
195     *) Bugfix: the first "proxy_redirect" directive was working inside one 
196        location.
198     *) Bugfix: on 64-bit platforms segmentation fault may occurred on start 
199        if the many names were used in the "server_name" directives; bug 
200        appeared in 0.3.18.
203 Changes with nginx 0.3.23                                        24 Jan 2006
205     *) Feature: the "optimize_host_names" directive.
207     *) Bugfix: in using of the variables in the "path" and "alias" 
208        directives.
210     *) Bugfix: the ngx_http_perl_module was incorrectly built on Linux and 
211        Solaris.
214 Changes with nginx 0.3.22                                        17 Jan 2006
216     *) Feature: the ngx_http_perl_module supports the $r->args and 
217        $r->unescape methods.
219     *) Feature: the method $r->query_string of ngx_http_perl_module is 
220        canceled.
222     *) Bugfix: segmentation fault was occurred if the "none" or "blocked" 
223        values was specified in the "valid_referers" directive; bug appeared 
224        in 0.3.18.
227 Changes with nginx 0.3.21                                        16 Jan 2006
229     *) Feature: the ngx_http_perl_module.
231     *) Change: the "valid_referers" directive allows the referreres without 
232        URI part.
235 Changes with nginx 0.3.20                                        11 Jan 2006
237     *) Bugfix: in SSI handling.
239     *) Bugfix: the ngx_http_memcached_module did not support the keys in 
240        the "/usr?args" form.
243 Changes with nginx 0.3.19                                        28 Dec 2005
245     *) Feature: the "path" and "alias" directives support the variables.
247     *) Change: now the "valid_referers" directive again checks the URI part.
249     *) Bugfix: in SSI handling.
252 Changes with nginx 0.3.18                                        26 Dec 2005
254     *) Feature: the "server_names" directive supports the ".domain.tld" 
255        names.
257     *) Feature: the "server_names" directive uses the hash for the 
258        "*.domain.tld" names and more effective hash for usual names.
260     *) Change: the "server_names_hash_max_size" and 
261        "server_names_hash_bucket_size" directives.
263     *) Change: the "server_names_hash" and "server_names_hash_threshold" 
264        directives were canceled.
266     *) Feature: the "valid_referers" directive uses the hash site names.
268     *) Change: now the "valid_referers" directive checks the site names 
269        only without the URI part.
271     *) Bugfix: some ".domain.tld" names incorrectly processed by the 
272        ngx_http_map_module.
274     *) Bugfix: segmentation fault was occurred if configuration file did 
275        not exist; bug appeared in 0.3.12.
277     *) Bugfix: on 64-bit platforms segmentation fault may occurred on 
278        start; bug appeared in 0.3.16.
281 Changes with nginx 0.3.17                                        18 Dec 2005
283     *) Change: now on Linux configure checks the presence of epoll and 
284        sendfile64() in kernel.
286     *) Feature: the "map" directive supports domain names in the 
287        ".domain.tld" form.
289     *) Bugfix: the timeouts were not used in SSL handshake; bug appeared in 
290        0.2.4.
292     *) Bugfix: in the HTTP protocol in the "proxy_pass" directive.
294     *) Bugfix: when the HTTP protocol was used in the "proxy_pass" 
295        directive the port 80 was used by default.
298 Changes with nginx 0.3.16                                        16 Dec 2005
300     *) Feature: the ngx_http_map_module.
302     *) Feature: the "types_hash_max_size" and "types_hash_bucket_size" 
303        directives.
305     *) Feature: the "ssi_value_length" directive.
307     *) Feature: the "worker_rlimit_core" directive.
309     *) Workaround: the connection number in logs was always 1 if nginx was 
310        built by the icc 8.1 or 9.0 compilers with optimization for 
311        Pentium 4.
313     *) Bugfix: the "config timefmt" SSI command set incorrect time format.
315     *) Bugfix: nginx did not close connection to IMAP/POP3 backend for the 
316        SSL connections. Thanks to Rob Mueller. Bug appeared in 0.3.13.
318     *) Bugfix: segmentation fault may occurred in at SSL shutdown; bug 
319        appeared in 0.3.13.
322 Changes with nginx 0.3.15                                        07 Dec 2005
324     *) Feature: the new 444 code of the "return" directive to close 
325        connection.
327     *) Feature: the "so_keepalive" directive in IMAP/POP3 proxy.
329     *) Bugfix: if there are unclosed connection nginx now calls abort() 
330        only on gracefull quit and active "debug_points" directive.
333 Changes with nginx 0.3.14                                        05 Dec 2005
335     *) Bugfix: in the 304 response the body was transferred; bug appeared 
336        in 0.3.13.
339 Changes with nginx 0.3.13                                        05 Dec 2005
341     *) Feature: the IMAP/POP3 proxy supports STARTTLS and STLS.
343     *) Bugfix: the IMAP/POP3 proxy did not work with the select, poll, and 
344        /dev/poll methods.
346     *) Bugfix: in SSI handling.
348     *) Bugfix: now Solaris sendfilev() is not used to transfer the client 
349        request body to FastCGI-server via the unix domain socket.
351     *) Bugfix: the "auth_basic" directive did not disable the 
352        authorization; bug appeared in 0.3.11.
355 Changes with nginx 0.3.12                                        26 Nov 2005
357     *) Security: if nginx was built with the ngx_http_realip_module and the 
358        "satisfy_any on" directive was used, then access and authorization 
359        directives did not work. The ngx_http_realip_module was not built 
360        and is not built by default.
362     *) Change: the "$time_gmt" variable name was changed to "$time_local".
364     *) Change: the "proxy_header_buffer_size" and 
365        "fastcgi_header_buffer_size" directives was renamed to the 
366        "proxy_buffer_size" and "fastcgi_buffer_size" directives.
368     *) Feature: the ngx_http_memcached_module.
370     *) Feature: the "proxy_buffering" directive.
372     *) Bugfix: the changes in accept mutex handling when the "rtsig" method 
373        was used; bug appeared in 0.3.0.
375     *) Bugfix: if the client sent the "Transfer-Encoding: chunked" header 
376        line, then nginx returns the 411 error.
378     *) Bugfix: if the "auth_basic" directive was inherited from the http 
379        level, then the realm in the "WWW-Authenticate" header line was 
380        without the "Basic realm" text.
382     *) Bugfix: if the "combined" format was explicitly specified in the 
383        "access_log" directive, then the empty lines was written to the log; 
384        bug appeared in 0.3.8.
386     *) Bugfix: nginx did not run on the sparc platform under any OS except 
387        Solaris.
389     *) Bugfix: now it is not necessary to place space between the quoted 
390        string and closing bracket in the "if" directive.
393 Changes with nginx 0.3.11                                        15 Nov 2005
395     *) Bugfix: nginx did not pass the client request headers and body while 
396        proxying; bug appeared in 0.3.10.
399 Changes with nginx 0.3.10                                        15 Nov 2005
401     *) Change: the "valid_referers" directive and the "$invalid_referer" 
402        variable were moved to the new ngx_http_referer_module from the 
403        ngx_http_rewrite_module.
405     *) Change: the "$apache_bytes_sent" variable name was changed to 
406        "$body_bytes_sent".
408     *) Feature: the "$sent_http_..." variables.
410     *) Feature: the "if" directive supports the "=" and "!=" operations.
412     *) Feature: the "proxy_pass" directive supports the HTTPS protocol.
414     *) Feature: the "proxy_set_body" directive.
416     *) Feature: the "post_action" directive.
418     *) Feature: the ngx_http_empty_gif_module.
420     *) Feature: the "worker_cpu_affinity" directive for Linux.
422     *) Bugfix: the "rewrite" directive did not unescape URI part in 
423        redirect, now it is unescaped except the %00-%25 and %7F-%FF 
424        characters.
426     *) Bugfix: nginx could not be built by the icc 9.0 compiler.
428     *) Bugfix: if the SSI was enabled for zero size static file, then the 
429        chunked response was encoded incorrectly.
432 Changes with nginx 0.3.9                                         10 Nov 2005
434     *) Bugfix: nginx considered URI as unsafe if two any symbols was 
435        between two slashes; bug appeared in 0.3.8.
438 Changes with nginx 0.3.8                                         09 Nov 2005
440     *) Security: nginx now checks URI got from a backend in 
441        "X-Accel-Redirect" header line or in SSI file for the "/../" paths 
442        and zeroes.
444     *) Change: nginx now does not treat the empty user name in the 
445        "Authorization" header line as valid one.
447     *) Feature: the "ssl_session_timeout" directives of the 
448        ngx_http_ssl_module and ngx_imap_ssl_module.
450     *) Feature: the "auth_http_header" directive of the 
451        ngx_imap_auth_http_module.
453     *) Feature: the "add_header" directive.
455     *) Feature: the ngx_http_realip_module.
457     *) Feature: the new variables to use in the "log_format" directive: 
458        $bytes_sent, $apache_bytes_sent, $status, $time_gmt, $uri, 
459        $request_time, $request_length, $upstream_status, 
460        $upstream_response_time, $gzip_ratio, $uid_got, $uid_set, 
461        $connection, $pipe, and $msec. The parameters in the "%name" form 
462        will be canceled soon.
464     *) Change: now the false variable values in the "if" directive are the 
465        empty string "" and string starting with "0".
467     *) Bugfix: while using proxied or FastCGI-server nginx may leave 
468        connections and temporary files with client requests in open state.
470     *) Bugfix: the worker processes did not flush the buffered logs on 
471        graceful exit.
473     *) Bugfix: if the request URI was changes by the "rewrite" directive 
474        and the request was proxied in location given by regular expression, 
475        then the incorrect request was transferred to backend; bug appeared 
476        in 0.2.6.
478     *) Bugfix: the "expires" directive did not remove the previous 
479        "Expires" header.
481     *) Bugfix: nginx may stop to accept requests if the "rtsig" method and 
482        several worker processes were used.
484     *) Bugfix: the "\"" and "\'" escape symbols were incorrectly handled in 
485        SSI commands.
487     *) Bugfix: if the response was ended just after the SSI command and 
488        gzipping was used, then the response did not transferred complete or 
489        did not transferred at all.
492 Changes with nginx 0.3.7                                         27 Oct 2005
494     *) Feature: the "access_log" supports the "buffer=" parameter.
496     *) Bugfix: nginx could not be built on platforms different from i386, 
497        amd64, sparc Ã‰ ppc; bug appeared in 0.3.2.
500 Changes with nginx 0.3.6                                         24 Oct 2005
502     *) Change: now the IMAP/POP3 proxy do not send the empty login to 
503        authorization server.
505     *) Feature: the "log_format" supports the variables in the $name form.
507     *) Bugfix: if at least in one server was no the "listen" directive, 
508        then nginx did not listen on the 80 port; bug appeared in 0.3.3.
510     *) Bugfix: if the URI part is omitted in "proxy_pass" directive, the 
511        the 80 port was always used.
514 Changes with nginx 0.3.5                                         21 Oct 2005
516     *) Bugfix: the segmentation fault may occurred if the IMAP/POP3 login 
517        was changed by authorization server; bug appeared in 0.2.2.
519     *) Bugfix: the accept mutex did not work and all connections were 
520        handled by one process; bug appeared in 0.3.3.
522     *) Bugfix: the timeout did not work if the "rtsig" method and the 
523        "timer_resolution" directive were used.
526 Changes with nginx 0.3.4                                         19 Oct 2005
528     *) Bugfix: nginx could not be built on Linux 2.4+ and MacOS X; bug 
529        appeared in 0.3.3.
532 Changes with nginx 0.3.3                                         19 Oct 2005
534     *) Change: the "bl" and "af" parameters of the "listen" directive was 
535        renamed to the "backlog" and "accept_filter".
537     *) Feature: the "rcvbuf" and "sndbuf" parameters of the "listen" 
538        directive.
540     *) Change: the "$msec" log parameter does not require now the 
541        additional the gettimeofday() system call.
543     *) Feature: the -t switch now tests the "listen" directives.
545     *) Bugfix: if the invalid address was specified in the "listen" 
546        directive, then after the -HUP signal nginx left an open socket in 
547        the CLOSED state.
549     *) Bugfix: the mime type may be incorrectly set to default value for 
550        index file with variable in the name; bug appeared in 0.3.0.
552     *) Feature: the "timer_resolution" directive.
554     *) Feature: the millisecond "$upstream_response_time" log parameter.
556     *) Bugfix: a temporary file with client request body now is removed 
557        just after the response header was transferred to a client.
559     *) Bugfix: OpenSSL 0.9.6 compatibility.
561     *) Bugfix: the SSL certificate and key file paths could not be relative.
563     *) Bugfix: the "ssl_prefer_server_ciphers" directive did not work in 
564        the ngx_imap_ssl_module.
566     *) Bugfix: the "ssl_protocols" directive allowed to specify the single 
567        protocol only.
570 Changes with nginx 0.3.2                                         12 Oct 2005
572     *) Feature: the Sun Studio 10 C compiler support.
574     *) Feature: the "proxy_upstream_max_fails", 
575        "proxy_upstream_fail_timeout", "fastcgi_upstream_max_fails", and 
576        "fastcgi_upstream_fail_timeout" directives.
579 Changes with nginx 0.3.1                                         10 Oct 2005
581     *) Bugfix: the segmentation fault occurred when the signal queue 
582        overflowed if the "rtsig" method was used; bug appeared in 0.2.0.
584     *) Change: correct handling of the "\\", "\"", "\'", and "\$" pairs in 
585        SSI.
588 Changes with nginx 0.3.0                                         07 Oct 2005
590     *) Change: the 10-days live time limit of worker process was 
591        eliminated. The limit was introduced because of millisecond timers 
592        overflow.
595 Changes with nginx 0.2.6                                         05 Oct 2005
597     *) Change: while using load-balancing the time before the failed 
598        backend retry was decreased from 60 to 10 seconds.
600     *) Change: the "proxy_pass_unparsed_uri" was canceled, the original URI 
601        now passed, if the URI part is omitted in "proxy_pass" directive.
603     *) Feature: the "error_page" directive supports redirects and allows 
604        more flexible to change an error code.
606     *) Change: the charset in the "Content-Type" header line now is ignored 
607        in proxied subrequests.
609     *) Bugfix: if the URI was changed in the "if" block and request did not 
610        found new configuration, then the ngx_http_rewrite_module rules ran 
611        again.
613     *) Bugfix: if the "set" directive set the ngx_http_geo_module variable 
614        in some configuration part, the this variable was not available in 
615        other configuration parts and the "using uninitialized variable" 
616        error was occurred; bug appeared in 0.2.2.
619 Changes with nginx 0.2.5                                         04 Oct 2005
621     *) Change: the duplicate value of the ngx_http_geo_module variable now 
622        causes the warning and changes old value.
624     *) Feature: the ngx_http_ssi_module supports the "set" command.
626     *) Feature: the ngx_http_ssi_module supports the "file" parameter in 
627        the "include" command.
629     *) Feature: the ngx_http_ssi_module supports the variable value 
630        substitutions in expressions of the "if" command.
633 Changes with nginx 0.2.4                                         03 Oct 2005
635     *) Feature: the ngx_http_ssi_module supports "$var=text", "$var!=text", 
636        "$var=/text/", and "$var!=/text/" expressions in the "if" command.
638     *) Bugfix: in proxying location without trailing slash; bug appeared in 
639        0.1.44.
641     *) Bugfix: the segmentation fault may occurred if the "rtsig" method 
642        was used; bug appeared in 0.2.0.
645 Changes with nginx 0.2.3                                         30 Sep 2005
647     *) Bugfix: nginx could not be built without the --with-debug option; 
648        bug appeared in 0.2.2.
651 Changes with nginx 0.2.2                                         30 Sep 2005
653     *) Feature: the "config errmsg" command of the ngx_http_ssi_module.
655     *) Change: the ngx_http_geo_module variables can be overridden by the 
656        "set" directive.
658     *) Feature: the "ssl_protocols" and "ssl_prefer_server_ciphers" 
659        directives of the ngx_http_ssl_module and ngx_imap_ssl_module.
661     *) Bugfix: the ngx_http_autoindex_module did not show correctly the 
662        long file names;
664     *) Bugfix: the ngx_http_autoindex_module now do not show the files 
665        starting by dot.
667     *) Bugfix: if the SSL handshake failed then another connection may be 
668        closed too. Thanks to Rob Mueller.
670     *) Bugfix: the export versions of MSIE 5.x could not connect via HTTPS.
673 Changes with nginx 0.2.1                                         23 Sep 2005
675     *) Bugfix: if all backend using in load-balancing failed after one 
676        error, then nginx may got caught in an endless loop; bug appeared in 
677        0.2.0.
680 Changes with nginx 0.2.0                                         23 Sep 2005
682     *) The pid-file names used during online upgrade was changed and now is 
683        not required a manual rename operation. The old master process adds 
684        the ".oldbin" suffix to its pid-file and executes a new binary file. 
685        The new master process creates usual pid-file without the ".newbin" 
686        suffix. If the master process exits, then old master process renames 
687        back its pid-file with the ".oldbin" suffix to the pid-file without 
688        suffix.
690     *) Change: the "worker_connections" directive, new name of the 
691        "connections" directive; now the directive specifies maximum number 
692        of connections, but not maximum socket descriptor number.
694     *) Feature: SSL supports the session cache inside one worker process.
696     *) Feature: the "satisfy_any" directive.
698     *) Change: the ngx_http_access_module and ngx_http_auth_basic_module do 
699        not run for subrequests.
701     *) Feature: the "worker_rlimit_nofile" and "worker_rlimit_sigpending" 
702        directives.
704     *) Bugfix: if all backend using in load-balancing failed after one 
705        error, then nginx did not try do connect to them during 60 seconds.
707     *) Bugfix: in IMAP/POP3 command argument parsing. Thanks to Rob Mueller.
709     *) Bugfix: errors while using SSL in IMAP/POP3 proxy.
711     *) Bugfix: errors while using SSI and gzipping.
713     *) Bugfix: the "Expires" and "Cache-Control" header lines were omitted 
714        from the 304 responses. Thanks to Alexandr Kukushkin.
717 Changes with nginx 0.1.45                                        08 Sep 2005
719     *) Change: the "ssl_engine" directive is canceled in the 
720        ngx_http_ssl_module and now is introduced at global level.
722     *) Bugfix: the responses with SSI subrequests did not transferred via 
723        SSL connection.
725     *) Various bug fixes in the IMAP/POP3 proxy.
728 Changes with nginx 0.1.44                                        06 Sep 2005
730     *) Feature: the IMAP/POP3 proxy supports SSL.
732     *) Feature: the "proxy_timeout" directive of the ngx_imap_proxy_module.
734     *) Feature: the "userid_mark" directive.
736     *) Feature: the $remote_user variable value is determined independently 
737        of authorization use.
740 Changes with nginx 0.1.43                                        30 Aug 2005
742     *) Feature: the listen(2) backlog in the "listen" directive can be 
743        changed using the -HUP signal.
745     *) Feature: the geo2nginx.pl script was added to contrib.
747     *) Change: the FastCGI parameters with the empty values now are passed 
748        to a server.
750     *) Bugfix: the segmentation fault occurred or the worker process may 
751        got caught in an endless loop if the proxied or FastCGI server sent 
752        the "Cache-Control" header line and the "expires" directive was 
753        used; in the proxied mode the bug appeared in 0.1.29.
756 Changes with nginx 0.1.42                                        23 Aug 2005
758     *) Bugfix: if the request URI had a zero length after the processing in 
759        the ngx_http_proxy_module, then the segmentation fault or bus error 
760        occurred in the ngx_http_proxy_module.
762     *) Bugfix: the "limit_rate" directive did not work inside the "if" 
763        block; bug appeared in 0.1.38.
766 Changes with nginx 0.1.41                                        25 Jul 2005
768     *) Bugfix: if the variable was used in the configuration file, then it 
769        can not be used in SSI.
772 Changes with nginx 0.1.40                                        22 Jul 2005
774     *) Bugfix: if a client sent too long header line, then the request 
775        information did not logged in the error log.
777     *) Bugfix: the "Set-Cookie" header line was not transferred when the 
778        "X-Accel-Redirect" was used; bug appeared in 0.1.39.
780     *) Bugfix: the "Content-Disposition" header line was not transferred 
781        when the "X-Accel-Redirect" was used.
783     *) Bugfix: the master process did not close the listen socket on the 
784        SIGQUIT signal.
786     *) Bugfix: after on-line upgrade on Linux and Solaris the process name 
787        became shorter in the "ps" command.
790 Changes with nginx 0.1.39                                        14 Jul 2005
792     *) The changes in the ngx_http_charset_module: the "default_charset" 
793        directive is canceled; the "charset" directive sets the response 
794        charset; the "source_charset" directive sets the source charset only.
796     *) Bugfix: the backend "WWW-Authenticate" header line did not 
797        transferred while the 401 response code redirecting.
799     *) Bugfix: the ngx_http_proxy_module and ngx_http_fastcgi_module may 
800        close a connection before anything was transferred to a client; bug 
801        appeared in 0.1.38.
803     *) Workaround: the Linux glibc crypt_r() initialization bug.
805     *) Bugfix: the ngx_http_ssi_module did not support the relative URI in 
806        the "include virtual" command.
808     *) Bugfix: if the backend response had the "Location" header line and 
809        nginx should not rewrite this line, then the 500 code response body 
810        was transferred; bug appeared in 0.1.29.
812     *) Bugfix: some directives of the ngx_http_proxy_module and 
813        ngx_http_fastcgi_module were not inherited from the server to the 
814        location level; bug appeared in 0.1.29.
816     *) Bugfix: the ngx_http_ssl_module did not support the certificate 
817        chain.
819     *) Bugfix: the ngx_http_autoindex_module did not show correctly the 
820        long file names; bug appeared in 0.1.38.
822     *) Bugfixes in IMAP/POP3 proxy in interaction with a backend at the 
823        login state.
826 Changes with nginx 0.1.38                                        08 Jul 2005
828     *) Feature: the "limit_rate" directive is supported in in proxy and 
829        FastCGI mode.
831     *) Feature: the "X-Accel-Limit-Rate" response header line is supported 
832        in proxy and FastCGI mode.
834     *) Feature: the "break" directive.
836     *) Feature: the "log_not_found" directive.
838     *) Bugfix: the response status code was not changed when request was 
839        redirected by the ""X-Accel-Redirect" header line.
841     *) Bugfix: the variables set by the "set" directive could not be used 
842        in SSI.
844     *) Bugfix: the segmentation fault may occurred if the SSI page has more 
845        than one remote subrequest.
847     *) Bugfix: nginx treated the backend response as invalid if the status 
848        line in the header was transferred in two packets; bug appeared in 
849        0.1.29.
851     *) Feature: the "ssi_types" directive.
853     *) Feature: the "autoindex_exact_size" directive.
855     *) Bugfix: the ngx_http_autoindex_module did not support the long file 
856        names in UTF-8.
858     *) Feature: the IMAP/POP3 proxy.
861 Changes with nginx 0.1.37                                        23 Jun 2005
863     *) Change: now the "\n" is added to the end of the "nginx.pid" file.
865     *) Bugfix: the responses may be transferred not completely, if many 
866        parts or the big parts were included by SSI.
868     *) Bugfix: if all backends had returned the 404 reponse and the 
869        "http_404" parameter of the "proxy_next_upstream" or 
870        "fastcgi_next_upstream" directives was used, then nginx started to 
871        request all backends again.
874 Changes with nginx 0.1.36                                        15 Jun 2005
876     *) Change: if the request header has duplicate the "Host", 
877        "Connection", "Content-Length", or "Authorization" lines, then nginx 
878        now returns the 400 error.
880     *) Change: the "post_accept_timeout" directive was canceled.
882     *) Feature: the "default", "af=", "bl=", "deferred", and "bind" 
883        parameters of the "listen" directive.
885     *) Feature: the FreeBSD accept filters support.
887     *) Feature: the Linux TCP_DEFER_ACCEPT support.
889     *) Bugfix: the ngx_http_autoindex_module did not support the file names 
890        in UTF-8.
892     *) Bugfix: the new log file can be rotated by the -USR1 signal only if 
893        the reconfiguration by the -HUP signal was made twice.
896 Changes with nginx 0.1.35                                        07 Jun 2005
898     *) Feature: the "working_directory" directive.
900     *) Feature: the "port_in_redirect" directive.
902     *) Bugfix: the segmentation fault was occurred if the backend response 
903        header was in several packets; bug appeared in 0.1.29.
905     *) Bugfix: if more than 10 servers were configured or some server did 
906        not use the "listen" directive, then the segmentation fault was 
907        occurred on the start.
909     *) Bugfix: the segmentation fault might occur if the response was 
910        bigger than the temporary file.
912     *) Bugfix: nginx returned the 400 response on requests like 
913        "GET http://www.domain.com/uri HTTP/1.0"; bug appeared in 0.1.28.
916 Changes with nginx 0.1.34                                        26 May 2005
918     *) Bugfix: the worker process may got caught in an endless loop if the 
919        big response part were include by SSI.
921     *) Bugfix: the variables set by the "set" directive were not available 
922        in SSI.
924     *) Feature: the "autoindex_localtime" directive.
926     *) Bugfix: the empty value of the "proxy_set_header" directive forbids 
927        the client request header line passing.
930 Changes with nginx 0.1.33                                        23 May 2005
932     *) Bugfix: nginx could not be built with the --without-pcre parameter; 
933        bug appeared in 0.1.29.
935     *) Bugfix: 3, 4, 7, and 8 the "proxy_set_header" directives in one 
936        level cause the bus fault on start up.
938     *) Bugfix: the HTTP protocol was specified in the HTTPS redirects.
940     *) Bugfix: if the "rewrite" directive used the captures inside the "if" 
941        directive, then the 500 error code was returned.
944 Changes with nginx 0.1.32                                        19 May 2005
946     *) Bugfix: the arguments were omitted in the redirects, issued by the 
947        "rewrite" directive; bug appeared in 0.1.29.
949     *) Feature: the "if" directive supports the captures in regular 
950        expressions.
952     *) Feature: the "set" directive supports the variables and the captures 
953        of regular expressions.
955     *) Feature: the "X-Accel-Redirect" response header line is supported in 
956        proxy and FastCGI mode.
959 Changes with nginx 0.1.31                                        16 May 2005
961     *) Bugfix: the response encrypted by SSL may not transferred complete.
963     *) Bugfix: errors while processing FastCGI response by SSI.
965     *) Bugfix: errors while using SSI and gzipping.
967     *) Bugfix: the redirect with the 301 code was transferred without 
968        response body; bug appeared in 0.1.30.
971 Changes with nginx 0.1.30                                        14 May 2005
973     *) Bugfix: the worker process may got caught in an endless loop if the 
974        SSI was used.
976     *) Bugfix: the response encrypted by SSL may not transferred complete.
978     *) Bugfix: if the length of the response part received at once from 
979        proxied or FastCGI server was equal to 500, then nginx returns the 
980        500 response code; in proxy mode the bug appeared in 0.1.29 only.
982     *) Bugfix: nginx did not consider the directives with 8 or 9 parameters 
983        as invalid.
985     *) Feature: the "return" directive can return the 204 response code.
987     *) Feature: the "ignore_invalid_headers" directive.
990 Changes with nginx 0.1.29                                        12 May 2005
992     *) Feature: the ngx_http_ssi_module supports "include virtual" command.
994     *) Feature: the ngx_http_ssi_module supports the condition command like 
995        'if expr="$NAME"' and "else" and "endif" commands. Only one nested 
996        level is supported.
998     *) Feature: the ngx_http_ssi_module supports the DATE_LOCAL and 
999        DATE_GMT variables and "config timefmt" command.
1001     *) Feature: the "ssi_ignore_recycled_buffers" directive.
1003     *) Bugfix: the "echo" command did not show the default value for the 
1004        empty QUERY_STRING variable.
1006     *) Change: the ngx_http_proxy_module was rewritten.
1008     *) Feature: the "proxy_redirect", "proxy_pass_request_headers", 
1009        "proxy_pass_request_body", and "proxy_method" directives.
1011     *) Feature: the "proxy_set_header" directive. The "proxy_x_var" is 
1012        canceled and must be replaced with the proxy_set_header directive.
1014     *) Change: the "proxy_preserve_host" is canceled and must be replaced 
1015        with the "proxy_set_header Host $host" and the "proxy_redirect off" 
1016        directives, the "proxy_set_header Host $host:$proxy_port" directive 
1017        and the appropriate proxy_redirect directives.
1019     *) Change: the "proxy_set_x_real_ip" is canceled and must be replaced 
1020        with the "proxy_set_header X-Real-IP $remote_addr" directive.
1022     *) Change: the "proxy_add_x_forwarded_for" is canceled and must be 
1023        replaced with 
1024        the "proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for" 
1025        directive.
1027     *) Change: the "proxy_set_x_url" is canceled and must be replaced with 
1028        the "proxy_set_header X-URL http://$host:$server_port$request_uri" 
1029        directive.
1031     *) Feature: the "fastcgi_param" directive.
1033     *) Change: the "fastcgi_root", "fastcgi_set_var" and "fastcgi_params" 
1034        directive are canceled and must be replaced with the fastcgi_param 
1035        directives.
1037     *) Feature: the "index" directive can use the variables.
1039     *) Feature: the "index" directive can be used at http and server levels.
1041     *) Change: the last index only in the "index" directive can be absolute.
1043     *) Feature: the "rewrite" directive can use the variables.
1045     *) Feature: the "internal" directive.
1047     *) Feature: the CONTENT_LENGTH, CONTENT_TYPE, REMOTE_PORT, SERVER_ADDR, 
1048        SERVER_PORT, SERVER_PROTOCOL, DOCUMENT_ROOT, SERVER_NAME, 
1049        REQUEST_METHOD, REQUEST_URI, and REMOTE_USER variables.
1051     *) Change: nginx now passes the invalid lines in a client request 
1052        headers or a backend response header.
1054     *) Bugfix: if the backend did not transfer response for a long time and 
1055        the "send_timeout" was less than "proxy_read_timeout", then nginx 
1056        returned the 408 response.
1058     *) Bugfix: the segmentation fault was occurred if the backend sent an 
1059        invalid line in response header; bug appeared in 0.1.26.
1061     *) Bugfix: the segmentation fault may occurred in FastCGI fault 
1062        tolerance configuration.
1064     *) Bugfix: the "expires" directive did not remove the previous 
1065        "Expires" and "Cache-Control" headers.
1067     *) Bugfix: nginx did not take into account trailing dot in "Host" 
1068        header line.
1070     *) Bugfix: the ngx_http_auth_module did not work under Linux.
1072     *) Bugfix: the rewrite directive worked incorrectly, if the arguments 
1073        were in a request.
1075     *) Bugfix: nginx could not be built on MacOS X.
1078 Changes with nginx 0.1.28                                        08 Apr 2005
1080     *) Bugfix: nginx hogs CPU while proxing the huge files.
1082     *) Bugfix: nginx could not be built by gcc 4.0 on Linux.
1085 Changes with nginx 0.1.27                                        28 Mar 2005
1087     *) Feature: the "blocked" parameter of the "valid_referers" directive.
1089     *) Change: the errors while handling the request header now logged at 
1090        "info" level. The server name and the "Host" and "Referer" header 
1091        lines also logged.
1093     *) Change: the "Host" header line is also logged in error log.
1095     *) Feature: the proxy_pass_unparsed_uri directive. The special handling 
1096        of the "://" symbols in URI, appeared in 0.1.11 version, now is 
1097        canceled.
1099     *) Bugfix: nginx could not be built on FreeBSD and Linux, if the 
1100        --without-ngx_http_auth_basic_module configuration parameter was 
1101        used.
1104 Changes with nginx 0.1.26                                        22 Mar 2005
1106     *) Change: the invalid client header lines are now ignored and logged 
1107        at the info level.
1109     *) Change: the server name is also logged in error log.
1111     *) Feature: the ngx_http_auth_basic_module module and the auth_basic 
1112        and auth_basic_user_file directives.
1115 Changes with nginx 0.1.25                                        19 Mar 2005
1117     *) Bugfix: nginx did run on Linux parisc.
1119     *) Feature: nginx now does not start under FreeBSD if the sysctl 
1120        kern.ipc.somaxconn value is too big.
1122     *) Bugfix: if a request was internally redirected by the 
1123        ngx_http_index_module module to the ngx_http_proxy_module or 
1124        ngx_http_fastcgi_module modules, then the index file was not closed 
1125        after request completion.
1127     *) Feature: the "proxy_pass" can be used in location with regular 
1128        expression.
1130     *) Feature: the ngx_http_rewrite_filter_module module supports the 
1131        condition like "if ($HTTP_USER_AGENT ~ MSIE)".
1133     *) Bugfix: nginx started too slow if the large number of addresses and 
1134        text values were used in the "geo" directive.
1136     *) Change: a variable name must be declared as "$name" in the "geo" 
1137        directive. The previous variant without "$" is still supported, but 
1138        will be removed soon.
1140     *) Feature: the "%{VARIABLE}v" logging parameter.
1142     *) Feature: the "set $name value" directive.
1144     *) Bugfix: gcc 4.0 compatibility.
1146     *) Feature: the --with-openssl-opt=OPTIONS autoconfiguration directive.
1149 Changes with nginx 0.1.24                                        04 Mar 2005
1151     *) Feature: the ngx_http_ssi_filter_module supports the QUERY_STRING 
1152        and DOCUMENT_URI variables.
1154     *) Bugfix: the ngx_http_autoindex_module may some times return the 404 
1155        response for existent directory, if this directory was used in 
1156        "alias" directive.
1158     *) Bugfix: the ngx_http_ssi_filter_module ran incorrectly for large 
1159        responses.
1161     *) Bugfix: the lack of the "Referer" header line was always accounted 
1162        as valid referrer.
1165 Changes with nginx 0.1.23                                        01 Mar 2005
1167     *) Feature: the ngx_http_ssi_filter_module and the ssi, 
1168        ssi_silent_errors, and ssi_min_file_chunk directives. The 'echo 
1169        var="HTTP_..." default=""' and 'echo var="REMOTE_ADDR"' commands are 
1170        supported.
1172     *) Feature: the %request_time log parameter.
1174     *) Feature: if the request has no the "Host" header line, then the 
1175        proxy_preserve_host directive set this header line to the first 
1176        server name of the server_name directive.
1178     *) Bugfix: nginx could not be built on platforms different from i386, 
1179        amd64, sparc Ã‰ ppc; bug appeared in 0.1.22.
1181     *) Bugfix: the ngx_http_autoindex_module now shows the information not 
1182        about the symlink, but about file or directory it points to.
1184     *) Bugfix: the %apache_length parameter logged the negative length of 
1185        the response header if the no response was transferred to a client.
1188 Changes with nginx 0.1.22                                        22 Feb 2005
1190     *) Bugfix: the ngx_http_stub_status_module showed incorrect handled 
1191        connections statistics if the proxing or FastCGI server were used.
1193     *) Bugfix: the installation paths were incorrectly quoted on Linux and 
1194        Solaris; bug appeared in 0.1.21.
1197 Changes with nginx 0.1.21                                        22 Feb 2005
1199     *) Bugfix: the ngx_http_stub_status_module showed incorrect statistics 
1200        if "rtsig" method was used or if several worker process ran on SMP.
1202     *) Bugfix: nginx could not be built by the icc compiler on Linux or if 
1203        the zlib-1.2.x library was building from sources.
1205     *) Bugfix: nginx could not be built on NetBSD 2.0.
1208 Changes with nginx 0.1.20                                        17 Feb 2005
1210     *) Feature: the new "script_filename" and "remote_port" parameters of 
1211        the fastcgi_params directive.
1213     *) Bugfix: the FastCGI stderr stream was handled incorrectly.
1216 Changes with nginx 0.1.19                                        16 Feb 2005
1218     *) Bugfix: now, if request contains the zero, then the 404 error is 
1219        returned for the local requests.
1221     *) Bugfix: nginx could not be built on NetBSD 2.0.
1223     *) Bugfix: the timeout may occur while reading of the the client 
1224        request body via SSL connections.
1227 Changes with nginx 0.1.18                                        09 Feb 2005
1229     *) Workaround: the default values of the devpoll_events and the 
1230        devpoll_changes directives changed from 512 to 32 to be compatible 
1231        with Solaris 10.
1233     *) Bugfix: the proxy_set_x_var and fastcgi_set_var directives were not 
1234        inherited.
1236     *) Bugfix: in the redirect rewrite directive the arguments were 
1237        concatenated with URI by the "&" rather than the "?".
1239     *) Bugfix: the lines without trailing ";" in the file being included by 
1240        the ngx_http_geo_module were silently ignored.
1242     *) Feature: the ngx_http_stub_status_module.
1244     *) Bugfix: the unknown log format in the access_log directive caused 
1245        the segmentation fault.
1247     *) Feature: the new "document_root" parameter of the fastcgi_params 
1248        directive.
1250     *) Feature: the fastcgi_redirect_errors directive.
1252     *) Feature: the new "break" modifier of the "rewrite" directive allows 
1253        to stop the rewrite/location cycle and sets the current 
1254        configuration to the request.
1257 Changes with nginx 0.1.17                                        03 Feb 2005
1259     *) Change: the ngx_http_rewrite_module was rewritten from the scratch. 
1260        Now it is possible to redirect, to return the error codes, to check 
1261        the variables and referrers. The directives can be used inside 
1262        locations. The redirect directive was canceled.
1264     *) Feature: the ngx_http_geo_module.
1266     *) Feature: the proxy_set_x_var and fastcgi_set_var directives.
1268     *) Bugfix: the location configuration with "=" modifier may be used in 
1269        another location.
1271     *) Bugfix: the correct content type was set only for requests that use 
1272        small caps letters in extension.
1274     *) Bugfix: if the proxy_pass or fastcgi_pass directives were set in the 
1275        location, and access was denied, and the error was redirected to a 
1276        static page, then the segmentation fault occurred.
1278     *) Bugfix: if in a proxied "Location" header was a relative URL, then a 
1279        host name and a slash were added to them; bug appeared in 0.1.14.
1281     *) Bugfix: the system error message was not logged on Linux.
1284 Changes with nginx 0.1.16                                        25 Jan 2005
1286     *) Bugfix: if the response were transferred by chunks, then on the HEAD 
1287        request the final chunk was issued.
1289     *) Bugfix: the "Connection: keep-alive" header were issued, even if the 
1290        keepalive_timeout directive forbade the keep-alive use.
1292     *) Bugfix: the errors in the ngx_http_fastcgi_module caused the 
1293        segmentation faults.
1295     *) Bugfix: the compressed response encrypted by SSL may not transferred 
1296        complete.
1298     *) Bugfix: the TCP-specific TCP_NODELAY, TCP_NOPSUH, and TCP_CORK 
1299        options, are not used for the unix domain sockets.
1301     *) Feature: the rewrite directive supports the arguments rewriting.
1303     *) Bugfix: the response code 400 was returned for the POST request with 
1304        the "Content-Length: 0" header; bug appeared in 0.1.14.
1307 Changes with nginx 0.1.15                                        19 Jan 2005
1309     *) Bugfix: the error while the connecting to the FastCGI server caused 
1310        segmentation fault.
1312     *) Bugfix: the correct handling of the regular expression, that has 
1313        different number of the captures and substitutions.
1315     *) Feature: the location, that is passed to the FastCGI server, can be 
1316        regular expression.
1318     *) Bugfix: the FastCGI's parameter REQUEST_URI is now passed with the 
1319        arguments and in the original state.
1321     *) Bugfix: the ngx_http_rewrite_module module was required to be built 
1322        to use the regular expressions in locations.
1324     *) Bugfix: the directive "proxy_preserve_host  on" adds port 80 to the 
1325        "Host" headers, if upstream listen on port 80; bug appeared in 
1326        0.1.14.
1328     *) Bugfix: the same paths in autoconfiguration parameters 
1329        --http-client-body-temp-path=PATH and --http-proxy-temp-path=PATH, 
1330        or --http-client-body-temp-path=PATH and 
1331        --http-fastcgi-temp-path=PATH caused segmentation fault.
1334 Changes with nginx 0.1.14                                        18 Jan 2005
1336     *) Feature: the autoconfiguration directives: 
1337        --http-client-body-temp-path=PATH, --http-proxy-temp-path=PATH, and 
1338        --http-fastcgi-temp-path=PATH
1340     *) Change: the directory name for the temporary files with the client 
1341        request body is specified by directive client_body_temp_path, by 
1342        default it is <prefix>/client_body_temp.
1344     *) Feature: the ngx_http_fastcgi_module and the directives: 
1345        fastcgi_pass, fastcgi_root, fastcgi_index, fastcgi_params, 
1346        fastcgi_connect_timeout, fastcgi_send_timeout, fastcgi_read_timeout, 
1347        fastcgi_send_lowat, fastcgi_header_buffer_size, fastcgi_buffers, 
1348        fastcgi_busy_buffers_size, fastcgi_temp_path, 
1349        fastcgi_max_temp_file_size, fastcgi_temp_file_write_size, 
1350        fastcgi_next_upstream, and fastcgi_x_powered_by.
1352     *) Bugfix: the "[alert] zero size buf" error; bug appeared in 0.1.3.
1354     *) Change: the URI must be specified after the host name in the 
1355        proxy_pass directive.
1357     *) Change: the %3F symbol in the URI was considered as the argument 
1358        string start.
1360     *) Feature: the unix domain sockets support in the 
1361        ngx_http_proxy_module.
1363     *) Feature: the ssl_engine and ssl_ciphers directives.
1364        Thanks to Sergey Skvortsov for SSL-accelerator.
1367 Changes with nginx 0.1.13                                        21 Dec 2004
1369     *) Feature: the server_names_hash and server_names_hash_threshold 
1370        directives.
1372     *) Bugfix: the *.domain.tld names in the server_name directive did not 
1373        work.
1375     *) Bugfix: the %request_length log parameter logged the incorrect 
1376        length.
1379 Changes with nginx 0.1.12                                        06 Dec 2004
1381     *) Feature: the %request_length log parameter.
1383     *) Bugfix: when using the /dev/poll, select and poll on the platforms, 
1384        where these methods may do the false reports, there may be the long 
1385        delay when the request was passed via the keep-alive connection. It 
1386        may be at least on Solaris when using the /dev/poll.
1388     *) Bugfix: the send_lowat directive is ignored on Linux because Linux 
1389        does not support the SO_SNDLOWAT option.
1392 Changes with nginx 0.1.11                                        02 Dec 2004
1394     *) Feature: the worker_priority directive.
1396     *) Change: both tcp_nopush and tcp_nodelay directives affect the 
1397        transferred response.
1399     *) Bugfix: nginx did not call initgroups().
1400        Thanks to Andrew Sitnikov and Andrei Nigmatulin.
1402     *) Change: now the ngx_http_autoindex_module shows the file size in the 
1403        bytes.
1405     *) Bugfix: the ngx_http_autoindex_module returned the 500 error if the 
1406        broken symlink was in a directory.
1408     *) Bugfix: the files bigger than 4G could not be transferred using 
1409        sendfile.
1411     *) Bugfix: if the backend was resolved to several backends and there 
1412        was an error while the response waiting then process may got caught 
1413        in an endless loop.
1415     *) Bugfix: the worker process may exit with the "unknown cycle" message 
1416        when the /dev/poll method was used.
1418     *) Bugfix: "close() channel failed" errors.
1420     *) Bugfix: the autodetection of the "nobody" and "nogroup" groups.
1422     *) Bugfix: the send_lowat directive did not work on Linux.
1424     *) Bugfix: the segmentation fault occurred if there was no events 
1425        section in configuration.
1427     *) Bugfix: nginx could not be built on OpenBSD.
1429     *) Bugfix: the double slashes in "://" in the URI were converted to 
1430        ":/".
1433 Changes with nginx 0.1.10                                        26 Nov 2004
1435     *) Bugfix: if the request without arguments contains "//", "/./", 
1436        "/../" or "%XX" then the lost character in the request line was 
1437        lost; bug appeared in 0.1.9.
1439     *) Bugfix: the fix in 0.1.9 for the files bigger than 2G on Linux did 
1440        not work.
1443 Changes with nginx 0.1.9                                         25 Nov 2004
1445     *) Bugfix: the proxied request was sent without arguments if the 
1446        request contains "//", "/./", "/../" or "%XX".
1448     *) Bugfix: the large compressed responses may be transferred not 
1449        completely.
1451     *) Bugfix: the files bigger than 2G was not transferred on Linux that 
1452        does not support sendfile64().
1454     *) Bugfix: while the build configuration on Linux the 
1455        --with-poll_module parameter was required; bug appeared in 0.1.8.
1458 Changes with nginx 0.1.8                                         20 Nov 2004
1460     *) Bugfix: in the ngx_http_autoindex_module if the long file names were 
1461        in the listing.
1463     *) Feature: the "^~" modifier in the location directive.
1465     *) Feature: the proxy_max_temp_file_size directive.
1468 Changes with nginx 0.1.7                                         12 Nov 2004
1470     *) Bugfix: on FreeBSD the segmentation fault may occur if the size of 
1471        the transferred file was changed; bug appeared in 0.1.5.
1474 Changes with nginx 0.1.6                                         11 Nov 2004
1476     *) Bugfix: some location directive combinations with the regular 
1477        expressions caused the wrong configuration choose.
1480 Changes with nginx 0.1.5                                         11 Nov 2004
1482     *) Bugfix: on Solaris and Linux there may be too many "recvmsg() 
1483        returned not enough data" alerts.
1485     *) Bugfix: there were the "writev() failed (22: Invalid argument)" 
1486        errors on Solaris in proxy mode without sendfile. On other platforms 
1487        that do not support sendfile at all the process got caught in an 
1488        endless loop.
1490     *) Bugfix: segmentation fault on Solaris in proxy mode and using 
1491        sendfile.
1493     *) Bugfix: segmentation fault on Solaris.
1495     *) Bugfix: on-line upgrade did not work on Linux.
1497     *) Bugfix: the ngx_http_autoindex_module module did not escape the 
1498        spaces, the quotes, and the percent signs in the directory listing.
1500     *) Change: the decrease of the copy operations.
1502     *) Feature: the userid_p3p directive.
1505 Changes with nginx 0.1.4                                         26 Oct 2004
1507     *) Bugfix: in the ngx_http_autoindex_module.
1510 Changes with nginx 0.1.3                                         25 Oct 2004
1512     *) Feature: the ngx_http_autoindex_module and the autoindex directive.
1514     *) Feature: the proxy_set_x_url directive.
1516     *) Bugfix: proxy module may get caught in an endless loop when sendfile 
1517        is not used.
1520 Changes with nginx 0.1.2                                         21 Oct 2004
1522     *) Feature: the --user=USER, --group=GROUP, and --with-ld-opt=OPTIONS 
1523        options in configure.
1525     *) Feature: the server_name directive supports *.domain.tld.
1527     *) Bugfix: the portability improvements.
1529     *) Bugfix: if configuration file was set in command line, the 
1530        reconfiguration was impossible; bug appeared in 0.1.1.
1532     *) Bugfix: proxy module may get caught in an endless loop when sendfile 
1533        is not used.
1535     *) Bugfix: with sendfile the response was not recoded according to the 
1536        charset module directives; bug appeared in 0.1.1.
1538     *) Bugfix: very seldom bug in the kqueue processing.
1540     *) Bugfix: the gzip module compressed the proxied responses that was 
1541        already compressed.
1544 Changes with nginx 0.1.1                                         11 Oct 2004
1546     *) Feature: the gzip_types directive.
1548     *) Feature: the tcp_nodelay directive.
1550     *) Feature: the send_lowat directive is working not only on OSes that 
1551        support kqueue NOTE_LOWAT, but also on OSes that support SO_SNDLOWAT.
1553     *) Feature: the setproctitle() emulation for Linux and Solaris.
1555     *) Bugfix: the "Location" header rewrite bug fixed while the proxing.
1557     *) Bugfix: the ngx_http_chunked_module module may get caught in an 
1558        endless loop.
1560     *) Bugfix: the /dev/poll module bugs fixed.
1562     *) Bugfix: the responses were corrupted when the temporary files were 
1563        used while the proxing.
1565     *) Bugfix: the unescaped requests were passed to the backend.
1567     *) Bugfix: while the build configuration on Linux 2.4 the 
1568        --with-poll_module parameter was required.
1571 Changes with nginx 0.1.0                                         04 Oct 2004
1573     *) The first public version.