diff options
Diffstat (limited to 'src/http')
-rw-r--r-- | src/http/modules/ngx_http_access_handler.c | 3 | ||||
-rw-r--r-- | src/http/ngx_http_core_module.c | 10 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/http/modules/ngx_http_access_handler.c b/src/http/modules/ngx_http_access_handler.c index b6fdeab09..6dd572931 100644 --- a/src/http/modules/ngx_http_access_handler.c +++ b/src/http/modules/ngx_http_access_handler.c @@ -92,6 +92,9 @@ static ngx_int_t ngx_http_access_handler(ngx_http_request_t *r) rule = alcf->rules->elts; for (i = 0; i < alcf->rules->nelts; i++) { +ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, "%08X %08X %08X", + addr_in->sin_addr.s_addr, rule[i].mask, rule[i].addr); + if ((addr_in->sin_addr.s_addr & rule[i].mask) == rule[i].addr) { if (rule[i].deny) { ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, diff --git a/src/http/ngx_http_core_module.c b/src/http/ngx_http_core_module.c index 2280c1b74..06c6165ae 100644 --- a/src/http/ngx_http_core_module.c +++ b/src/http/ngx_http_core_module.c @@ -341,6 +341,16 @@ void ngx_http_handler(ngx_http_request_t *r) break; } + if (r->keepalive && r->headers_in.msie && r->method == NGX_HTTP_POST) { + + /* + * MSIE may wait for some time if the response for the POST request + * is sent over the keepalive connection + */ + + r->keepalive = 0; + } + #if 0 /* TEST STUB */ r->http_version = NGX_HTTP_VERSION_10; /* TEST STUB */ r->keepalive = 0; |