nginxtra 1.8.1.12 → 1.10.1.12

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.
Files changed (238) hide show
  1. checksums.yaml +4 -4
  2. data/bin/nginxtra +1 -1
  3. data/bin/nginxtra_rails +1 -1
  4. data/lib/nginxtra/version.rb +1 -1
  5. data/vendor/nginx/CHANGES +363 -25
  6. data/vendor/nginx/CHANGES.ru +365 -21
  7. data/vendor/nginx/LICENSE +2 -2
  8. data/vendor/nginx/auto/cc/conf +32 -0
  9. data/vendor/nginx/auto/cc/gcc +1 -1
  10. data/vendor/nginx/auto/cc/icc +2 -2
  11. data/vendor/nginx/auto/cc/msvc +29 -8
  12. data/vendor/nginx/auto/cc/name +2 -25
  13. data/vendor/nginx/auto/cc/sunc +3 -0
  14. data/vendor/nginx/auto/endianness +7 -2
  15. data/vendor/nginx/auto/install +60 -26
  16. data/vendor/nginx/auto/lib/conf +4 -4
  17. data/vendor/nginx/auto/lib/geoip/conf +6 -1
  18. data/vendor/nginx/auto/lib/libgd/conf +6 -1
  19. data/vendor/nginx/auto/lib/libxslt/conf +11 -2
  20. data/vendor/nginx/auto/lib/make +1 -1
  21. data/vendor/nginx/auto/lib/md5/conf +2 -2
  22. data/vendor/nginx/auto/lib/md5/make +2 -2
  23. data/vendor/nginx/auto/lib/openssl/conf +52 -3
  24. data/vendor/nginx/auto/lib/openssl/make +1 -1
  25. data/vendor/nginx/auto/lib/pcre/conf +2 -2
  26. data/vendor/nginx/auto/lib/pcre/make +2 -2
  27. data/vendor/nginx/auto/lib/perl/conf +6 -3
  28. data/vendor/nginx/auto/lib/perl/make +4 -1
  29. data/vendor/nginx/auto/lib/sha1/conf +2 -2
  30. data/vendor/nginx/auto/lib/sha1/make +2 -2
  31. data/vendor/nginx/auto/lib/zlib/conf +2 -2
  32. data/vendor/nginx/auto/lib/zlib/make +2 -2
  33. data/vendor/nginx/auto/make +281 -16
  34. data/vendor/nginx/auto/module +122 -0
  35. data/vendor/nginx/auto/modules +909 -178
  36. data/vendor/nginx/auto/options +81 -19
  37. data/vendor/nginx/auto/os/conf +9 -0
  38. data/vendor/nginx/auto/os/darwin +3 -0
  39. data/vendor/nginx/auto/os/freebsd +0 -20
  40. data/vendor/nginx/auto/os/linux +0 -12
  41. data/vendor/nginx/auto/os/win32 +5 -1
  42. data/vendor/nginx/auto/sources +11 -311
  43. data/vendor/nginx/auto/summary +1 -0
  44. data/vendor/nginx/auto/types/sizeof +5 -3
  45. data/vendor/nginx/auto/types/typedef +9 -4
  46. data/vendor/nginx/auto/types/uintptr_t +7 -2
  47. data/vendor/nginx/auto/unix +72 -12
  48. data/vendor/nginx/conf/fastcgi.conf +1 -0
  49. data/vendor/nginx/conf/fastcgi_params +1 -0
  50. data/vendor/nginx/conf/scgi_params +1 -0
  51. data/vendor/nginx/conf/uwsgi_params +1 -0
  52. data/vendor/nginx/configure +1 -1
  53. data/vendor/nginx/contrib/vim/syntax/nginx.vim +2 -2
  54. data/vendor/nginx/man/nginx.8 +6 -2
  55. data/vendor/nginx/src/core/nginx.c +281 -114
  56. data/vendor/nginx/src/core/nginx.h +2 -2
  57. data/vendor/nginx/src/core/ngx_conf_file.c +54 -13
  58. data/vendor/nginx/src/core/ngx_conf_file.h +8 -52
  59. data/vendor/nginx/src/core/ngx_config.h +0 -5
  60. data/vendor/nginx/src/core/ngx_connection.c +270 -37
  61. data/vendor/nginx/src/core/ngx_connection.h +35 -12
  62. data/vendor/nginx/src/core/ngx_core.h +4 -0
  63. data/vendor/nginx/src/core/ngx_crypt.c +2 -2
  64. data/vendor/nginx/src/core/ngx_cycle.c +72 -25
  65. data/vendor/nginx/src/core/ngx_cycle.h +28 -39
  66. data/vendor/nginx/src/core/ngx_file.c +14 -5
  67. data/vendor/nginx/src/core/ngx_file.h +2 -0
  68. data/vendor/nginx/src/core/ngx_hash.c +13 -1
  69. data/vendor/nginx/src/core/ngx_inet.c +20 -18
  70. data/vendor/nginx/src/core/ngx_log.c +12 -12
  71. data/vendor/nginx/src/core/ngx_log.h +13 -6
  72. data/vendor/nginx/src/core/ngx_module.c +360 -0
  73. data/vendor/nginx/src/core/ngx_module.h +307 -0
  74. data/vendor/nginx/src/core/ngx_open_file_cache.c +2 -2
  75. data/vendor/nginx/src/core/ngx_output_chain.c +8 -4
  76. data/vendor/nginx/src/core/ngx_palloc.c +42 -44
  77. data/vendor/nginx/src/{http/ngx_http_parse_time.c → core/ngx_parse_time.c} +2 -3
  78. data/vendor/nginx/src/core/ngx_parse_time.h +22 -0
  79. data/vendor/nginx/src/core/ngx_proxy_protocol.c +50 -1
  80. data/vendor/nginx/src/core/ngx_proxy_protocol.h +3 -1
  81. data/vendor/nginx/src/core/ngx_regex.c +1 -38
  82. data/vendor/nginx/src/core/ngx_resolver.c +1814 -320
  83. data/vendor/nginx/src/core/ngx_resolver.h +67 -10
  84. data/vendor/nginx/src/core/ngx_rwlock.c +120 -0
  85. data/vendor/nginx/src/core/ngx_rwlock.h +21 -0
  86. data/vendor/nginx/src/core/ngx_slab.c +6 -5
  87. data/vendor/nginx/src/core/ngx_string.c +1 -1
  88. data/vendor/nginx/src/core/ngx_syslog.c +11 -3
  89. data/vendor/nginx/src/core/ngx_syslog.h +2 -1
  90. data/vendor/nginx/src/core/ngx_thread_pool.c +4 -0
  91. data/vendor/nginx/src/core/ngx_times.c +2 -2
  92. data/vendor/nginx/src/event/modules/ngx_devpoll_module.c +3 -1
  93. data/vendor/nginx/src/event/modules/ngx_epoll_module.c +5 -2
  94. data/vendor/nginx/src/event/modules/ngx_eventport_module.c +5 -5
  95. data/vendor/nginx/src/event/modules/ngx_kqueue_module.c +15 -8
  96. data/vendor/nginx/src/event/modules/ngx_poll_module.c +0 -10
  97. data/vendor/nginx/src/event/modules/ngx_select_module.c +0 -10
  98. data/vendor/nginx/src/event/ngx_event.c +60 -103
  99. data/vendor/nginx/src/event/ngx_event.h +22 -26
  100. data/vendor/nginx/src/event/ngx_event_accept.c +414 -88
  101. data/vendor/nginx/src/event/ngx_event_connect.c +27 -18
  102. data/vendor/nginx/src/event/ngx_event_connect.h +1 -0
  103. data/vendor/nginx/src/event/ngx_event_openssl.c +65 -25
  104. data/vendor/nginx/src/event/ngx_event_openssl.h +17 -0
  105. data/vendor/nginx/src/event/ngx_event_openssl_stapling.c +73 -7
  106. data/vendor/nginx/src/event/ngx_event_pipe.c +85 -27
  107. data/vendor/nginx/src/event/ngx_event_pipe.h +10 -0
  108. data/vendor/nginx/src/http/modules/ngx_http_auth_basic_module.c +1 -1
  109. data/vendor/nginx/src/http/modules/ngx_http_auth_request_module.c +2 -2
  110. data/vendor/nginx/src/http/modules/ngx_http_chunked_filter_module.c +2 -2
  111. data/vendor/nginx/src/http/modules/ngx_http_dav_module.c +6 -6
  112. data/vendor/nginx/src/http/modules/ngx_http_fastcgi_module.c +17 -11
  113. data/vendor/nginx/src/http/modules/ngx_http_gzip_filter_module.c +2 -2
  114. data/vendor/nginx/src/http/modules/ngx_http_headers_filter_module.c +9 -9
  115. data/vendor/nginx/src/http/modules/ngx_http_image_filter_module.c +2 -2
  116. data/vendor/nginx/src/http/modules/ngx_http_limit_conn_module.c +2 -2
  117. data/vendor/nginx/src/http/modules/ngx_http_limit_req_module.c +0 -7
  118. data/vendor/nginx/src/http/modules/ngx_http_map_module.c +6 -6
  119. data/vendor/nginx/src/http/modules/ngx_http_memcached_module.c +2 -1
  120. data/vendor/nginx/src/http/modules/ngx_http_mp4_module.c +13 -13
  121. data/vendor/nginx/src/http/modules/ngx_http_not_modified_filter_module.c +2 -2
  122. data/vendor/nginx/src/http/modules/ngx_http_proxy_module.c +26 -21
  123. data/vendor/nginx/src/http/modules/ngx_http_random_index_module.c +1 -1
  124. data/vendor/nginx/src/http/modules/ngx_http_range_filter_module.c +26 -8
  125. data/vendor/nginx/src/http/modules/ngx_http_realip_module.c +73 -3
  126. data/vendor/nginx/src/http/modules/ngx_http_referer_module.c +1 -1
  127. data/vendor/nginx/src/http/modules/ngx_http_rewrite_module.c +6 -6
  128. data/vendor/nginx/src/http/modules/ngx_http_scgi_module.c +5 -3
  129. data/vendor/nginx/src/http/modules/ngx_http_slice_filter_module.c +526 -0
  130. data/vendor/nginx/src/http/modules/ngx_http_ssi_filter_module.c +7 -7
  131. data/vendor/nginx/src/http/modules/ngx_http_ssl_module.c +19 -16
  132. data/vendor/nginx/src/http/modules/ngx_http_static_module.c +1 -1
  133. data/vendor/nginx/src/http/modules/ngx_http_stub_status_module.c +1 -1
  134. data/vendor/nginx/src/http/modules/ngx_http_sub_filter_module.c +373 -173
  135. data/vendor/nginx/src/http/modules/ngx_http_upstream_hash_module.c +72 -46
  136. data/vendor/nginx/src/http/modules/ngx_http_upstream_ip_hash_module.c +18 -30
  137. data/vendor/nginx/src/http/modules/ngx_http_upstream_keepalive_module.c +50 -39
  138. data/vendor/nginx/src/http/modules/ngx_http_upstream_least_conn_module.c +38 -129
  139. data/vendor/nginx/src/http/modules/ngx_http_upstream_zone_module.c +246 -0
  140. data/vendor/nginx/src/http/modules/ngx_http_uwsgi_module.c +6 -5
  141. data/vendor/nginx/src/http/modules/perl/nginx.xs +9 -9
  142. data/vendor/nginx/src/http/ngx_http.c +46 -43
  143. data/vendor/nginx/src/http/ngx_http.h +4 -9
  144. data/vendor/nginx/src/http/ngx_http_cache.h +4 -0
  145. data/vendor/nginx/src/http/ngx_http_copy_filter_module.c +13 -5
  146. data/vendor/nginx/src/http/ngx_http_core_module.c +92 -91
  147. data/vendor/nginx/src/http/ngx_http_core_module.h +12 -8
  148. data/vendor/nginx/src/http/ngx_http_file_cache.c +61 -10
  149. data/vendor/nginx/src/http/ngx_http_request.c +37 -50
  150. data/vendor/nginx/src/http/ngx_http_request.h +10 -15
  151. data/vendor/nginx/src/http/ngx_http_request_body.c +64 -88
  152. data/vendor/nginx/src/http/ngx_http_script.c +3 -3
  153. data/vendor/nginx/src/http/ngx_http_special_response.c +1 -4
  154. data/vendor/nginx/src/http/ngx_http_upstream.c +245 -109
  155. data/vendor/nginx/src/http/ngx_http_upstream.h +11 -5
  156. data/vendor/nginx/src/http/ngx_http_upstream_round_robin.c +212 -65
  157. data/vendor/nginx/src/http/ngx_http_upstream_round_robin.h +66 -5
  158. data/vendor/nginx/src/http/ngx_http_variables.c +28 -15
  159. data/vendor/nginx/src/http/ngx_http_write_filter_module.c +1 -1
  160. data/vendor/nginx/src/http/v2/ngx_http_v2.c +4349 -0
  161. data/vendor/nginx/src/http/v2/ngx_http_v2.h +337 -0
  162. data/vendor/nginx/src/http/v2/ngx_http_v2_filter_module.c +1391 -0
  163. data/vendor/nginx/src/http/v2/ngx_http_v2_huff_decode.c +2714 -0
  164. data/vendor/nginx/src/http/v2/ngx_http_v2_huff_encode.c +254 -0
  165. data/vendor/nginx/src/http/v2/ngx_http_v2_module.c +469 -0
  166. data/vendor/nginx/src/http/{ngx_http_spdy_module.h → v2/ngx_http_v2_module.h} +10 -9
  167. data/vendor/nginx/src/http/v2/ngx_http_v2_table.c +349 -0
  168. data/vendor/nginx/src/mail/ngx_mail.c +49 -82
  169. data/vendor/nginx/src/mail/ngx_mail.h +16 -23
  170. data/vendor/nginx/src/mail/ngx_mail_auth_http_module.c +1 -1
  171. data/vendor/nginx/src/mail/ngx_mail_core_module.c +60 -34
  172. data/vendor/nginx/src/mail/ngx_mail_handler.c +17 -12
  173. data/vendor/nginx/src/mail/ngx_mail_proxy_module.c +1 -14
  174. data/vendor/nginx/src/mail/ngx_mail_smtp_handler.c +1 -1
  175. data/vendor/nginx/src/mail/ngx_mail_ssl_module.c +5 -5
  176. data/vendor/nginx/src/os/unix/ngx_atomic.h +10 -10
  177. data/vendor/nginx/src/os/unix/ngx_channel.h +4 -4
  178. data/vendor/nginx/src/os/unix/ngx_darwin_config.h +2 -0
  179. data/vendor/nginx/src/os/unix/ngx_darwin_init.c +1 -0
  180. data/vendor/nginx/src/os/unix/ngx_dlopen.c +28 -0
  181. data/vendor/nginx/src/os/unix/ngx_dlopen.h +31 -0
  182. data/vendor/nginx/src/os/unix/ngx_errno.h +1 -0
  183. data/vendor/nginx/src/os/unix/ngx_file_aio_read.c +1 -1
  184. data/vendor/nginx/src/os/unix/ngx_files.c +313 -80
  185. data/vendor/nginx/src/os/unix/ngx_files.h +5 -2
  186. data/vendor/nginx/src/os/unix/ngx_freebsd_config.h +3 -1
  187. data/vendor/nginx/src/os/unix/ngx_freebsd_init.c +1 -0
  188. data/vendor/nginx/src/os/unix/ngx_freebsd_sendfile_chain.c +13 -0
  189. data/vendor/nginx/src/os/unix/ngx_linux.h +0 -2
  190. data/vendor/nginx/src/os/unix/ngx_linux_aio_read.c +1 -1
  191. data/vendor/nginx/src/os/unix/ngx_linux_config.h +2 -6
  192. data/vendor/nginx/src/os/unix/ngx_linux_init.c +1 -33
  193. data/vendor/nginx/src/os/unix/ngx_linux_sendfile_chain.c +55 -12
  194. data/vendor/nginx/src/os/unix/ngx_os.h +3 -9
  195. data/vendor/nginx/src/os/unix/ngx_posix_config.h +14 -1
  196. data/vendor/nginx/src/os/unix/ngx_posix_init.c +2 -1
  197. data/vendor/nginx/src/os/unix/ngx_process.c +1 -1
  198. data/vendor/nginx/src/os/unix/ngx_process_cycle.c +25 -51
  199. data/vendor/nginx/src/os/unix/ngx_process_cycle.h +1 -0
  200. data/vendor/nginx/src/os/unix/ngx_readv_chain.c +24 -28
  201. data/vendor/nginx/src/os/unix/ngx_recv.c +30 -79
  202. data/vendor/nginx/src/os/unix/ngx_send.c +1 -1
  203. data/vendor/nginx/src/os/unix/ngx_setaffinity.c +14 -30
  204. data/vendor/nginx/src/os/unix/ngx_setaffinity.h +15 -1
  205. data/vendor/nginx/src/os/unix/ngx_solaris_config.h +2 -0
  206. data/vendor/nginx/src/os/unix/ngx_solaris_init.c +1 -0
  207. data/vendor/nginx/src/os/unix/ngx_solaris_sendfilev_chain.c +23 -0
  208. data/vendor/nginx/src/os/unix/ngx_sunpro_amd64.il +3 -3
  209. data/vendor/nginx/src/os/unix/ngx_sunpro_x86.il +3 -3
  210. data/vendor/nginx/src/os/unix/ngx_udp_recv.c +5 -48
  211. data/vendor/nginx/src/os/unix/ngx_udp_send.c +56 -0
  212. data/vendor/nginx/src/stream/ngx_stream.c +564 -0
  213. data/vendor/nginx/src/stream/ngx_stream.h +212 -0
  214. data/vendor/nginx/src/stream/ngx_stream_access_module.c +451 -0
  215. data/vendor/nginx/src/stream/ngx_stream_core_module.c +562 -0
  216. data/vendor/nginx/src/stream/ngx_stream_handler.c +344 -0
  217. data/vendor/nginx/src/stream/ngx_stream_limit_conn_module.c +632 -0
  218. data/vendor/nginx/src/stream/ngx_stream_proxy_module.c +1674 -0
  219. data/vendor/nginx/src/stream/ngx_stream_ssl_module.c +460 -0
  220. data/vendor/nginx/src/stream/ngx_stream_ssl_module.h +49 -0
  221. data/vendor/nginx/src/stream/ngx_stream_upstream.c +464 -0
  222. data/vendor/nginx/src/stream/ngx_stream_upstream.h +107 -0
  223. data/vendor/nginx/src/stream/ngx_stream_upstream_hash_module.c +656 -0
  224. data/vendor/nginx/src/stream/ngx_stream_upstream_least_conn_module.c +307 -0
  225. data/vendor/nginx/src/stream/ngx_stream_upstream_round_robin.c +702 -0
  226. data/vendor/nginx/src/stream/ngx_stream_upstream_round_robin.h +139 -0
  227. data/vendor/nginx/src/stream/ngx_stream_upstream_zone_module.c +242 -0
  228. metadata +39 -15
  229. data/vendor/nginx/src/event/modules/ngx_aio_module.c +0 -171
  230. data/vendor/nginx/src/event/modules/ngx_rtsig_module.c +0 -735
  231. data/vendor/nginx/src/http/ngx_http_spdy.c +0 -3701
  232. data/vendor/nginx/src/http/ngx_http_spdy.h +0 -261
  233. data/vendor/nginx/src/http/ngx_http_spdy_filter_module.c +0 -1222
  234. data/vendor/nginx/src/http/ngx_http_spdy_module.c +0 -408
  235. data/vendor/nginx/src/os/unix/ngx_aio_read.c +0 -109
  236. data/vendor/nginx/src/os/unix/ngx_aio_read_chain.c +0 -78
  237. data/vendor/nginx/src/os/unix/ngx_aio_write.c +0 -109
  238. data/vendor/nginx/src/os/unix/ngx_aio_write_chain.c +0 -100
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 99f107b601dfcabd1f825d8f14aad06edd048f55
4
- data.tar.gz: 824ea02e092be12cf8f22f39a1cf21a867494034
3
+ metadata.gz: d784fb7c6e974f8523d9ef4d1c02ccd6995068db
4
+ data.tar.gz: dd8ea99c04482fe24fb8405e4c400e25e520e99e
5
5
  SHA512:
