Commit Graph

356 Commits

Author SHA1 Message Date
Igor Sysoev
ae0347afc8 optimize r->connection in ngx_http_finalize_request() 2007-08-27 15:53:00 +00:00
Igor Sysoev
db7b126db2 cancel keep-alive and lingering close on EOF 2007-08-27 15:40:19 +00:00
Igor Sysoev
43c3bf42db regex in server_name 2007-08-12 19:48:12 +00:00
Igor Sysoev
4fbd86829b discard request body before going to keep-alive state and use lingering timeouts 2007-08-07 10:53:27 +00:00
Igor Sysoev
7ab4d9cb55 rename ngx_http_block_read() and ngx_http_test_read() to ..._reading() 2007-08-06 15:22:40 +00:00
Igor Sysoev
f53d0f3177 proxy_ignore_client_abort, fastcgi_ignore_client_abort, and so on were
broken by r1111
2007-07-10 20:53:45 +00:00
Igor Sysoev
9d8a75c525 the "www.example.*" wildcard hash support 2007-06-11 19:49:22 +00:00
Igor Sysoev
62864d1e1e fix ssl_verify_client for HTTP/0.9 2007-06-04 20:40:03 +00:00
Igor Sysoev
e60303cdca SNI support 2007-05-29 15:21:09 +00:00
Igor Sysoev
b4ccb9f5bd $request_time has millisecond precision 2007-04-21 07:50:19 +00:00
Igor Sysoev
3e933d2919 disable TRACE method 2007-03-30 18:59:26 +00:00
Igor Sysoev
4ddeff4956 close keep-alive connections in the shuting down processes 2007-03-19 13:20:15 +00:00
Igor Sysoev
d74b66c82c finalize request to allow post_action 2007-02-15 18:53:48 +00:00
Igor Sysoev
9d58e4bed3 if client closes a connection prematurely, then epoll (at least
in Linux 2.6.16) sends EPOLLERR|EPOLLHUP|EPOLLIN only and writer
does not know about the error
2007-02-15 10:02:34 +00:00
Igor Sysoev
722231f407 ngx_strcasecmp()/ngx_strncasecmp() 2007-02-14 18:51:19 +00:00
Igor Sysoev
8b57df9480 log a real response error code instead of "0" 2007-01-29 11:53:23 +00:00
Igor Sysoev
8d6de94f5b if client closes a connection prematurely, then epoll (at least
in Linux 2.6.18) sends EPOLLERR|EPOLLHUP|EPOLLIN only and writer
does not know about the error
2007-01-19 08:10:06 +00:00
Igor Sysoev
56331ba499 the "Overwrite" header line 2007-01-18 21:11:23 +00:00
Igor Sysoev
1691aaf290 correct an error log message 2007-01-08 18:23:38 +00:00
Igor Sysoev
2316936389 use right status code 2007-01-08 18:22:06 +00:00
Igor Sysoev
36b1edca84 undo r979 2007-01-08 18:20:03 +00:00
Igor Sysoev
f250a6dfba fix segfault 2007-01-06 13:01:26 +00:00
Igor Sysoev
03011fa512 fix segfault when $host is used and
*) request is "GET http://host" without CR or LF, or timed out
*) request is "GET      http://host" with a large blank space
2006-12-15 10:24:57 +00:00
Igor Sysoev
cf100a7827 fix post_action for disconnected client 2006-12-11 08:31:54 +00:00
Igor Sysoev
3d2fd18a39 upstream choice modules 2006-12-04 16:46:13 +00:00
Igor Sysoev
95ead46111 use host part in URL 2006-11-23 20:20:23 +00:00
Igor Sysoev
020ffea637 high level HTTP buffered flags should be on per-subrequest basis,
this fix a bug in SSI when a big static file is included
2006-10-30 20:25:22 +00:00
Igor Sysoev
960100e371 <!--#include virtual=... set=... --> 2006-10-13 15:20:10 +00:00
Igor Sysoev
8a3cdc00ff allowing handling 400 errors via proxy_pass 2006-09-25 17:49:49 +00:00
Igor Sysoev
da173abde0 nginx-0.4.0-RELEASE import
*) Change in internal API: the HTTP modules initialization was moved
       from the init module phase to the HTTP postconfiguration phase.

    *) Change: now the request body is not read beforehand for the
       ngx_http_perl_module: it's required to start the reading using the
       $r->has_request_body method.

    *) Feature: the ngx_http_perl_module supports the DECLINED return code.

    *) Feature: the ngx_http_dav_module supports the incoming "Date" header
       line for the PUT method.

    *) Feature: the "ssi" directive is available inside the "if" block.

    *) Bugfix: a segmentation fault occurred if there was an "index"
       directive with variables and the first index name was without
       variables; the bug had appeared in 0.1.29.
2006-08-30 10:39:17 +00:00
Igor Sysoev
ef31643049 nginx-0.3.59-RELEASE import
*) Feature: now is possible to do several redirection using the
       "error_page" directive.

    *) Bugfix: the "dav_access" directive did not support three parameters.

    *) Bugfix: the "error_page" directive did not changes the
       "Content-Type" header line after the "X-Accel-Redirect" was used;
       the bug had appeared in 0.3.58.
2006-08-16 13:09:33 +00:00
Igor Sysoev
c55a104fcb nginx-0.3.57-RELEASE import
*) Feature: the $ssl_client_serial variable.

    *) Bugfix: in the "!-e" operator of the "if" directive.
       Thanks to Andrian Budanstov.

    *) Bugfix: while a client certificate verification nginx did not send
       to a client the required certificates information.

    *) Bugfix: the $document_root variable did not support the variables in
       the "root" directive.
2006-08-09 19:59:45 +00:00
Igor Sysoev
b71c690895 nginx-0.3.56-RELEASE import
*) Feature: the "dav_access" directive.

    *) Feature: the "if" directive supports the "-d", "!-d", "-e", "!-e",
       "-x", and "!-x" operators.

    *) Bugfix: a segmentation fault occurred if a request returned a
       redirect and some sent to client header lines were logged in the
       access log.
2006-08-04 16:04:04 +00:00
Igor Sysoev
8f1255877c nginx-0.3.55-RELEASE import
*) Feature: the "stub" parameter in the "include" SSI command.

    *) Feature: the "block" SSI command.

    *) Feature: the unicode2nginx script was added to contrib.

    *) Bugfix: if a "root" was specified by variable only, then the root
       was relative to a server prefix.

    *) Bugfix: if the request contained "//" or "/./" and escaped symbols
       after them, then the proxied request was sent unescaped.

    *) Bugfix: the $r->headers_in("Cookie") of the ngx_http_perl_module now
       returns all "Cookie" header lines.

    *) Bugfix: a segmentation fault occurred if
       "client_body_in_file_only on" was used and nginx switched to a next
       upstream.

    *) Bugfix: on some condition while reconfiguration character codes
       inside the "charset_map" may be treated invalid; the bug had
       appeared in 0.3.50.
2006-07-28 15:16:17 +00:00
Igor Sysoev
bb28b6d3a4 nginx-0.3.54-RELEASE import
*) Feature: nginx now logs the subrequest information to the error log.

    *) Feature: the "proxy_next_upstream", "fastcgi_next_upstream", and
       "memcached_next_upstream" directives support the "off" parameter.

    *) Feature: the "debug_connection" directive supports the CIDR address
       form.

    *) Bugfix: if a response of proxied server or FastCGI server was
       converted from UTF-8 or back, then it may be transferred incomplete.

    *) Bugfix: the $upstream_response_time variable had the time of the
       first request to a backend only.

    *) Bugfix: nginx could not be built on amd64 platform; the bug had
       appeared in 0.3.53.
2006-07-11 13:20:19 +00:00
Igor Sysoev
1765f47544 nginx-0.3.53-RELEASE import
*) Change: the "add_header" directive adds the string to 204, 301, and
       302 responses.

    *) Feature: the "server" directive in the "upstream" context supports
       the "weight" parameter.

    *) Feature: the "server_name" directive supports the "*" wildcard.

    *) Feature: nginx supports the request body size more than 2G.

    *) Bugfix: if a client was successfully authorized using "satisfy_any
       on", then anyway the message "access forbidden by rule" was written
       in the log.

    *) Bugfix: the "PUT" method may erroneously not create a file and
       return the 409 code.

    *) Bugfix: if the IMAP/POP3 backend returned an error, then nginx
       continued proxying anyway.
