Commit Graph

321 Commits

Author SHA1 Message Date
Igor Sysoev
1966aedd6d axe r->port_text 2009-02-24 07:29:55 +00:00
Igor Sysoev
80a4f29c8a axe r->port 2009-02-23 21:19:35 +00:00
Igor Sysoev
2d95c82f91 axe r->in_addr 2009-02-23 21:05:10 +00:00
Igor Sysoev
a35eaccdec a prelimiary IPv6 support, HTTP listen 2009-02-21 07:02:02 +00:00
Igor Sysoev
32856e1bc8 avoid a double redirect response if
*) a request is going in a keep alive state,
*) the request body should be discarded,
*) epoll/rtsig reports about the response header has been sent,
*) and write event handler calls core phase handler
2009-01-31 20:44:30 +00:00
Igor Sysoev
c9aae14a7e use "!= NGX_OK" instead of "== NGX_ERROR" 2008-12-09 17:27:48 +00:00
Igor Sysoev
f8ffc2eb59 delete unneeded call 2008-12-09 16:49:52 +00:00
Igor Sysoev
851cd73f1d *) refactor subrequest handling, now they run as separate posted requests
*) now $upstream_addr, $upstream_status, $upstream_response_time can be used
   with log_subrequest
2008-12-08 14:23:20 +00:00
Igor Sysoev
5bf2087462 allow POST without Content-Length 2008-12-08 14:04:31 +00:00
Igor Sysoev
abe378e820 ngx_http_limit_req_module 2008-11-10 15:22:33 +00:00
Igor Sysoev
eb62fa0e73 refactor log_subrequest 2008-09-29 13:18:41 +00:00
Igor Sysoev
5d1dcce2c5 update log_subrequest 2008-09-29 07:12:04 +00:00
Igor Sysoev
9059ecae83 fix the previous commit 2008-09-29 04:46:21 +00:00
Igor Sysoev
2eec1e1ff2 *) log_subrequest
*) flush variables in access log
2008-09-27 15:08:02 +00:00
Igor Sysoev
753792e108 underscores_in_headers 2008-09-24 14:02:50 +00:00
Igor Sysoev
05a7656d2c set request handlers, this fixes complex proxied 400 handler with SSI includes 2008-09-15 16:44:37 +00:00
Igor Sysoev
5d4e80b8fb remove unused #include's 2008-09-05 15:25:47 +00:00
Igor Sysoev
f100c7816d *) listen ssl
*) no default ssl_cetificate and ssl_cetificate_key
2008-09-01 14:19:01 +00:00
Igor Sysoev
54477e417a gzip_disable msie6 2008-08-26 15:09:28 +00:00
Igor Sysoev
b29426deb8 server_name "" support 2008-08-21 12:56:10 +00:00
Igor Sysoev
cbc7c6177c fix $r->header_in() for "User-Agent", "Connection", and "Host"
broken in r2005, r2006, and r2008.
2008-08-19 19:40:45 +00:00
Igor Sysoev
42511c05c7 $arg_... variable 2008-08-04 11:10:52 +00:00
Igor Sysoev
6a07833d47 ngx_hash_strlow() 2008-08-04 10:18:36 +00:00
Igor Sysoev
777b019c73 ngx_strlow() 2008-08-04 10:07:00 +00:00
Igor Sysoev
49ed6f3eec *) ssl_verify_client ask
*) test ssl_client_certificate for ssl_verify_client
*) $ssl_client_cert adds TAB before each line except first one
*) $ssl_client_raw_cert contains certificate as is
2008-07-29 14:29:02 +00:00
Igor Sysoev
504efffca8 fix error message 2008-06-30 15:32:57 +00:00
Igor Sysoev
1e1f4c8a04 the "Expect" header support 2008-06-26 13:00:39 +00:00
Igor Sysoev
7f6b2ffc60 *) back out r2040
*) refactor ngx_palloc()
*) introduce ngx_pnalloc()
*) additional pool blocks have smaller header
2008-06-17 15:00:30 +00:00
Igor Sysoev
cdd4354b49 style fix 2008-05-21 17:39:51 +00:00
Igor Sysoev
48242f4b08 avoid recursive loop 2008-05-19 10:24:22 +00:00
Igor Sysoev
5fd0931a61 *) host in request line has priority
*) allow several Host headers
*) validate host
2008-05-15 14:44:47 +00:00
Igor Sysoev
7a06fbdcca small fixes 2008-05-13 09:47:52 +00:00
Igor Sysoev
bc5fb294af test user agent in header callback 2008-05-13 09:18:58 +00:00
Igor Sysoev
439e288a1b fix memory leak when ssl_verify_client is on 2008-04-23 18:57:25 +00:00
Igor Sysoev
472233d0a3 invalidate SSL session if there is no valid client certificate 2008-03-10 14:47:07 +00:00
Igor Sysoev
ce30765975 named locations in post_action 2008-02-15 12:46:40 +00:00
Igor Sysoev
57b088d1cc add code missed in r1856 2008-01-09 08:21:57 +00:00
Igor Sysoev
1bc3a93ddf axe old flag remained after ancient "post_accept_timeout" directive 2008-01-08 20:55:27 +00:00
Igor Sysoev
bd68d51407 add code missed in r1830 2008-01-08 20:51:06 +00:00
Igor Sysoev
7b8ed4259b fix socket leak if deferred accept was used 2008-01-04 09:32:12 +00:00
Igor Sysoev
0d68f27748 log right request method 2007-12-30 09:11:19 +00:00
Igor Sysoev
feee7265b5 axe useless r->server_name 2007-12-30 08:15:27 +00:00
Igor Sysoev
cc5956772b log server address 2007-12-30 08:01:50 +00:00
Igor Sysoev
c7a9b7a990 use ngx_http_server_addr() 2007-12-29 16:00:34 +00:00
Igor Sysoev
3f24ae2be2 several changes in server_name:
*) server_name_in_redirect directive and removal of the '*' stub
*) use server address in redirect if host can not be detected
*) ngx_http_server_addr()
*) allow wildcard and regex names to be a main server_name
*) DAV Destination header is tested against Host header
2007-12-29 15:30:39 +00:00
Igor Sysoev
a936b27236 backout r1790 2007-12-27 14:39:05 +00:00
Igor Sysoev
3d70581d45 non-active request is not done 2007-12-27 14:20:50 +00:00
Igor Sysoev
e87afbad35 call post_action for 499 2007-12-27 13:13:34 +00:00
Igor Sysoev
cd2aa8e172 create ssl buffer on demand and free it before keep-alive 2007-12-26 21:07:30 +00:00
Igor Sysoev
12dcb354e9 style fix 2007-12-25 15:31:18 +00:00
Igor Sysoev
acb2f5d8c8 large_client_header_buffers did not free()ed before keep-alive 2007-12-12 15:42:39 +00:00
Igor Sysoev
86ef6aaa6b move condition declarations inside blocks where they are used 2007-12-10 12:09:51 +00:00
Igor Sysoev
58ea0c1aad copy protocol value when large request line is copied,
this fixes error "fastcgi: the request record is too big"
2007-12-01 12:22:48 +00:00
Igor Sysoev
1d4e9b31cc do not allow plain 0.9 request to HTTPS 2007-12-01 11:46:04 +00:00
Igor Sysoev
96dd8af8e6 proxy_pass variables support 2007-11-27 13:34:13 +00:00
Igor Sysoev
a6b5957f92 log entire request line instead of URI only 2007-11-27 12:22:01 +00:00
Igor Sysoev
1d04b14c09 64-bit time_t compatibility 2007-11-15 14:26:36 +00:00
Igor Sysoev
6c2f052744 If-Range support 2007-11-09 15:41:35 +00:00
Igor Sysoev
8decab3dd9 merge_slashes 2007-10-18 11:36:58 +00:00
Igor Sysoev
f53294103b pass length clearly 2007-10-01 12:57:47 +00:00
Igor Sysoev
0659720dc8 use ngx_strstrn() and ngx_strcasestrn() 2007-09-26 19:26:14 +00:00
Igor Sysoev
ec67b19ea0 there may be several "Connection" header lines and each may have several tokens 2007-09-09 18:28:49 +00:00
Igor Sysoev
589fc748ed style fix 2007-09-07 09:29:08 +00:00
Igor Sysoev
4f62b73898 If-Modified-Since should be unique header line 2007-08-29 15:32:49 +00:00
Igor Sysoev
543a6ae513 return 400 response 2007-08-27 20:52:40 +00:00
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