6
- metadata.gz: e67268dddd754316d87fab9a51a2ce94884fbe801ffa4e95ffd4784ca86db5548428219682b0f8e79936dddd1ffcef803cc8acfff0d551f6582a5dc235076408
7
- data.tar.gz: 124f0029c2f3fbac24f1882e9c894c804ea4a808f98c44b3450aeba39a398f02c1fcb831e6298a74b758424fd32f4409b0373fb5dafd746db777b27b953ceb48
6
+ metadata.gz: 4a65ae656e8d973b5d336ec765c36ce17812bf5ba9345d71c584db4dca551add2d337523c263800bc74e0c79bcbdecae7119140f83286468c762aa635b47d3e4
7
+ data.tar.gz: e5d0d9944a72ec36922b7b28d862eaac9db7fb6401e3e9a7646faa7efe5d9e109de44056fac2e8af1d1bfbccb359b5fcea92f3d8415a575de7c75f7b8a8315e8
data/bin/nginxtra CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  require "rubygems"
3
- gem "nginxtra", "= 1.8.1.12"
3
+ gem "nginxtra", "= 1.10.1.12"
4
4
  gem "thor", "~> 0.16"
5
5
  require "nginxtra"
6
6
  Nginxtra::CLI.start
data/bin/nginxtra_rails CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  require "rubygems"
3
- gem "nginxtra", "= 1.8.1.12"
3
+ gem "nginxtra", "= 1.10.1.12"
4
4
  gem "thor", "~> 0.16"