2006-07-07 16:33:19 +00:00
Igor Sysoev
ef809b86c3 nginx-0.3.50-RELEASE import
*) Change: the "proxy_redirect_errors" and "fastcgi_redirect_errors"
       directives was renamed to the "proxy_intercept_errors" and
       "fastcgi_intercept_errors" directives.

    *) Feature: the ngx_http_charset_module supports the recoding from the
       single byte encodings to the UTF-8 encoding and back.

    *) Feature: the "X-Accel-Charset" response header line is supported in
       proxy and FastCGI mode.

    *) Bugfix: the "\" escape symbol in the "\"" and "\'" pairs in the SSI
       command was removed only if the command also has the "$" symbol.

    *) Bugfix: the "<!--" string might be added on some conditions in the
       SSI after inclusion.

    *) Bugfix: if the "Content-Length: 0" header line was in response, then
       in nonbuffered proxying mode the client connection was not closed.
2006-06-28 16:00:26 +00:00
Igor Sysoev
afd7ec5357 nginx-0.3.48-RELEASE import
*) Change: now the ngx_http_charset_module works for subrequests, if
       the response has no "Content-Type" header line.

    *) Bugfix: if the "proxy_pass" directive has no URI part, then the
       "proxy_redirect default" directive add the unnecessary slash in
       start of the rewritten redirect.

    *) Bugfix: the internal redirect always transform client's HTTP method
       to GET, now the transformation is made for the "X-Accel-Redirect"
       redirects only and if the method is not HEAD; the bug had appeared
       in 0.3.42.

    *) Bugfix: the ngx_http_perl_module could not be built, if the perl was
       built with the threads support; the bug had appeared in 0.3.46.
2006-05-29 17:28:12 +00:00
Igor Sysoev
6f134cc275 nginx-0.3.47-RELEASE import
*) Feature: the "upstream" directive.

    *) Change: now the "\" escape symbol in the "\"" and "\'" pairs in the
       SSI command is always removed.
2006-05-23 14:54:58 +00:00
Igor Sysoev
3338cfdfbc nginx-0.3.46-RELEASE import
*) Feature: the "proxy_hide_header", "proxy_pass_header",
       "fastcgi_hide_header", and "fastcgi_pass_header" directives.

    *) Change: the "proxy_pass_x_powered_by", "fastcgi_x_powered_by", and
       "proxy_pass_server" directives were canceled.

    *) Feature: the "X-Accel-Buffering" response header line is supported
       in proxy mode.

    *) Bugfix: the reconfiguration bug and memory leaks in the
       ngx_http_perl_module.
2006-05-11 14:43:47 +00:00
Igor Sysoev
44d872259c nginx-0.3.45-RELEASE import
*) Feature: the "ssl_verify_client", "ssl_verify_depth", and
       "ssl_client_certificate" directives.

    *) Change: the $request_method variable now returns the main request
       method.

    *) Change: the &deg; symbol codes were changed in koi-win conversion
       table.

    *) Feature: the euro and N symbols were added to koi-win conversion
       table.

    *) Bugfix: if nginx distributed the requests among several backends and
       some backend failed, then requests intended for this backend was
       directed to one live backend only instead of being distributed among
       the rest.
2006-05-06 16:28:56 +00:00
Igor Sysoev
ac72bd17d1 nginx-0.3.44-RELEASE import
*) Feature: the "wait" parameter in the "include" SSI command.

    *) Feature: the Ukrainian and Byelorussian characters were added to
       koi-win conversion table.

    *) Bugfix: in the SSI.
2006-05-04 15:32:46 +00:00
Igor Sysoev
7f7846d820 nginx-0.3.42-RELEASE import
*) Feature: the "bind" option of the "listen" directive in IMAP/POP3
       proxy.

    *) Bugfix: if the same capture in the "rewrite" directive was used more
       then once.

    *) Bugfix: the $sent_http_content_type, $sent_http_content_length,
       $sent_http_last_modified, $sent_http_connection,
       $sent_http_keep_alive, and $sent_http_transfer_encoding variables
       were not written to access log.

    *) Bugfix: the $sent_http_cache_control returned value of the single
       "Cache-Control" response header line.
2006-04-26 09:52:47 +00:00
Igor Sysoev
4ecb4d721d nginx-0.3.41-RELEASE import
*) Feature: the -v switch.

    *) Bugfix: the segmentation fault may occurred if the SSI page has
       remote subrequests.

    *) Bugfix: in FastCGI handling.

    *) Bugfix: if the perl modules path was not set using
       --with-perl_modules_path=PATH or the "perl_modules", then the
       segmentation fault was occurred.
2006-04-21 12:06:44 +00:00
Igor Sysoev
7bdb720d6a nginx-0.3.40-RELEASE import
*) Feature: the ngx_http_dav_module supports the MKCOL method.

    *) Feature: the "create_full_put_path" directive.

    *) Feature: the "$limit_rate" variable.
2006-04-19 15:30:56 +00:00
Igor Sysoev
cdf609a925 nginx-0.3.39-RELEASE import
*) Feature: the "uninitialized_variable_warn" directive; the logging
       level of the "uninitialized variable" message was lowered from
       "alert" to "warn".

    *) Feature: the "override_charset" directive.

    *) Change: now if the unknown variable is used in the "echo" and "if
       expr='$name'" SSI-commands, then the "unknown variable" message is
       not logged.

    *) Bugfix: the active connection counter increased on the exceeding of
       the connection limit specified by the "worker_connections"
       directive; the bug had appeared in 0.2.0.

    *) Bugfix: the limit rate might not work on some condition; the bug had
       appeared in 0.3.38.
2006-04-17 19:55:41 +00:00
Igor Sysoev
8a2b2fb4fb nginx-0.3.38-RELEASE import
*) Feature: the ngx_http_dav_module.

    *) Change: the ngx_http_perl_module optimizations.
       Thanks to Sergey Skvortsov.

    *) Feature: the ngx_http_perl_module supports the $r->request_body_file
       method.

    *) Feature: the "client_body_in_file_only" directive.

    *) Workaround: now on disk overflow nginx tries to write access logs
       once a second only.
       Thanks to Anton Yuzhaninov and Maxim Dounin.

    *) Bugfix: now the "limit_rate" directive more precisely limits rate if
       rate is more than 100 Kbyte/s.
       Thanks to ForJest.

    *) Bugfix: now the IMAP/POP3 proxy escapes the "\r" and "\n" symbols in
       login and password to pass authorization server.
       Thanks to Maxim Dounin.
2006-04-14 09:53:38 +00:00
Igor Sysoev
94e32ce7f8 nginx-0.3.37-RELEASE import
*) Feature: the "limit_except" directive.

    *) Feature: the "if" directive supports the "!~", "!~*", "-f", and
       "!-f" operators.

    *) Feature: the ngx_http_perl_module supports the $r->request_body
       method.

    *) Bugfix: in the ngx_http_addition_filter_module.
2006-04-07 14:08:04 +00:00
Igor Sysoev
6d16e1e1df nginx-0.3.36-RELEASE import
*) Feature: the ngx_http_addition_filter_module.

    *) Feature: the "proxy_pass" and "fastcgi_pass" directives may be used
       inside the "if" block.

    *) Feature: the "proxy_ignore_client_abort" and
       "fastcgi_ignore_client_abort" directives.

    *) Feature: the "$request_completion" variable.

    *) Feature: the ngx_http_perl_module supports the $r->request_method
       and $r->remote_addr.

    *) Feature: the ngx_http_ssi_module supports the "elif" command.

    *) Bugfix: the "\/" string in the expression of the "if" command of the
       ngx_http_ssi_module was treated incorrectly.

    *) Bugfix: in the regular expressions in the "if" command of the
       ngx_http_ssi_module.

    *) Bugfix: if the relative path was specified in the
       "client_body_temp_path", "proxy_temp_path", "fastcgi_temp_path", and
       "perl_modules" directives, then the directory was used relatively to
       a current path but not to a server prefix.
