comparison src/http/ngx_http_core_module.c @ 634:0d6525917227 NGINX_1_0_7

nginx 1.0.7 *) Change: now if total size of all ranges is greater than source response size, then nginx disables ranges and returns just the source response. *) Feature: the "max_ranges" directive. *) Feature: the module ngx_http_mp4_module. *) Feature: the "worker_aio_requests" directive. *) Bugfix: if nginx was built --with-file-aio it could not be run on Linux kernel which did not support AIO. *) Bugfix: in Linux AIO error processing. Thanks to Hagai Avrahami. *) Bugfix: in Linux AIO combined with open_file_cache. *) Bugfix: open_file_cache did not update file info on retest if file was not atomically changed. *) Bugfix: reduced memory consumption for long-lived requests. *) Bugfix: in the "proxy/fastcgi/scgi/uwsgi_ignore_client_abort" directives. *) Bugfix: nginx could not be built on MacOSX 10.7. *) Bugfix: in the "proxy/fastcgi/scgi/uwsgi_ignore_client_abort" directives. *) Bugfix: request body might be processed incorrectly if client used pipelining. *) Bugfix: in the "request_body_in_single_buf" directive. *) Bugfix: in "proxy_set_body" and "proxy_pass_request_body" directives if SSL connection to backend was used. *) Bugfix: nginx hogged CPU if all servers in an upstream were marked as "down". *) Bugfix: a segmentation fault might occur during reconfiguration if ssl_session_cache was defined but not used in previous configuration. *) Bugfix: a segmentation fault might occur in a worker process if many backup servers were used in an upstream.
author Igor Sysoev <http://sysoev.ru>
date Fri, 30 Sep 2011 00:00:00 +0400
parents 65fd8be45530
children 692f4d4d7f10
comparison
equal deleted inserted replaced
633:7c3c34755d2e 634:0d6525917227
629 ngx_conf_set_enum_slot, 629 ngx_conf_set_enum_slot,
630 NGX_HTTP_LOC_CONF_OFFSET, 630 NGX_HTTP_LOC_CONF_OFFSET,
631 offsetof(ngx_http_core_loc_conf_t, if_modified_since), 631 offsetof(ngx_http_core_loc_conf_t, if_modified_since),
632 &ngx_http_core_if_modified_since }, 632 &ngx_http_core_if_modified_since },
633 633
634 { ngx_string("max_ranges"),
635 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_TAKE1,
636 ngx_conf_set_num_slot,
637 NGX_HTTP_LOC_CONF_OFFSET,
638 offsetof(ngx_http_core_loc_conf_t, max_ranges),
639 NULL },
640
634 { ngx_string("chunked_transfer_encoding"), 641 { ngx_string("chunked_transfer_encoding"),
635 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_TAKE1, 642 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_TAKE1,
636 ngx_conf_set_flag_slot, 643 ngx_conf_set_flag_slot,
637 NGX_HTTP_LOC_CONF_OFFSET, 644 NGX_HTTP_LOC_CONF_OFFSET,
638 offsetof(ngx_http_core_loc_conf_t, chunked_transfer_encoding), 645 offsetof(ngx_http_core_loc_conf_t, chunked_transfer_encoding),
3251 clcf->client_body_buffer_size = NGX_CONF_UNSET_SIZE; 3258 clcf->client_body_buffer_size = NGX_CONF_UNSET_SIZE;
3252 clcf->client_body_timeout = NGX_CONF_UNSET_MSEC; 3259 clcf->client_body_timeout = NGX_CONF_UNSET_MSEC;
3253 clcf->keepalive_disable = NGX_CONF_UNSET_UINT; 3260 clcf->keepalive_disable = NGX_CONF_UNSET_UINT;
3254 clcf->satisfy = NGX_CONF_UNSET_UINT; 3261 clcf->satisfy = NGX_CONF_UNSET_UINT;
3255 clcf->if_modified_since = NGX_CONF_UNSET_UINT; 3262 clcf->if_modified_since = NGX_CONF_UNSET_UINT;
3263 clcf->max_ranges = NGX_CONF_UNSET_UINT;
3256 clcf->client_body_in_file_only = NGX_CONF_UNSET_UINT; 3264 clcf->client_body_in_file_only = NGX_CONF_UNSET_UINT;
3257 clcf->client_body_in_single_buffer = NGX_CONF_UNSET; 3265 clcf->client_body_in_single_buffer = NGX_CONF_UNSET;
3258 clcf->internal = NGX_CONF_UNSET; 3266 clcf->internal = NGX_CONF_UNSET;
3259 clcf->sendfile = NGX_CONF_UNSET; 3267 clcf->sendfile = NGX_CONF_UNSET;
3260 clcf->sendfile_max_chunk = NGX_CONF_UNSET_SIZE; 3268 clcf->sendfile_max_chunk = NGX_CONF_UNSET_SIZE;
3457 |NGX_HTTP_KEEPALIVE_DISABLE_SAFARI); 3465 |NGX_HTTP_KEEPALIVE_DISABLE_SAFARI);
3458 ngx_conf_merge_uint_value(conf->satisfy, prev->satisfy, 3466 ngx_conf_merge_uint_value(conf->satisfy, prev->satisfy,
3459 NGX_HTTP_SATISFY_ALL); 3467 NGX_HTTP_SATISFY_ALL);
3460 ngx_conf_merge_uint_value(conf->if_modified_since, prev->if_modified_since, 3468 ngx_conf_merge_uint_value(conf->if_modified_since, prev->if_modified_since,
3461 NGX_HTTP_IMS_EXACT); 3469 NGX_HTTP_IMS_EXACT);
3470 ngx_conf_merge_uint_value(conf->max_ranges, prev->max_ranges,
3471 0x7fffffff);
3462 ngx_conf_merge_uint_value(conf->client_body_in_file_only, 3472 ngx_conf_merge_uint_value(conf->client_body_in_file_only,
3463 prev->client_body_in_file_only, 0); 3473 prev->client_body_in_file_only, 0);
3464 ngx_conf_merge_value(conf->client_body_in_single_buffer, 3474 ngx_conf_merge_value(conf->client_body_in_single_buffer,
3465 prev->client_body_in_single_buffer, 0); 3475 prev->client_body_in_single_buffer, 0);
3466 ngx_conf_merge_value(conf->internal, prev->internal, 0); 3476 ngx_conf_merge_value(conf->internal, prev->internal, 0);