5
5
  require "nginxtra"
6
6
  Nginxtra::Rails::CLI.start
@@ -6,7 +6,7 @@ module Nginxtra
6
6
  end
7
7
 
8
8
  def to_s
9
- "1.8.1.12"
9
+ "1.10.1.12"
10
10
  end
11
11
  end
12
12
  end
data/vendor/nginx/CHANGES CHANGED
@@ -1,5 +1,142 @@
1
1
 
2
- Changes with nginx 1.8.1 26 Jan 2016
2
+ Changes with nginx 1.10.1 31 May 2016
3
+
4
+ *) Security: a segmentation fault might occur in a worker process while
5
+ writing a specially crafted request body to a temporary file
6
+ (CVE-2016-4450); the bug had appeared in 1.3.9.
7
+
8
+
9
+ Changes with nginx 1.10.0 26 Apr 2016
10
+
11
+ *) 1.10.x stable branch.
12
+
13
+
14
+ Changes with nginx 1.9.15 19 Apr 2016
15
+
16
+ *) Bugfix: "recv() failed" errors might occur when using HHVM as a
17
+ FastCGI server.
18
+
19
+ *) Bugfix: when using HTTP/2 and the "limit_req" or "auth_request"
20
+ directives a timeout or a "client violated flow control" error might
21
+ occur while reading client request body; the bug had appeared in
22
+ 1.9.14.
23
+
24
+ *) Workaround: a response might not be shown by some browsers if HTTP/2
25
+ was used and client request body was not fully read; the bug had
26
+ appeared in 1.9.14.
27
+
28
+ *) Bugfix: connections might hang when using the "aio threads"
29
+ directive.
30
+ Thanks to Mindaugas Rasiukevicius.
31
+
32
+
33
+ Changes with nginx 1.9.14 05 Apr 2016
34
+
35
+ *) Feature: OpenSSL 1.1.0 compatibility.
36
+
37
+ *) Feature: the "proxy_request_buffering", "fastcgi_request_buffering",
38
+ "scgi_request_buffering", and "uwsgi_request_buffering" directives
39
+ now work with HTTP/2.
40
+
41
+ *) Bugfix: "zero size buf in output" alerts might appear in logs when
42
+ using HTTP/2.
43
+
44
+ *) Bugfix: the "client_max_body_size" directive might work incorrectly
45
+ when using HTTP/2.
46
+
47
+ *) Bugfix: of minor bugs in logging.
48
+
49
+
50
+ Changes with nginx 1.9.13 29 Mar 2016
51
+
52
+ *) Change: non-idempotent requests (POST, LOCK, PATCH) are no longer
53
+ passed to the next server by default if a request has been sent to a
54
+ backend; the "non_idempotent" parameter of the "proxy_next_upstream"
55
+ directive explicitly allows retrying such requests.
56
+
57
+ *) Feature: the ngx_http_perl_module can be built dynamically.
58
+
59
+ *) Feature: UDP support in the stream module.
60
+
61
+ *) Feature: the "aio_write" directive.
62
+
63
+ *) Feature: now cache manager monitors number of elements in caches and
64
+ tries to avoid cache keys zone overflows.
65
+
66
+ *) Bugfix: "task already active" and "second aio post" alerts might
67
+ appear in logs when using the "sendfile" and "aio" directives with
68
+ subrequests.
69
+
70
+ *) Bugfix: "zero size buf in output" alerts might appear in logs if
71
+ caching was used and a client closed a connection prematurely.
72
+
73
+ *) Bugfix: connections with clients might be closed needlessly if
74
+ caching was used.
75
+ Thanks to Justin Li.
76
+
77
+ *) Bugfix: nginx might hog CPU if the "sendfile" directive was used on
78
+ Linux or Solaris and a file being sent was changed during sending.
79
+
80
+ *) Bugfix: connections might hang when using the "sendfile" and "aio
81
+ threads" directives.
82
+
83
+ *) Bugfix: in the "proxy_pass", "fastcgi_pass", "scgi_pass", and
84
+ "uwsgi_pass" directives when using variables.
85
+ Thanks to Piotr Sikora.
86
+
87
+ *) Bugfix: in the ngx_http_sub_filter_module.
88
+
89
+ *) Bugfix: if an error occurred in a cached backend connection, the
90
+ request was passed to the next server regardless of the
91
+ proxy_next_upstream directive.
92
+
93
+ *) Bugfix: "CreateFile() failed" errors when creating temporary files on
94
+ Windows.
95
+
96
+
97
+ Changes with nginx 1.9.12 24 Feb 2016
98
+
99
+ *) Feature: Huffman encoding of response headers in HTTP/2.
100
+ Thanks to Vlad Krasnov.
101
+
102
+ *) Feature: the "worker_cpu_affinity" directive now supports more than
103
+ 64 CPUs.
104
+
105
+ *) Bugfix: compatibility with 3rd party C++ modules; the bug had
106
+ appeared in 1.9.11.
107
+ Thanks to Piotr Sikora.
108
+
109
+ *) Bugfix: nginx could not be built statically with OpenSSL on Linux;
110
+ the bug had appeared in 1.9.11.
111
+
112
+ *) Bugfix: the "add_header ... always" directive with an empty value did
113
+ not delete "Last-Modified" and "ETag" header lines from error
114
+ responses.
115
+
116
+ *) Workaround: "called a function you should not call" and "shutdown
117
+ while in init" messages might appear in logs when using OpenSSL
118
+ 1.0.2f.
119
+
120
+ *) Bugfix: invalid headers might be logged incorrectly.
121
+
122
+ *) Bugfix: socket leak when using HTTP/2.
123
+
124
+ *) Bugfix: in the ngx_http_v2_module.
125
+
126
+
127
+ Changes with nginx 1.9.11 09 Feb 2016
128
+
129
+ *) Feature: TCP support in resolver.
130
+
131
+ *) Feature: dynamic modules.
132
+
133
+ *) Bugfix: the $request_length variable did not include size of request
134
+ headers when using HTTP/2.
135
+
136
+ *) Bugfix: in the ngx_http_v2_module.
137
+
138
+
139
+ Changes with nginx 1.9.10 26 Jan 2016
3
140
 
