nginxtra 1.2.1.3 → 1.2.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/VERSION +1 -1
- data/bin/nginxtra +1 -1
- data/src/nginx/CHANGES +60 -0
- data/src/nginx/CHANGES.ru +57 -0
- data/src/nginx/auto/{endianess → endianness} +5 -5
- data/src/nginx/auto/lib/google-perftools/conf +16 -0
- data/src/nginx/auto/modules +10 -0
- data/src/nginx/auto/options +3 -0
- data/src/nginx/auto/os/conf +2 -0
- data/src/nginx/auto/sources +5 -0
- data/src/nginx/auto/unix +1 -1
- data/src/nginx/src/core/nginx.h +2 -2
- data/src/nginx/src/core/ngx_hash.c +13 -11
- data/src/nginx/src/core/ngx_inet.c +32 -31
- data/src/nginx/src/core/ngx_regex.c +3 -3
- data/src/nginx/src/core/ngx_regex.h +2 -2
- data/src/nginx/src/core/ngx_resolver.c +22 -16
- data/src/nginx/src/event/ngx_event_openssl.c +18 -1
- data/src/nginx/src/http/modules/ngx_http_geo_module.c +1 -1
- data/src/nginx/src/http/modules/ngx_http_geoip_module.c +15 -4
- data/src/nginx/src/http/modules/ngx_http_log_module.c +3 -6
- data/src/nginx/src/http/modules/ngx_http_mp4_module.c +18 -1
- data/src/nginx/src/http/modules/ngx_http_rewrite_module.c +6 -0
- data/src/nginx/src/http/modules/ngx_http_split_clients_module.c +7 -0
- data/src/nginx/src/http/modules/ngx_http_upstream_ip_hash_module.c +44 -17
- data/src/nginx/src/http/modules/ngx_http_upstream_keepalive_module.c +4 -29
- data/src/nginx/src/http/modules/ngx_http_upstream_least_conn_module.c +402 -0
- data/src/nginx/src/http/modules/ngx_http_xslt_filter_module.c +2 -2
- data/src/nginx/src/http/modules/perl/nginx.pm +1 -1
- data/src/nginx/src/http/modules/perl/nginx.xs +1 -1
- data/src/nginx/src/http/ngx_http_core_module.c +1 -1
- data/src/nginx/src/http/ngx_http_header_filter_module.c +2 -2
- data/src/nginx/src/http/ngx_http_request.c +1 -1
- data/src/nginx/src/http/ngx_http_request.h +8 -1
- data/src/nginx/src/http/ngx_http_upstream.c +15 -1
- data/src/nginx/src/http/ngx_http_upstream_round_robin.c +11 -1
- data/src/nginx/src/http/ngx_http_upstream_round_robin.h +5 -1
- data/src/nginx/src/http/ngx_http_variables.c +49 -3
- data/src/nginx/src/os/unix/ngx_errno.c +1 -1
- data/src/nginx/src/os/unix/ngx_errno.h +1 -1
- data/src/nginx/src/os/unix/ngx_freebsd_init.c +2 -2
- data/src/nginx/src/os/unix/ngx_posix_config.h +1 -0
- data/src/nginx/src/os/unix/ngx_process_cycle.c +4 -0
- metadata +5 -4
@@ -77,6 +77,8 @@ static ngx_int_t ngx_http_variable_request_body(ngx_http_request_t *r,
|
|
77
77
|
ngx_http_variable_value_t *v, uintptr_t data);
|
78
78
|
static ngx_int_t ngx_http_variable_request_body_file(ngx_http_request_t *r,
|
79
79
|
ngx_http_variable_value_t *v, uintptr_t data);
|
80
|
+
static ngx_int_t ngx_http_variable_status(ngx_http_request_t *r,
|
81
|
+
ngx_http_variable_value_t *v, uintptr_t data);
|
80
82
|
|
81
83
|
static ngx_int_t ngx_http_variable_sent_content_type(ngx_http_request_t *r,
|
82
84
|
ngx_http_variable_value_t *v, uintptr_t data);
|
@@ -132,7 +134,7 @@ static ngx_http_variable_t ngx_http_core_variables[] = {
|
|
132
134
|
offsetof(ngx_http_request_t, headers_in.via), 0, 0 },
|
133
135
|
#endif
|
134
136
|
|
135
|
-
#if (
|
137
|
+
#if (NGX_HTTP_X_FORWARDED_FOR)
|
136
138
|
{ ngx_string("http_x_forwarded_for"), NULL, ngx_http_variable_header,
|
137
139
|
offsetof(ngx_http_request_t, headers_in.x_forwarded_for), 0, 0 },
|
138
140
|
#endif
|
@@ -225,6 +227,10 @@ static ngx_http_variable_t ngx_http_core_variables[] = {
|
|
225
227
|
ngx_http_variable_request_body_file,
|
226
228
|
0, 0, 0 },
|
227
229
|
|
230
|
+
{ ngx_string("status"), NULL,
|
231
|
+
ngx_http_variable_status, 0,
|
232
|
+
NGX_HTTP_VAR_NOCACHEABLE, 0 },
|
233
|
+
|
228
234
|
{ ngx_string("sent_http_content_type"), NULL,
|
229
235
|
ngx_http_variable_sent_content_type, 0, 0, 0 },
|
230
236
|
|
@@ -1455,6 +1461,39 @@ ngx_http_variable_body_bytes_sent(ngx_http_request_t *r,
|
|
1455
1461
|
}
|
1456
1462
|
|
1457
1463
|
|
1464
|
+
static ngx_int_t
|
1465
|
+
ngx_http_variable_status(ngx_http_request_t *r,
|
1466
|
+
ngx_http_variable_value_t *v, uintptr_t data)
|
1467
|
+
{
|
1468
|
+
ngx_uint_t status;
|
1469
|
+
|
1470
|
+
v->data = ngx_pnalloc(r->pool, NGX_INT_T_LEN);
|
1471
|
+
if (v->data == NULL) {
|
1472
|
+
return NGX_ERROR;
|
1473
|
+
}
|
1474
|
+
|
1475
|
+
if (r->err_status) {
|
1476
|
+
status = r->err_status;
|
1477
|
+
|
1478
|
+
} else if (r->headers_out.status) {
|
1479
|
+
status = r->headers_out.status;
|
1480
|
+
|
1481
|
+
} else if (r->http_version == NGX_HTTP_VERSION_9) {
|
1482
|
+
status = 9;
|
1483
|
+
|
1484
|
+
} else {
|
1485
|
+
status = 0;
|
1486
|
+
}
|
1487
|
+
|
1488
|
+
v->len = ngx_sprintf(v->data, "%03ui", status) - v->data;
|
1489
|
+
v->valid = 1;
|
1490
|
+
v->no_cacheable = 0;
|
1491
|
+
v->not_found = 0;
|
1492
|
+
|
1493
|
+
return NGX_OK;
|
1494
|
+
}
|
1495
|
+
|
1496
|
+
|
1458
1497
|
static ngx_int_t
|
1459
1498
|
ngx_http_variable_sent_content_type(ngx_http_request_t *r,
|
1460
1499
|
ngx_http_variable_value_t *v, uintptr_t data)
|
@@ -2016,7 +2055,7 @@ ngx_int_t
|
|
2016
2055
|
ngx_http_variables_add_core_vars(ngx_conf_t *cf)
|
2017
2056
|
{
|
2018
2057
|
ngx_int_t rc;
|
2019
|
-
ngx_http_variable_t *v;
|
2058
|
+
ngx_http_variable_t *cv, *v;
|
2020
2059
|
ngx_http_core_main_conf_t *cmcf;
|
2021
2060
|
|
2022
2061
|
cmcf = ngx_http_conf_get_module_main_conf(cf, ngx_http_core_module);
|
@@ -2036,7 +2075,14 @@ ngx_http_variables_add_core_vars(ngx_conf_t *cf)
|
|
2036
2075
|
return NGX_ERROR;
|
2037
2076
|
}
|
2038
2077
|
|
2039
|
-
for (
|
2078
|
+
for (cv = ngx_http_core_variables; cv->name.len; cv++) {
|
2079
|
+
v = ngx_palloc(cf->pool, sizeof(ngx_http_variable_t));
|
2080
|
+
if (v == NULL) {
|
2081
|
+
return NGX_ERROR;
|
2082
|
+
}
|
2083
|
+
|
2084
|
+
*v = *cv;
|
2085
|
+
|
2040
2086
|
rc = ngx_hash_add_key(cmcf->variables_keys, &v->name, v,
|
2041
2087
|
NGX_HASH_READONLY_KEY);
|
2042
2088
|
|
@@ -76,9 +76,9 @@ ngx_debug_init()
|
|
76
76
|
{
|
77
77
|
#if (NGX_DEBUG_MALLOC)
|
78
78
|
|
79
|
-
#if __FreeBSD_version >= 500014
|
79
|
+
#if __FreeBSD_version >= 500014 && __FreeBSD_version < 1000011
|
80
80
|
_malloc_options = "J";
|
81
|
-
#
|
81
|
+
#elif __FreeBSD_version < 500014
|
82
82
|
malloc_options = "J";
|
83
83
|
#endif
|
84
84
|
|
@@ -711,6 +711,8 @@ ngx_master_process_exit(ngx_cycle_t *cycle)
|
|
711
711
|
ngx_exit_log.file = &ngx_exit_log_file;
|
712
712
|
|
713
713
|
ngx_exit_cycle.log = &ngx_exit_log;
|
714
|
+
ngx_exit_cycle.files = ngx_cycle->files;
|
715
|
+
ngx_exit_cycle.files_n = ngx_cycle->files_n;
|
714
716
|
ngx_cycle = &ngx_exit_cycle;
|
715
717
|
|
716
718
|
ngx_destroy_pool(cycle->pool);
|
@@ -1054,6 +1056,8 @@ ngx_worker_process_exit(ngx_cycle_t *cycle)
|
|
1054
1056
|
ngx_exit_log.file = &ngx_exit_log_file;
|
1055
1057
|
|
1056
1058
|
ngx_exit_cycle.log = &ngx_exit_log;
|
1059
|
+
ngx_exit_cycle.files = ngx_cycle->files;
|
1060
|
+
ngx_exit_cycle.files_n = ngx_cycle->files_n;
|
1057
1061
|
ngx_cycle = &ngx_exit_cycle;
|
1058
1062
|
|
1059
1063
|
ngx_destroy_pool(cycle->pool);
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nginxtra
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.2.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2012-07-07 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: thor
|
16
|
-
requirement: &
|
16
|
+
requirement: &18131880 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,7 +21,7 @@ dependencies:
|
|
21
21
|
version: 0.15.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *18131880
|
25
25
|
description: This gem is intended to provide an easy to use configuration file that
|
26
26
|
will automatically be used to compile nginx and configure the configuration.
|
27
27
|
email: reasonnumber@gmail.com
|
@@ -62,7 +62,7 @@ files:
|
|
62
62
|
- src/nginx/auto/cc/owc
|
63
63
|
- src/nginx/auto/cc/sunc
|
64
64
|
- src/nginx/auto/define
|
65
|
-
- src/nginx/auto/
|
65
|
+
- src/nginx/auto/endianness
|
66
66
|
- src/nginx/auto/feature
|
67
67
|
- src/nginx/auto/have
|
68
68
|
- src/nginx/auto/have_headers
|
@@ -272,6 +272,7 @@ files:
|
|
272
272
|
- src/nginx/src/http/modules/ngx_http_sub_filter_module.c
|
273
273
|
- src/nginx/src/http/modules/ngx_http_upstream_ip_hash_module.c
|
274
274
|
- src/nginx/src/http/modules/ngx_http_upstream_keepalive_module.c
|
275
|
+
- src/nginx/src/http/modules/ngx_http_upstream_least_conn_module.c
|
275
276
|
- src/nginx/src/http/modules/ngx_http_userid_filter_module.c
|
276
277
|
- src/nginx/src/http/modules/ngx_http_uwsgi_module.c
|
277
278
|
- src/nginx/src/http/modules/ngx_http_xslt_filter_module.c
|