2006-04-05 13:40:54 +00:00
Igor Sysoev
8fea885cbf nginx-0.3.33-RELEASE import
*) Feature: the "http_503" parameter of the "proxy_next_upstream" or
       "fastcgi_next_upstream" directives.

    *) Bugfix: ngx_http_perl_module did not work with inlined in the
       configuration code, if it was not started with the "sub" word.

    *) Bugfix: in the "post_action" directive.
2006-03-15 09:53:04 +00:00
Igor Sysoev
69d73da629 nginx-0.3.29-RELEASE import
*) Feature: now nginx uses less memory, if PHP in FastCGI mode sends
       many warnings before the response.

    *) Bugfix: the "Transfer-Encoding: chunked" header line was issued in
       the 204 responses for the HTTP/1.1 requests.

    *) Bugfix: nginx returned the 502 response, if the complete response
       header lines were transferred in a separate FastCGI records.

    *) Bugfix: if the proxied URI was specified in the "post_action"
       directive, then it ran only after a successful completion of a
       request.
2006-02-20 16:48:17 +00:00
Igor Sysoev
c2807ecf45 nginx-0.3.28-RELEASE import
*) Feature: the "restrict_host_names" directive was canceled.

    *) Feature: the --with-cpu-opt=ppc64 configuration parameter.

    *) Bugfix: on some condition the proxied connection with a client was
       terminated prematurely.
       Thanks to Vladimir Shutoff.

    *) Bugfix: the "X-Accel-Limit-Rate" header line was not taken into
       account if the request was redirected using the "X-Accel-Redirect"
       header line.

    *) Bugfix: the "post_action" directive ran only after a successful
       completion of a request.

    *) Bugfix: the proxied response body generated by the "post_action"
       directive was transferred to a client.
2006-02-16 15:26:46 +00:00
Igor Sysoev
ffe714403d nginx-0.3.27-RELEASE import
*) Change: the "variables_hash_max_size" and
       "variables_hash_bucket_size" directives.

    *) Feature: the $body_bytes_sent variable can be used not only in the
       "log_format" directive.

    *) Feature: the $ssl_protocol and $ssl_cipher variables.

    *) Feature: the cache line size detection for widespread CPUs at start
       time.

    *) Feature: now the "accept_mutex" directive is supported using
       fcntl(2) on platforms different from i386, amd64, sparc64, and ppc.

    *) Feature: the "lock_file" directive and the --with-lock-path=PATH
       autoconfiguration directive.

    *) Bugfix: if the HTTPS protocol was used in the "proxy_pass" directive
       then the requests with the body was not transferred.
2006-02-08 15:33:12 +00:00
Igor Sysoev
9e58019dc2 nginx-0.3.24-RELEASE import
*) Workaround: for bug in FreeBSD kqueue.

    *) Bugfix: now a response generated by the "post_action" directive is
       not transferred to a client.

    *) Bugfix: the memory leaks were occurring if many log files were used.

    *) Bugfix: the first "proxy_redirect" directive was working inside one
       location.

    *) Bugfix: on 64-bit platforms segmentation fault may occurred on start
       if the many names were used in the "server_name" directives; the bug
       had appeared in 0.3.18.
2006-02-01 18:22:15 +00:00
Igor Sysoev
df3254aa49 nginx-0.3.20-RELEASE import
*) Bugfix: in SSI handling.

    *) Bugfix: the ngx_http_memcached_module did not support the keys in
       the "/usr?args" form.
2006-01-11 15:26:57 +00:00
Igor Sysoev
305a9d83cf nginx-0.3.18-RELEASE import
*) Feature: the "server_names" directive supports the ".domain.tld"
       names.

    *) Feature: the "server_names" directive uses the hash for the
       "*.domain.tld" names and more effective hash for usual names.

    *) Change: the "server_names_hash_max_size" and
       "server_names_hash_bucket_size" directives.

    *) Change: the "server_names_hash" and "server_names_hash_threshold"
       directives were canceled.

    *) Feature: the "valid_referers" directive uses the hash site names.

    *) Change: now the "valid_referers" directive checks the site names
       only without the URI part.

    *) Bugfix: some ".domain.tld" names incorrectly processed by the
       ngx_http_map_module.

    *) Bugfix: segmentation fault was occurred if configuration file did
       not exist; the bug had appeared in 0.3.12.

    *) Bugfix: on 64-bit platforms segmentation fault may occurred on
       start; the bug had appeared in 0.3.16.
2005-12-26 17:07:48 +00:00
Igor Sysoev
2402502c2f nginx-0.3.16-RELEASE import
*) Feature: the ngx_http_map_module.

    *) Feature: the "types_hash_max_size" and "types_hash_bucket_size"
       directives.

    *) Feature: the "ssi_value_length" directive.

    *) Feature: the "worker_rlimit_core" directive.

    *) Workaround: the connection number in logs was always 1 if nginx was
       built by the icc 8.1 or 9.0 compilers with optimization for
       Pentium 4.

    *) Bugfix: the "config timefmt" SSI command set incorrect time format.

    *) Bugfix: nginx did not close connection to IMAP/POP3 backend for the
       SSL connections; the bug had appeared in 0.3.13.
       Thanks to Rob Mueller.

    *) Bugfix: segmentation fault may occurred in at SSL shutdown; the bug
       had appeared in 0.3.13.
2005-12-16 15:07:08 +00:00
Igor Sysoev
cdc463042b nginx-0.3.15-RELEASE import
*) Feature: the new 444 code of the "return" directive to close
       connection.

    *) Feature: the "so_keepalive" directive in IMAP/POP3 proxy.

    *) Bugfix: if there are unclosed connection nginx now calls abort()
       only on gracefull quit and active "debug_points" directive.
2005-12-07 14:51:31 +00:00
Igor Sysoev
d3283ff922 nginx-0.3.13-RELEASE import
*) Feature: the IMAP/POP3 proxy supports STARTTLS and STLS.

    *) Bugfix: the IMAP/POP3 proxy did not work with the select, poll, and
       /dev/poll methods.

    *) Bugfix: in SSI handling.

    *) Bugfix: now Solaris sendfilev() is not used to transfer the client
       request body to FastCGI-server via the unix domain socket.

    *) Bugfix: the "auth_basic" directive did not disable the
       authorization; the bug had appeared in 0.3.11.
2005-12-05 13:18:09 +00:00
Igor Sysoev
c31a9bb5e3 nginx-0.3.12-RELEASE import
*) Security: if nginx was built with the ngx_http_realip_module and the
       "satisfy_any on" directive was used, then access and authorization
       directives did not work. The ngx_http_realip_module was not built
       and is not built by default.

    *) Change: the "$time_gmt" variable name was changed to "$time_local".

    *) Change: the "proxy_header_buffer_size" and
       "fastcgi_header_buffer_size" directives was renamed to the
       "proxy_buffer_size" and "fastcgi_buffer_size" directives.

    *) Feature: the ngx_http_memcached_module.

    *) Feature: the "proxy_buffering" directive.

    *) Bugfix: the changes in accept mutex handling when the "rtsig" method
       was used; the bug had appeared in 0.3.0.

    *) Bugfix: if the client sent the "Transfer-Encoding: chunked" header
       line, then nginx returns the 411 error.

    *) Bugfix: if the "auth_basic" directive was inherited from the http
       level, then the realm in the "WWW-Authenticate" header line was
       without the "Basic realm" text.

    *) Bugfix: if the "combined" format was explicitly specified in the
       "access_log" directive, then the empty lines was written to the log;
       the bug had appeared in 0.3.8.

    *) Bugfix: nginx did not run on the sparc platform under any OS except
       Solaris.

    *) Bugfix: now it is not necessary to place space between the quoted
       string and closing bracket in the "if" directive.