4
141
  *) Security: invalid pointer dereference might occur during DNS server
5
142
  response processing if the "resolver" directive was used, allowing an
@@ -17,12 +154,133 @@ Changes with nginx 1.8.1 26 Jan 2016
17
154
  trigger arbitrary name resolution to cause excessive resource
18
155
  consumption in worker processes (CVE-2016-0747).
19
156
 
157
+ *) Feature: the "auto" parameter of the "worker_cpu_affinity" directive.
158
+
20
159
  *) Bugfix: the "proxy_protocol" parameter of the "listen" directive did
21
- not work if not specified in the first "listen" directive for a
22
- listen socket.
160
+ not work with IPv6 listen sockets.
23
161
 
24
- *) Bugfix: nginx might fail to start on some old Linux variants; the bug
25
- had appeared in 1.7.11.
162
+ *) Bugfix: connections to upstream servers might be cached incorrectly
163
+ when using the "keepalive" directive.
164
+
165
+ *) Bugfix: proxying used the HTTP method of the original request after
166
+ an "X-Accel-Redirect" redirection.
167
+
168
+
169
+ Changes with nginx 1.9.9 09 Dec 2015
170
+
171
+ *) Bugfix: proxying to unix domain sockets did not work when using
172
+ variables; the bug had appeared in 1.9.8.
173
+
174
+
175
+ Changes with nginx 1.9.8 08 Dec 2015
176
+
177
+ *) Feature: pwritev() support.
178
+
179
+ *) Feature: the "include" directive inside the "upstream" block.
180
+
181
+ *) Feature: the ngx_http_slice_module.
182
+
183
+ *) Bugfix: a segmentation fault might occur in a worker process when
184
+ using LibreSSL; the bug had appeared in 1.9.6.
185
+
186
+ *) Bugfix: nginx could not be built on OS X in some cases.
187
+
188
+
189
+ Changes with nginx 1.9.7 17 Nov 2015
190
+
191
+ *) Feature: the "nohostname" parameter of logging to syslog.
192
+
193
+ *) Feature: the "proxy_cache_convert_head" directive.
194
+
195
+ *) Feature: the $realip_remote_addr variable in the
196
+ ngx_http_realip_module.
197
+
198
+ *) Bugfix: the "expires" directive might not work when using variables.
199
+
200
+ *) Bugfix: a segmentation fault might occur in a worker process when
201
+ using HTTP/2; the bug had appeared in 1.9.6.
202
+
203
+ *) Bugfix: if nginx was built with the ngx_http_v2_module it was
204
+ possible to use the HTTP/2 protocol even if the "http2" parameter of
205
+ the "listen" directive was not specified.
206
+
207
+ *) Bugfix: in the ngx_http_v2_module.
208
+
209
+
210
+ Changes with nginx 1.9.6 27 Oct 2015
211
+
212
+ *) Bugfix: a segmentation fault might occur in a worker process when
213
+ using HTTP/2.
214
+ Thanks to Piotr Sikora and Denis Andzakovic.
215
+
216
+ *) Bugfix: the $server_protocol variable was empty when using HTTP/2.
217
+
218
+ *) Bugfix: backend SSL connections in the stream module might be timed
219
+ out unexpectedly.
220
+
221
+ *) Bugfix: a segmentation fault might occur in a worker process if
222
+ different ssl_session_cache settings were used in different virtual
223
+ servers.
224
+
225
+ *) Bugfix: nginx/Windows could not be built with MinGW gcc; the bug had
226
+ appeared in 1.9.4.
227
+ Thanks to Kouhei Sutou.
228
+
229
+ *) Bugfix: time was not updated when the timer_resolution directive was
230
+ used on Windows.
231
+
232
+ *) Miscellaneous minor fixes and improvements.
233
+ Thanks to Markus Linnala, Kurtis Nusbaum and Piotr Sikora.
234
+
235
+
236
+ Changes with nginx 1.9.5 22 Sep 2015
237
+
238
+ *) Feature: the ngx_http_v2_module (replaces ngx_http_spdy_module).
239
+ Thanks to Dropbox and Automattic for sponsoring this work.
240
+
241
+ *) Change: now the "output_buffers" directive uses two buffers by
242
+ default.
243
+
244
+ *) Change: now nginx limits subrequests recursion, not simultaneous
245
+ subrequests.
246
+
247
+ *) Change: now nginx checks the whole cache key when returning a
248
+ response from cache.
249
+ Thanks to Gena Makhomed and Sergey Brester.
250
+
251
+ *) Bugfix: "header already sent" alerts might appear in logs when using
252
+ cache; the bug had appeared in 1.7.5.
253
+
254
+ *) Bugfix: "writev() failed (4: Interrupted system call)" errors might
255
+ appear in logs when using CephFS and the "timer_resolution" directive
256
+ on Linux.
257
+
258
+ *) Bugfix: in invalid configurations handling.
259
+ Thanks to Markus Linnala.
260
+
261
+ *) Bugfix: a segmentation fault occurred in a worker process if the
262
+ "sub_filter" directive was used at http level; the bug had appeared
263
+ in 1.9.4.
264
+
265
+
266
+ Changes with nginx 1.9.4 18 Aug 2015
267
+
268
+ *) Change: the "proxy_downstream_buffer" and "proxy_upstream_buffer"
269
+ directives of the stream module are replaced with the
270
+ "proxy_buffer_size" directive.
271
+
272
+ *) Feature: the "tcp_nodelay" directive in the stream module.
273
+
274
+ *) Feature: multiple "sub_filter" directives can be used simultaneously.
275
+
276
+ *) Feature: variables support in the search string of the "sub_filter"
277
+ directive.
278
+
279
+ *) Workaround: configuration testing might fail under Linux OpenVZ.
280
+ Thanks to Gena Makhomed.
281
+
282
+ *) Bugfix: old worker processes might hog CPU after reconfiguration with
283
+ a large number of worker_connections.
26
284
 
