comparison src/http/ngx_http_core_module.c @ 160:73e8476f9142 NGINX_0_3_27

nginx 0.3.27 *) Change: the "variables_hash_max_size" and "variables_hash_bucket_size" directives. *) Feature: the $body_bytes_sent variable can be used not only in the "log_format" directive. *) Feature: the $ssl_protocol and $ssl_cipher variables. *) Feature: the cache line size detection for widespread CPUs at start time. *) Feature: now the "accept_mutex" directive is supported using fcntl(2) on platforms different from i386, amd64, sparc64, and ppc. *) Feature: the "lock_file" directive and the --with-lock-path=PATH autoconfiguration directive. *) Bugfix: if the HTTPS protocol was used in the "proxy_pass" directive then the requests with the body was not transferred.
author Igor Sysoev <http://sysoev.ru>
date Wed, 08 Feb 2006 00:00:00 +0300
parents 2d15b82126ed
children 6be073125f2e
comparison
equal deleted inserted replaced
159:25c27e983933 160:73e8476f9142
74 { ngx_null_string, 0 } 74 { ngx_null_string, 0 }
75 }; 75 };
76 76
77 77
78 static ngx_command_t ngx_http_core_commands[] = { 78 static ngx_command_t ngx_http_core_commands[] = {
79
80 { ngx_string("variables_hash_max_size"),
81 NGX_HTTP_MAIN_CONF|NGX_CONF_TAKE1,
82 ngx_conf_set_num_slot,
83 NGX_HTTP_MAIN_CONF_OFFSET,
84 offsetof(ngx_http_core_main_conf_t, variables_hash_max_size),
85 NULL },
86
87 { ngx_string("variables_hash_bucket_size"),
88 NGX_HTTP_MAIN_CONF|NGX_CONF_TAKE1,
89 ngx_conf_set_num_slot,
90 NGX_HTTP_MAIN_CONF_OFFSET,
91 offsetof(ngx_http_core_main_conf_t, variables_hash_bucket_size),
92 NULL },
79 93
80 { ngx_string("server_names_hash_max_size"), 94 { ngx_string("server_names_hash_max_size"),
81 NGX_HTTP_MAIN_CONF|NGX_CONF_TAKE1, 95 NGX_HTTP_MAIN_CONF|NGX_CONF_TAKE1,
82 ngx_conf_set_num_slot, 96 ngx_conf_set_num_slot,
83 NGX_HTTP_MAIN_CONF_OFFSET, 97 NGX_HTTP_MAIN_CONF_OFFSET,
1785 } 1799 }
1786 1800
1787 cmcf->server_names_hash_max_size = NGX_CONF_UNSET_UINT; 1801 cmcf->server_names_hash_max_size = NGX_CONF_UNSET_UINT;
1788 cmcf->server_names_hash_bucket_size = NGX_CONF_UNSET_UINT; 1802 cmcf->server_names_hash_bucket_size = NGX_CONF_UNSET_UINT;
1789 1803
1804 cmcf->variables_hash_max_size = NGX_CONF_UNSET_UINT;
1805 cmcf->variables_hash_bucket_size = NGX_CONF_UNSET_UINT;
1806
1790 return cmcf; 1807 return cmcf;
1791 } 1808 }
1792 1809
1793 1810
1794 static char * 1811 static char *
1804 cmcf->server_names_hash_bucket_size = ngx_cacheline_size; 1821 cmcf->server_names_hash_bucket_size = ngx_cacheline_size;
1805 } 1822 }
1806 1823
1807 cmcf->server_names_hash_bucket_size = 1824 cmcf->server_names_hash_bucket_size =
1808 ngx_align(cmcf->server_names_hash_bucket_size, ngx_cacheline_size); 1825 ngx_align(cmcf->server_names_hash_bucket_size, ngx_cacheline_size);
1826
1827
1828 if (cmcf->variables_hash_max_size == NGX_CONF_UNSET_UINT) {
1829 cmcf->variables_hash_max_size = 512;
1830 }
1831
1832 if (cmcf->variables_hash_bucket_size == NGX_CONF_UNSET_UINT) {
1833 cmcf->variables_hash_bucket_size = 64;
1834 }
1835
1836 cmcf->variables_hash_bucket_size =
1837 ngx_align(cmcf->variables_hash_bucket_size, ngx_cacheline_size);
1809 1838
1810 return NGX_CONF_OK; 1839 return NGX_CONF_OK;
1811 } 1840 }
1812 1841
1813 1842
2222 2251
2223 ngx_memzero(ls, sizeof(ngx_http_listen_t)); 2252 ngx_memzero(ls, sizeof(ngx_http_listen_t));
2224 2253
2225 ls->family = AF_INET; 2254 ls->family = AF_INET;
2226 ls->port = (in_port_t) (inet_upstream.default_port ? 2255 ls->port = (in_port_t) (inet_upstream.default_port ?
2227 80 : inet_upstream.port); 2256 80 : inet_upstream.port);
2228 ls->file_name = cf->conf_file->file.name; 2257 ls->file_name = cf->conf_file->file.name;
2229 ls->line = cf->conf_file->line; 2258 ls->line = cf->conf_file->line;
2230 ls->conf.backlog = -1; 2259 ls->conf.backlog = -1;
2231 ls->conf.rcvbuf = -1; 2260 ls->conf.rcvbuf = -1;
2232 ls->conf.sndbuf = -1; 2261 ls->conf.sndbuf = -1;