2005-11-26 10:11:11 +00:00
Igor Sysoev
0e5dc5cff6 nginx-0.3.10-RELEASE import
*) Change: the "valid_referers" directive and the "$invalid_referer"
       variable were moved to the new ngx_http_referer_module from the
       ngx_http_rewrite_module.

    *) Change: the "$apache_bytes_sent" variable name was changed to
       "$body_bytes_sent".

    *) Feature: the "$sent_http_..." variables.

    *) Feature: the "if" directive supports the "=" and "!=" operations.

    *) Feature: the "proxy_pass" directive supports the HTTPS protocol.

    *) Feature: the "proxy_set_body" directive.

    *) Feature: the "post_action" directive.

    *) Feature: the ngx_http_empty_gif_module.

    *) Feature: the "worker_cpu_affinity" directive for Linux.

    *) Bugfix: the "rewrite" directive did not unescape URI part in
       redirect, now it is unescaped except the %00-%25 and %7F-%FF
       characters.

    *) Bugfix: nginx could not be built by the icc 9.0 compiler.

    *) Bugfix: if the SSI was enabled for zero size static file, then the
       chunked response was encoded incorrectly.
2005-11-15 13:30:52 +00:00
Igor Sysoev
09c684b2d5 nginx-0.3.8-RELEASE import
*) Security: nginx now checks URI got from a backend in
       "X-Accel-Redirect" header line or in SSI file for the "/../" paths
       and zeroes.

    *) Change: nginx now does not treat the empty user name in the
       "Authorization" header line as valid one.

    *) Feature: the "ssl_session_timeout" directives of the
       ngx_http_ssl_module and ngx_imap_ssl_module.

    *) Feature: the "auth_http_header" directive of the
       ngx_imap_auth_http_module.

    *) Feature: the "add_header" directive.

    *) Feature: the ngx_http_realip_module.

    *) Feature: the new variables to use in the "log_format" directive:
       $bytes_sent, $apache_bytes_sent, $status, $time_gmt, $uri,
       $request_time, $request_length, $upstream_status,
       $upstream_response_time, $gzip_ratio, $uid_got, $uid_set,
       $connection, $pipe, and $msec. The parameters in the "%name" form
       will be canceled soon.

    *) Change: now the false variable values in the "if" directive are the
       empty string "" and string starting with "0".

    *) Bugfix: while using proxied or FastCGI-server nginx may leave
       connections and temporary files with client requests in open state.

    *) Bugfix: the worker processes did not flush the buffered logs on
       graceful exit.

    *) Bugfix: if the request URI was changes by the "rewrite" directive
       and the request was proxied in location given by regular expression,
       then the incorrect request was transferred to backend; the bug had
       appeared in 0.2.6.

    *) Bugfix: the "expires" directive did not remove the previous
       "Expires" header.

    *) Bugfix: nginx may stop to accept requests if the "rtsig" method and
       several worker processes were used.

    *) Bugfix: the "\"" and "\'" escape symbols were incorrectly handled in
       SSI commands.

    *) Bugfix: if the response was ended just after the SSI command and
       gzipping was used, then the response did not transferred complete or
       did not transferred at all.
2005-11-09 17:25:55 +00:00
Igor Sysoev
9ac946bcc9 nginx-0.3.6-RELEASE import
*) Change: now the IMAP/POP3 proxy do not send the empty login to
       authorization server.

    *) Feature: the "log_format" supports the variables in the $name form.

    *) Bugfix: if at least in one server was no the "listen" directive,
       then nginx did not listen on the 80 port; the bug had appeared in
       0.3.3.

    *) Bugfix: if the URI part is omitted in "proxy_pass" directive, the
       the 80 port was always used.
2005-10-24 15:09:41 +00:00
Igor Sysoev
055951dc96 nginx-0.3.5-RELEASE import
*) Bugfix: the segmentation fault may occurred if the IMAP/POP3 login
       was changed by authorization server; the bug had appeared in 0.2.2.

    *) Bugfix: the accept mutex did not work and all connections were
       handled by one process; the bug had appeared in 0.3.3.

    *) Bugfix: the timeout did not work if the "rtsig" method and the
       "timer_resolution" directive were used.
2005-10-21 19:12:18 +00:00
Igor Sysoev
c2068d08f0 nginx-0.3.3-RELEASE import
*) Change: the "bl" and "af" parameters of the "listen" directive was
       renamed to the "backlog" and "accept_filter".

    *) Feature: the "rcvbuf" and "sndbuf" parameters of the "listen"
       directive.

    *) Change: the "$msec" log parameter does not require now the
       additional the gettimeofday() system call.

    *) Feature: the -t switch now tests the "listen" directives.

    *) Bugfix: if the invalid address was specified in the "listen"
       directive, then after the -HUP signal nginx left an open socket in
       the CLOSED state.

    *) Bugfix: the mime type may be incorrectly set to default value for
       index file with variable in the name; the bug had appeared in 0.3.0.

    *) Feature: the "timer_resolution" directive.

    *) Feature: the millisecond "$upstream_response_time" log parameter.

    *) Bugfix: a temporary file with client request body now is removed
       just after the response header was transferred to a client.

    *) Bugfix: OpenSSL 0.9.6 compatibility.

    *) Bugfix: the SSL certificate and key file paths could not be relative.

    *) Bugfix: the "ssl_prefer_server_ciphers" directive did not work in
       the ngx_imap_ssl_module.

    *) Bugfix: the "ssl_protocols" directive allowed to specify the single
       protocol only.
2005-10-19 12:33:58 +00:00
Igor Sysoev
784522377e nginx-0.3.2-RELEASE import
*) Feature: the Sun Studio 10 C compiler support.

    *) Feature: the "proxy_upstream_max_fails",
       "proxy_upstream_fail_timeout", "fastcgi_upstream_max_fails", and
       "fastcgi_upstream_fail_timeout" directives.
2005-10-12 13:50:36 +00:00
Igor Sysoev
208eed2210 nginx-0.3.0-RELEASE import
*) Change: the 10-days live time limit of worker process was
       eliminated. The limit was introduced because of millisecond timers
       overflow.
2005-10-07 13:30:52 +00:00
Igor Sysoev
f6e1fe3f28 nginx-0.2.5-RELEASE import
*) Change: the duplicate value of the ngx_http_geo_module variable now
       causes the warning and changes old value.

    *) Feature: the ngx_http_ssi_module supports the "set" command.

    *) Feature: the ngx_http_ssi_module supports the "file" parameter in
       the "include" command.

    *) Feature: the ngx_http_ssi_module supports the variable value
       substitutions in expressions of the "if" command.
2005-10-04 10:38:53 +00:00
Igor Sysoev
9fa5a823c4 nginx-0.2.2-RELEASE import
*) Feature: the "config errmsg" command of the ngx_http_ssi_module.

    *) Change: the ngx_http_geo_module variables can be overridden by the
       "set" directive.

    *) Feature: the "ssl_protocols" and "ssl_prefer_server_ciphers"
       directives of the ngx_http_ssl_module and ngx_imap_ssl_module.

    *) Bugfix: the ngx_http_autoindex_module did not show correctly the
       long file names;

    *) Bugfix: the ngx_http_autoindex_module now do not show the files
       starting by dot.

    *) Bugfix: if the SSL handshake failed then another connection may be
       closed too.
       Thanks to Rob Mueller.

    *) Bugfix: the export versions of MSIE 5.x could not connect via HTTPS.
2005-09-30 14:41:25 +00:00
Igor Sysoev
31eb8c015d nginx-0.2.0-RELEASE import
*) The pid-file names used during online upgrade was changed and now is
       not required a manual rename operation. The old master process adds
       the ".oldbin" suffix to its pid-file and executes a new binary file.
       The new master process creates usual pid-file without the ".newbin"
       suffix. If the master process exits, then old master process renames
       back its pid-file with the ".oldbin" suffix to the pid-file without
       suffix.

    *) Change: the "worker_connections" directive, new name of the
       "connections" directive; now the directive specifies maximum number
       of connections, but not maximum socket descriptor number.

    *) Feature: SSL supports the session cache inside one worker process.

    *) Feature: the "satisfy_any" directive.

    *) Change: the ngx_http_access_module and ngx_http_auth_basic_module do
       not run for subrequests.

    *) Feature: the "worker_rlimit_nofile" and "worker_rlimit_sigpending"
       directives.

    *) Bugfix: if all backend using in load-balancing failed after one
       error, then nginx did not try do connect to them during 60 seconds.

    *) Bugfix: in IMAP/POP3 command argument parsing.
       Thanks to Rob Mueller.

    *) Bugfix: errors while using SSL in IMAP/POP3 proxy.

    *) Bugfix: errors while using SSI and gzipping.

    *) Bugfix: the "Expires" and "Cache-Control" header lines were omitted
       from the 304 responses.
       Thanks to Alexandr Kukushkin.