27
285
  *) Bugfix: a segmentation fault might occur in a worker process if the
28
286
  "try_files" and "alias" directives were used inside a location given
@@ -32,23 +290,103 @@ Changes with nginx 1.8.1 26 Jan 2016
32
290
  regular expression worked incorrectly if the "alias" directive was
33
291
  used in the outer location.
34
292
 
35
- *) Bugfix: "header already sent" alerts might appear in logs when using
36
- cache; the bug had appeared in 1.7.5.
293
+ *) Bugfix: in hash table initialization error handling.
37
294
 
38
- *) Bugfix: a segmentation fault might occur in a worker process if
39
- different ssl_session_cache settings were used in different virtual
40
- servers.
295
+ *) Bugfix: nginx could not be built with Visual Studio 2015.
41
296
 
42
- *) Bugfix: the "expires" directive might not work when using variables.
43
297
 
44
- *) Bugfix: if nginx was built with the ngx_http_spdy_module it was
45
- possible to use the SPDY protocol even if the "spdy" parameter of the
46
- "listen" directive was not specified.
298
+ Changes with nginx 1.9.3 14 Jul 2015
299
+
300
+ *) Change: duplicate "http", "mail", and "stream" blocks are now
301
+ disallowed.
302
+
303
+ *) Feature: connection limiting in the stream module.
304
+
305
+ *) Feature: data rate limiting in the stream module.
306
+
307
+ *) Bugfix: the "zone" directive inside the "upstream" block did not work
308
+ on Windows.
309
+
310
+ *) Bugfix: compatibility with LibreSSL in the stream module.
311
+ Thanks to Piotr Sikora.
312
+
313
+ *) Bugfix: in the "--builddir" configure parameter.
314
+ Thanks to Piotr Sikora.
315
+
316
+ *) Bugfix: the "ssl_stapling_file" directive did not work; the bug had
317
+ appeared in 1.9.2.
318
+ Thanks to Faidon Liambotis and Brandon Black.
319
+
320
+ *) Bugfix: a segmentation fault might occur in a worker process if the
321
+ "ssl_stapling" directive was used; the bug had appeared in 1.9.2.
322
+ Thanks to Matthew Baldwin.
323
+
324
+
325
+ Changes with nginx 1.9.2 16 Jun 2015
326
+
327
+ *) Feature: the "backlog" parameter of the "listen" directives of the
328
+ mail proxy and stream modules.
329
+
330
+ *) Feature: the "allow" and "deny" directives in the stream module.
331
+
332
+ *) Feature: the "proxy_bind" directive in the stream module.
333
+
334
+ *) Feature: the "proxy_protocol" directive in the stream module.
335
+
336
+ *) Feature: the -T switch.
337
+
338
+ *) Feature: the REQUEST_SCHEME parameter added to the fastcgi.conf,
339
+ fastcgi_params, scgi_params, and uwsgi_params standard configuration
340
+ files.
341
+
342
+ *) Bugfix: the "reuseport" parameter of the "listen" directive of the
343
+ stream module did not work.
47
344
 
