nginxtra 1.0.15.0 → 1.2.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/bin/nginxtra +1 -1
- data/lib/nginxtra/action.rb +10 -0
- data/lib/nginxtra/actions/compile.rb +16 -2
- data/lib/nginxtra/actions/start.rb +18 -2
- data/lib/nginxtra/actions/status.rb +1 -10
- data/lib/nginxtra/actions/stop.rb +18 -0
- data/lib/nginxtra/cli.rb +12 -3
- data/lib/nginxtra/config.rb +10 -0
- data/src/nginx/CHANGES +311 -90
- data/src/nginx/CHANGES.ru +315 -88
- data/src/nginx/auto/lib/pcre/conf +22 -5
- data/src/nginx/auto/lib/pcre/make +1 -1
- data/src/nginx/auto/modules +14 -3
- data/src/nginx/auto/options +17 -3
- data/src/nginx/auto/os/freebsd +8 -0
- data/src/nginx/auto/os/linux +5 -4
- data/src/nginx/auto/os/solaris +2 -1
- data/src/nginx/auto/sources +10 -2
- data/src/nginx/auto/summary +2 -0
- data/src/nginx/auto/types/sizeof +2 -1
- data/src/nginx/auto/types/typedef +1 -1
- data/src/nginx/auto/types/uintptr_t +7 -4
- data/src/nginx/auto/unix +82 -21
- data/src/nginx/conf/fastcgi.conf +1 -0
- data/src/nginx/conf/fastcgi_params +1 -0
- data/src/nginx/conf/scgi_params +1 -0
- data/src/nginx/conf/uwsgi_params +1 -0
- data/src/nginx/man/nginx.8 +49 -49
- data/src/nginx/src/core/nginx.c +10 -12
- data/src/nginx/src/core/nginx.h +2 -2
- data/src/nginx/src/core/ngx_buf.c +9 -7
- data/src/nginx/src/core/ngx_buf.h +2 -2
- data/src/nginx/src/core/ngx_conf_file.c +4 -11
- data/src/nginx/src/core/ngx_conf_file.h +1 -1
- data/src/nginx/src/core/ngx_connection.c +52 -1
- data/src/nginx/src/core/ngx_connection.h +6 -0
- data/src/nginx/src/core/ngx_core.h +5 -0
- data/src/nginx/src/core/ngx_cycle.c +1 -1
- data/src/nginx/src/core/ngx_cycle.h +2 -2
- data/src/nginx/src/core/ngx_file.c +1 -1
- data/src/nginx/src/core/ngx_inet.c +11 -8
- data/src/nginx/src/core/ngx_murmurhash.h +1 -1
- data/src/nginx/src/core/ngx_open_file_cache.c +343 -38
- data/src/nginx/src/core/ngx_open_file_cache.h +10 -0
- data/src/nginx/src/core/ngx_output_chain.c +2 -1
- data/src/nginx/src/core/ngx_parse.h +0 -3
- data/src/nginx/src/core/ngx_rbtree.c +1 -2
- data/src/nginx/src/core/ngx_regex.c +263 -5
- data/src/nginx/src/core/ngx_regex.h +6 -2
- data/src/nginx/src/core/ngx_resolver.c +88 -21
- data/src/nginx/src/core/ngx_resolver.h +7 -8
- data/src/nginx/src/core/ngx_shmtx.c +69 -44
- data/src/nginx/src/core/ngx_shmtx.h +12 -1
- data/src/nginx/src/core/ngx_slab.c +3 -3
- data/src/nginx/src/core/ngx_slab.h +1 -1
- data/src/nginx/src/core/ngx_string.c +19 -16
- data/src/nginx/src/core/ngx_times.c +2 -2
- data/src/nginx/src/event/modules/ngx_epoll_module.c +2 -2
- data/src/nginx/src/event/modules/ngx_eventport_module.c +1 -1
- data/src/nginx/src/event/modules/ngx_kqueue_module.c +1 -1
- data/src/nginx/src/event/ngx_event.c +25 -17
- data/src/nginx/src/event/ngx_event_openssl.c +3 -1
- data/src/nginx/src/event/ngx_event_pipe.c +108 -85
- data/src/nginx/src/event/ngx_event_pipe.h +1 -2
- data/src/nginx/src/event/ngx_event_timer.c +2 -3
- data/src/nginx/src/http/modules/ngx_http_access_module.c +9 -4
- data/src/nginx/src/http/modules/ngx_http_browser_module.c +5 -3
- data/src/nginx/src/http/modules/ngx_http_chunked_filter_module.c +1 -1
- data/src/nginx/src/http/modules/ngx_http_degradation_module.c +1 -1
- data/src/nginx/src/http/modules/ngx_http_fastcgi_module.c +144 -22
- data/src/nginx/src/http/modules/ngx_http_flv_module.c +8 -0
- data/src/nginx/src/http/modules/ngx_http_geo_module.c +3 -3
- data/src/nginx/src/http/modules/ngx_http_gzip_filter_module.c +20 -6
- data/src/nginx/src/http/modules/ngx_http_gzip_static_module.c +8 -0
- data/src/nginx/src/http/modules/ngx_http_headers_filter_module.c +23 -27
- data/src/nginx/src/http/modules/ngx_http_image_filter_module.c +1 -3
- data/src/nginx/src/http/modules/ngx_http_index_module.c +24 -0
- data/src/nginx/src/http/modules/ngx_http_limit_conn_module.c +747 -0
- data/src/nginx/src/http/modules/ngx_http_limit_req_module.c +289 -133
- data/src/nginx/src/http/modules/ngx_http_log_module.c +34 -6
- data/src/nginx/src/http/modules/ngx_http_memcached_module.c +19 -3
- data/src/nginx/src/http/modules/ngx_http_mp4_module.c +8 -0
- data/src/nginx/src/http/modules/ngx_http_proxy_module.c +1446 -239
- data/src/nginx/src/http/modules/ngx_http_realip_module.c +4 -10
- data/src/nginx/src/http/modules/ngx_http_scgi_module.c +90 -21
- data/src/nginx/src/http/modules/ngx_http_split_clients_module.c +8 -11
- data/src/nginx/src/http/modules/ngx_http_ssi_filter_module.c +16 -6
- data/src/nginx/src/http/modules/ngx_http_static_module.c +8 -0
- data/src/nginx/src/http/modules/ngx_http_upstream_ip_hash_module.c +2 -2
- data/src/nginx/src/http/modules/ngx_http_upstream_keepalive_module.c +570 -0
- data/src/nginx/src/http/modules/ngx_http_userid_filter_module.c +1 -5
- data/src/nginx/src/http/modules/ngx_http_uwsgi_module.c +77 -26
- data/src/nginx/src/http/modules/ngx_http_xslt_filter_module.c +171 -37
- data/src/nginx/src/http/modules/perl/nginx.pm +2 -1
- data/src/nginx/src/http/modules/perl/nginx.xs +4 -0
- data/src/nginx/src/http/ngx_http.c +8 -1
- data/src/nginx/src/http/ngx_http.h +1 -0
- data/src/nginx/src/http/ngx_http_busy_lock.c +2 -2
- data/src/nginx/src/http/ngx_http_cache.h +12 -1
- data/src/nginx/src/http/ngx_http_copy_filter_module.c +4 -3
- data/src/nginx/src/http/ngx_http_core_module.c +303 -37
- data/src/nginx/src/http/ngx_http_core_module.h +15 -0
- data/src/nginx/src/http/ngx_http_file_cache.c +226 -52
- data/src/nginx/src/http/ngx_http_parse.c +69 -3
- data/src/nginx/src/http/ngx_http_postpone_filter_module.c +4 -4
- data/src/nginx/src/http/ngx_http_request.c +61 -27
- data/src/nginx/src/http/ngx_http_request.h +3 -3
- data/src/nginx/src/http/ngx_http_request_body.c +1 -1
- data/src/nginx/src/http/ngx_http_script.c +6 -0
- data/src/nginx/src/http/ngx_http_upstream.c +200 -47
- data/src/nginx/src/http/ngx_http_upstream.h +20 -1
- data/src/nginx/src/http/ngx_http_upstream_round_robin.c +22 -6
- data/src/nginx/src/http/ngx_http_upstream_round_robin.h +1 -0
- data/src/nginx/src/http/ngx_http_variables.c +123 -4
- data/src/nginx/src/mail/ngx_mail.c +13 -0
- data/src/nginx/src/mail/ngx_mail.h +12 -0
- data/src/nginx/src/mail/ngx_mail_core_module.c +100 -15
- data/src/nginx/src/os/unix/ngx_daemon.c +2 -1
- data/src/nginx/src/os/unix/ngx_darwin.h +3 -0
- data/src/nginx/src/os/unix/ngx_darwin_config.h +1 -0
- data/src/nginx/src/os/unix/ngx_darwin_init.c +30 -0
- data/src/nginx/src/os/unix/ngx_darwin_sendfile_chain.c +11 -5
- data/src/nginx/src/os/unix/ngx_errno.h +5 -0
- data/src/nginx/src/os/unix/ngx_files.h +50 -1
- data/src/nginx/src/os/unix/ngx_freebsd.h +2 -1
- data/src/nginx/src/os/unix/ngx_freebsd_config.h +2 -0
- data/src/nginx/src/os/unix/ngx_freebsd_init.c +4 -3
- data/src/nginx/src/os/unix/ngx_freebsd_rfork_thread.c +2 -2
- data/src/nginx/src/os/unix/ngx_freebsd_sendfile_chain.c +12 -6
- data/src/nginx/src/os/unix/ngx_gcc_atomic_sparc64.h +1 -1
- data/src/nginx/src/os/unix/ngx_linux_config.h +1 -0
- data/src/nginx/src/os/unix/ngx_linux_sendfile_chain.c +6 -4
- data/src/nginx/src/os/unix/ngx_os.h +0 -1
- data/src/nginx/src/os/unix/ngx_posix_config.h +3 -0
- data/src/nginx/src/os/unix/ngx_process.c +50 -11
- data/src/nginx/src/os/unix/ngx_process.h +1 -0
- data/src/nginx/src/os/unix/ngx_process_cycle.c +6 -15
- data/src/nginx/src/os/unix/ngx_readv_chain.c +8 -0
- data/src/nginx/src/os/unix/ngx_setaffinity.c +69 -0
- data/src/nginx/src/os/unix/ngx_setaffinity.h +23 -0
- data/src/nginx/src/os/unix/ngx_setproctitle.c +1 -1
- data/src/nginx/src/os/unix/ngx_solaris_config.h +2 -0
- data/src/nginx/src/os/unix/ngx_solaris_sendfilev_chain.c +11 -3
- data/src/nginx/src/os/unix/ngx_writev_chain.c +7 -3
- metadata +7 -4
- data/src/nginx/src/http/modules/ngx_http_limit_zone_module.c +0 -553
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.0.
|
1
|
+
1.2.0.1
|
data/bin/nginxtra
CHANGED
data/lib/nginxtra/action.rb
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
module Nginxtra
|
2
2
|
module Action
|
3
|
+
@@ignore_force = false
|
4
|
+
|
3
5
|
def initialize(thor, config)
|
4
6
|
@thor = thor
|
5
7
|
@config = config
|
@@ -17,7 +19,15 @@ module Nginxtra
|
|
17
19
|
raise Nginxtra::Error::RunFailed.new("The last run command failed") unless $?.success?
|
18
20
|
end
|
19
21
|
|
22
|
+
def without_force
|
23
|
+
@@ignore_force = true
|
24
|
+
yield
|
25
|
+
ensure
|
26
|
+
@@ignore_force = false
|
27
|
+
end
|
28
|
+
|
20
29
|
def force?
|
30
|
+
return false if @@ignore_force
|
21
31
|
@thor.options["force"]
|
22
32
|
end
|
23
33
|
|
@@ -37,18 +37,32 @@ module Nginxtra
|
|
37
37
|
end
|
38
38
|
|
39
39
|
# Determine if compiling should happen. This will return false
|
40
|
-
# if the last compile options equal the current options
|
41
|
-
#
|
40
|
+
# if the last compile options equal the current options and the
|
41
|
+
# last compile version is the same as the current nginx version,
|
42
|
+
# or if the force option was passed in at construction time.
|
42
43
|
def should_compile?
|
43
44
|
return true if force?
|
45
|
+
different_compile_options? || different_nginx_version?
|
46
|
+
end
|
47
|
+
|
48
|
+
# Determine if the compile options differ from those last
|
49
|
+
# compiled with.
|
50
|
+
def different_compile_options?
|
44
51
|
Nginxtra::Status[:last_compile_options] != @config.compile_options
|
45
52
|
end
|
46
53
|
|
54
|
+
# Determine if the last nginx compiled version is different from
|
55
|
+
# the current nginx version.
|
56
|
+
def different_nginx_version?
|
57
|
+
Nginxtra::Status[:last_compile_version] != Nginxtra::Config.nginx_version
|
58
|
+
end
|
59
|
+
|
47
60
|
# Update Nginxtra::Status with the last compile time and
|
48
61
|
# options.
|
49
62
|
def update_last_compile
|
50
63
|
Nginxtra::Status[:last_compile_options] = @config.compile_options
|
51
64
|
Nginxtra::Status[:last_compile_time] = Time.now
|
65
|
+
Nginxtra::Status[:last_compile_version] = Nginxtra::Config.nginx_version
|
52
66
|
end
|
53
67
|
|
54
68
|
# Notify the user that the compilation is up to date
|
@@ -10,8 +10,12 @@ module Nginxtra
|
|
10
10
|
# configuration is correct, and finally start nginx and note the
|
11
11
|
# start time.
|
12
12
|
def start
|
13
|
-
|
14
|
-
|
13
|
+
without_force do
|
14
|
+
compile
|
15
|
+
install
|
16
|
+
end
|
17
|
+
|
18
|
+
return no_need_to_start unless should_start?
|
15
19
|
save_config_files
|
16
20
|
start_nginx
|
17
21
|
update_last_start
|
@@ -39,6 +43,18 @@ module Nginxtra
|
|
39
43
|
end
|
40
44
|
end
|
41
45
|
|
46
|
+
# Notify the user that nginx is already started.
|
47
|
+
def no_need_to_start
|
48
|
+
@thor.say "nginx is already started"
|
49
|
+
end
|
50
|
+
|
51
|
+
# Determine if we should even bother starting. This returns
|
52
|
+
# true if the user forced, or if nginx is already running.
|
53
|
+
def should_start?
|
54
|
+
return true if force?
|
55
|
+
!Nginxtra::Config.nginx_running?
|
56
|
+
end
|
57
|
+
|
42
58
|
# Start nginx as a daemon.
|
43
59
|
def start_nginx
|
44
60
|
daemon :start
|
@@ -11,21 +11,12 @@ module Nginxtra
|
|
11
11
|
end
|
12
12
|
|
13
13
|
def colored_message
|
14
|
-
if
|
14
|
+
if Nginxtra::Config.nginx_running?
|
15
15
|
@thor.set_color "running", :green, true
|
16
16
|
else
|
17
17
|
@thor.set_color "stopped", :red, true
|
18
18
|
end
|
19
19
|
end
|
20
|
-
|
21
|
-
def running?
|
22
|
-
return false unless File.exists? Nginxtra::Config.nginx_pidfile
|
23
|
-
pid = File.read(Nginxtra::Config.nginx_pidfile).strip
|
24
|
-
Process.getpgid pid.to_i
|
25
|
-
true
|
26
|
-
rescue Errno::ESRCH
|
27
|
-
false
|
28
|
-
end
|
29
20
|
end
|
30
21
|
end
|
31
22
|
end
|
@@ -6,7 +6,25 @@ module Nginxtra
|
|
6
6
|
|
7
7
|
# Stop nginx and note the new last stop time.
|
8
8
|
def stop
|
9
|
+
return no_need_to_stop unless should_stop?
|
10
|
+
stop_nginx
|
11
|
+
update_last_stop
|
12
|
+
end
|
13
|
+
|
14
|
+
def no_need_to_stop
|
15
|
+
@thor.say "nginx is already stopped"
|
16
|
+
end
|
17
|
+
|
18
|
+
def should_stop?
|
19
|
+
return true if force?
|
20
|
+
Nginxtra::Config.nginx_running?
|
21
|
+
end
|
22
|
+
|
23
|
+
def stop_nginx
|
9
24
|
daemon :stop
|
25
|
+
end
|
26
|
+
|
27
|
+
def update_last_stop
|
10
28
|
Nginxtra::Status[:last_stop_time] = Time.now
|
11
29
|
end
|
12
30
|
end
|
data/lib/nginxtra/cli.rb
CHANGED
@@ -32,14 +32,23 @@ module Nginxtra
|
|
32
32
|
|
33
33
|
desc "start", "Start nginx with configuration defined in nginxtra.conf.rb"
|
34
34
|
long_desc "
|
35
|
-
Start nginx based on nginxtra.conf.rb. If nginx has not yet been compiled
|
36
|
-
|
37
|
-
nginxtra
|
35
|
+
Start nginx based on nginxtra.conf.rb. If nginx has not yet been compiled for
|
36
|
+
the given compilation options or the current nginx version, it will be compiled.
|
37
|
+
If nginxtra has not been installed for the current version, the user will be
|
38
|
+
asked if it is ok to install. The configuration for nginx will automatically be
|
39
|
+
handled by nginxtra so it matches what is defined in nginxtra.conf.rb. If it is
|
40
|
+
already running, this will do nothing, unless --force is passed. Note that
|
41
|
+
compilation and installation will NOT be forced with --force option. The
|
42
|
+
compile or install task should be invoked if those need to be forced."
|
38
43
|
def start
|
39
44
|
Nginxtra::Actions::Start.new(self, prepare_config!).start
|
40
45
|
end
|
41
46
|
|
42
47
|
desc "stop", "Stop nginx"
|
48
|
+
long_desc "
|
49
|
+
Stop nginx, unless it is already running based on the pidfile. If it is
|
50
|
+
determined to be running, this command will do nothing, unless --force is passed
|
51
|
+
(which will cause it to run the stop command regardless of the pidfile)."
|
43
52
|
def stop
|
44
53
|
Nginxtra::Actions::Stop.new(self, prepare_config!).stop
|
45
54
|
end
|
data/lib/nginxtra/config.rb
CHANGED
@@ -230,6 +230,16 @@ module Nginxtra
|
|
230
230
|
raise InvalidConfig.new("You cannot reference passenger unless the passenger gem is installed!") if spec.nil?
|
231
231
|
end
|
232
232
|
end
|
233
|
+
|
234
|
+
# Determine if nginx is running, based on the pidfile.
|
235
|
+
def nginx_running?
|
236
|
+
return false unless File.exists? nginx_pidfile
|
237
|
+
pid = File.read(nginx_pidfile).strip
|
238
|
+
Process.getpgid pid.to_i
|
239
|
+
true
|
240
|
+
rescue Errno::ESRCH
|
241
|
+
false
|
242
|
+
end
|
233
243
|
end
|
234
244
|
|
235
245
|
# Represents a config file being defined by nginxtra.conf.rb.
|
data/src/nginx/CHANGES
CHANGED
@@ -1,22 +1,80 @@
|
|
1
1
|
|
2
|
-
Changes with nginx 1.0
|
2
|
+
Changes with nginx 1.2.0 23 Apr 2012
|
3
|
+
|
4
|
+
*) Bugfix: a segmentation fault might occur in a worker process if the
|
5
|
+
"try_files" directive was used; the bug had appeared in 1.1.19.
|
6
|
+
|
7
|
+
*) Bugfix: response might be truncated if there were more than IOV_MAX
|
8
|
+
buffers used.
|
9
|
+
|
10
|
+
*) Bugfix: in the "crop" parameter of the "image_filter" directive.
|
11
|
+
Thanks to Maxim Bublis.
|
12
|
+
|
13
|
+
|
14
|
+
Changes with nginx 1.1.19 12 Apr 2012
|
3
15
|
|
4
16
|
*) Security: specially crafted mp4 file might allow to overwrite memory
|
5
17
|
locations in a worker process if the ngx_http_mp4_module was used,
|
6
18
|
potentially resulting in arbitrary code execution (CVE-2012-2089).
|
7
19
|
Thanks to Matthew Daley.
|
8
20
|
|
21
|
+
*) Bugfix: nginx/Windows might be terminated abnormally.
|
22
|
+
Thanks to Vincent Lee.
|
23
|
+
|
24
|
+
*) Bugfix: nginx hogged CPU if all servers in an upstream were marked as
|
25
|
+
"backup".
|
26
|
+
|
27
|
+
*) Bugfix: the "allow" and "deny" directives might be inherited
|
28
|
+
incorrectly if they were used with IPv6 addresses.
|
29
|
+
|
30
|
+
*) Bugfix: the "modern_browser" and "ancient_browser" directives might
|
31
|
+
be inherited incorrectly.
|
32
|
+
|
33
|
+
*) Bugfix: timeouts might be handled incorrectly on Solaris/SPARC.
|
34
|
+
|
9
35
|
*) Bugfix: in the ngx_http_mp4_module.
|
10
36
|
|
11
37
|
|
12
|
-
Changes with nginx 1.
|
38
|
+
Changes with nginx 1.1.18 28 Mar 2012
|
39
|
+
|
40
|
+
*) Change: keepalive connections are no longer disabled for Safari by
|
41
|
+
default.
|
42
|
+
|
43
|
+
*) Feature: the $connection_requests variable.
|
44
|
+
|
45
|
+
*) Feature: $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd and
|
46
|
+
$tcpinfo_rcv_space variables.
|
47
|
+
|
48
|
+
*) Feature: the "worker_cpu_affinity" directive now works on FreeBSD.
|
49
|
+
|
50
|
+
*) Feature: the "xslt_param" and "xslt_string_param" directives.
|
51
|
+
Thanks to Samuel Behan.
|
52
|
+
|
53
|
+
*) Bugfix: in configure tests.
|
54
|
+
Thanks to Piotr Sikora.
|
55
|
+
|
56
|
+
*) Bugfix: in the ngx_http_xslt_filter_module.
|
57
|
+
|
58
|
+
*) Bugfix: nginx could not be built on Debian GNU/Hurd.
|
59
|
+
|
60
|
+
|
61
|
+
Changes with nginx 1.1.17 15 Mar 2012
|
13
62
|
|
14
63
|
*) Security: content of previously freed memory might be sent to a
|
15
64
|
client if backend returned specially crafted response.
|
16
65
|
Thanks to Matthew Daley.
|
17
66
|
|
67
|
+
*) Bugfix: in the embedded perl module if used from SSI.
|
68
|
+
Thanks to Matthew Daley.
|
69
|
+
|
70
|
+
*) Bugfix: in the ngx_http_uwsgi_module.
|
71
|
+
|
72
|
+
|
73
|
+
Changes with nginx 1.1.16 29 Feb 2012
|
74
|
+
|
75
|
+
*) Change: the simultaneous subrequest limit has been raised to 200.
|
18
76
|
|
19
|
-
|
77
|
+
*) Feature: the "from" parameter of the "disable_symlinks" directive.
|
20
78
|
|
21
79
|
*) Feature: the "return" and "error_page" directives can now be used to
|
22
80
|
return 307 redirections.
|
@@ -26,74 +84,113 @@ Changes with nginx 1.0.13 05 Mar 2012
|
|
26
84
|
specified at global level.
|
27
85
|
Thanks to Roman Arutyunyan.
|
28
86
|
|
87
|
+
*) Bugfix: a segmentation fault might occur in a worker process if the
|
88
|
+
"proxy_http_version 1.1" or "fastcgi_keep_conn on" directives were
|
89
|
+
used.
|
90
|
+
|
29
91
|
*) Bugfix: memory leaks.
|
30
92
|
Thanks to Lanshun Zhou.
|
31
93
|
|
94
|
+
*) Bugfix: in the "disable_symlinks" directive.
|
95
|
+
|
96
|
+
*) Bugfix: on ZFS filesystem disk cache size might be calculated
|
97
|
+
incorrectly; the bug had appeared in 1.0.1.
|
98
|
+
|
99
|
+
*) Bugfix: nginx could not be built by the icc 12.1 compiler.
|
100
|
+
|
101
|
+
*) Bugfix: nginx could not be built by gcc on Solaris; the bug had
|
102
|
+
appeared in 1.1.15.
|
103
|
+
|
104
|
+
|
105
|
+
Changes with nginx 1.1.15 15 Feb 2012
|
106
|
+
|
107
|
+
*) Feature: the "disable_symlinks" directive.
|
108
|
+
|
109
|
+
*) Feature: the "proxy_cookie_domain" and "proxy_cookie_path"
|
110
|
+
directives.
|
111
|
+
|
32
112
|
*) Bugfix: nginx might log incorrect error "upstream prematurely closed
|
33
113
|
connection" instead of correct "upstream sent too big header" one.
|
34
114
|
Thanks to Feibo Li.
|
35
115
|
|
36
|
-
*) Bugfix:
|
37
|
-
|
116
|
+
*) Bugfix: nginx could not be built with the ngx_http_perl_module if the
|
117
|
+
--with-openssl option was used.
|
38
118
|
|
39
119
|
*) Bugfix: the number of internal redirects to named locations was not
|
40
120
|
limited.
|
41
121
|
|
122
|
+
*) Bugfix: calling $r->flush() multiple times might cause errors in the
|
123
|
+
ngx_http_gzip_filter_module.
|
124
|
+
|
42
125
|
*) Bugfix: temporary files might be not removed if the "proxy_store"
|
43
126
|
directive was used with SSI includes.
|
44
127
|
|
45
128
|
*) Bugfix: in some cases non-cacheable variables (such as the $args
|
46
129
|
variable) returned old empty cached value.
|
47
130
|
|
131
|
+
*) Bugfix: a segmentation fault might occur in a worker process if too
|
132
|
+
many SSI subrequests were issued simultaneously; the bug had appeared
|
133
|
+
in 0.7.25.
|
134
|
+
|
135
|
+
|
136
|
+
Changes with nginx 1.1.14 30 Jan 2012
|
137
|
+
|
138
|
+
*) Feature: multiple "limit_req" limits may be used simultaneously.
|
139
|
+
|
140
|
+
*) Bugfix: in error handling while connecting to a backend.
|
141
|
+
Thanks to Piotr Sikora.
|
142
|
+
|
143
|
+
*) Bugfix: in AIO error handling on FreeBSD.
|
144
|
+
|
145
|
+
*) Bugfix: in the OpenSSL library initialization.
|
146
|
+
|
48
147
|
*) Bugfix: the "proxy_redirect" directives might be inherited
|
49
148
|
incorrectly.
|
50
149
|
|
51
|
-
*) Bugfix:
|
52
|
-
|
53
|
-
|
54
|
-
*) Bugfix: nginx could not be built by the icc 12.1 compiler.
|
150
|
+
*) Bugfix: memory leak during reconfiguration if the "pcre_jit"
|
151
|
+
directive was used.
|
55
152
|
|
56
153
|
|
57
|
-
Changes with nginx 1.
|
154
|
+
Changes with nginx 1.1.13 16 Jan 2012
|
58
155
|
|
59
156
|
*) Feature: the "TLSv1.1" and "TLSv1.2" parameters of the
|
60
157
|
"ssl_protocols" directive.
|
61
158
|
|
62
|
-
*)
|
63
|
-
|
64
|
-
|
65
|
-
*) Bugfix: the "if" SSI command did not work inside the "block" command.
|
159
|
+
*) Bugfix: the "limit_req" directive parameters were not inherited
|
160
|
+
correctly; the bug had appeared in 1.1.12.
|
66
161
|
|
67
|
-
*) Bugfix:
|
162
|
+
*) Bugfix: the "proxy_redirect" directive incorrectly processed
|
163
|
+
"Refresh" header if regular expression were used.
|
68
164
|
|
69
|
-
*) Bugfix:
|
165
|
+
*) Bugfix: the "proxy_cache_use_stale" directive with "error" parameter
|
166
|
+
did not return answer from cache if there were no live upstreams.
|
70
167
|
|
71
168
|
*) Bugfix: the "worker_cpu_affinity" directive might not work.
|
72
169
|
|
73
|
-
*) Bugfix: the
|
74
|
-
|
170
|
+
*) Bugfix: nginx could not be built on Solaris; the bug had appeared in
|
171
|
+
1.1.12.
|
75
172
|
|
76
|
-
*) Bugfix: the
|
77
|
-
"try_files" and "open_file_cache".
|
173
|
+
*) Bugfix: in the ngx_http_mp4_module.
|
78
174
|
|
79
|
-
*) Bugfix: the "proxy_cache_use_stale" directive with "error" parameter
|
80
|
-
did not return answer from cache if there were no live upstreams.
|
81
175
|
|
82
|
-
|
83
|
-
time was used in the "inactive" parameter of the "proxy_cache_path"
|
84
|
-
directive.
|
176
|
+
Changes with nginx 1.1.12 26 Dec 2011
|
85
177
|
|
86
|
-
*)
|
178
|
+
*) Change: a "proxy_pass" directive without URI part now uses changed
|
179
|
+
URI after redirection with the "error_page" directive.
|
180
|
+
Thanks to Lanshun Zhou.
|
87
181
|
|
88
|
-
*)
|
89
|
-
|
182
|
+
*) Feature: the "proxy/fastcgi/scgi/uwsgi_cache_lock",
|
183
|
+
"proxy/fastcgi/scgi/uwsgi_cache_lock_timeout" directives.
|
90
184
|
|
91
|
-
*)
|
92
|
-
Thanks to Yichun Zhang.
|
185
|
+
*) Feature: the "pcre_jit" directive.
|
93
186
|
|
94
|
-
*)
|
95
|
-
|
96
|
-
|
187
|
+
*) Feature: the "if" SSI command supports captures in regular
|
188
|
+
expressions.
|
189
|
+
|
190
|
+
*) Bugfix: the "if" SSI command did not work inside the "block" command.
|
191
|
+
|
192
|
+
*) Bugfix: the "limit_conn_log_level" and "limit_req_log_level"
|
193
|
+
directives might not work.
|
97
194
|
|
98
195
|
*) Bugfix: the "limit_rate" directive did not allow to use full
|
99
196
|
throughput, even if limit value was very high.
|
@@ -101,52 +198,114 @@ Changes with nginx 1.0.12 06 Feb 2012
|
|
101
198
|
*) Bugfix: the "sendfile_max_chunk" directive did not work, if the
|
102
199
|
"limit_rate" directive was used.
|
103
200
|
|
104
|
-
*) Bugfix:
|
105
|
-
|
201
|
+
*) Bugfix: a "proxy_pass" directive without URI part always used
|
202
|
+
original request URI if variables were used.
|
203
|
+
|
204
|
+
*) Bugfix: a "proxy_pass" directive without URI part might use original
|
205
|
+
request after redirection with the "try_files" directive.
|
206
|
+
Thanks to Lanshun Zhou.
|
106
207
|
|
107
208
|
*) Bugfix: in the ngx_http_scgi_module.
|
108
209
|
|
109
210
|
*) Bugfix: in the ngx_http_mp4_module.
|
110
211
|
|
212
|
+
*) Bugfix: nginx could not be built on Solaris; the bug had appeared in
|
213
|
+
1.1.9.
|
214
|
+
|
215
|
+
|
216
|
+
Changes with nginx 1.1.11 12 Dec 2011
|
217
|
+
|
218
|
+
*) Feature: the "so_keepalive" parameter of the "listen" directive.
|
219
|
+
Thanks to Vsevolod Stakhov.
|
220
|
+
|
221
|
+
*) Feature: the "if_not_empty" parameter of the
|
222
|
+
"fastcgi/scgi/uwsgi_param" directives.
|
223
|
+
|
224
|
+
*) Feature: the $https variable.
|
225
|
+
|
226
|
+
*) Feature: the "proxy_redirect" directive supports variables in the
|
227
|
+
first parameter.
|
228
|
+
|
229
|
+
*) Feature: the "proxy_redirect" directive supports regular expressions.
|
230
|
+
|
231
|
+
*) Bugfix: the $sent_http_cache_control variable might contain a wrong
|
232
|
+
value if the "expires" directive was used.
|
233
|
+
Thanks to Yichun Zhang.
|
234
|
+
|
235
|
+
*) Bugfix: the "read_ahead" directive might not work combined with
|
236
|
+
"try_files" and "open_file_cache".
|
237
|
+
|
238
|
+
*) Bugfix: a segmentation fault might occur in a worker process if small
|
239
|
+
time was used in the "inactive" parameter of the "proxy_cache_path"
|
240
|
+
directive.
|
241
|
+
|
242
|
+
*) Bugfix: responses from cache might hang.
|
243
|
+
|
244
|
+
|
245
|
+
Changes with nginx 1.1.10 30 Nov 2011
|
111
246
|
|
112
|
-
|
247
|
+
*) Bugfix: a segmentation fault occured in a worker process if AIO was
|
248
|
+
used on Linux; the bug had appeared in 1.1.9.
|
249
|
+
|
250
|
+
|
251
|
+
Changes with nginx 1.1.9 28 Nov 2011
|
113
252
|
|
114
253
|
*) Change: now double quotes are encoded in an "echo" SSI-command
|
115
254
|
output.
|
116
255
|
Thanks to Zaur Abasmirzoev.
|
117
256
|
|
118
|
-
*) Feature: the "
|
257
|
+
*) Feature: the "valid" parameter of the "resolver" directive. By
|
258
|
+
default TTL returned by a DNS server is used.
|
259
|
+
Thanks to Kirill A. Korinskiy.
|
260
|
+
|
261
|
+
*) Bugfix: nginx might hang after a worker process abnormal termination.
|
119
262
|
|
120
263
|
*) Bugfix: a segmentation fault might occur in a worker process if SNI
|
121
|
-
was used; the bug had appeared in 1.
|
264
|
+
was used; the bug had appeared in 1.1.2.
|
265
|
+
|
266
|
+
*) Bugfix: in the "keepalive_disable" directive; the bug had appeared in
|
267
|
+
1.1.8.
|
268
|
+
Thanks to Alexander Usov.
|
122
269
|
|
123
270
|
*) Bugfix: SIGWINCH signal did not work after first binary upgrade; the
|
124
|
-
bug had appeared in 1.
|
271
|
+
bug had appeared in 1.1.1.
|
125
272
|
|
126
|
-
*) Bugfix:
|
127
|
-
header
|
128
|
-
without caching if caching was enabled in another part of the
|
129
|
-
configuration.
|
273
|
+
*) Bugfix: backend responses with length not matching "Content-Length"
|
274
|
+
header line are no longer cached.
|
130
275
|
|
131
276
|
*) Bugfix: in the "scgi_param" directive, if complex parameters were
|
132
277
|
used.
|
133
278
|
|
134
|
-
*) Bugfix:
|
135
|
-
|
136
|
-
|
137
|
-
*) Bugfix: in the "expires @time" directive.
|
279
|
+
*) Bugfix: in the "epoll" event method.
|
280
|
+
Thanks to Yichun Zhang.
|
138
281
|
|
139
282
|
*) Bugfix: in the ngx_http_flv_module.
|
140
283
|
Thanks to Piotr Sikora.
|
141
284
|
|
142
285
|
*) Bugfix: in the ngx_http_mp4_module.
|
143
286
|
|
287
|
+
*) Bugfix: IPv6 addresses are now handled properly in a request line and
|
288
|
+
in a "Host" request header line.
|
289
|
+
|
290
|
+
*) Bugfix: "add_header" and "expires" directives did not work if a
|
291
|
+
request was proxied and response status code was 206.
|
292
|
+
|
144
293
|
*) Bugfix: nginx could not be built on FreeBSD 10.
|
145
294
|
|
146
295
|
*) Bugfix: nginx could not be built on AIX.
|
147
296
|
|
148
297
|
|
149
|
-
Changes with nginx 1.
|
298
|
+
Changes with nginx 1.1.8 14 Nov 2011
|
299
|
+
|
300
|
+
*) Change: the ngx_http_limit_zone_module was renamed to the
|
301
|
+
ngx_http_limit_conn_module.
|
302
|
+
|
303
|
+
*) Change: the "limit_zone" directive was superseded by the
|
304
|
+
"limit_conn_zone" directive with a new syntax.
|
305
|
+
|
306
|
+
*) Feature: support for multiple "limit_conn" limits on the same level.
|
307
|
+
|
308
|
+
*) Feature: the "image_filter_sharpen" directive.
|
150
309
|
|
151
310
|
*) Bugfix: a segmentation fault might occur in a worker process if
|
152
311
|
resolver got a big DNS response.
|
@@ -155,34 +314,54 @@ Changes with nginx 1.0.10 15 Nov 2011
|
|
155
314
|
*) Bugfix: in cache key calculation if internal MD5 implementation was
|
156
315
|
used; the bug had appeared in 1.0.4.
|
157
316
|
|
317
|
+
*) Bugfix: the "If-Modified-Since", "If-Range", etc. client request
|
318
|
+
header lines might be passed to backend while caching; or not passed
|
319
|
+
without caching if caching was enabled in another part of the
|
320
|
+
configuration.
|
321
|
+
|
158
322
|
*) Bugfix: the module ngx_http_mp4_module sent incorrect
|
159
323
|
"Content-Length" response header line if the "start" argument was
|
160
324
|
used.
|
161
325
|
Thanks to Piotr Sikora.
|
162
326
|
|
163
327
|
|
164
|
-
Changes with nginx 1.
|
328
|
+
Changes with nginx 1.1.7 31 Oct 2011
|
329
|
+
|
330
|
+
*) Feature: support of several DNS servers in the "resolver" directive.
|
331
|
+
Thanks to Kirill A. Korinskiy.
|
332
|
+
|
333
|
+
*) Bugfix: a segmentation fault occurred on start or during
|
334
|
+
reconfiguration if the "ssl" directive was used at http level and
|
335
|
+
there was no "ssl_certificate" defined.
|
336
|
+
|
337
|
+
*) Bugfix: reduced memory consumption while proxying big files if they
|
338
|
+
were buffered to disk.
|
339
|
+
|
340
|
+
*) Bugfix: a segmentation fault might occur in a worker process if
|
341
|
+
"proxy_http_version 1.1" directive was used.
|
342
|
+
|
343
|
+
*) Bugfix: in the "expires @time" directive.
|
344
|
+
|
345
|
+
|
346
|
+
Changes with nginx 1.1.6 17 Oct 2011
|
347
|
+
|
348
|
+
*) Change in internal API: now module context data are cleared while
|
349
|
+
internal redirect to named location.
|
350
|
+
Requested by Yichun Zhang.
|
351
|
+
|
352
|
+
*) Change: if a server in an upstream failed, only one request will be
|
353
|
+
sent to it after fail_timeout; the server will be considered alive if
|
354
|
+
it will successfully respond to the request.
|
165
355
|
|
166
356
|
*) Change: now the 0x7F-0x1F characters are escaped as \xXX in an
|
167
357
|
access_log.
|
168
358
|
|
169
|
-
*) Change: now SIGWINCH signal works only in daemon mode.
|
170
|
-
|
171
359
|
*) Feature: "proxy/fastcgi/scgi/uwsgi_ignore_headers" directives support
|
172
360
|
the following additional values: X-Accel-Limit-Rate,
|
173
361
|
X-Accel-Buffering, X-Accel-Charset.
|
174
362
|
|
175
363
|
*) Feature: decrease of memory consumption if SSL is used.
|
176
364
|
|
177
|
-
*) Feature: accept filters are now supported on NetBSD.
|
178
|
-
|
179
|
-
*) Feature: the "uwsgi_buffering" and "scgi_buffering" directives.
|
180
|
-
Thanks to Peter Smit.
|
181
|
-
|
182
|
-
*) Bugfix: a segmentation fault occurred on start or while
|
183
|
-
reconfiguration if the "ssl" directive was used at http level and
|
184
|
-
there was no "ssl_certificate" defined.
|
185
|
-
|
186
365
|
*) Bugfix: some UTF-8 characters were processed incorrectly.
|
187
366
|
Thanks to Alexey Kuts.
|
188
367
|
|
@@ -199,10 +378,18 @@ Changes with nginx 1.0.9 01 Nov 2011
|
|
199
378
|
*) Bugfix: the module ngx_http_mp4_module did not support seeking on
|
200
379
|
32-bit platforms.
|
201
380
|
|
381
|
+
|
382
|
+
Changes with nginx 1.1.5 05 Oct 2011
|
383
|
+
|
384
|
+
*) Feature: the "uwsgi_buffering" and "scgi_buffering" directives.
|
385
|
+
Thanks to Peter Smit.
|
386
|
+
|
202
387
|
*) Bugfix: non-cacheable responses might be cached if
|
203
388
|
"proxy_cache_bypass" directive was used.
|
204
389
|
Thanks to John Ferlito.
|
205
390
|
|
391
|
+
*) Bugfix: in HTTP/1.1 support in the ngx_http_proxy_module.
|
392
|
+
|
206
393
|
*) Bugfix: cached responses with an empty body were returned
|
207
394
|
incorrectly; the bug had appeared in 0.8.31.
|
208
395
|
|
@@ -211,26 +398,17 @@ Changes with nginx 1.0.9 01 Nov 2011
|
|
211
398
|
|
212
399
|
*) Bugfix: in the "return" directive.
|
213
400
|
|
214
|
-
*) Bugfix: the "
|
215
|
-
|
216
|
-
was used.
|
401
|
+
*) Bugfix: the "ssl_session_cache builtin" directive caused segmentation
|
402
|
+
fault; the bug had appeared in 1.1.1.
|
217
403
|
|
218
404
|
|
219
|
-
Changes with nginx 1.
|
405
|
+
Changes with nginx 1.1.4 20 Sep 2011
|
220
406
|
|
221
|
-
*)
|
222
|
-
--with-debug option.
|
223
|
-
|
224
|
-
|
225
|
-
Changes with nginx 1.0.7 30 Sep 2011
|
226
|
-
|
227
|
-
*) Change: now if total size of all ranges is greater than source
|
228
|
-
response size, then nginx disables ranges and returns just the source
|
229
|
-
response.
|
407
|
+
*) Feature: the ngx_http_upstream_keepalive module.
|
230
408
|
|
231
|
-
*) Feature: the "
|
409
|
+
*) Feature: the "proxy_http_version" directive.
|
232
410
|
|
233
|
-
*) Feature: the
|
411
|
+
*) Feature: the "fastcgi_keep_conn" directive.
|
234
412
|
|
235
413
|
*) Feature: the "worker_aio_requests" directive.
|
236
414
|
|
@@ -240,17 +418,57 @@ Changes with nginx 1.0.7 30 Sep 2011
|
|
240
418
|
*) Bugfix: in Linux AIO error processing.
|
241
419
|
Thanks to Hagai Avrahami.
|
242
420
|
|
421
|
+
*) Bugfix: reduced memory consumption for long-lived requests.
|
422
|
+
|
423
|
+
*) Bugfix: the module ngx_http_mp4_module did not support 64-bit MP4
|
424
|
+
"co64" atom.
|
425
|
+
|
426
|
+
|
427
|
+
Changes with nginx 1.1.3 14 Sep 2011
|
428
|
+
|
429
|
+
*) Feature: the module ngx_http_mp4_module.
|
430
|
+
|
243
431
|
*) Bugfix: in Linux AIO combined with open_file_cache.
|
244
432
|
|
245
433
|
*) Bugfix: open_file_cache did not update file info on retest if file
|
246
434
|
was not atomically changed.
|
247
435
|
|
248
|
-
*) Bugfix:
|
436
|
+
*) Bugfix: nginx could not be built on MacOSX 10.7.
|
437
|
+
|
438
|
+
|
439
|
+
Changes with nginx 1.1.2 05 Sep 2011
|
440
|
+
|
441
|
+
*) Change: now if total size of all ranges is greater than source
|
442
|
+
response size, then nginx disables ranges and returns just the source
|
443
|
+
response.
|
444
|
+
|
445
|
+
*) Feature: the "max_ranges" directive.
|
446
|
+
|
447
|
+
*) Bugfix: the "ssl_verify_client", "ssl_verify_depth", and
|
448
|
+
"ssl_prefer_server_ciphers" directives might work incorrectly if SNI
|
449
|
+
was used.
|
249
450
|
|
250
451
|
*) Bugfix: in the "proxy/fastcgi/scgi/uwsgi_ignore_client_abort"
|
251
452
|
directives.
|
252
453
|
|
253
|
-
|
454
|
+
|
455
|
+
Changes with nginx 1.1.1 22 Aug 2011
|
456
|
+
|
457
|
+
*) Change: now cache loader processes either as many files as specified
|
458
|
+
by "loader_files" parameter or works no longer than time specified by
|
459
|
+
the "loader_threshold" parameter during each iteration.
|
460
|
+
|
461
|
+
*) Change: now SIGWINCH signal works only in daemon mode.
|
462
|
+
|
463
|
+
*) Feature: now shared zones and caches use POSIX semaphores on Solaris.
|
464
|
+
Thanks to Den Ivanov.
|
465
|
+
|
466
|
+
*) Feature: accept filters are now supported on NetBSD.
|
467
|
+
|
468
|
+
*) Bugfix: nginx could not be built on Linux 3.0.
|
469
|
+
|
470
|
+
*) Bugfix: nginx did not use gzipping in some cases; the bug had
|
471
|
+
appeared in 1.1.0.
|
254
472
|
|
255
473
|
*) Bugfix: request body might be processed incorrectly if client used
|
256
474
|
pipelining.
|
@@ -269,11 +487,18 @@ Changes with nginx 1.0.7 30 Sep 2011
|
|
269
487
|
*) Bugfix: a segmentation fault might occur in a worker process if many
|
270
488
|
backup servers were used in an upstream.
|
271
489
|
|
490
|
+
*) Bugfix: a segmentation fault might occur in a worker process if
|
491
|
+
"fastcgi/scgi/uwsgi_param" directives were used with values starting
|
492
|
+
with "HTTP_"; the bug had appeared in 0.8.40.
|
493
|
+
|
272
494
|
|
273
|
-
Changes with nginx 1.0
|
495
|
+
Changes with nginx 1.1.0 01 Aug 2011
|
274
496
|
|
275
497
|
*) Feature: cache loader run time decrease.
|
276
498
|
|
499
|
+
*) Feature: "loader_files", "loader_sleep", and "loader_threshold"
|
500
|
+
options of the "proxy/fastcgi/scgi/uwsgi_cache_path" directives.
|
501
|
+
|
277
502
|
*) Feature: loading time decrease of configuration with large number of
|
278
503
|
HTTPS sites.
|
279
504
|
|
@@ -281,31 +506,27 @@ Changes with nginx 1.0.6 29 Aug 2011
|
|
281
506
|
Thanks to Adrian Kotelba.
|
282
507
|
|
283
508
|
*) Feature: the "lingering_close" directive.
|
284
|
-
|
285
|
-
*) Feature: now shared zones and caches use POSIX semaphores on Solaris.
|
286
|
-
Thanks to Den Ivanov.
|
287
|
-
|
288
|
-
*) Bugfix: nginx could not be built on Linux 3.0.
|
289
|
-
|
290
|
-
*) Bugfix: a segmentation fault might occur in a worker process if
|
291
|
-
"fastcgi/scgi/uwsgi_param" directives were used with values starting
|
292
|
-
with "HTTP_"; the bug had appeared in 0.8.40.
|
509
|
+
Thanks to Maxim Dounin.
|
293
510
|
|
294
511
|
*) Bugfix: in closing connection for pipelined requests.
|
512
|
+
Thanks to Maxim Dounin.
|
295
513
|
|
296
514
|
*) Bugfix: nginx did not disable gzipping if client sent "gzip;q=0" in
|
297
515
|
"Accept-Encoding" request header line.
|
298
516
|
|
299
517
|
*) Bugfix: in timeout in unbuffered proxied mode.
|
518
|
+
Thanks to Maxim Dounin.
|
300
519
|
|
301
520
|
*) Bugfix: memory leaks when a "proxy_pass" directive contains variables
|
302
521
|
and proxies to an HTTPS backend.
|
522
|
+
Thanks to Maxim Dounin.
|
303
523
|
|
304
524
|
*) Bugfix: in parameter validaiton of a "proxy_pass" directive with
|
305
525
|
variables.
|
306
526
|
Thanks to Lanshun Zhou.
|
307
527
|
|
308
528
|
*) Bugfix: SSL did not work on QNX.
|
529
|
+
Thanks to Maxim Dounin.
|
309
530
|
|
310
531
|
*) Bugfix: SSL modules could not be built by gcc 4.6 without
|
311
532
|
--with-debug option.
|
@@ -365,8 +586,8 @@ Changes with nginx 1.0.3 25 May 2011
|
|
365
586
|
testing IPv4 address mapped to IPv6 address, if access or deny rules
|
366
587
|
were defined only for IPv6; the bug had appeared in 0.8.22.
|
367
588
|
|
368
|
-
*) Bugfix: a cached response may be broken if proxy/fastcgi/scgi/
|
369
|
-
uwsgi_cache_bypass and proxy/fastcgi/scgi/uwsgi_no_cache directive
|
589
|
+
*) Bugfix: a cached response may be broken if "proxy/fastcgi/scgi/
|
590
|
+
uwsgi_cache_bypass" and "proxy/fastcgi/scgi/uwsgi_no_cache" directive
|
370
591
|
values were different; the bug had appeared in 0.8.46.
|
371
592
|
|
372
593
|
|
@@ -2132,7 +2353,7 @@ Changes with nginx 0.7.15 08 Sep 2008
|
|
2132
2353
|
Changes with nginx 0.7.14 01 Sep 2008
|
2133
2354
|
|
2134
2355
|
*) Change: now the ssl_certificate and ssl_certificate_key directives
|
2135
|
-
have
|
2356
|
+
have no default values.
|
2136
2357
|
|
2137
2358
|
*) Feature: the "listen" directive supports the "ssl" parameter.
|
2138
2359
|
|