2005-09-23 11:02:22 +00:00
Igor Sysoev
ceb992921c nginx-0.1.44-RELEASE import
*) Feature: the IMAP/POP3 proxy supports SSL.

    *) Feature: the "proxy_timeout" directive of the ngx_imap_proxy_module.

    *) Feature: the "userid_mark" directive.

    *) Feature: the $remote_user variable value is determined independently
       of authorization use.
2005-09-06 16:09:32 +00:00
Igor Sysoev
e5035397b0 nginx-0.1.43-RELEASE import
*) Feature: the listen(2) backlog in the "listen" directive can be
       changed using the -HUP signal.

    *) Feature: the geo2nginx.pl script was added to contrib.

    *) Change: the FastCGI parameters with the empty values now are passed
       to a server.

    *) Bugfix: the segmentation fault occurred or the worker process may
       got caught in an endless loop if the proxied or FastCGI server sent
       the "Cache-Control" header line and the "expires" directive was
       used; in the proxied mode the the bug had appeared in 0.1.29.
2005-08-30 10:55:07 +00:00
Igor Sysoev
b85fd593e0 nginx-0.1.42-RELEASE import
*) Bugfix: if the request URI had a zero length after the processing in
       the ngx_http_proxy_module, then the segmentation fault or bus error
       occurred in the ngx_http_proxy_module.

    *) Bugfix: the "limit_rate" directive did not work inside the "if"
       block; the bug had appeared in 0.1.38.
2005-08-23 15:36:54 +00:00
Igor Sysoev
90c0814781 nginx-0.1.40-RELEASE import
*) Bugfix: if a client sent too long header line, then the request
       information did not logged in the error log.

    *) Bugfix: the "Set-Cookie" header line was not transferred when the
       "X-Accel-Redirect" was used; the bug had appeared in 0.1.39.

    *) Bugfix: the "Content-Disposition" header line was not transferred
       when the "X-Accel-Redirect" was used.

    *) Bugfix: the master process did not close the listen socket on the
       SIGQUIT signal.

    *) Bugfix: after on-line upgrade on Linux and Solaris the process name
       became shorter in the "ps" command.
2005-07-25 09:41:38 +00:00
Igor Sysoev
5192b3651f nginx-0.1.38-RELEASE import
*) Feature: the "limit_rate" directive is supported in in proxy and
       FastCGI mode.

    *) Feature: the "X-Accel-Limit-Rate" response header line is supported
       in proxy and FastCGI mode.

    *) Feature: the "break" directive.

    *) Feature: the "log_not_found" directive.

    *) Bugfix: the response status code was not changed when request was
       redirected by the ""X-Accel-Redirect" header line.

    *) Bugfix: the variables set by the "set" directive could not be used
       in SSI.

    *) Bugfix: the segmentation fault may occurred if the SSI page has more
       than one remote subrequest.

    *) Bugfix: nginx treated the backend response as invalid if the status
       line in the header was transferred in two packets; the bug had
       appeared in 0.1.29.

    *) Feature: the "ssi_types" directive.

    *) Feature: the "autoindex_exact_size" directive.

    *) Bugfix: the ngx_http_autoindex_module did not support the long file
       names in UTF-8.

    *) Feature: the IMAP/POP3 proxy.
2005-07-08 14:34:20 +00:00
Igor Sysoev
85ef94ba85 nginx-0.1.37-RELEASE import
*) Change: now the "\n" is added to the end of the "nginx.pid" file.

    *) Bugfix: the responses may be transferred not completely, if many
       parts or the big parts were included by SSI.

    *) Bugfix: if all backends had returned the 404 reponse and the
       "http_404" parameter of the "proxy_next_upstream" or
       "fastcgi_next_upstream" directives was used, then nginx started to
       request all backends again.
2005-06-23 13:41:06 +00:00
Igor Sysoev
b145b067e2 nginx-0.1.36-RELEASE import
*) Change: if the request header has duplicate the "Host",
       "Connection", "Content-Length", or "Authorization" lines, then nginx
       now returns the 400 error.

    *) Change: the "post_accept_timeout" directive was canceled.

    *) Feature: the "default", "af=", "bl=", "deferred", and "bind"
       parameters of the "listen" directive.

    *) Feature: the FreeBSD accept filters support.

    *) Feature: the Linux TCP_DEFER_ACCEPT support.

    *) Bugfix: the ngx_http_autoindex_module did not support the file names
       in UTF-8.

    *) Bugfix: the new log file can be rotated by the -USR1 signal only if
       the reconfiguration by the -HUP signal was made twice.
2005-06-15 18:33:41 +00:00
Igor Sysoev
7b190b41b0 nginx-0.1.35-RELEASE import
*) Feature: the "working_directory" directive.

    *) Feature: the "port_in_redirect" directive.

    *) Bugfix: the segmentation fault was occurred if the backend response
       header was in several packets; the bug had appeared in 0.1.29.

    *) Bugfix: if more than 10 servers were configured or some server did
       not use the "listen" directive, then the segmentation fault was
       occurred on the start.

    *) Bugfix: the segmentation fault might occur if the response was
       bigger than the temporary file.

    *) Bugfix: nginx returned the 400 response on requests like
       "GET http://www.domain.com/uri HTTP/1.0"; the bug had appeared in
       0.1.28.
2005-06-07 15:56:31 +00:00
Igor Sysoev
d52477ff6d nginx-0.1.31-RELEASE import
*) Bugfix: the response encrypted by SSL may not transferred complete.

    *) Bugfix: errors while processing FastCGI response by SSI.

    *) Bugfix: errors while using SSI and gzipping.

    *) Bugfix: the redirect with the 301 code was transferred without
       response body; the bug had appeared in 0.1.30.
2005-05-16 13:53:20 +00:00
Igor Sysoev
3362b8df04 nginx-0.1.30-RELEASE import
*) Bugfix: the worker process may got caught in an endless loop if the
       SSI was used.

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

    *) Bugfix: if the length of the response part received at once from
       proxied or FastCGI server was equal to 500, then nginx returns the
       500 response code; in proxy mode the the bug had appeared in 0.1.29
       only.

    *) Bugfix: nginx did not consider the directives with 8 or 9 parameters
       as invalid.

    *) Feature: the "return" directive can return the 204 response code.

    *) Feature: the "ignore_invalid_headers" directive.