345
+ *) Bugfix: OCSP stapling might return an expired OCSP response in some
346
+ cases.
48
347
 
49
- Changes with nginx 1.8.0 21 Apr 2015
50
348
 
51
- *) 1.8.x stable branch.
349
+ Changes with nginx 1.9.1 26 May 2015
350
+
351
+ *) Change: now SSLv3 protocol is disabled by default.
352
+
353
+ *) Change: some long deprecated directives are not supported anymore.
354
+
355
+ *) Feature: the "reuseport" parameter of the "listen" directive.
356
+ Thanks to Yingqi Lu at Intel and Sepherosa Ziehau.
357
+
358
+ *) Feature: the $upstream_connect_time variable.
359
+
360
+ *) Bugfix: in the "hash" directive on big-endian platforms.
361
+
362
+ *) Bugfix: nginx might fail to start on some old Linux variants; the bug
363
+ had appeared in 1.7.11.
364
+
365
+ *) Bugfix: in IP address parsing.
366
+ Thanks to Sergey Polovko.
367
+
368
+
369
+ Changes with nginx 1.9.0 28 Apr 2015
370
+
371
+ *) Change: obsolete aio and rtsig event methods have been removed.
372
+
373
+ *) Feature: the "zone" directive inside the "upstream" block.
374
+
375
+ *) Feature: the stream module.
376
+
377
+ *) Feature: byte ranges support in the ngx_http_memcached_module.
378
+ Thanks to Martin Mlynář.
379
+
380
+ *) Feature: shared memory can now be used on Windows versions with
381
+ address space layout randomization.
382
+ Thanks to Sergey Brester.
383
+
384
+ *) Feature: the "error_log" directive can now be used on mail and server
385
+ levels in mail proxy.
386
+
387
+ *) Bugfix: the "proxy_protocol" parameter of the "listen" directive did
388
+ not work if not specified in the first "listen" directive for a
389
+ listen socket.
52
390
 
