diff options
| author | Igor Sysoev <igor@sysoev.ru> | 2004-11-20 19:52:20 +0000 |
|---|---|---|
| committer | Igor Sysoev <igor@sysoev.ru> | 2004-11-20 19:52:20 +0000 |
| commit | d43bee8ee939992404d59ae0fec248ce46abecb0 (patch) | |
| tree | 6eb79a6902f147bedb8c85350cbdc68543115907 /src/http/modules | |
| parent | 13376e1538e2b29e436805c626f6837b34a482c5 (diff) | |
| download | nginx-release-0.1.8.tar.gz nginx-release-0.1.8.tar.bz2 | |
nginx-0.1.8-RELEASE importrelease-0.1.8
*) Bugfix: in the ngx_http_autoindex_module if the long file names were
in the listing.
*) Feature: the "^~" modifier in the location directive.
*) Feature: the proxy_max_temp_file_size directive.
Diffstat (limited to 'src/http/modules')
| -rw-r--r-- | src/http/modules/ngx_http_autoindex_handler.c | 5 | ||||
| -rw-r--r-- | src/http/modules/ngx_http_range_filter.c | 2 | ||||
| -rw-r--r-- | src/http/modules/proxy/ngx_http_proxy_handler.c | 32 |
3 files changed, 27 insertions, 12 deletions
diff --git a/src/http/modules/ngx_http_autoindex_handler.c b/src/http/modules/ngx_http_autoindex_handler.c index c78d4e616..f5ec9704f 100644 --- a/src/http/modules/ngx_http_autoindex_handler.c +++ b/src/http/modules/ngx_http_autoindex_handler.c @@ -304,10 +304,9 @@ static ngx_int_t ngx_http_autoindex_handler(ngx_http_request_t *r) + 1 /* 1 is for "/" */ + entry[i].name.len + entry[i].escape + sizeof("\">") - 1 - + NGX_HTTP_AUTOINDEX_NAME_LEN + + NGX_HTTP_AUTOINDEX_NAME_LEN + sizeof(">") - 2 + sizeof("</a>") - 1 - + 1 - + sizeof("28-Sep-1970 12:00 ") - 1 + + sizeof(" 28-Sep-1970 12:00 ") - 1 + sizeof("1023G") - 1 + 2; } diff --git a/src/http/modules/ngx_http_range_filter.c b/src/http/modules/ngx_http_range_filter.c index f96456cef..8f98719a1 100644 --- a/src/http/modules/ngx_http_range_filter.c +++ b/src/http/modules/ngx_http_range_filter.c @@ -340,7 +340,7 @@ static ngx_int_t ngx_http_range_header_filter(ngx_http_request_t *r) return NGX_ERROR; } - boundary = ngx_next_temp_number(0); + boundary = (uint32_t) ngx_next_temp_number(0); /* * The boundary header of the range: diff --git a/src/http/modules/proxy/ngx_http_proxy_handler.c b/src/http/modules/proxy/ngx_http_proxy_handler.c index 915d378e6..c0a8cf3d9 100644 --- a/src/http/modules/proxy/ngx_http_proxy_handler.c +++ b/src/http/modules/proxy/ngx_http_proxy_handler.c @@ -165,6 +165,13 @@ static ngx_command_t ngx_http_proxy_commands[] = { offsetof(ngx_http_proxy_loc_conf_t, temp_path), (void *) ngx_garbage_collector_temp_handler }, + { ngx_string("proxy_max_temp_file_size"), + NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_TAKE1, + ngx_conf_set_size_slot, + NGX_HTTP_LOC_CONF_OFFSET, + offsetof(ngx_http_proxy_loc_conf_t, max_temp_file_size), + NULL }, + { ngx_string("proxy_temp_file_write_size"), NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_TAKE1, ngx_conf_set_size_slot, @@ -954,12 +961,7 @@ static void *ngx_http_proxy_create_loc_conf(ngx_conf_t *cf) conf->read_timeout = NGX_CONF_UNSET_MSEC; conf->busy_buffers_size = NGX_CONF_UNSET_SIZE; - /* - * "proxy_max_temp_file_size" is hardcoded to 1G for reverse proxy, - * it should be configurable in the generic proxy - */ - conf->max_temp_file_size = 1024 * 1024 * 1024; - + conf->max_temp_file_size = NGX_CONF_UNSET_SIZE; conf->temp_file_write_size = NGX_CONF_UNSET_SIZE; /* "proxy_cyclic_temp_file" is disabled */ @@ -1059,11 +1061,25 @@ static char *ngx_http_proxy_merge_loc_conf(ngx_conf_t *cf, prev->max_temp_file_size, NGX_CONF_UNSET_SIZE); if (conf->max_temp_file_size == NGX_CONF_UNSET_SIZE) { + + /* + * "proxy_max_temp_file_size" is set to 1G for reverse proxy, + * it should be much less in the generic proxy + */ + + conf->max_temp_file_size = 1024 * 1024 * 1024; + +#if 0 conf->max_temp_file_size = 2 * size; +#endif + - } else if (conf->max_temp_file_size < size) { + } else if (conf->max_temp_file_size != 0 + && conf->max_temp_file_size < size) + { ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, - "\"proxy_max_temp_file_size\" must be equal or bigger than " + "\"proxy_max_temp_file_size\" must be equal to zero to disable " + "the temporary files usage or must be equal or bigger than " "maximum of the value of \"proxy_header_buffer_size\" and " "one of the \"proxy_buffers\""); |