2005-05-14 18:42:03 +00:00
Igor Sysoev
899b44eab2 nginx-0.1.29-RELEASE import
*) Feature: the ngx_http_ssi_module supports "include virtual" command.

    *) Feature: the ngx_http_ssi_module supports the condition command like
       'if expr="$NAME"' and "else" and "endif" commands. Only one nested
       level is supported.

    *) Feature: the ngx_http_ssi_module supports the DATE_LOCAL and
       DATE_GMT variables and "config timefmt" command.

    *) Feature: the "ssi_ignore_recycled_buffers" directive.

    *) Bugfix: the "echo" command did not show the default value for the
       empty QUERY_STRING variable.

    *) Change: the ngx_http_proxy_module was rewritten.

    *) Feature: the "proxy_redirect", "proxy_pass_request_headers",
       "proxy_pass_request_body", and "proxy_method" directives.

    *) Feature: the "proxy_set_header" directive. The "proxy_x_var" was
       canceled and must be replaced with the proxy_set_header directive.

    *) Change: the "proxy_preserve_host" is canceled and must be replaced
       with the "proxy_set_header Host $host" and the "proxy_redirect off"
       directives, the "proxy_set_header Host $host:$proxy_port" directive
       and the appropriate proxy_redirect directives.

    *) Change: the "proxy_set_x_real_ip" is canceled and must be replaced
       with the "proxy_set_header X-Real-IP $remote_addr" directive.

    *) Change: the "proxy_add_x_forwarded_for" is canceled and must be
       replaced with
       the "proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for"
       directive.

    *) Change: the "proxy_set_x_url" is canceled and must be replaced with
       the "proxy_set_header X-URL http://$host:$server_port$request_uri"
       directive.

    *) Feature: the "fastcgi_param" directive.

    *) Change: the "fastcgi_root", "fastcgi_set_var" and "fastcgi_params"
       directive are canceled and must be replaced with the fastcgi_param
       directives.

    *) Feature: the "index" directive can use the variables.

    *) Feature: the "index" directive can be used at http and server levels.

    *) Change: the last index only in the "index" directive can be absolute.

    *) Feature: the "rewrite" directive can use the variables.

    *) Feature: the "internal" directive.

    *) Feature: the CONTENT_LENGTH, CONTENT_TYPE, REMOTE_PORT, SERVER_ADDR,
       SERVER_PORT, SERVER_PROTOCOL, DOCUMENT_ROOT, SERVER_NAME,
       REQUEST_METHOD, REQUEST_URI, and REMOTE_USER variables.

    *) Change: nginx now passes the invalid lines in a client request
       headers or a backend response header.

    *) Bugfix: if the backend did not transfer response for a long time and
       the "send_timeout" was less than "proxy_read_timeout", then nginx
       returned the 408 response.

    *) Bugfix: the segmentation fault was occurred if the backend sent an
       invalid line in response header; the bug had appeared in 0.1.26.

    *) Bugfix: the segmentation fault may occurred in FastCGI fault
       tolerance configuration.

    *) Bugfix: the "expires" directive did not remove the previous
       "Expires" and "Cache-Control" headers.

    *) Bugfix: nginx did not take into account trailing dot in "Host"
       header line.

    *) Bugfix: the ngx_http_auth_module did not work under Linux.

    *) Bugfix: the rewrite directive worked incorrectly, if the arguments
       were in a request.

    *) Bugfix: nginx could not be built on MacOS X.
2005-05-12 14:58:06 +00:00
Igor Sysoev
02f742b45e nginx-0.1.28-RELEASE import
*) Bugfix: nginx hogs CPU while proxying the huge files.

    *) Bugfix: nginx could not be built by gcc 4.0 on Linux.
2005-04-08 15:18:55 +00:00
Igor Sysoev
c04deca88f nginx-0.1.27-RELEASE import
*) Feature: the "blocked" parameter of the "valid_referers" directive.

    *) Change: the errors while handling the request header now logged at
       "info" level. The server name and the "Host" and "Referer" header
       lines also logged.

    *) Change: the "Host" header line is also logged in error log.

    *) Feature: the proxy_pass_unparsed_uri directive. The special handling
       of the "://" symbols in URI, appeared in 0.1.11 version, now is
       canceled.

    *) Bugfix: nginx could not be built on FreeBSD and Linux, if the
       --without-ngx_http_auth_basic_module configuration parameter was
       used.
2005-03-28 14:43:02 +00:00
Igor Sysoev
4d656dcd0b nginx-0.1.26-RELEASE import
*) Change: the invalid client header lines are now ignored and logged
       at the info level.

    *) Change: the server name is also logged in error log.

    *) Feature: the ngx_http_auth_basic_module module and the auth_basic
       and auth_basic_user_file directives.
2005-03-22 16:02:46 +00:00
Igor Sysoev
c15717285d nginx-0.1.25-RELEASE import
*) Bugfix: nginx did run on Linux parisc.

    *) Feature: nginx now does not start under FreeBSD if the sysctl
       kern.ipc.somaxconn value is too big.

    *) Bugfix: if a request was internally redirected by the
       ngx_http_index_module module to the ngx_http_proxy_module or
       ngx_http_fastcgi_module modules, then the index file was not closed
       after request completion.

    *) Feature: the "proxy_pass" can be used in location with regular
       expression.

    *) Feature: the ngx_http_rewrite_filter_module module supports the
       condition like "if ($HTTP_USER_AGENT ~ MSIE)".

    *) Bugfix: nginx started too slow if the large number of addresses and
       text values were used in the "geo" directive.

    *) Change: a variable name must be declared as "$name" in the "geo"
       directive. The previous variant without "$" is still supported, but
       will be removed soon.

    *) Feature: the "%{VARIABLE}v" logging parameter.

    *) Feature: the "set $name value" directive.

    *) Bugfix: gcc 4.0 compatibility.

    *) Feature: the --with-openssl-opt=OPTIONS autoconfiguration directive.
2005-03-19 12:38:37 +00:00
Igor Sysoev
8184d1b3a7 nginx-0.1.24-RELEASE import
*) Feature: the ngx_http_ssi_filter_module supports the QUERY_STRING
       and DOCUMENT_URI variables.

    *) Bugfix: the ngx_http_autoindex_module may some times return the 404
       response for existent directory, if this directory was used in
       "alias" directive.

    *) Bugfix: the ngx_http_ssi_filter_module ran incorrectly for large
       responses.

    *) Bugfix: the lack of the "Referer" header line was always accounted
       as valid referrer.
2005-03-04 14:06:57 +00:00
Igor Sysoev
11d753231b nginx-0.1.23-RELEASE import
*) Feature: the ngx_http_ssi_filter_module and the ssi,
       ssi_silent_errors, and ssi_min_file_chunk directives. The 'echo
       var="HTTP_..." default=""' and 'echo var="REMOTE_ADDR"' commands are
       supported.

    *) Feature: the %request_time log parameter.

    *) Feature: if the request has no the "Host" header line, then the
       "proxy_preserve_host" directive set this header line to the first
       server name of the "server_name" directive.

    *) Bugfix: nginx could not be built on platforms different from i386,
       amd64, sparc, and ppc; the bug had appeared in 0.1.22.

    *) Bugfix: the ngx_http_autoindex_module now shows the information not
       about the symlink, but about file or directory it points to.

    *) Bugfix: the %apache_length parameter logged the negative length of
       the response header if the no response was transferred to a client.
2005-03-01 15:20:36 +00:00
Igor Sysoev
4a71559d9b nginx-0.1.22-RELEASE import
*) Bugfix: the ngx_http_stub_status_module showed incorrect handled
       connections statistics if the proxying or FastCGI server were used.

    *) Bugfix: the installation paths were incorrectly quoted on Linux and
       Solaris; the bug had appeared in 0.1.21.
2005-02-24 12:29:09 +00:00
Igor Sysoev
d039a2e193 nginx-0.1.21-RELEASE import
*) Bugfix: the ngx_http_stub_status_module showed incorrect statistics
       if "rtsig" method was used or if several worker process ran on SMP.

    *) Bugfix: nginx could not be built by the icc compiler on Linux or if
       the zlib-1.2.x library was building from sources.

    *) Bugfix: nginx could not be built on NetBSD 2.0.
2005-02-22 14:40:13 +00:00
Igor Sysoev
1ebfead9da nginx-0.1.19-RELEASE import
*) Bugfix: now, if request contains the zero, then the 404 error is
       returned for the local requests.

    *) Bugfix: nginx could not be built on NetBSD 2.0.

    *) Bugfix: the timeout may occur while reading of the the client
       request body via SSL connections.
2005-02-16 13:40:36 +00:00
Igor Sysoev
e5a222c6fe nginx-0.1.16-RELEASE import
*) 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 directive 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 arguments rewriting.

    *) Bugfix: the response code 400 was returned for the POST request with
       the "Content-Length: 0" header; the bug had appeared in 0.1.14.