53
391
 
54
392
  Changes with nginx 1.7.12 07 Apr 2015
@@ -1476,7 +1814,7 @@ Changes with nginx 1.1.11 12 Dec 2011
1476
1814
 
1477
1815
  Changes with nginx 1.1.10 30 Nov 2011
1478
1816
 
1479
- *) Bugfix: a segmentation fault occured in a worker process if AIO was
1817
+ *) Bugfix: a segmentation fault occurred in a worker process if AIO was
1480
1818
  used on Linux; the bug had appeared in 1.1.9.
1481
1819
 
1482
1820
 
@@ -1585,7 +1923,7 @@ Changes with nginx 1.1.6 17 Oct 2011
1585
1923
  sent to it after fail_timeout; the server will be considered alive if
1586
1924
  it will successfully respond to the request.
1587
1925
 
1588
- *) Change: now the 0x7F-0x1F characters are escaped as \xXX in an
1926
+ *) Change: now the 0x7F-0xFF characters are escaped as \xXX in an
1589
1927
  access_log.
1590
1928
 
1591
1929
  *) Feature: "proxy/fastcgi/scgi/uwsgi_ignore_headers" directives support
@@ -1753,7 +2091,7 @@ Changes with nginx 1.1.0 01 Aug 2011
1753
2091
  and proxies to an HTTPS backend.
