Mercurial > hg > nginx-vendor-0-5
comparison src/http/ngx_http_core_module.c @ 256:2e9c57a5e50a NGINX_0_4_13
nginx 0.4.13
*) Feature: the "proxy_pass" directive may be used inside the
"limit_except" block.
*) Feature: the "limit_except" directive supports all WebDAV methods.
*) Bugfix: if the "add_before_body" directive was used without the
"add_after_body" directive, then an response did not transferred
complete.
*) Bugfix: a large request body did not receive if the epoll method and
the deferred accept() were used.
*) Bugfix: a charset could not be set for ngx_http_autoindex_module
responses; bug appeared in 0.3.50.
*) Bugfix: the "[alert] zero size buf" error when FastCGI server was
used;
*) Bugfix: the --group= configuration parameter was ignored.
Thanks to Thomas Moschny.
*) Bugfix: the 50th subrequest in SSI response did not work; bug
appeared in 0.3.50.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Wed, 15 Nov 2006 00:00:00 +0300 |
parents | 644510700914 |
children | 251bcd11a5b8 |
comparison
equal
deleted
inserted
replaced
255:a13bad126e69 | 256:2e9c57a5e50a |
---|---|
1296 r->main->subrequests--; | 1296 r->main->subrequests--; |
1297 | 1297 |
1298 if (r->main->subrequests == 0) { | 1298 if (r->main->subrequests == 0) { |
1299 ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, | 1299 ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, |
1300 "subrequests cycle while processing \"%V\"", uri); | 1300 "subrequests cycle while processing \"%V\"", uri); |
1301 r->main->subrequests = 1; | |
1301 return NGX_ERROR; | 1302 return NGX_ERROR; |
1302 } | 1303 } |
1303 | 1304 |
1304 sr = ngx_pcalloc(r->pool, sizeof(ngx_http_request_t)); | 1305 sr = ngx_pcalloc(r->pool, sizeof(ngx_http_request_t)); |
1305 if (sr == NULL) { | 1306 if (sr == NULL) { |
1414 ngx_http_handler(sr); | 1415 ngx_http_handler(sr); |
1415 | 1416 |
1416 if (!c->destroyed) { | 1417 if (!c->destroyed) { |
1417 ngx_log_debug2(NGX_LOG_DEBUG_HTTP, c->log, 0, | 1418 ngx_log_debug2(NGX_LOG_DEBUG_HTTP, c->log, 0, |
1418 "http subrequest done \"%V?%V\"", uri, &sr->args); | 1419 "http subrequest done \"%V?%V\"", uri, &sr->args); |
1420 | |
1421 r->main->subrequests++; | |
1419 | 1422 |
1420 *psr = sr; | 1423 *psr = sr; |
1421 | 1424 |
1422 if (sr->fast_subrequest) { | 1425 if (sr->fast_subrequest) { |
1423 sr->fast_subrequest = 0; | 1426 sr->fast_subrequest = 0; |
2659 return NGX_CONF_OK; | 2662 return NGX_CONF_OK; |
2660 } | 2663 } |
2661 | 2664 |
2662 | 2665 |
2663 static ngx_http_method_name_t ngx_methods_names[] = { | 2666 static ngx_http_method_name_t ngx_methods_names[] = { |
2664 { "GET", (uint32_t) ~NGX_HTTP_GET }, | 2667 { "GET", (uint32_t) ~NGX_HTTP_GET }, |
2665 { "HEAD", (uint32_t) ~NGX_HTTP_HEAD }, | 2668 { "HEAD", (uint32_t) ~NGX_HTTP_HEAD }, |
2666 { "POST", (uint32_t) ~NGX_HTTP_POST }, | 2669 { "POST", (uint32_t) ~NGX_HTTP_POST }, |
2670 { "PUT", (uint32_t) ~NGX_HTTP_PUT }, | |
2671 { "DELETE", (uint32_t) ~NGX_HTTP_DELETE }, | |
2672 { "MKCOL", (uint32_t) ~NGX_HTTP_MKCOL }, | |
2673 { "COPY", (uint32_t) ~NGX_HTTP_COPY }, | |
2674 { "MOVE", (uint32_t) ~NGX_HTTP_MOVE }, | |
2675 { "OPTIONS", (uint32_t) ~NGX_HTTP_OPTIONS }, | |
2676 { "PROPFIND" , (uint32_t) ~NGX_HTTP_PROPFIND }, | |
2677 { "PROPPATCH", (uint32_t) ~NGX_HTTP_PROPPATCH }, | |
2678 { "LOCK", (uint32_t) ~NGX_HTTP_LOCK }, | |
2679 { "UNLOCK", (uint32_t) ~NGX_HTTP_UNLOCK }, | |
2667 { NULL, 0 } | 2680 { NULL, 0 } |
2668 }; | 2681 }; |
2669 | 2682 |
2670 | 2683 |
2671 static char * | 2684 static char * |