Mercurial > hg > nginx-vendor-1-0
comparison src/http/ngx_http.c @ 638:692f4d4d7f10 NGINX_1_0_9
nginx 1.0.9
*) Change: now the 0x7F-0x1F characters are escaped as \xXX in an
access_log.
*) Change: now SIGWINCH signal works only in daemon mode.
*) Feature: "proxy/fastcgi/scgi/uwsgi_ignore_headers" directives support
the following additional values: X-Accel-Limit-Rate,
X-Accel-Buffering, X-Accel-Charset.
*) Feature: decrease of memory consumption if SSL is used.
*) Feature: accept filters are now supported on NetBSD.
*) Feature: the "uwsgi_buffering" and "scgi_buffering" directives.
Thanks to Peter Smit.
*) Bugfix: a segmentation fault occurred on start or while
reconfiguration if the "ssl" directive was used at http level and
there was no "ssl_certificate" defined.
*) Bugfix: some UTF-8 characters were processed incorrectly.
Thanks to Alexey Kuts.
*) Bugfix: the ngx_http_rewrite_module directives specified at "server"
level were executed twice if no matching locations were defined.
*) Bugfix: a socket leak might occurred if "aio sendfile" was used.
*) Bugfix: connections with fast clients might be closed after
send_timeout if file AIO was used.
*) Bugfix: in the ngx_http_autoindex_module.
*) Bugfix: the module ngx_http_mp4_module did not support seeking on
32-bit platforms.
*) Bugfix: non-cacheable responses might be cached if
"proxy_cache_bypass" directive was used.
Thanks to John Ferlito.
*) Bugfix: cached responses with an empty body were returned
incorrectly; the bug had appeared in 0.8.31.
*) Bugfix: 201 responses of the ngx_http_dav_module were incorrect; the
bug had appeared in 0.8.32.
*) Bugfix: in the "return" directive.
*) Bugfix: the "ssl_verify_client", "ssl_verify_depth", and
"ssl_prefer_server_ciphers" directives might work incorrectly if SNI
was used.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Tue, 01 Nov 2011 00:00:00 +0400 |
parents | 7ea1bba9a4f6 |
children | ad25218fd14b |
comparison
equal
deleted
inserted
replaced
637:ea7441793bba | 638:692f4d4d7f10 |
---|---|
1224 #if (NGX_HTTP_SSL) | 1224 #if (NGX_HTTP_SSL) |
1225 ngx_uint_t ssl; | 1225 ngx_uint_t ssl; |
1226 #endif | 1226 #endif |
1227 | 1227 |
1228 /* | 1228 /* |
1229 * we can not compare whole sockaddr struct's as kernel | 1229 * we cannot compare whole sockaddr struct's as kernel |
1230 * may fill some fields in inherited sockaddr struct's | 1230 * may fill some fields in inherited sockaddr struct's |
1231 */ | 1231 */ |
1232 | 1232 |
1233 sa = &lsopt->u.sockaddr; | 1233 sa = &lsopt->u.sockaddr; |
1234 | 1234 |
1279 | 1279 |
1280 if (lsopt->set) { | 1280 if (lsopt->set) { |
1281 | 1281 |
1282 if (addr[i].opt.set) { | 1282 if (addr[i].opt.set) { |
1283 ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, | 1283 ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, |
1284 "a duplicate listen options for %s", addr[i].opt.addr); | 1284 "duplicate listen options for %s", addr[i].opt.addr); |
1285 return NGX_ERROR; | 1285 return NGX_ERROR; |
1286 } | 1286 } |
1287 | 1287 |
1288 addr[i].opt = *lsopt; | 1288 addr[i].opt = *lsopt; |
1289 } | 1289 } |
1745 ls->log.data = &ls->addr_text; | 1745 ls->log.data = &ls->addr_text; |
1746 ls->log.handler = ngx_accept_log_error; | 1746 ls->log.handler = ngx_accept_log_error; |
1747 | 1747 |
1748 #if (NGX_WIN32) | 1748 #if (NGX_WIN32) |
1749 { | 1749 { |
1750 ngx_iocp_conf_t *iocpcf; | 1750 ngx_iocp_conf_t *iocpcf = NULL; |
1751 | 1751 |
1752 iocpcf = ngx_event_get_conf(cf->cycle->conf_ctx, ngx_iocp_module); | 1752 if (ngx_get_conf(cf->cycle->conf_ctx, ngx_events_module)) { |
1753 if (iocpcf->acceptex_read) { | 1753 iocpcf = ngx_event_get_conf(cf->cycle->conf_ctx, ngx_iocp_module); |
1754 } | |
1755 if (iocpcf && iocpcf->acceptex_read) { | |
1754 ls->post_accept_buffer_size = cscf->client_header_buffer_size; | 1756 ls->post_accept_buffer_size = cscf->client_header_buffer_size; |
1755 } | 1757 } |
1756 } | 1758 } |
1757 #endif | 1759 #endif |
1758 | 1760 |