1754
2092
  Thanks to Maxim Dounin.
1755
2093
 
1756
- *) Bugfix: in parameter validaiton of a "proxy_pass" directive with
2094
+ *) Bugfix: in parameter validation of a "proxy_pass" directive with
1757
2095
  variables.
1758
2096
  Thanks to Lanshun Zhou.
1759
2097
 
@@ -4518,7 +4856,7 @@ Changes with nginx 0.5.22 29 May 2007
4518
4856
  Changes with nginx 0.5.21 28 May 2007
4519
4857
 
4520
4858
  *) Bugfix: if server has more than about ten locations, then regex
4521
- locations might be choosen not in that order as they were specified.
4859
+ locations might be chosen not in that order as they were specified.
4522
4860
 
4523
4861
  *) Bugfix: a worker process may got caught in an endless loop on 64-bit
4524
4862
  platform, if the 33-rd or next in succession backend has failed.
@@ -4604,7 +4942,7 @@ Changes with nginx 0.5.17 02 Apr 2007
4604
4942
 
4605
4943
  *) Bugfix: in the HTTPS protocol in the "proxy_pass" directive.
4606
4944
 
4607
- *) Bugfix: in some cases non-cachable variables (such as $uri variable)
4945
+ *) Bugfix: in some cases non-cacheable variables (such as $uri variable)
4608
4946
  returned old cached value.
4609
4947
 
4610
4948
 
@@ -4629,7 +4967,7 @@ Changes with nginx 0.5.16 26 Mar 2007
4629
4967
  Changes with nginx 0.5.15 19 Mar 2007
4630
4968
 
4631
4969
  *) Feature: the mail proxy supports authenticated SMTP proxying and the
4632
- "smtp_auth", "smtp_capablities", and "xclient" directives.
4970
+ "smtp_auth", "smtp_capabilities", and "xclient" directives.
4633
4971
  Thanks to Anton Yuzhaninov and Maxim Dounin.
4634
4972
 
4635
4973
  *) Feature: now the keep-alive connections are closed just after
@@ -5730,7 +6068,7 @@ Changes with nginx 0.3.21 16 Jan 2006
5730
6068
 
5731
6069
  *) Feature: the ngx_http_perl_module.
5732
6070
 
5733
- *) Change: the "valid_referers" directive allows the referreres without
6071
+ *) Change: the "valid_referers" directive allows the referrers without
5734
6072
  URI part.
5735
6073
 
5736
6074
 
@@ -5830,7 +6168,7 @@ Changes with nginx 0.3.15 07 Dec 2005
5830
6168
  *) Feature: the "so_keepalive" directive in IMAP/POP3 proxy.
5831
6169
 
5832
6170
  *) Bugfix: if there are unclosed connection nginx now calls abort() only
5833
- on gracefull quit and active "debug_points" directive.
6171
+ on graceful quit and active "debug_points" directive.
5834
6172
 
5835
6173
 
5836
6174
  Changes with nginx 0.3.14 05 Dec 2005
@@ -6371,7 +6709,7 @@ Changes with nginx 0.1.37 23 Jun 2005
6371
6709
  *) Bugfix: the responses may be transferred not completely, if many
6372
6710
  parts or the big parts were included by SSI.
6373
6711
 
6374
- *) Bugfix: if all backends had returned the 404 reponse and the
6712
+ *) Bugfix: if all backends had returned the 404 response and the
6375
6713
  "http_404" parameter of the "proxy_next_upstream" or
6376
6714
  "fastcgi_next_upstream" directives was used, then nginx started to
6377
6715
  request all backends again.