2005-01-25 12:27:35 +00:00
Igor Sysoev
02025fd6bd nginx-0.1.14-RELEASE import
*) 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; the bug had 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.
2005-01-18 13:03:58 +00:00
Igor Sysoev
b1dfe478a0 nginx-0.1.13-RELEASE import
*) 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.
2004-12-21 12:30:30 +00:00
Igor Sysoev
6a12fc91b0 nginx-0.1.12-RELEASE import
*) 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.
2004-12-06 14:45:08 +00:00
Igor Sysoev
42b12b34fa nginx-0.1.11-RELEASE import
*) 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
       ":/".
2004-12-02 18:40:46 +00:00
Igor Sysoev
f69060481e nginx-0.1.9-RELEASE import
*) 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; the bug had appeared in
       0.1.8.
2004-11-25 16:17:31 +00:00
Igor Sysoev
1b73583ba2 nginx-0.1.5-RELEASE import
*) 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.
2004-11-11 14:07:14 +00:00
Igor Sysoev
723e6cc248 nginx-0.1.3-RELEASE import
*) 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.
2004-10-25 15:29:23 +00:00
Igor Sysoev
c0edbcce58 nginx-0.1.2-RELEASE import
*) 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; the bug had 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; the bug had 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.
2004-10-21 15:34:38 +00:00
Igor Sysoev
924bd79e31 nginx-0.1.1-RELEASE import
*) 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 proxying.

    *) Bugfix: the ngx_http_chunked_module module may get caught in an
       endless loop.

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

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

    *) 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.
