summaryrefslogtreecommitdiffhomepage
path: root/src/http/ngx_http.h (follow)
AgeCommit message (Collapse)AuthorFilesLines
2015-03-23Request body: unbuffered reading.Maxim Dounin1-0/+1
The r->request_body_no_buffering flag was introduced. It instructs client request body reading code to avoid reading the whole body, and to call post_handler early instead. The caller should use the ngx_http_read_unbuffered_request_body() function to read remaining parts of the body. Upstream module is now able to use this mode, if configured with the proxy_request_buffering directive.
2015-03-23Request body: filters support.Maxim Dounin1-0/+1
2015-03-20Removed busy locks.Ruslan Ermilov1-1/+0
2015-03-04Style: moved ngx_http_ephemeral() macro to ngx_http_request.h.Ruslan Ermilov1-3/+0
2014-04-29Upstream: added the "$upstream_cookie_<name>" variables.Vladimir Homutov1-0/+2
2013-05-11Fixed build with --with-mail_ssl_module.Maxim Dounin1-1/+1
If nginx was compiled without --with-http_ssl_module, but with some other module which uses OpenSSL (e.g. --with-mail_ssl_module), insufficient preprocessor check resulted in build failure. The problem was introduced by e0a3714a36f8 (1.3.14). Reported by Roman Arutyunyan.
2013-03-20Preliminary experimental support for SPDY draft 2.Valentin Bartenev1-0/+14
2013-03-11Removed unused prototype of ngx_http_find_server_conf().Valentin Bartenev1-1/+0
This function prototype and its implementation was added in r90, but the implementation was removed in r97.
2013-02-27SNI: reuse selected configuration for all requests in a connection.Valentin Bartenev1-1/+1
Previously, only the first request in a connection was assigned the configuration selected by SNI. All subsequent requests initially used the default server's configuration, ignoring SNI, which was wrong. Now all subsequent requests in a connection will initially use the configuration selected by SNI. This is done by storing a pointer to configuration in http connection object. It points to default server's configuration initially, but changed upon receipt of SNI. (The request's configuration can be further refined when parsing the request line and Host: header.) This change was not made specific to SNI as it also allows slightly faster access to configuration without the request object.
2013-01-16Fixed and improved the "*_bind" directives of proxying modules.Ruslan Ermilov1-1/+1
The "proxy_bind", "fastcgi_bind", "uwsgi_bind", "scgi_bind" and "memcached_bind" directives are now inherited; inherited value can be reset by the "off" parameter. Duplicate directives are now detected. Parameter value can now contain variables.
2012-11-21Request body: chunked parsing moved to ngx_http_parse.c from proxy.Maxim Dounin1-0/+10
No functional changes.
2012-01-18Copyright updated.Maxim Konovalov1-0/+1
2011-09-15Protocol version parsing in ngx_http_parse_status_line().Maxim Dounin1-0/+1
Once we know protocol version, set u->headers_in.connection_close to indicate implicitly assumed connection close with HTTP before 1.1.
2010-10-04ngx_http_degraded()Igor Sysoev1-0/+4
2010-06-15ngx_http_parse_status_line()Igor Sysoev1-0/+10
2009-12-21fix building by gcc 4.x with -O2/3/s in some Linux distributions:Igor Sysoev1-1/+1
dereferencing type-punned pointer will break strict-aliasing rules the bug has been introduced in r3065
2009-11-30support "*" in gzip_types, ssi_types, etcIgor Sysoev1-3/+3
2009-10-21*) move sockaddr to the listen optionsIgor Sysoev1-1/+1
*) rename ngx_http_listen_t to ngx_http_listen_opt_t
2009-10-21refactor http listen code:Igor Sysoev1-0/+2
*) add listen's to the global cmcf->ports array instead of server's one *) rename ngx_http_listen_conf_t to ngx_http_listen_opt_t
2009-10-19restore discard body handler after ngx_http_set_writer() set it toIgor Sysoev1-0/+1
ngx_http_test_reading(), the bug was introduced in r3050
2009-08-30*) ngx_http_ephemeralIgor Sysoev1-1/+5
*) use preallocated terminal_posted_request
2009-05-08allow to pass image filter errors via the same location where the filter is setIgor Sysoev1-1/+1
2009-05-01ngx_http_filter_finalize_request() and ngx_http_clean_header()Igor Sysoev1-0/+3
2009-03-23a prelimiary proxy cache supportIgor Sysoev1-10/+8
2009-03-22use complex value in error_pageIgor Sysoev1-1/+1
2009-03-19ngx_http_split_args()Igor Sysoev1-0/+2
2008-12-22ngx_http_arg()Igor Sysoev1-0/+3
2008-12-08*) refactor subrequest handling, now they run as separate posted requestsIgor Sysoev1-0/+3
*) now $upstream_addr, $upstream_status, $upstream_response_time can be used with log_subrequest
2008-11-10ngx_http_limit_req_moduleIgor Sysoev1-0/+1
2008-09-24underscores_in_headersIgor Sysoev1-1/+2
2008-08-13*) fix segfaults in types hashIgor Sysoev1-1/+1
*) fix inheritance: default hash instead of inherited one
2008-08-12use hash in gzip_types, ssi_types, and sub_filter_typesIgor Sysoev1-0/+2
2008-08-04test Content-Type via hash:Igor Sysoev1-0/+8
*) ngx_http_test_content_type() *) ngx_http_types_slot() *) ngx_http_merge_types()
2008-05-24locations treeIgor Sysoev1-0/+4
2008-05-22axe never used variablesIgor Sysoev1-4/+0
2007-12-30log server addressIgor Sysoev1-1/+1
2007-11-28delete unneeded declarationIgor Sysoev1-5/+0
2007-10-18merge_slashesIgor Sysoev1-1/+2
2007-08-06rename ngx_http_discard_body() to ngx_http_discard_request_body()Igor Sysoev1-1/+1
2007-08-06rename ngx_http_block_read() and ngx_http_test_read() to ..._reading()Igor Sysoev1-0/+1
2007-05-29SNI supportIgor Sysoev1-0/+4
2006-12-04upstream choice modulesIgor Sysoev1-0/+1
2006-11-27axe old % log formatIgor Sysoev1-1/+0
2006-08-16nginx-0.3.59-RELEASE importrelease-0.3.59Igor Sysoev1-6/+2
*) 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-07-28nginx-0.3.55-RELEASE importrelease-0.3.55Igor Sysoev1-3/+0
*) 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-11nginx-0.3.54-RELEASE importrelease-0.3.54Igor Sysoev1-2/+3
*) 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-01-11nginx-0.3.20-RELEASE importrelease-0.3.20Igor Sysoev1-0/+3
*) Bugfix: in SSI handling. *) Bugfix: the ngx_http_memcached_module did not support the keys in the "/usr?args" form.
2005-12-26nginx-0.3.18-RELEASE importrelease-0.3.18Igor Sysoev1-1/+0
*) 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-11-26nginx-0.3.12-RELEASE importrelease-0.3.12Igor Sysoev1-1/+5
*) 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-09nginx-0.3.8-RELEASE importrelease-0.3.8Igor Sysoev1-0/+2
*) 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.