2004-10-11 15:07:03 +00:00
Igor Sysoev
aad1b89b68 nginx-0.1.0-2004-10-04-00:02:06 import 2004-10-03 20:02:06 +00:00
Igor Sysoev
ff8da91784 nginx-0.1.0-2004-09-29-20:00:49 import; remove years from copyright 2004-09-29 16:00:49 +00:00
Igor Sysoev
d90282d8ba nginx-0.1.0-2004-09-28-12:34:51 import; set copyright and remove unused files 2004-09-28 08:34:51 +00:00
Igor Sysoev
4bed6e3120 nginx-0.0.12-2004-09-26-23:01:48 import 2004-09-26 19:01:48 +00:00
Igor Sysoev
c3e4746be2 nginx-0.0.12-2004-09-24-20:12:19 import 2004-09-24 16:12:19 +00:00
Igor Sysoev
236e045751 nginx-0.0.12-2004-09-23-20:39:34 import 2004-09-23 16:39:34 +00:00
Igor Sysoev
f7abd72716 nginx-0.0.11-2004-09-23-10:32:00 import 2004-09-23 06:32:00 +00:00
Igor Sysoev
85080d09ad nginx-0.0.11-2004-09-22-20:18:21 import 2004-09-22 16:18:21 +00:00
Igor Sysoev
dd888c4caa nginx-0.0.11-2004-09-21-09:38:28 import 2004-09-21 05:38:28 +00:00
Igor Sysoev
a2c81197b5 nginx-0.0.11-2004-09-19-22:27:00 import 2004-09-19 18:27:00 +00:00
Igor Sysoev
307c3add78 nginx-0.0.11-2004-09-17-20:07:35 import 2004-09-17 16:07:35 +00:00
Igor Sysoev
85cccfba8d nginx-0.0.10-2004-09-15-20:00:43 import 2004-09-15 16:00:43 +00:00
Igor Sysoev
dc3b2a7875 nginx-0.0.10-2004-09-14-23:39:54 import 2004-09-14 19:39:54 +00:00
Igor Sysoev
0292cbbe35 nginx-0.0.10-2004-09-13-20:18:09 import 2004-09-13 16:18:09 +00:00
Igor Sysoev
2e6ba93fa7 nginx-0.0.10-2004-09-09-19:40:48 import 2004-09-09 15:40:48 +00:00
Igor Sysoev
59cf56c5d9 nginx-0.0.10-2004-09-07-19:29:22 import 2004-09-07 15:29:22 +00:00
Igor Sysoev
aab4d8c0c4 nginx-0.0.10-2004-09-06-22:45:00 import 2004-09-06 18:45:00 +00:00
Igor Sysoev
980a92472c nginx-0.0.10-2004-09-05-23:54:02 import 2004-09-05 19:54:02 +00:00
Igor Sysoev
967fd637e0 nginx-0.0.10-2004-08-27-19:40:59 import 2004-08-27 15:40:59 +00:00
Igor Sysoev
d00b3654ce nginx-0.0.10-2004-08-23-23:09:29 import 2004-08-23 19:09:29 +00:00
Igor Sysoev
74a5ddb47a nginx-0.0.7-2004-07-18-23:11:20 import 2004-07-18 19:11:20 +00:00
Igor Sysoev
f38e046a0a nginx-0.0.7-2004-07-16-21:11:43 import 2004-07-16 17:11:43 +00:00
Igor Sysoev
0ad253766f nginx-0.0.7-2004-07-16-10:33:35 import 2004-07-16 06:33:35 +00:00
Igor Sysoev
1c3567ecc8 nginx-0.0.7-2004-07-15-20:35:51 import 2004-07-15 16:35:51 +00:00
Igor Sysoev
4aa888820d nginx-0.0.7-2004-07-15-00:07:58 import 2004-07-14 20:07:58 +00:00
Igor Sysoev
643c8ea353 nginx-0.0.7-2004-07-13-00:43:53 import 2004-07-12 20:43:53 +00:00
Igor Sysoev
6845ad4c8e nginx-0.0.7-2004-07-12-01:03:47 import 2004-07-11 21:03:47 +00:00
Igor Sysoev
14f279e7e5 nginx-0.0.7-2004-07-09-19:37:31 import 2004-07-09 15:37:31 +00:00
Igor Sysoev
7556945655 nginx-0.0.7-2004-07-08-19:17:47 import 2004-07-08 15:17:47 +00:00
Igor Sysoev
c78c41cefc nginx-0.0.7-2004-07-07-10:15:04 import 2004-07-07 06:15:04 +00:00
Igor Sysoev
f1be53b48a nginx-0.0.7-2004-07-05-19:08:23 import 2004-07-05 15:08:23 +00:00
Igor Sysoev
98c1cf18c1 nginx-0.0.7-2004-07-02-19:54:34 import 2004-07-02 15:54:34 +00:00
Igor Sysoev
46cd7c2a9b nginx-0.0.7-2004-07-02-09:47:00 import 2004-07-02 05:47:00 +00:00
Igor Sysoev
0a94cfd2ae nginx-0.0.7-2004-06-29-01:03:14 import 2004-06-28 21:03:14 +00:00
Igor Sysoev
c02473048c nginx-0.0.7-2004-06-27-22:01:57 import 2004-06-27 18:01:57 +00:00
Igor Sysoev
b1af9bbcab nginx-0.0.7-2004-06-25-18:42:03 import 2004-06-25 14:42:03 +00:00
Igor Sysoev
59f3aa3a9b nginx-0.0.7-2004-06-24-20:07:04 import 2004-06-24 16:07:04 +00:00
Igor Sysoev
c83f683553 nginx-0.0.7-2004-06-24-11:53:37 import 2004-06-24 07:53:37 +00:00
Igor Sysoev
ef06648615 nginx-0.0.7-2004-06-21-19:59:32 import 2004-06-21 15:59:32 +00:00
Igor Sysoev
73a73b5a60 nginx-0.0.7-2004-06-20-23:54:15 import 2004-06-20 19:54:15 +00:00
Igor Sysoev
415b1ce1b9 nginx-0.0.7-2004-06-17-21:18:53 import 2004-06-17 17:18:53 +00:00
Igor Sysoev
2f65722941 nginx-0.0.7-2004-06-16-19:32:11 import 2004-06-16 15:32:11 +00:00
Igor Sysoev
0ab91b9012 nginx-0.0.3-2004-06-06-23:49:18 import 2004-06-06 19:49:18 +00:00
Igor Sysoev
67f450d7bc nginx-0.0.3-2004-06-01-10:04:46 import 2004-06-01 06:04:46 +00:00
Igor Sysoev
369145cef1 nginx-0.0.3-2004-05-28-19:49:23 import; rename ngx_hunk_t to ngx_buf_t 2004-05-28 15:49:23 +00:00
Igor Sysoev
3043bfcf10 nginx-0.0.3-2004-05-14-20:51:47 import 2004-05-14 16:51:47 +00:00
Igor Sysoev
5aeeb2dc46 nginx-0.0.3-2004-05-04-21:56:58 import 2004-05-04 17:56:58 +00:00
Igor Sysoev
4cec79fb6a nginx-0.0.3-2004-04-28-10:14:50 import 2004-04-28 06:14:50 +00:00
Igor Sysoev
3f4685f3de nginx-0.0.3-2004-04-26-00:13:21 import 2004-04-25 20:13:21 +00:00
Igor Sysoev
732a271963 nginx-0.0.3-2004-04-21-22:54:33 import 2004-04-21 18:54:33 +00:00
Igor Sysoev
a367724899 nginx-0.0.3-2004-04-14-09:57:36 import 2004-04-14 05:57:36 +00:00
Igor Sysoev
3d54061602 nginx-0.0.3-2004-04-13-19:08:48 import 2004-04-13 15:08:48 +00:00
Igor Sysoev
fff32326ca nginx-0.0.3-2004-04-08-19:58:25 import 2004-04-08 15:58:25 +00:00
Igor Sysoev
c972a3fe27 nginx-0.0.3-2004-04-02-19:13:20 import 2004-04-02 15:13:20 +00:00
Igor Sysoev
709405b755 nginx-0.0.3-2004-03-31-19:26:46 import 2004-03-31 15:26:46 +00:00
Igor Sysoev
6707ba9072 nginx-0.0.3-2004-03-30-19:59:50 import 2004-03-30 15:59:50 +00:00
Igor Sysoev
6881bfb990 nginx-0.0.3-2004-03-30-10:27:36 import 2004-03-30 06:27:36 +00:00
Igor Sysoev
89690bfe02 nginx-0.0.3-2004-03-23-09:01:52 import 2004-03-23 06:01:52 +00:00
Igor Sysoev
ae02c19867 nginx-0.0.3-2004-03-19-08:25:53 import 2004-03-19 05:25:53 +00:00
Igor Sysoev
9c61095a30 nginx-0.0.3-2004-03-16-16:35:20 import 2004-03-16 13:35:20 +00:00
Igor Sysoev
10a543a810 nginx-0.0.2-2004-03-16-10:10:12 import 2004-03-16 07:10:12 +00:00
Igor Sysoev
67f88e9cc6 nginx-0.0.2-2004-03-12-19:57:08 import 2004-03-12 16:57:08 +00:00
Igor Sysoev
22a7c50463 nginx-0.0.2-2004-02-18-00:11:27 import 2004-02-17 21:11:27 +00:00
Igor Sysoev
7b6062a1b8 nginx-0.0.2-2004-02-12-23:57:10 import 2004-02-12 20:57:10 +00:00
Igor Sysoev
dfe63ad183 nginx-0.0.2-2004-02-11-10:19:26 import 2004-02-11 07:19:26 +00:00
Igor Sysoev
54498db7a2 nginx-0.0.2-2004-02-11-20:08:49 import 2004-02-11 17:08:49 +00:00
Igor Sysoev
c7a2f68606 nginx-0.0.2-2004-02-10-19:23:38 import 2004-02-10 16:23:38 +00:00
Igor Sysoev
7af6b16936 nginx-0.0.2-2004-02-09-10:46:43 import 2004-02-09 07:46:43 +00:00
Igor Sysoev
328af6e8cd nginx-0.0.1-2004-02-01-11:10:52 import 2004-02-01 08:10:52 +00:00
Igor Sysoev
76f7b5eeed nginx-0.0.1-2004-01-29-20:06:07 import 2004-01-29 17:06:07 +00:00
Igor Sysoev
e04084c1b2 nginx-0.0.1-2004-01-26-11:52:49 import 2004-01-26 08:52:49 +00:00
Igor Sysoev
a1c8a92566 nginx-0.0.1-2004-01-19-21:09:14 import 2004-01-19 18:09:14 +00:00
Igor Sysoev
a2aca9ae92 nginx-0.0.1-2004-01-19-00:09:21 import 2004-01-18 21:09:21 +00:00
Igor Sysoev
c599198d83 nginx-0.0.1-2004-01-16-09:15:48 import 2004-01-16 06:15:48 +00:00
Igor Sysoev
3d58f8c29b nginx-0.0.1-2004-01-08-11:47:17 import 2004-01-08 08:47:17 +00:00
Igor Sysoev
3c3ca17358 nginx-0.0.1-2004-01-05-23:55:48 import 2004-01-05 20:55:48 +00:00
Igor Sysoev
3b30a901b4 nginx-0.0.1-2003-12-25-23:26:58 import 2003-12-25 20:26:58 +00:00
Igor Sysoev
fc68ea6f7b nginx-0.0.1-2003-12-22-20:27:24 import 2003-12-22 17:27:24 +00:00
Igor Sysoev
669e3319ce nginx-0.0.1-2003-12-22-12:40:48 import 2003-12-22 09:40:48 +00:00
Igor Sysoev
1cd1e2741a nginx-0.0.1-2003-12-19-15:45:27 import 2003-12-19 12:45:27 +00:00
Igor Sysoev
e89c4581f4 nginx-0.0.1-2003-12-19-11:15:11 import 2003-12-19 08:15:11 +00:00
Igor Sysoev
dc867cd0fe nginx-0.0.1-2003-12-14-23:10:27 import 2003-12-14 20:10:27 +00:00
Igor Sysoev
2b58fbf045 nginx-0.0.1-2003-12-09-18:08:11 import 2003-12-09 15:08:11 +00:00
Igor Sysoev
865c150cb4 nginx-0.0.1-2003-11-30-23:03:18 import 2003-11-30 20:03:18 +00:00
Igor Sysoev
c2bba092eb nginx-0.0.1-2003-11-28-20:41:47 import 2003-11-28 17:41:47 +00:00
Igor Sysoev
d9d0ca1268 nginx-0.0.1-2003-11-21-09:30:49 import 2003-11-21 06:30:49 +00:00
Igor Sysoev
bb6ec8c9fd nginx-0.0.1-2003-11-20-10:05:50 import; auto/configure 2003-11-20 07:05:50 +00:00
Igor Sysoev
160d774afc nginx-0.0.1-2003-11-19-19:26:41 import 2003-11-19 16:26:41 +00:00
Igor Sysoev
222a2adf40 nginx-0.0.1-2003-11-18-19:49:00 import 2003-11-18 16:49:00 +00:00
Igor Sysoev
74e95c224a nginx-0.0.1-2003-11-09-23:03:38 import; separate building 2003-11-09 20:03:38 +00:00
Igor Sysoev
fe0f5cc6e1 nginx-0.0.1-2003-10-31-19:05:33 import 2003-10-31 16:05:33 +00:00
Igor Sysoev
68ee8f1442 nginx-0.0.1-2003-10-30-11:51:06 import 2003-10-30 08:51:06 +00:00
Igor Sysoev
14be46ee98 nginx-0.0.1-2003-10-29-20:39:05 import 2003-10-29 17:39:05 +00:00
Igor Sysoev
b5faed2dc8 nginx-0.0.1-2003-10-29-11:30:44 import 2003-10-29 08:30:44 +00:00
Igor Sysoev
425a42ce3d nginx-0.0.1-2003-10-27-19:16:17 import 2003-10-27 16:16:17 +00:00
Igor Sysoev
10fc9ef775 nginx-0.0.1-2003-10-27-11:53:49 import 2003-10-27 08:53:49 +00:00
Igor Sysoev
6414b96ebc nginx-0.0.1-2003-10-24-20:10:38 import 2003-10-24 16:10:38 +00:00
Igor Sysoev
dc9dd434aa nginx-0.0.1-2003-10-22-20:38:26 import 2003-10-22 16:38:26 +00:00
Igor Sysoev
419f9aceb4 nginx-0.0.1-2003-10-21-20:49:56 import 2003-10-21 16:49:56 +00:00
Igor Sysoev
9760a1336f nginx-0.0.1-2003-10-21-11:47:21 import 2003-10-21 07:47:21 +00:00