Annotation of embedaddon/nginx/CHANGES, revision 1.1
1.1 ! misho 1:
! 2: Changes with nginx 1.4.3 08 Oct 2013
! 3:
! 4: *) Bugfix: a segmentation fault might occur in a worker process if the
! 5: ngx_http_spdy_module was used with the "client_body_in_file_only"
! 6: directive.
! 7:
! 8: *) Bugfix: a segmentation fault might occur on start or during
! 9: reconfiguration if the "try_files" directive was used with an empty
! 10: parameter.
! 11:
! 12: *) Bugfix: the $request_time variable did not work in nginx/Windows.
! 13:
! 14: *) Bugfix: in the ngx_http_auth_basic_module when using "$apr1$"
! 15: password encryption method.
! 16: Thanks to Markus Linnala.
! 17:
! 18: *) Bugfix: in the ngx_http_autoindex_module.
! 19:
! 20: *) Bugfix: in the mail proxy server.
! 21:
! 22:
! 23: Changes with nginx 1.4.2 17 Jul 2013
! 24:
! 25: *) Bugfix: the $r->header_in() embedded perl method did not return value
! 26: of the "Cookie" and "X-Forwarded-For" request header lines; the bug
! 27: had appeared in 1.3.14.
! 28:
! 29: *) Bugfix: nginx could not be built with the ngx_mail_ssl_module, but
! 30: without ngx_http_ssl_module; the bug had appeared in 1.3.14.
! 31:
! 32: *) Bugfix: in the "proxy_set_body" directive.
! 33: Thanks to Lanshun Zhou.
! 34:
! 35: *) Bugfix: the "fail_timeout" parameter of the "server" directive in the
! 36: "upstream" context might not work if "max_fails" parameter was used;
! 37: the bug had appeared in 1.3.0.
! 38:
! 39: *) Bugfix: a segmentation fault might occur in a worker process if the
! 40: "ssl_stapling" directive was used.
! 41: Thanks to Piotr Sikora.
! 42:
! 43: *) Bugfix: nginx/Windows might stop accepting connections if several
! 44: worker processes were used.
! 45:
! 46:
! 47: Changes with nginx 1.4.1 07 May 2013
! 48:
! 49: *) Security: a stack-based buffer overflow might occur in a worker
! 50: process while handling a specially crafted request, potentially
! 51: resulting in arbitrary code execution (CVE-2013-2028); the bug had
! 52: appeared in 1.3.9.
! 53: Thanks to Greg MacManus, iSIGHT Partners Labs.
! 54:
! 55:
! 56: Changes with nginx 1.4.0 24 Apr 2013
! 57:
! 58: *) Bugfix: nginx could not be built with the ngx_http_perl_module if the
! 59: --with-openssl option was used; the bug had appeared in 1.3.16.
! 60:
! 61: *) Bugfix: in a request body handling in the ngx_http_perl_module; the
! 62: bug had appeared in 1.3.9.
! 63:
! 64:
! 65: Changes with nginx 1.3.16 16 Apr 2013
! 66:
! 67: *) Bugfix: a segmentation fault might occur in a worker process if
! 68: subrequests were used; the bug had appeared in 1.3.9.
! 69:
! 70: *) Bugfix: the "tcp_nodelay" directive caused an error if a WebSocket
! 71: connection was proxied into a unix domain socket.
! 72:
! 73: *) Bugfix: the $upstream_response_length variable has an incorrect value
! 74: "0" if buffering was not used.
! 75: Thanks to Piotr Sikora.
! 76:
! 77: *) Bugfix: in the eventport and /dev/poll methods.
! 78:
! 79:
! 80: Changes with nginx 1.3.15 26 Mar 2013
! 81:
! 82: *) Change: opening and closing a connection without sending any data in
! 83: it is no longer logged to access_log with error code 400.
! 84:
! 85: *) Feature: the ngx_http_spdy_module.
! 86: Thanks to Automattic for sponsoring this work.
! 87:
! 88: *) Feature: the "limit_req_status" and "limit_conn_status" directives.
! 89: Thanks to Nick Marden.
! 90:
! 91: *) Feature: the "image_filter_interlace" directive.
! 92: Thanks to Ian Babrou.
! 93:
! 94: *) Feature: $connections_waiting variable in the
! 95: ngx_http_stub_status_module.
! 96:
! 97: *) Feature: the mail proxy module now supports IPv6 backends.
! 98:
! 99: *) Bugfix: request body might be transmitted incorrectly when retrying a
! 100: request to the next upstream server; the bug had appeared in 1.3.9.
! 101: Thanks to Piotr Sikora.
! 102:
! 103: *) Bugfix: in the "client_body_in_file_only" directive; the bug had
! 104: appeared in 1.3.9.
! 105:
! 106: *) Bugfix: responses might hang if subrequests were used and a DNS error
! 107: happened during subrequest processing.
! 108: Thanks to Lanshun Zhou.
! 109:
! 110: *) Bugfix: in backend usage accounting.
! 111:
! 112:
! 113: Changes with nginx 1.3.14 05 Mar 2013
! 114:
! 115: *) Feature: $connections_active, $connections_reading, and
! 116: $connections_writing variables in the ngx_http_stub_status_module.
! 117:
! 118: *) Feature: support of WebSocket connections in the
! 119: ngx_http_uwsgi_module and ngx_http_scgi_module.
! 120:
! 121: *) Bugfix: in virtual servers handling with SNI.
! 122:
! 123: *) Bugfix: new sessions were not always stored if the "ssl_session_cache
! 124: shared" directive was used and there was no free space in shared
! 125: memory.
! 126: Thanks to Piotr Sikora.
! 127:
! 128: *) Bugfix: multiple X-Forwarded-For headers were handled incorrectly.
! 129: Thanks to Neal Poole for sponsoring this work.
! 130:
! 131: *) Bugfix: in the ngx_http_mp4_module.
! 132: Thanks to Gernot Vormayr.
! 133:
! 134:
! 135: Changes with nginx 1.3.13 19 Feb 2013
! 136:
! 137: *) Change: a compiler with name "cc" is now used by default.
! 138:
! 139: *) Feature: support for proxying of WebSocket connections.
! 140: Thanks to Apcera and CloudBees for sponsoring this work.
! 141:
! 142: *) Feature: the "auth_basic_user_file" directive supports "{SHA}"
! 143: password encryption method.
! 144: Thanks to Louis Opter.
! 145:
! 146:
! 147: Changes with nginx 1.3.12 05 Feb 2013
! 148:
! 149: *) Feature: variables support in the "proxy_bind", "fastcgi_bind",
! 150: "memcached_bind", "scgi_bind", and "uwsgi_bind" directives.
! 151:
! 152: *) Feature: the $pipe, $request_length, $time_iso8601, and $time_local
! 153: variables can now be used not only in the "log_format" directive.
! 154: Thanks to Kiril Kalchev.
! 155:
! 156: *) Feature: IPv6 support in the ngx_http_geoip_module.
! 157: Thanks to Gregor Kališnik.
! 158:
! 159: *) Bugfix: in the "proxy_method" directive.
! 160:
! 161: *) Bugfix: a segmentation fault might occur in a worker process if
! 162: resolver was used with the poll method.
! 163:
! 164: *) Bugfix: nginx might hog CPU during SSL handshake with a backend if
! 165: the select, poll, or /dev/poll methods were used.
! 166:
! 167: *) Bugfix: the "[crit] SSL_write() failed (SSL:)" error.
! 168:
! 169: *) Bugfix: in the "client_body_in_file_only" directive; the bug had
! 170: appeared in 1.3.9.
! 171:
! 172: *) Bugfix: in the "fastcgi_keep_conn" directive.
! 173:
! 174:
! 175: Changes with nginx 1.3.11 10 Jan 2013
! 176:
! 177: *) Bugfix: a segmentation fault might occur if logging was used; the bug
! 178: had appeared in 1.3.10.
! 179:
! 180: *) Bugfix: the "proxy_pass" directive did not work with IP addresses
! 181: without port specified; the bug had appeared in 1.3.10.
! 182:
! 183: *) Bugfix: a segmentation fault occurred on start or during
! 184: reconfiguration if the "keepalive" directive was specified more than
! 185: once in a single upstream block.
! 186:
! 187: *) Bugfix: parameter "default" of the "geo" directive did not set
! 188: default value for IPv6 addresses.
! 189:
! 190:
! 191: Changes with nginx 1.3.10 25 Dec 2012
! 192:
! 193: *) Change: domain names specified in configuration file are now resolved
! 194: to IPv6 addresses as well as IPv4 ones.
! 195:
! 196: *) Change: now if the "include" directive with mask is used on Unix
! 197: systems, included files are sorted in alphabetical order.
! 198:
! 199: *) Change: the "add_header" directive adds headers to 201 responses.
! 200:
! 201: *) Feature: the "geo" directive now supports IPv6 addresses in CIDR
! 202: notation.
! 203:
! 204: *) Feature: the "flush" and "gzip" parameters of the "access_log"
! 205: directive.
! 206:
! 207: *) Feature: variables support in the "auth_basic" directive.
! 208:
! 209: *) Bugfix: nginx could not be built with the ngx_http_perl_module in
! 210: some cases.
! 211:
! 212: *) Bugfix: a segmentation fault might occur in a worker process if the
! 213: ngx_http_xslt_module was used.
! 214:
! 215: *) Bugfix: nginx could not be built on MacOSX in some cases.
! 216: Thanks to Piotr Sikora.
! 217:
! 218: *) Bugfix: the "limit_rate" directive with high rates might result in
! 219: truncated responses on 32-bit platforms.
! 220: Thanks to Alexey Antropov.
! 221:
! 222: *) Bugfix: a segmentation fault might occur in a worker process if the
! 223: "if" directive was used.
! 224: Thanks to Piotr Sikora.
! 225:
! 226: *) Bugfix: a "100 Continue" response was issued with "413 Request Entity
! 227: Too Large" responses.
! 228:
! 229: *) Bugfix: the "image_filter", "image_filter_jpeg_quality" and
! 230: "image_filter_sharpen" directives might be inherited incorrectly.
! 231: Thanks to Ian Babrou.
! 232:
! 233: *) Bugfix: "crypt_r() failed" errors might appear if the "auth_basic"
! 234: directive was used on Linux.
! 235:
! 236: *) Bugfix: in backup servers handling.
! 237: Thanks to Thomas Chen.
! 238:
! 239: *) Bugfix: proxied HEAD requests might return incorrect response if the
! 240: "gzip" directive was used.
! 241:
! 242:
! 243: Changes with nginx 1.3.9 27 Nov 2012
! 244:
! 245: *) Feature: support for chunked transfer encoding while reading client
! 246: request body.
! 247:
! 248: *) Feature: the $request_time and $msec variables can now be used not
! 249: only in the "log_format" directive.
! 250:
! 251: *) Bugfix: cache manager and cache loader processes might not be able to
! 252: start if more than 512 listen sockets were used.
! 253:
! 254: *) Bugfix: in the ngx_http_dav_module.
! 255:
! 256:
! 257: Changes with nginx 1.3.8 30 Oct 2012
! 258:
! 259: *) Feature: the "optional_no_ca" parameter of the "ssl_verify_client"
! 260: directive.
! 261: Thanks to Mike Kazantsev and Eric O'Connor.
! 262:
! 263: *) Feature: the $bytes_sent, $connection, and $connection_requests
! 264: variables can now be used not only in the "log_format" directive.
! 265: Thanks to Benjamin Grössing.
! 266:
! 267: *) Feature: the "auto" parameter of the "worker_processes" directive.
! 268:
! 269: *) Bugfix: "cache file ... has md5 collision" alert.
! 270:
! 271: *) Bugfix: in the ngx_http_gunzip_filter_module.
! 272:
! 273: *) Bugfix: in the "ssl_stapling" directive.
! 274:
! 275:
! 276: Changes with nginx 1.3.7 02 Oct 2012
! 277:
! 278: *) Feature: OCSP stapling support.
! 279: Thanks to Comodo, DigiCert and GlobalSign for sponsoring this work.
! 280:
! 281: *) Feature: the "ssl_trusted_certificate" directive.
! 282:
! 283: *) Feature: resolver now randomly rotates addresses returned from cache.
! 284: Thanks to Anton Jouline.
! 285:
! 286: *) Bugfix: OpenSSL 0.9.7 compatibility.
! 287:
! 288:
! 289: Changes with nginx 1.3.6 12 Sep 2012
! 290:
! 291: *) Feature: the ngx_http_gunzip_filter_module.
! 292:
! 293: *) Feature: the "memcached_gzip_flag" directive.
! 294:
! 295: *) Feature: the "always" parameter of the "gzip_static" directive.
! 296:
! 297: *) Bugfix: in the "limit_req" directive; the bug had appeared in 1.1.14.
! 298: Thanks to Charles Chen.
! 299:
! 300: *) Bugfix: nginx could not be built by gcc 4.7 with -O2 optimization if
! 301: the --with-ipv6 option was used.
! 302:
! 303:
! 304: Changes with nginx 1.3.5 21 Aug 2012
! 305:
! 306: *) Change: the ngx_http_mp4_module module no longer skips tracks in
! 307: formats other than H.264 and AAC.
! 308:
! 309: *) Bugfix: a segmentation fault might occur in a worker process if the
! 310: "map" directive was used with variables as values.
! 311:
! 312: *) Bugfix: a segmentation fault might occur in a worker process if the
! 313: "geo" directive was used with the "ranges" parameter but without the
! 314: "default" parameter; the bug had appeared in 0.8.43.
! 315: Thanks to Zhen Chen and Weibin Yao.
! 316:
! 317: *) Bugfix: in the -p command-line parameter handling.
! 318:
! 319: *) Bugfix: in the mail proxy server.
! 320:
! 321: *) Bugfix: of minor potential bugs.
! 322: Thanks to Coverity.
! 323:
! 324: *) Bugfix: nginx/Windows could not be built with Visual Studio 2005
! 325: Express.
! 326: Thanks to HAYASHI Kentaro.
! 327:
! 328:
! 329: Changes with nginx 1.3.4 31 Jul 2012
! 330:
! 331: *) Change: the "ipv6only" parameter is now turned on by default for
! 332: listening IPv6 sockets.
! 333:
! 334: *) Feature: the Clang compiler support.
! 335:
! 336: *) Bugfix: extra listening sockets might be created.
! 337: Thanks to Roman Odaisky.
! 338:
! 339: *) Bugfix: nginx/Windows might hog CPU if a worker process failed to
! 340: start.
! 341: Thanks to Ricardo Villalobos Guevara.
! 342:
! 343: *) Bugfix: the "proxy_pass_header", "fastcgi_pass_header",
! 344: "scgi_pass_header", "uwsgi_pass_header", "proxy_hide_header",
! 345: "fastcgi_hide_header", "scgi_hide_header", and "uwsgi_hide_header"
! 346: directives might be inherited incorrectly.
! 347:
! 348:
! 349: Changes with nginx 1.3.3 10 Jul 2012
! 350:
! 351: *) Feature: entity tags support and the "etag" directive.
! 352:
! 353: *) Bugfix: trailing dot in a source value was not ignored if the "map"
! 354: directive was used with the "hostnames" parameter.
! 355:
! 356: *) Bugfix: incorrect location might be used to process a request if a
! 357: URI was changed via a "rewrite" directive before an internal redirect
! 358: to a named location.
! 359:
! 360:
! 361: Changes with nginx 1.3.2 26 Jun 2012
! 362:
! 363: *) Change: the "single" parameter of the "keepalive" directive is now
! 364: ignored.
! 365:
! 366: *) Change: SSL compression is now disabled when using all versions of
! 367: OpenSSL, including ones prior to 1.0.0.
! 368:
! 369: *) Feature: it is now possible to use the "ip_hash" directive to balance
! 370: IPv6 clients.
! 371:
! 372: *) Feature: the $status variable can now be used not only in the
! 373: "log_format" directive.
! 374:
! 375: *) Bugfix: a segmentation fault might occur in a worker process on
! 376: shutdown if the "resolver" directive was used.
! 377:
! 378: *) Bugfix: a segmentation fault might occur in a worker process if the
! 379: ngx_http_mp4_module was used.
! 380:
! 381: *) Bugfix: in the ngx_http_mp4_module.
! 382:
! 383: *) Bugfix: a segmentation fault might occur in a worker process if
! 384: conflicting wildcard server names were used.
! 385:
! 386: *) Bugfix: nginx might be terminated abnormally on a SIGBUS signal on
! 387: ARM platform.
! 388:
! 389: *) Bugfix: an alert "sendmsg() failed (9: Bad file number)" on HP-UX
! 390: while reconfiguration.
! 391:
! 392:
! 393: Changes with nginx 1.3.1 05 Jun 2012
! 394:
! 395: *) Security: now nginx/Windows ignores trailing dot in URI path
! 396: component, and does not allow URIs with ":$" in it.
! 397: Thanks to Vladimir Kochetkov, Positive Research Center.
! 398:
! 399: *) Feature: the "proxy_pass", "fastcgi_pass", "scgi_pass", "uwsgi_pass"
! 400: directives, and the "server" directive inside the "upstream" block,
! 401: now support IPv6 addresses.
! 402:
! 403: *) Feature: the "resolver" directive now supports IPv6 addresses and an
! 404: optional port specification.
! 405:
! 406: *) Feature: the "least_conn" directive inside the "upstream" block.
! 407:
! 408: *) Feature: it is now possible to specify a weight for servers while
! 409: using the "ip_hash" directive.
! 410:
! 411: *) Bugfix: a segmentation fault might occur in a worker process if the
! 412: "image_filter" directive was used; the bug had appeared in 1.3.0.
! 413:
! 414: *) Bugfix: nginx could not be built with ngx_cpp_test_module; the bug
! 415: had appeared in 1.1.12.
! 416:
! 417: *) Bugfix: access to variables from SSI and embedded perl module might
! 418: not work after reconfiguration.
! 419: Thanks to Yichun Zhang.
! 420:
! 421: *) Bugfix: in the ngx_http_xslt_filter_module.
! 422: Thanks to Kuramoto Eiji.
! 423:
! 424: *) Bugfix: memory leak if $geoip_org variable was used.
! 425: Thanks to Denis F. Latypoff.
! 426:
! 427: *) Bugfix: in the "proxy_cookie_domain" and "proxy_cookie_path"
! 428: directives.
! 429:
! 430:
! 431: Changes with nginx 1.3.0 15 May 2012
! 432:
! 433: *) Feature: the "debug_connection" directive now supports IPv6 addresses
! 434: and the "unix:" parameter.
! 435:
! 436: *) Feature: the "set_real_ip_from" directive and the "proxy" parameter
! 437: of the "geo" directive now support IPv6 addresses.
! 438:
! 439: *) Feature: the "real_ip_recursive", "geoip_proxy", and
! 440: "geoip_proxy_recursive" directives.
! 441:
! 442: *) Feature: the "proxy_recursive" parameter of the "geo" directive.
! 443:
! 444: *) Bugfix: a segmentation fault might occur in a worker process if the
! 445: "resolver" directive was used.
! 446:
! 447: *) Bugfix: a segmentation fault might occur in a worker process if the
! 448: "fastcgi_pass", "scgi_pass", or "uwsgi_pass" directives were used and
! 449: backend returned incorrect response.
! 450:
! 451: *) Bugfix: a segmentation fault might occur in a worker process if the
! 452: "rewrite" directive was used and new request arguments in a
! 453: replacement used variables.
! 454:
! 455: *) Bugfix: nginx might hog CPU if the open file resource limit was
! 456: reached.
! 457:
! 458: *) Bugfix: nginx might loop infinitely over backends if the
! 459: "proxy_next_upstream" directive with the "http_404" parameter was
! 460: used and there were backup servers specified in an upstream block.
! 461:
! 462: *) Bugfix: adding the "down" parameter of the "server" directive might
! 463: cause unneeded client redistribution among backend servers if the
! 464: "ip_hash" directive was used.
! 465:
! 466: *) Bugfix: socket leak.
! 467: Thanks to Yichun Zhang.
! 468:
! 469: *) Bugfix: in the ngx_http_fastcgi_module.
! 470:
! 471:
! 472: Changes with nginx 1.2.0 23 Apr 2012
! 473:
! 474: *) Bugfix: a segmentation fault might occur in a worker process if the
! 475: "try_files" directive was used; the bug had appeared in 1.1.19.
! 476:
! 477: *) Bugfix: response might be truncated if there were more than IOV_MAX
! 478: buffers used.
! 479:
! 480: *) Bugfix: in the "crop" parameter of the "image_filter" directive.
! 481: Thanks to Maxim Bublis.
! 482:
! 483:
! 484: Changes with nginx 1.1.19 12 Apr 2012
! 485:
! 486: *) Security: specially crafted mp4 file might allow to overwrite memory
! 487: locations in a worker process if the ngx_http_mp4_module was used,
! 488: potentially resulting in arbitrary code execution (CVE-2012-2089).
! 489: Thanks to Matthew Daley.
! 490:
! 491: *) Bugfix: nginx/Windows might be terminated abnormally.
! 492: Thanks to Vincent Lee.
! 493:
! 494: *) Bugfix: nginx hogged CPU if all servers in an upstream were marked as
! 495: "backup".
! 496:
! 497: *) Bugfix: the "allow" and "deny" directives might be inherited
! 498: incorrectly if they were used with IPv6 addresses.
! 499:
! 500: *) Bugfix: the "modern_browser" and "ancient_browser" directives might
! 501: be inherited incorrectly.
! 502:
! 503: *) Bugfix: timeouts might be handled incorrectly on Solaris/SPARC.
! 504:
! 505: *) Bugfix: in the ngx_http_mp4_module.
! 506:
! 507:
! 508: Changes with nginx 1.1.18 28 Mar 2012
! 509:
! 510: *) Change: keepalive connections are no longer disabled for Safari by
! 511: default.
! 512:
! 513: *) Feature: the $connection_requests variable.
! 514:
! 515: *) Feature: $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd and
! 516: $tcpinfo_rcv_space variables.
! 517:
! 518: *) Feature: the "worker_cpu_affinity" directive now works on FreeBSD.
! 519:
! 520: *) Feature: the "xslt_param" and "xslt_string_param" directives.
! 521: Thanks to Samuel Behan.
! 522:
! 523: *) Bugfix: in configure tests.
! 524: Thanks to Piotr Sikora.
! 525:
! 526: *) Bugfix: in the ngx_http_xslt_filter_module.
! 527:
! 528: *) Bugfix: nginx could not be built on Debian GNU/Hurd.
! 529:
! 530:
! 531: Changes with nginx 1.1.17 15 Mar 2012
! 532:
! 533: *) Security: content of previously freed memory might be sent to a
! 534: client if backend returned specially crafted response.
! 535: Thanks to Matthew Daley.
! 536:
! 537: *) Bugfix: in the embedded perl module if used from SSI.
! 538: Thanks to Matthew Daley.
! 539:
! 540: *) Bugfix: in the ngx_http_uwsgi_module.
! 541:
! 542:
! 543: Changes with nginx 1.1.16 29 Feb 2012
! 544:
! 545: *) Change: the simultaneous subrequest limit has been raised to 200.
! 546:
! 547: *) Feature: the "from" parameter of the "disable_symlinks" directive.
! 548:
! 549: *) Feature: the "return" and "error_page" directives can now be used to
! 550: return 307 redirections.
! 551:
! 552: *) Bugfix: a segmentation fault might occur in a worker process if the
! 553: "resolver" directive was used and there was no "error_log" directive
! 554: specified at global level.
! 555: Thanks to Roman Arutyunyan.
! 556:
! 557: *) Bugfix: a segmentation fault might occur in a worker process if the
! 558: "proxy_http_version 1.1" or "fastcgi_keep_conn on" directives were
! 559: used.
! 560:
! 561: *) Bugfix: memory leaks.
! 562: Thanks to Lanshun Zhou.
! 563:
! 564: *) Bugfix: in the "disable_symlinks" directive.
! 565:
! 566: *) Bugfix: on ZFS filesystem disk cache size might be calculated
! 567: incorrectly; the bug had appeared in 1.0.1.
! 568:
! 569: *) Bugfix: nginx could not be built by the icc 12.1 compiler.
! 570:
! 571: *) Bugfix: nginx could not be built by gcc on Solaris; the bug had
! 572: appeared in 1.1.15.
! 573:
! 574:
! 575: Changes with nginx 1.1.15 15 Feb 2012
! 576:
! 577: *) Feature: the "disable_symlinks" directive.
! 578:
! 579: *) Feature: the "proxy_cookie_domain" and "proxy_cookie_path"
! 580: directives.
! 581:
! 582: *) Bugfix: nginx might log incorrect error "upstream prematurely closed
! 583: connection" instead of correct "upstream sent too big header" one.
! 584: Thanks to Feibo Li.
! 585:
! 586: *) Bugfix: nginx could not be built with the ngx_http_perl_module if the
! 587: --with-openssl option was used.
! 588:
! 589: *) Bugfix: the number of internal redirects to named locations was not
! 590: limited.
! 591:
! 592: *) Bugfix: calling $r->flush() multiple times might cause errors in the
! 593: ngx_http_gzip_filter_module.
! 594:
! 595: *) Bugfix: temporary files might be not removed if the "proxy_store"
! 596: directive was used with SSI includes.
! 597:
! 598: *) Bugfix: in some cases non-cacheable variables (such as the $args
! 599: variable) returned old empty cached value.
! 600:
! 601: *) Bugfix: a segmentation fault might occur in a worker process if too
! 602: many SSI subrequests were issued simultaneously; the bug had appeared
! 603: in 0.7.25.
! 604:
! 605:
! 606: Changes with nginx 1.1.14 30 Jan 2012
! 607:
! 608: *) Feature: multiple "limit_req" limits may be used simultaneously.
! 609:
! 610: *) Bugfix: in error handling while connecting to a backend.
! 611: Thanks to Piotr Sikora.
! 612:
! 613: *) Bugfix: in AIO error handling on FreeBSD.
! 614:
! 615: *) Bugfix: in the OpenSSL library initialization.
! 616:
! 617: *) Bugfix: the "proxy_redirect" directives might be inherited
! 618: incorrectly.
! 619:
! 620: *) Bugfix: memory leak during reconfiguration if the "pcre_jit"
! 621: directive was used.
! 622:
! 623:
! 624: Changes with nginx 1.1.13 16 Jan 2012
! 625:
! 626: *) Feature: the "TLSv1.1" and "TLSv1.2" parameters of the
! 627: "ssl_protocols" directive.
! 628:
! 629: *) Bugfix: the "limit_req" directive parameters were not inherited
! 630: correctly; the bug had appeared in 1.1.12.
! 631:
! 632: *) Bugfix: the "proxy_redirect" directive incorrectly processed
! 633: "Refresh" header if regular expression were used.
! 634:
! 635: *) Bugfix: the "proxy_cache_use_stale" directive with "error" parameter
! 636: did not return answer from cache if there were no live upstreams.
! 637:
! 638: *) Bugfix: the "worker_cpu_affinity" directive might not work.
! 639:
! 640: *) Bugfix: nginx could not be built on Solaris; the bug had appeared in
! 641: 1.1.12.
! 642:
! 643: *) Bugfix: in the ngx_http_mp4_module.
! 644:
! 645:
! 646: Changes with nginx 1.1.12 26 Dec 2011
! 647:
! 648: *) Change: a "proxy_pass" directive without URI part now uses changed
! 649: URI after redirection with the "error_page" directive.
! 650: Thanks to Lanshun Zhou.
! 651:
! 652: *) Feature: the "proxy/fastcgi/scgi/uwsgi_cache_lock",
! 653: "proxy/fastcgi/scgi/uwsgi_cache_lock_timeout" directives.
! 654:
! 655: *) Feature: the "pcre_jit" directive.
! 656:
! 657: *) Feature: the "if" SSI command supports captures in regular
! 658: expressions.
! 659:
! 660: *) Bugfix: the "if" SSI command did not work inside the "block" command.
! 661:
! 662: *) Bugfix: the "limit_conn_log_level" and "limit_req_log_level"
! 663: directives might not work.
! 664:
! 665: *) Bugfix: the "limit_rate" directive did not allow to use full
! 666: throughput, even if limit value was very high.
! 667:
! 668: *) Bugfix: the "sendfile_max_chunk" directive did not work, if the
! 669: "limit_rate" directive was used.
! 670:
! 671: *) Bugfix: a "proxy_pass" directive without URI part always used
! 672: original request URI if variables were used.
! 673:
! 674: *) Bugfix: a "proxy_pass" directive without URI part might use original
! 675: request after redirection with the "try_files" directive.
! 676: Thanks to Lanshun Zhou.
! 677:
! 678: *) Bugfix: in the ngx_http_scgi_module.
! 679:
! 680: *) Bugfix: in the ngx_http_mp4_module.
! 681:
! 682: *) Bugfix: nginx could not be built on Solaris; the bug had appeared in
! 683: 1.1.9.
! 684:
! 685:
! 686: Changes with nginx 1.1.11 12 Dec 2011
! 687:
! 688: *) Feature: the "so_keepalive" parameter of the "listen" directive.
! 689: Thanks to Vsevolod Stakhov.
! 690:
! 691: *) Feature: the "if_not_empty" parameter of the
! 692: "fastcgi/scgi/uwsgi_param" directives.
! 693:
! 694: *) Feature: the $https variable.
! 695:
! 696: *) Feature: the "proxy_redirect" directive supports variables in the
! 697: first parameter.
! 698:
! 699: *) Feature: the "proxy_redirect" directive supports regular expressions.
! 700:
! 701: *) Bugfix: the $sent_http_cache_control variable might contain a wrong
! 702: value if the "expires" directive was used.
! 703: Thanks to Yichun Zhang.
! 704:
! 705: *) Bugfix: the "read_ahead" directive might not work combined with
! 706: "try_files" and "open_file_cache".
! 707:
! 708: *) Bugfix: a segmentation fault might occur in a worker process if small
! 709: time was used in the "inactive" parameter of the "proxy_cache_path"
! 710: directive.
! 711:
! 712: *) Bugfix: responses from cache might hang.
! 713:
! 714:
! 715: Changes with nginx 1.1.10 30 Nov 2011
! 716:
! 717: *) Bugfix: a segmentation fault occured in a worker process if AIO was
! 718: used on Linux; the bug had appeared in 1.1.9.
! 719:
! 720:
! 721: Changes with nginx 1.1.9 28 Nov 2011
! 722:
! 723: *) Change: now double quotes are encoded in an "echo" SSI-command
! 724: output.
! 725: Thanks to Zaur Abasmirzoev.
! 726:
! 727: *) Feature: the "valid" parameter of the "resolver" directive. By
! 728: default TTL returned by a DNS server is used.
! 729: Thanks to Kirill A. Korinskiy.
! 730:
! 731: *) Bugfix: nginx might hang after a worker process abnormal termination.
! 732:
! 733: *) Bugfix: a segmentation fault might occur in a worker process if SNI
! 734: was used; the bug had appeared in 1.1.2.
! 735:
! 736: *) Bugfix: in the "keepalive_disable" directive; the bug had appeared in
! 737: 1.1.8.
! 738: Thanks to Alexander Usov.
! 739:
! 740: *) Bugfix: SIGWINCH signal did not work after first binary upgrade; the
! 741: bug had appeared in 1.1.1.
! 742:
! 743: *) Bugfix: backend responses with length not matching "Content-Length"
! 744: header line are no longer cached.
! 745:
! 746: *) Bugfix: in the "scgi_param" directive, if complex parameters were
! 747: used.
! 748:
! 749: *) Bugfix: in the "epoll" event method.
! 750: Thanks to Yichun Zhang.
! 751:
! 752: *) Bugfix: in the ngx_http_flv_module.
! 753: Thanks to Piotr Sikora.
! 754:
! 755: *) Bugfix: in the ngx_http_mp4_module.
! 756:
! 757: *) Bugfix: IPv6 addresses are now handled properly in a request line and
! 758: in a "Host" request header line.
! 759:
! 760: *) Bugfix: "add_header" and "expires" directives did not work if a
! 761: request was proxied and response status code was 206.
! 762:
! 763: *) Bugfix: nginx could not be built on FreeBSD 10.
! 764:
! 765: *) Bugfix: nginx could not be built on AIX.
! 766:
! 767:
! 768: Changes with nginx 1.1.8 14 Nov 2011
! 769:
! 770: *) Change: the ngx_http_limit_zone_module was renamed to the
! 771: ngx_http_limit_conn_module.
! 772:
! 773: *) Change: the "limit_zone" directive was superseded by the
! 774: "limit_conn_zone" directive with a new syntax.
! 775:
! 776: *) Feature: support for multiple "limit_conn" limits on the same level.
! 777:
! 778: *) Feature: the "image_filter_sharpen" directive.
! 779:
! 780: *) Bugfix: a segmentation fault might occur in a worker process if
! 781: resolver got a big DNS response.
! 782: Thanks to Ben Hawkes.
! 783:
! 784: *) Bugfix: in cache key calculation if internal MD5 implementation was
! 785: used; the bug had appeared in 1.0.4.
! 786:
! 787: *) Bugfix: the "If-Modified-Since", "If-Range", etc. client request
! 788: header lines might be passed to backend while caching; or not passed
! 789: without caching if caching was enabled in another part of the
! 790: configuration.
! 791:
! 792: *) Bugfix: the module ngx_http_mp4_module sent incorrect
! 793: "Content-Length" response header line if the "start" argument was
! 794: used.
! 795: Thanks to Piotr Sikora.
! 796:
! 797:
! 798: Changes with nginx 1.1.7 31 Oct 2011
! 799:
! 800: *) Feature: support of several DNS servers in the "resolver" directive.
! 801: Thanks to Kirill A. Korinskiy.
! 802:
! 803: *) Bugfix: a segmentation fault occurred on start or during
! 804: reconfiguration if the "ssl" directive was used at http level and
! 805: there was no "ssl_certificate" defined.
! 806:
! 807: *) Bugfix: reduced memory consumption while proxying big files if they
! 808: were buffered to disk.
! 809:
! 810: *) Bugfix: a segmentation fault might occur in a worker process if
! 811: "proxy_http_version 1.1" directive was used.
! 812:
! 813: *) Bugfix: in the "expires @time" directive.
! 814:
! 815:
! 816: Changes with nginx 1.1.6 17 Oct 2011
! 817:
! 818: *) Change in internal API: now module context data are cleared while
! 819: internal redirect to named location.
! 820: Requested by Yichun Zhang.
! 821:
! 822: *) Change: if a server in an upstream failed, only one request will be
! 823: sent to it after fail_timeout; the server will be considered alive if
! 824: it will successfully respond to the request.
! 825:
! 826: *) Change: now the 0x7F-0x1F characters are escaped as \xXX in an
! 827: access_log.
! 828:
! 829: *) Feature: "proxy/fastcgi/scgi/uwsgi_ignore_headers" directives support
! 830: the following additional values: X-Accel-Limit-Rate,
! 831: X-Accel-Buffering, X-Accel-Charset.
! 832:
! 833: *) Feature: decrease of memory consumption if SSL is used.
! 834:
! 835: *) Bugfix: some UTF-8 characters were processed incorrectly.
! 836: Thanks to Alexey Kuts.
! 837:
! 838: *) Bugfix: the ngx_http_rewrite_module directives specified at "server"
! 839: level were executed twice if no matching locations were defined.
! 840:
! 841: *) Bugfix: a socket leak might occurred if "aio sendfile" was used.
! 842:
! 843: *) Bugfix: connections with fast clients might be closed after
! 844: send_timeout if file AIO was used.
! 845:
! 846: *) Bugfix: in the ngx_http_autoindex_module.
! 847:
! 848: *) Bugfix: the module ngx_http_mp4_module did not support seeking on
! 849: 32-bit platforms.
! 850:
! 851:
! 852: Changes with nginx 1.1.5 05 Oct 2011
! 853:
! 854: *) Feature: the "uwsgi_buffering" and "scgi_buffering" directives.
! 855: Thanks to Peter Smit.
! 856:
! 857: *) Bugfix: non-cacheable responses might be cached if
! 858: "proxy_cache_bypass" directive was used.
! 859: Thanks to John Ferlito.
! 860:
! 861: *) Bugfix: in HTTP/1.1 support in the ngx_http_proxy_module.
! 862:
! 863: *) Bugfix: cached responses with an empty body were returned
! 864: incorrectly; the bug had appeared in 0.8.31.
! 865:
! 866: *) Bugfix: 201 responses of the ngx_http_dav_module were incorrect; the
! 867: bug had appeared in 0.8.32.
! 868:
! 869: *) Bugfix: in the "return" directive.
! 870:
! 871: *) Bugfix: the "ssl_session_cache builtin" directive caused segmentation
! 872: fault; the bug had appeared in 1.1.1.
! 873:
! 874:
! 875: Changes with nginx 1.1.4 20 Sep 2011
! 876:
! 877: *) Feature: the ngx_http_upstream_keepalive module.
! 878:
! 879: *) Feature: the "proxy_http_version" directive.
! 880:
! 881: *) Feature: the "fastcgi_keep_conn" directive.
! 882:
! 883: *) Feature: the "worker_aio_requests" directive.
! 884:
! 885: *) Bugfix: if nginx was built --with-file-aio it could not be run on
! 886: Linux kernel which did not support AIO.
! 887:
! 888: *) Bugfix: in Linux AIO error processing.
! 889: Thanks to Hagai Avrahami.
! 890:
! 891: *) Bugfix: reduced memory consumption for long-lived requests.
! 892:
! 893: *) Bugfix: the module ngx_http_mp4_module did not support 64-bit MP4
! 894: "co64" atom.
! 895:
! 896:
! 897: Changes with nginx 1.1.3 14 Sep 2011
! 898:
! 899: *) Feature: the module ngx_http_mp4_module.
! 900:
! 901: *) Bugfix: in Linux AIO combined with open_file_cache.
! 902:
! 903: *) Bugfix: open_file_cache did not update file info on retest if file
! 904: was not atomically changed.
! 905:
! 906: *) Bugfix: nginx could not be built on MacOSX 10.7.
! 907:
! 908:
! 909: Changes with nginx 1.1.2 05 Sep 2011
! 910:
! 911: *) Change: now if total size of all ranges is greater than source
! 912: response size, then nginx disables ranges and returns just the source
! 913: response.
! 914:
! 915: *) Feature: the "max_ranges" directive.
! 916:
! 917: *) Bugfix: the "ssl_verify_client", "ssl_verify_depth", and
! 918: "ssl_prefer_server_ciphers" directives might work incorrectly if SNI
! 919: was used.
! 920:
! 921: *) Bugfix: in the "proxy/fastcgi/scgi/uwsgi_ignore_client_abort"
! 922: directives.
! 923:
! 924:
! 925: Changes with nginx 1.1.1 22 Aug 2011
! 926:
! 927: *) Change: now cache loader processes either as many files as specified
! 928: by "loader_files" parameter or works no longer than time specified by
! 929: the "loader_threshold" parameter during each iteration.
! 930:
! 931: *) Change: now SIGWINCH signal works only in daemon mode.
! 932:
! 933: *) Feature: now shared zones and caches use POSIX semaphores on Solaris.
! 934: Thanks to Den Ivanov.
! 935:
! 936: *) Feature: accept filters are now supported on NetBSD.
! 937:
! 938: *) Bugfix: nginx could not be built on Linux 3.0.
! 939:
! 940: *) Bugfix: nginx did not use gzipping in some cases; the bug had
! 941: appeared in 1.1.0.
! 942:
! 943: *) Bugfix: request body might be processed incorrectly if client used
! 944: pipelining.
! 945:
! 946: *) Bugfix: in the "request_body_in_single_buf" directive.
! 947:
! 948: *) Bugfix: in "proxy_set_body" and "proxy_pass_request_body" directives
! 949: if SSL connection to backend was used.
! 950:
! 951: *) Bugfix: nginx hogged CPU if all servers in an upstream were marked as
! 952: "down".
! 953:
! 954: *) Bugfix: a segmentation fault might occur during reconfiguration if
! 955: ssl_session_cache was defined but not used in previous configuration.
! 956:
! 957: *) Bugfix: a segmentation fault might occur in a worker process if many
! 958: backup servers were used in an upstream.
! 959:
! 960: *) Bugfix: a segmentation fault might occur in a worker process if
! 961: "fastcgi/scgi/uwsgi_param" directives were used with values starting
! 962: with "HTTP_"; the bug had appeared in 0.8.40.
! 963:
! 964:
! 965: Changes with nginx 1.1.0 01 Aug 2011
! 966:
! 967: *) Feature: cache loader run time decrease.
! 968:
! 969: *) Feature: "loader_files", "loader_sleep", and "loader_threshold"
! 970: options of the "proxy/fastcgi/scgi/uwsgi_cache_path" directives.
! 971:
! 972: *) Feature: loading time decrease of configuration with large number of
! 973: HTTPS sites.
! 974:
! 975: *) Feature: now nginx supports ECDHE key exchange ciphers.
! 976: Thanks to Adrian Kotelba.
! 977:
! 978: *) Feature: the "lingering_close" directive.
! 979: Thanks to Maxim Dounin.
! 980:
! 981: *) Bugfix: in closing connection for pipelined requests.
! 982: Thanks to Maxim Dounin.
! 983:
! 984: *) Bugfix: nginx did not disable gzipping if client sent "gzip;q=0" in
! 985: "Accept-Encoding" request header line.
! 986:
! 987: *) Bugfix: in timeout in unbuffered proxied mode.
! 988: Thanks to Maxim Dounin.
! 989:
! 990: *) Bugfix: memory leaks when a "proxy_pass" directive contains variables
! 991: and proxies to an HTTPS backend.
! 992: Thanks to Maxim Dounin.
! 993:
! 994: *) Bugfix: in parameter validaiton of a "proxy_pass" directive with
! 995: variables.
! 996: Thanks to Lanshun Zhou.
! 997:
! 998: *) Bugfix: SSL did not work on QNX.
! 999: Thanks to Maxim Dounin.
! 1000:
! 1001: *) Bugfix: SSL modules could not be built by gcc 4.6 without
! 1002: --with-debug option.
! 1003:
! 1004:
! 1005: Changes with nginx 1.0.5 19 Jul 2011
! 1006:
! 1007: *) Change: now default SSL ciphers are "HIGH:!aNULL:!MD5".
! 1008: Thanks to Rob Stradling.
! 1009:
! 1010: *) Feature: the "referer_hash_max_size" and "referer_hash_bucket_size"
! 1011: directives.
! 1012: Thanks to Witold Filipczyk.
! 1013:
! 1014: *) Feature: $uid_reset variable.
! 1015:
! 1016: *) Bugfix: a segmentation fault might occur in a worker process, if a
! 1017: caching was used.
! 1018: Thanks to Lanshun Zhou.
! 1019:
! 1020: *) Bugfix: worker processes may got caught in an endless loop during
! 1021: reconfiguration, if a caching was used; the bug had appeared in
! 1022: 0.8.48.
! 1023: Thanks to Maxim Dounin.
! 1024:
! 1025: *) Bugfix: "stalled cache updating" alert.
! 1026: Thanks to Maxim Dounin.
! 1027:
! 1028:
! 1029: Changes with nginx 1.0.4 01 Jun 2011
! 1030:
! 1031: *) Change: now regular expressions case sensitivity in the "map"
! 1032: directive is given by prefixes "~" or "~*".
! 1033:
! 1034: *) Feature: now shared zones and caches use POSIX semaphores on Linux.
! 1035: Thanks to Denis F. Latypoff.
! 1036:
! 1037: *) Bugfix: "stalled cache updating" alert.
! 1038:
! 1039: *) Bugfix: nginx could not be built --without-http_auth_basic_module;
! 1040: the bug had appeared in 1.0.3.
! 1041:
! 1042:
! 1043: Changes with nginx 1.0.3 25 May 2011
! 1044:
! 1045: *) Feature: the "auth_basic_user_file" directive supports "$apr1",
! 1046: "{PLAIN}", and "{SSHA}" password encryption methods.
! 1047: Thanks to Maxim Dounin.
! 1048:
! 1049: *) Feature: the "geoip_org" directive and $geoip_org variable.
! 1050: Thanks to Alexander Uskov, Arnaud Granal, and Denis F. Latypoff.
! 1051:
! 1052: *) Feature: ngx_http_geo_module and ngx_http_geoip_module support IPv4
! 1053: addresses mapped to IPv6 addresses.
! 1054:
! 1055: *) Bugfix: a segmentation fault occurred in a worker process during
! 1056: testing IPv4 address mapped to IPv6 address, if access or deny rules
! 1057: were defined only for IPv6; the bug had appeared in 0.8.22.
! 1058:
! 1059: *) Bugfix: a cached response may be broken if "proxy/fastcgi/scgi/
! 1060: uwsgi_cache_bypass" and "proxy/fastcgi/scgi/uwsgi_no_cache" directive
! 1061: values were different; the bug had appeared in 0.8.46.
! 1062:
! 1063:
! 1064: Changes with nginx 1.0.2 10 May 2011
! 1065:
! 1066: *) Feature: now shared zones and caches use POSIX semaphores.
! 1067:
! 1068: *) Bugfix: in the "rotate" parameter of the "image_filter" directive.
! 1069: Thanks to Adam Bocim.
! 1070:
! 1071: *) Bugfix: nginx could not be built on Solaris; the bug had appeared in
! 1072: 1.0.1.
! 1073:
! 1074:
! 1075: Changes with nginx 1.0.1 03 May 2011
! 1076:
! 1077: *) Change: now the "split_clients" directive uses MurmurHash2 algorithm
! 1078: because of better distribution.
! 1079: Thanks to Oleg Mamontov.
! 1080:
! 1081: *) Change: now long strings starting with zero are not considered as
! 1082: false values.
! 1083: Thanks to Maxim Dounin.
! 1084:
! 1085: *) Change: now nginx uses a default listen backlog value 511 on Linux.
! 1086:
! 1087: *) Feature: the $upstream_... variables may be used in the SSI and perl
! 1088: modules.
! 1089:
! 1090: *) Bugfix: now nginx limits better disk cache size.
! 1091: Thanks to Oleg Mamontov.
! 1092:
! 1093: *) Bugfix: a segmentation fault might occur while parsing incorrect IPv4
! 1094: address; the bug had appeared in 0.9.3.
! 1095: Thanks to Maxim Dounin.
! 1096:
! 1097: *) Bugfix: nginx could not be built by gcc 4.6 without --with-debug
! 1098: option.
! 1099:
! 1100: *) Bugfix: nginx could not be built on Solaris 9 and earlier; the bug
! 1101: had appeared in 0.9.3.
! 1102: Thanks to Dagobert Michelsen.
! 1103:
! 1104: *) Bugfix: $request_time variable had invalid values if subrequests were
! 1105: used; the bug had appeared in 0.8.47.
! 1106: Thanks to Igor A. Valcov.
! 1107:
! 1108:
! 1109: Changes with nginx 1.0.0 12 Apr 2011
! 1110:
! 1111: *) Bugfix: a cache manager might hog CPU after reload.
! 1112: Thanks to Maxim Dounin.
! 1113:
! 1114: *) Bugfix: an "image_filter crop" directive worked incorrectly coupled
! 1115: with an "image_filter rotate 180" directive.
! 1116:
! 1117: *) Bugfix: a "satisfy any" directive disabled custom 401 error page.
! 1118:
! 1119:
! 1120: Changes with nginx 0.9.7 04 Apr 2011
! 1121:
! 1122: *) Feature: now keepalive connections may be closed premature, if there
! 1123: are no free worker connections.
! 1124: Thanks to Maxim Dounin.
! 1125:
! 1126: *) Feature: the "rotate" parameter of the "image_filter" directive.
! 1127: Thanks to Adam Bocim.
! 1128:
! 1129: *) Bugfix: a case when a backend in "fastcgi_pass", "scgi_pass", or
! 1130: "uwsgi_pass" directives is given by expression and refers to a
! 1131: defined upstream.
! 1132:
! 1133:
! 1134: Changes with nginx 0.9.6 21 Mar 2011
! 1135:
! 1136: *) Feature: the "map" directive supports regular expressions as value of
! 1137: the first parameter.
! 1138:
! 1139: *) Feature: $time_iso8601 access_log variable.
! 1140: Thanks to Michael Lustfield.
! 1141:
! 1142:
! 1143: Changes with nginx 0.9.5 21 Feb 2011
! 1144:
! 1145: *) Change: now nginx uses a default listen backlog value -1 on Linux.
! 1146: Thanks to Andrei Nigmatulin.
! 1147:
! 1148: *) Feature: the "utf8" parameter of "geoip_country" and "geoip_city"
! 1149: directives.
! 1150: Thanks to Denis F. Latypoff.
! 1151:
! 1152: *) Bugfix: in a default "proxy_redirect" directive if "proxy_pass"
! 1153: directive has no URI part.
! 1154: Thanks to Maxim Dounin.
! 1155:
! 1156: *) Bugfix: an "error_page" directive did not work with nonstandard error
! 1157: codes; the bug had appeared in 0.8.53.
! 1158: Thanks to Maxim Dounin.
! 1159:
! 1160:
! 1161: Changes with nginx 0.9.4 21 Jan 2011
! 1162:
! 1163: *) Feature: the "server_name" directive supports the $hostname variable.
! 1164:
! 1165: *) Feature: 494 code for "Request Header Too Large" error.
! 1166:
! 1167:
! 1168: Changes with nginx 0.9.3 13 Dec 2010
! 1169:
! 1170: *) Bugfix: if there was a single server for given IPv6 address:port
! 1171: pair, then captures in regular expressions in a "server_name"
! 1172: directive did not work.
! 1173:
! 1174: *) Bugfix: nginx could not be built on Solaris; the bug had appeared in
! 1175: 0.9.0.
! 1176:
! 1177:
! 1178: Changes with nginx 0.9.2 06 Dec 2010
! 1179:
! 1180: *) Feature: the "If-Unmodified-Since" client request header line
! 1181: support.
! 1182:
! 1183: *) Workaround: fallback to accept() syscall if accept4() was not
! 1184: implemented; the issue had appeared in 0.9.0.
! 1185:
! 1186: *) Bugfix: nginx could not be built on Cygwin; the bug had appeared in
! 1187: 0.9.0.
! 1188:
! 1189: *) Bugfix: for OpenSSL vulnerability CVE-2010-4180.
! 1190: Thanks to Maxim Dounin.
! 1191:
! 1192:
! 1193: Changes with nginx 0.9.1 30 Nov 2010
! 1194:
! 1195: *) Bugfix: "return CODE message" directives did not work; the bug had
! 1196: appeared in 0.9.0.
! 1197:
! 1198:
! 1199: Changes with nginx 0.9.0 29 Nov 2010
! 1200:
! 1201: *) Feature: the "keepalive_disable" directive.
! 1202:
! 1203: *) Feature: the "map" directive supports variables as value of a defined
! 1204: variable.
! 1205:
! 1206: *) Feature: the "map" directive supports empty strings as value of the
! 1207: first parameter.
! 1208:
! 1209: *) Feature: the "map" directive supports expressions as the first
! 1210: parameter.
! 1211:
! 1212: *) Feature: nginx(8) manual page.
! 1213: Thanks to Sergey Osokin.
! 1214:
! 1215: *) Feature: Linux accept4() support.
! 1216: Thanks to Simon Liu.
! 1217:
! 1218: *) Workaround: elimination of Linux linker warning about "sys_errlist"
! 1219: and "sys_nerr"; the warning had appeared in 0.8.35.
! 1220:
! 1221: *) Bugfix: a segmentation fault might occur in a worker process, if the
! 1222: "auth_basic" directive was used.
! 1223: Thanks to Michail Laletin.
! 1224:
! 1225: *) Bugfix: compatibility with ngx_http_eval_module; the bug had appeared
! 1226: in 0.8.42.
! 1227:
! 1228:
! 1229: Changes with nginx 0.8.53 18 Oct 2010
! 1230:
! 1231: *) Feature: now the "error_page" directive allows to change a status
! 1232: code in a redirect.
! 1233:
! 1234: *) Feature: the "gzip_disable" directive supports special "degradation"
! 1235: mask.
! 1236:
! 1237: *) Bugfix: a socket leak might occurred if file AIO was used.
! 1238: Thanks to Maxim Dounin.
! 1239:
! 1240: *) Bugfix: if the first server had no "listen" directive and there was
! 1241: no explicit default server, then a next server with a "listen"
! 1242: directive became the default server; the bug had appeared in 0.8.21.
! 1243:
! 1244:
! 1245: Changes with nginx 0.8.52 28 Sep 2010
! 1246:
! 1247: *) Bugfix: nginx used SSL mode for a listen socket if any listen option
! 1248: was set; the bug had appeared in 0.8.51.
! 1249:
! 1250:
! 1251: Changes with nginx 0.8.51 27 Sep 2010
! 1252:
! 1253: *) Change: the "secure_link_expires" directive has been canceled.
! 1254:
! 1255: *) Change: a logging level of resolver errors has been lowered from
! 1256: "alert" to "error".
! 1257:
! 1258: *) Feature: now a listen socket "ssl" parameter may be set several
! 1259: times.
! 1260:
! 1261:
! 1262: Changes with nginx 0.8.50 02 Sep 2010
! 1263:
! 1264: *) Feature: the "secure_link", "secure_link_md5", and
! 1265: "secure_link_expires" directives of the ngx_http_secure_link_module.
! 1266:
! 1267: *) Feature: the -q switch.
! 1268: Thanks to Gena Makhomed.
! 1269:
! 1270: *) Bugfix: worker processes may got caught in an endless loop during
! 1271: reconfiguration, if a caching was used; the bug had appeared in
! 1272: 0.8.48.
! 1273:
! 1274: *) Bugfix: in the "gzip_disable" directive.
! 1275: Thanks to Derrick Petzold.
! 1276:
! 1277: *) Bugfix: nginx/Windows could not send stop, quit, reopen, and reload
! 1278: signals to a process run in other session.
! 1279:
! 1280:
! 1281: Changes with nginx 0.8.49 09 Aug 2010
! 1282:
! 1283: *) Feature: the "image_filter_jpeg_quality" directive supports
! 1284: variables.
! 1285:
! 1286: *) Bugfix: a segmentation fault might occur in a worker process, if the
! 1287: $geoip_region_name variables was used; the bug had appeared in
! 1288: 0.8.48.
! 1289:
! 1290: *) Bugfix: errors intercepted by error_page were cached only for next
! 1291: request; the bug had appeared in 0.8.48.
! 1292:
! 1293:
! 1294: Changes with nginx 0.8.48 03 Aug 2010
! 1295:
! 1296: *) Change: now the "server_name" directive default value is an empty
! 1297: name "".
! 1298: Thanks to Gena Makhomed.
! 1299:
! 1300: *) Change: now the "server_name_in_redirect" directive default value is
! 1301: "off".
! 1302:
! 1303: *) Feature: the $geoip_dma_code, $geoip_area_code, and
! 1304: $geoip_region_name variables.
! 1305: Thanks to Christine McGonagle.
! 1306:
! 1307: *) Bugfix: the "proxy_pass", "fastcgi_pass", "uwsgi_pass", and
! 1308: "scgi_pass" directives were not inherited inside "limit_except"
! 1309: blocks.
! 1310:
! 1311: *) Bugfix: the "proxy_cache_min_uses", "fastcgi_cache_min_uses"
! 1312: "uwsgi_cache_min_uses", and "scgi_cache_min_uses" directives did not
! 1313: work; the bug had appeared in 0.8.46.
! 1314:
! 1315: *) Bugfix: the "fastcgi_split_path_info" directive used incorrectly
! 1316: captures, if only parts of an URI were captured.
! 1317: Thanks to Yuriy Taraday and Frank Enderle.
! 1318:
! 1319: *) Bugfix: the "rewrite" directive did not escape a ";" character during
! 1320: copying from URI to query string.
! 1321: Thanks to Daisuke Murase.
! 1322:
! 1323: *) Bugfix: the ngx_http_image_filter_module closed a connection, if an
! 1324: image was larger than "image_filter_buffer" size.
! 1325:
! 1326:
! 1327: Changes with nginx 0.8.47 28 Jul 2010
! 1328:
! 1329: *) Bugfix: $request_time variable had invalid values for subrequests.
! 1330:
! 1331: *) Bugfix: errors intercepted by error_page could not be cached.
! 1332:
! 1333: *) Bugfix: a cache manager process may got caught in an endless loop, if
! 1334: max_size parameter was used; the bug had appeared in 0.8.46.
! 1335:
! 1336:
! 1337: Changes with nginx 0.8.46 19 Jul 2010
! 1338:
! 1339: *) Change: now the "proxy_no_cache", "fastcgi_no_cache",
! 1340: "uwsgi_no_cache", and "scgi_no_cache" directives affect on a cached
! 1341: response saving only.
! 1342:
! 1343: *) Feature: the "proxy_cache_bypass", "fastcgi_cache_bypass",
! 1344: "uwsgi_cache_bypass", and "scgi_cache_bypass" directives.
! 1345:
! 1346: *) Bugfix: nginx did not free memory in cache keys zones if there was an
! 1347: error during working with backend: the memory was freed only after
! 1348: inactivity time or on memory low condition.
! 1349:
! 1350:
! 1351: Changes with nginx 0.8.45 13 Jul 2010
! 1352:
! 1353: *) Feature: ngx_http_xslt_filter improvements.
! 1354: Thanks to Laurence Rowe.
! 1355:
! 1356: *) Bugfix: SSI response might be truncated after include with
! 1357: wait="yes"; the bug had appeared in 0.7.25.
! 1358: Thanks to Maxim Dounin.
! 1359:
! 1360: *) Bugfix: the "listen" directive did not support the "setfib=0"
! 1361: parameter.
! 1362:
! 1363:
! 1364: Changes with nginx 0.8.44 05 Jul 2010
! 1365:
! 1366: *) Change: now nginx does not cache by default backend responses, if
! 1367: they have a "Set-Cookie" header line.
! 1368:
! 1369: *) Feature: the "listen" directive supports the "setfib" parameter.
! 1370: Thanks to Andrew Filonov.
! 1371:
! 1372: *) Bugfix: the "sub_filter" directive might change character case on
! 1373: partial match.
! 1374:
! 1375: *) Bugfix: compatibility with HP/UX.
! 1376:
! 1377: *) Bugfix: compatibility with AIX xlC_r compiler.
! 1378:
! 1379: *) Bugfix: nginx treated large SSLv2 packets as plain requests.
! 1380: Thanks to Miroslaw Jaworski.
! 1381:
! 1382:
! 1383: Changes with nginx 0.8.43 30 Jun 2010
! 1384:
! 1385: *) Feature: large geo ranges base loading speed-up.
! 1386:
! 1387: *) Bugfix: an error_page redirection to "location /zero {return 204;}"
! 1388: without changing status code kept the error body; the bug had
! 1389: appeared in 0.8.42.
! 1390:
! 1391: *) Bugfix: nginx might close IPv6 listen socket during reconfiguration.
! 1392: Thanks to Maxim Dounin.
! 1393:
! 1394: *) Bugfix: the $uid_set variable may be used at any request processing
! 1395: stage.
! 1396:
! 1397:
! 1398: Changes with nginx 0.8.42 21 Jun 2010
! 1399:
! 1400: *) Change: now nginx tests locations given by regular expressions, if
! 1401: request was matched exactly by a location given by a prefix string.
! 1402: The previous behavior has been introduced in 0.7.1.
! 1403:
! 1404: *) Feature: the ngx_http_scgi_module.
! 1405: Thanks to Manlio Perillo.
! 1406:
! 1407: *) Feature: a text answer may be added to a "return" directive.
! 1408:
! 1409:
! 1410: Changes with nginx 0.8.41 15 Jun 2010
! 1411:
! 1412: *) Security: nginx/Windows worker might be terminated abnormally if a
! 1413: requested file name has invalid UTF-8 encoding.
! 1414:
! 1415: *) Change: now nginx allows to use spaces in a request line.
! 1416:
! 1417: *) Bugfix: the "proxy_redirect" directive changed incorrectly a backend
! 1418: "Refresh" response header line.
! 1419: Thanks to Andrey Andreew and Max Sogin.
! 1420:
! 1421: *) Bugfix: nginx did not support path without host name in "Destination"
! 1422: request header line.
! 1423:
! 1424:
! 1425: Changes with nginx 0.8.40 07 Jun 2010
! 1426:
! 1427: *) Security: now nginx/Windows ignores default file stream name.
! 1428: Thanks to Jose Antonio Vazquez Gonzalez.
! 1429:
! 1430: *) Feature: the ngx_http_uwsgi_module.
! 1431: Thanks to Roberto De Ioris.
! 1432:
! 1433: *) Feature: a "fastcgi_param" directive with value starting with "HTTP_"
! 1434: overrides a client request header line.
! 1435:
! 1436: *) Bugfix: the "If-Modified-Since", "If-Range", etc. client request
! 1437: header lines were passed to FastCGI-server while caching.
! 1438:
! 1439: *) Bugfix: listen unix domain socket could not be changed during
! 1440: reconfiguration.
! 1441: Thanks to Maxim Dounin.
! 1442:
! 1443:
! 1444: Changes with nginx 0.8.39 31 May 2010
! 1445:
! 1446: *) Bugfix: an inherited "alias" directive worked incorrectly in
! 1447: inclusive location.
! 1448:
! 1449: *) Bugfix: in "alias" with variables and "try_files" directives
! 1450: combination.
! 1451:
! 1452: *) Bugfix: listen unix domain and IPv6 sockets did not inherit while
! 1453: online upgrade.
! 1454: Thanks to Maxim Dounin.
! 1455:
! 1456:
! 1457: Changes with nginx 0.8.38 24 May 2010
! 1458:
! 1459: *) Feature: the "proxy_no_cache" and "fastcgi_no_cache" directives.
! 1460:
! 1461: *) Feature: now the "rewrite" directive does a redirect automatically if
! 1462: the $scheme variable is used.
! 1463: Thanks to Piotr Sikora.
! 1464:
! 1465: *) Bugfix: now "limit_req" delay directive conforms to the described
! 1466: algorithm.
! 1467: Thanks to Maxim Dounin.
! 1468:
! 1469: *) Bugfix: the $uid_got variable might not be used in the SSI and perl
! 1470: modules.
! 1471:
! 1472:
! 1473: Changes with nginx 0.8.37 17 May 2010
! 1474:
! 1475: *) Feature: the ngx_http_split_clients_module.
! 1476:
! 1477: *) Feature: the "map" directive supports keys more than 255 characters.
! 1478:
! 1479: *) Bugfix: nginx ignored the "private" and "no-store" values in the
! 1480: "Cache-Control" backend response header line.
! 1481:
! 1482: *) Bugfix: a "stub" parameter of an "include" SSI directive was not
! 1483: used, if empty response has 200 status code.
! 1484:
! 1485: *) Bugfix: if a proxied or FastCGI request was internally redirected to
! 1486: another proxied or FastCGI location, then a segmentation fault might
! 1487: occur in a worker process; the bug had appeared in 0.8.33.
! 1488: Thanks to Yichun Zhang.
! 1489:
! 1490: *) Bugfix: IMAP connections may hang until they timed out while talking
! 1491: to Zimbra server.
! 1492: Thanks to Alan Batie.
! 1493:
! 1494:
! 1495: Changes with nginx 0.8.36 22 Apr 2010
! 1496:
! 1497: *) Bugfix: the ngx_http_dav_module handled incorrectly the DELETE, COPY,
! 1498: and MOVE methods for symlinks.
! 1499:
! 1500: *) Bugfix: values of the $query_string, $arg_..., etc. variables cached
! 1501: in main request were used by the SSI module in subrequests.
! 1502:
! 1503: *) Bugfix: a variable value was repeatedly encoded after each an "echo"
! 1504: SSI-command output; the bug had appeared in 0.6.14.
! 1505:
! 1506: *) Bugfix: a worker process hung if a FIFO file was requested.
! 1507: Thanks to Vicente Aguilar and Maxim Dounin.
! 1508:
! 1509: *) Bugfix: OpenSSL-1.0.0 compatibility on 64-bit Linux.
! 1510: Thanks to Maxim Dounin.
! 1511:
! 1512: *) Bugfix: nginx could not be built --without-http-cache; the bug had
! 1513: appeared in 0.8.35.
! 1514:
! 1515:
! 1516: Changes with nginx 0.8.35 01 Apr 2010
! 1517:
! 1518: *) Change: now the charset filter runs before the SSI filter.
! 1519:
! 1520: *) Feature: the "chunked_transfer_encoding" directive.
! 1521:
! 1522: *) Bugfix: an "&" character was not escaped when it was copied in
! 1523: arguments part in a rewrite rule.
! 1524:
! 1525: *) Bugfix: nginx might be terminated abnormally while a signal
! 1526: processing or if the directive "timer_resolution" was used on
! 1527: platforms which do not support kqueue or eventport notification
! 1528: methods.
! 1529: Thanks to George Xie and Maxim Dounin.
! 1530:
! 1531: *) Bugfix: if temporary files and permanent storage area resided at
! 1532: different file systems, then permanent file modification times were
! 1533: incorrect.
! 1534: Thanks to Maxim Dounin.
! 1535:
! 1536: *) Bugfix: ngx_http_memcached_module might issue the error message
! 1537: "memcached sent invalid trailer".
! 1538: Thanks to Maxim Dounin.
! 1539:
! 1540: *) Bugfix: nginx could not built zlib-1.2.4 library using the library
! 1541: sources.
! 1542: Thanks to Maxim Dounin.
! 1543:
! 1544: *) Bugfix: a segmentation fault occurred in a worker process, if there
! 1545: was large stderr output before FastCGI response; the bug had appeared
! 1546: in 0.8.34.
! 1547: Thanks to Maxim Dounin.
! 1548:
! 1549:
! 1550: Changes with nginx 0.8.34 03 Mar 2010
! 1551:
! 1552: *) Bugfix: nginx did not support all ciphers and digests used in client
! 1553: certificates.
! 1554: Thanks to Innocenty Enikeew.
! 1555:
! 1556: *) Bugfix: nginx cached incorrectly FastCGI responses if there was large
! 1557: stderr output before response.
! 1558:
! 1559: *) Bugfix: nginx did not support HTTPS referrers.
! 1560:
! 1561: *) Bugfix: nginx/Windows might not find file if path in configuration
! 1562: was given in other character case; the bug had appeared in 0.8.33.
! 1563:
! 1564: *) Bugfix: the $date_local variable has an incorrect value, if the "%s"
! 1565: format was used.
! 1566: Thanks to Maxim Dounin.
! 1567:
! 1568: *) Bugfix: if ssl_session_cache was not set or was set to "none", then
! 1569: during client certificate verify the error "session id context
! 1570: uninitialized" might occur; the bug had appeared in 0.7.1.
! 1571:
! 1572: *) Bugfix: a geo range returned default value if the range included two
! 1573: or more /16 networks and did not begin at /16 network boundary.
! 1574:
! 1575: *) Bugfix: a block used in a "stub" parameter of an "include" SSI
! 1576: directive was output with "text/plain" MIME type.
! 1577:
! 1578: *) Bugfix: $r->sleep() did not work; the bug had appeared in 0.8.11.
! 1579:
! 1580:
! 1581: Changes with nginx 0.8.33 01 Feb 2010
! 1582:
! 1583: *) Security: now nginx/Windows ignores trailing spaces in URI.
! 1584: Thanks to Dan Crowley, Core Security Technologies.
! 1585:
! 1586: *) Security: now nginx/Windows ignores short files names.
! 1587: Thanks to Dan Crowley, Core Security Technologies.
! 1588:
! 1589: *) Change: now keepalive connections after POST requests are not
! 1590: disabled for MSIE 7.0+.
! 1591: Thanks to Adam Lounds.
! 1592:
! 1593: *) Workaround: now keepalive connections are disabled for Safari.
! 1594: Thanks to Joshua Sierles.
! 1595:
! 1596: *) Bugfix: if a proxied or FastCGI request was internally redirected to
! 1597: another proxied or FastCGI location, then $upstream_response_time
! 1598: variable may have abnormally large value; the bug had appeared in
! 1599: 0.8.7.
! 1600:
! 1601: *) Bugfix: a segmentation fault might occur in a worker process, while
! 1602: discarding a request body; the bug had appeared in 0.8.11.
! 1603:
! 1604:
! 1605: Changes with nginx 0.8.32 11 Jan 2010
! 1606:
! 1607: *) Bugfix: UTF-8 encoding usage in the ngx_http_autoindex_module.
! 1608: Thanks to Maxim Dounin.
! 1609:
! 1610: *) Bugfix: regular expression named captures worked for two names only.
! 1611: Thanks to Maxim Dounin.
! 1612:
! 1613: *) Bugfix: now the "localhost" name is used in the "Host" request header
! 1614: line, if an unix domain socket is defined in the "auth_http"
! 1615: directive.
! 1616: Thanks to Maxim Dounin.
! 1617:
! 1618: *) Bugfix: nginx did not support chunked transfer encoding for 201
! 1619: responses.
! 1620: Thanks to Julian Reich.
! 1621:
! 1622: *) Bugfix: if the "expires modified" set date in the past, then a
! 1623: negative number was set in the "Cache-Control" response header line.
! 1624: Thanks to Alex Kapranoff.
! 1625:
! 1626:
! 1627: Changes with nginx 0.8.31 23 Dec 2009
! 1628:
! 1629: *) Feature: now the "error_page" directive may redirect the 301 and 302
! 1630: responses.
! 1631:
! 1632: *) Feature: the $geoip_city_continent_code, $geoip_latitude, and
! 1633: $geoip_longitude variables.
! 1634: Thanks to Arvind Sundararajan.
! 1635:
! 1636: *) Feature: now the ngx_http_image_filter_module deletes always EXIF and
! 1637: other application specific data if the data consume more than 5% of a
! 1638: JPEG file.
! 1639:
! 1640: *) Bugfix: nginx closed a connection if a cached response had an empty
! 1641: body.
! 1642: Thanks to Piotr Sikora.
! 1643:
! 1644: *) Bugfix: nginx might not be built by gcc 4.x if the -O2 or higher
! 1645: optimization option was used.
! 1646: Thanks to Maxim Dounin and Denis F. Latypoff.
! 1647:
! 1648: *) Bugfix: regular expressions in location were always tested in
! 1649: case-sensitive mode; the bug had appeared in 0.8.25.
! 1650:
! 1651: *) Bugfix: nginx cached a 304 response if there was the "If-None-Match"
! 1652: header line in a proxied request.
! 1653: Thanks to Tim Dettrick and David Kostal.
! 1654:
! 1655: *) Bugfix: nginx/Windows tried to delete a temporary file twice if the
! 1656: file should replace an already existent file.
! 1657:
! 1658:
! 1659: Changes with nginx 0.8.30 15 Dec 2009
! 1660:
! 1661: *) Change: now the default buffer size of the
! 1662: "large_client_header_buffers" directive is 8K.
! 1663: Thanks to Andrew Cholakian.
! 1664:
! 1665: *) Feature: the conf/fastcgi.conf for simple FastCGI configurations.
! 1666:
! 1667: *) Bugfix: nginx/Windows tried to rename a temporary file twice if the
! 1668: file should replace an already existent file.
! 1669:
! 1670: *) Bugfix: of "double free or corruption" error issued if host could not
! 1671: be resolved; the bug had appeared in 0.8.22.
! 1672: Thanks to Konstantin Svist.
! 1673:
! 1674: *) Bugfix: in libatomic usage on some platforms.
! 1675: Thanks to W-Mark Kubacki.
! 1676:
! 1677:
! 1678: Changes with nginx 0.8.29 30 Nov 2009
! 1679:
! 1680: *) Change: now the "009" status code is written to an access log for
! 1681: proxied HTTP/0.9 responses.
! 1682:
! 1683: *) Feature: the "addition_types", "charset_types", "gzip_types",
! 1684: "ssi_types", "sub_filter_types", and "xslt_types" directives support
! 1685: an "*" parameter.
! 1686:
! 1687: *) Feature: GCC 4.1+ built-in atomic operations usage.
! 1688: Thanks to W-Mark Kubacki.
! 1689:
! 1690: *) Feature: the --with-libatomic[=DIR] option in the configure.
! 1691: Thanks to W-Mark Kubacki.
! 1692:
! 1693: *) Bugfix: listen unix domain socket had limited access rights.
! 1694:
! 1695: *) Bugfix: cached HTTP/0.9 responses were handled incorrectly.
! 1696:
! 1697: *) Bugfix: regular expression named captures given by "?P<...>" did not
! 1698: work in a "server_name" directive.
! 1699: Thanks to Maxim Dounin.
! 1700:
! 1701:
! 1702: Changes with nginx 0.8.28 23 Nov 2009
! 1703:
! 1704: *) Bugfix: nginx could not be built with the --without-pcre parameter;
! 1705: the bug had appeared in 0.8.25.
! 1706:
! 1707:
! 1708: Changes with nginx 0.8.27 17 Nov 2009
! 1709:
! 1710: *) Bugfix: regular expressions did not work in nginx/Windows; the bug
! 1711: had appeared in 0.8.25.
! 1712:
! 1713:
! 1714: Changes with nginx 0.8.26 16 Nov 2009
! 1715:
! 1716: *) Bugfix: in captures usage in "rewrite" directive; the bug had
! 1717: appeared in 0.8.25.
! 1718:
! 1719: *) Bugfix: nginx could not be built without the --with-debug option; the
! 1720: bug had appeared in 0.8.25.
! 1721:
! 1722:
! 1723: Changes with nginx 0.8.25 16 Nov 2009
! 1724:
! 1725: *) Change: now no message is written in an error log if a variable is
! 1726: not found by $r->variable() method.
! 1727:
! 1728: *) Feature: the ngx_http_degradation_module.
! 1729:
! 1730: *) Feature: regular expression named captures.
! 1731:
! 1732: *) Feature: now URI part is not required a "proxy_pass" directive if
! 1733: variables are used.
! 1734:
! 1735: *) Feature: now the "msie_padding" directive works for Chrome too.
! 1736:
! 1737: *) Bugfix: a segmentation fault occurred in a worker process on low
! 1738: memory condition; the bug had appeared in 0.8.18.
! 1739:
! 1740: *) Bugfix: nginx sent gzipped responses to clients those do not support
! 1741: gzip, if "gzip_static on" and "gzip_vary off"; the bug had appeared
! 1742: in 0.8.16.
! 1743:
! 1744:
! 1745: Changes with nginx 0.8.24 11 Nov 2009
! 1746:
! 1747: *) Bugfix: nginx always added "Content-Encoding: gzip" response header
! 1748: line in 304 responses sent by ngx_http_gzip_static_module.
! 1749:
! 1750: *) Bugfix: nginx could not be built without the --with-debug option; the
! 1751: bug had appeared in 0.8.23.
! 1752:
! 1753: *) Bugfix: the "unix:" parameter of the "set_real_ip_from" directive
! 1754: inherited incorrectly from previous level.
! 1755:
! 1756: *) Bugfix: in resolving empty name.
! 1757:
! 1758:
! 1759: Changes with nginx 0.8.23 11 Nov 2009
! 1760:
! 1761: *) Security: now SSL/TLS renegotiation is disabled.
! 1762: Thanks to Maxim Dounin.
! 1763:
! 1764: *) Bugfix: listen unix domain socket did not inherit while online
! 1765: upgrade.
! 1766:
! 1767: *) Bugfix: the "unix:" parameter of the "set_real_ip_from" directive did
! 1768: not without yet another directive with any IP address.
! 1769:
! 1770: *) Bugfix: segmentation fault and infinite looping in resolver.
! 1771:
! 1772: *) Bugfix: in resolver.
! 1773: Thanks to Artem Bokhan.
! 1774:
! 1775:
! 1776: Changes with nginx 0.8.22 03 Nov 2009
! 1777:
! 1778: *) Feature: the "proxy_bind", "fastcgi_bind", and "memcached_bind"
! 1779: directives.
! 1780:
! 1781: *) Feature: the "access" and the "deny" directives support IPv6.
! 1782:
! 1783: *) Feature: the "set_real_ip_from" directive supports IPv6 addresses in
! 1784: request headers.
! 1785:
! 1786: *) Feature: the "unix:" parameter of the "set_real_ip_from" directive.
! 1787:
! 1788: *) Bugfix: nginx did not delete unix domain socket after configuration
! 1789: testing.
! 1790:
! 1791: *) Bugfix: nginx deleted unix domain socket while online upgrade.
! 1792:
! 1793: *) Bugfix: the "!-x" operator did not work.
! 1794: Thanks to Maxim Dounin.
! 1795:
! 1796: *) Bugfix: a segmentation fault might occur in a worker process, if
! 1797: limit_rate was used in HTTPS server.
! 1798: Thanks to Maxim Dounin.
! 1799:
! 1800: *) Bugfix: a segmentation fault might occur in a worker process while
! 1801: $limit_rate logging.
! 1802: Thanks to Maxim Dounin.
! 1803:
! 1804: *) Bugfix: a segmentation fault might occur in a worker process, if
! 1805: there was no "listen" directive in "server" block; the bug had
! 1806: appeared in 0.8.21.
! 1807:
! 1808:
! 1809: Changes with nginx 0.8.21 26 Oct 2009
! 1810:
! 1811: *) Feature: now the "-V" switch shows TLS SNI support.
! 1812:
! 1813: *) Feature: the "listen" directive of the HTTP module supports unix
! 1814: domain sockets.
! 1815: Thanks to Hongli Lai.
! 1816:
! 1817: *) Feature: the "default_server" parameter of the "listen" directive.
! 1818:
! 1819: *) Feature: now a "default" parameter is not required to set listen
! 1820: socket options.
! 1821:
! 1822: *) Bugfix: nginx did not support dates in 2038 year on 32-bit platforms;
! 1823:
! 1824: *) Bugfix: socket leak; the bug had appeared in 0.8.11.
! 1825:
! 1826:
! 1827: Changes with nginx 0.8.20 14 Oct 2009
! 1828:
! 1829: *) Change: now default SSL ciphers are "HIGH:!ADH:!MD5".
! 1830:
! 1831: *) Bugfix: the ngx_http_autoindex_module did not show the trailing slash
! 1832: in links to a directory; the bug had appeared in 0.7.15.
! 1833:
! 1834: *) Bugfix: nginx did not close a log file set by the --error-log-path
! 1835: configuration option; the bug had appeared in 0.7.53.
! 1836:
! 1837: *) Bugfix: nginx did not treat a comma as separator in the
! 1838: "Cache-Control" backend response header line.
! 1839:
! 1840: *) Bugfix: nginx/Windows might not create temporary file, a cache file,
! 1841: or "proxy/fastcgi_store"d file if a worker had no enough access
! 1842: rights for top level directories.
! 1843:
! 1844: *) Bugfix: the "Set-Cookie" and "P3P" FastCGI response header lines were
! 1845: not hidden while caching if no "fastcgi_hide_header" directives were
! 1846: used with any parameters.
! 1847:
! 1848: *) Bugfix: nginx counted incorrectly disk cache size.
! 1849:
! 1850:
! 1851: Changes with nginx 0.8.19 06 Oct 2009
! 1852:
! 1853: *) Change: now SSLv2 protocol is disabled by default.
! 1854:
! 1855: *) Change: now default SSL ciphers are "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM".
! 1856:
! 1857: *) Bugfix: a "limit_req" directive did not work; the bug had appeared in
! 1858: 0.8.18.
! 1859:
! 1860:
! 1861: Changes with nginx 0.8.18 06 Oct 2009
! 1862:
! 1863: *) Feature: the "read_ahead" directive.
! 1864:
! 1865: *) Feature: now several "perl_modules" directives may be used.
! 1866:
! 1867: *) Feature: the "limit_req_log_level" and "limit_conn_log_level"
! 1868: directives.
! 1869:
! 1870: *) Bugfix: now "limit_req" directive conforms to the leaky bucket
! 1871: algorithm.
! 1872: Thanks to Maxim Dounin.
! 1873:
! 1874: *) Bugfix: nginx did not work on Linux/sparc.
! 1875: Thanks to Marcus Ramberg.
! 1876:
! 1877: *) Bugfix: nginx sent '\0' in a "Location" response header line on MKCOL
! 1878: request.
! 1879: Thanks to Xie Zhenye.
! 1880:
! 1881: *) Bugfix: zero status code was logged instead of 499 status code; the
! 1882: bug had appeared in 0.8.11.
! 1883:
! 1884: *) Bugfix: socket leak; the bug had appeared in 0.8.11.
! 1885:
! 1886:
! 1887: Changes with nginx 0.8.17 28 Sep 2009
! 1888:
! 1889: *) Security: now "/../" are disabled in "Destination" request header
! 1890: line.
! 1891:
! 1892: *) Change: now $host variable value is always low case.
! 1893:
! 1894: *) Feature: the $ssl_session_id variable.
! 1895:
! 1896: *) Bugfix: socket leak; the bug had appeared in 0.8.11.
! 1897:
! 1898:
! 1899: Changes with nginx 0.8.16 22 Sep 2009
! 1900:
! 1901: *) Feature: the "image_filter_transparency" directive.
! 1902:
! 1903: *) Bugfix: "addition_types" directive was incorrectly named
! 1904: "addtion_types".
! 1905:
! 1906: *) Bugfix: resolver cache poisoning.
! 1907: Thanks to Matthew Dempsky.
! 1908:
! 1909: *) Bugfix: memory leak in resolver.
! 1910: Thanks to Matthew Dempsky.
! 1911:
! 1912: *) Bugfix: invalid request line in $request variable was written in
! 1913: access_log only if error_log was set to "info" or "debug" level.
! 1914:
! 1915: *) Bugfix: in PNG alpha-channel support in the
! 1916: ngx_http_image_filter_module.
! 1917:
! 1918: *) Bugfix: nginx always added "Vary: Accept-Encoding" response header
! 1919: line, if both "gzip_static" and "gzip_vary" were on.
! 1920:
! 1921: *) Bugfix: in UTF-8 encoding support by "try_files" directive in
! 1922: nginx/Windows.
! 1923:
! 1924: *) Bugfix: in "post_action" directive usage; the bug had appeared in
! 1925: 0.8.11.
! 1926: Thanks to Igor Artemiev.
! 1927:
! 1928:
! 1929: Changes with nginx 0.8.15 14 Sep 2009
! 1930:
! 1931: *) Security: a segmentation fault might occur in worker process while
! 1932: specially crafted request handling.
! 1933: Thanks to Chris Ries.
! 1934:
! 1935: *) Bugfix: if names .domain.tld, .sub.domain.tld, and .domain-some.tld
! 1936: were defined, then the name .sub.domain.tld was matched by
! 1937: .domain.tld.
! 1938:
! 1939: *) Bugfix: in transparency support in the ngx_http_image_filter_module.
! 1940:
! 1941: *) Bugfix: in file AIO.
! 1942:
! 1943: *) Bugfix: in X-Accel-Redirect usage; the bug had appeared in 0.8.11.
! 1944:
! 1945: *) Bugfix: in embedded perl module; the bug had appeared in 0.8.11.
! 1946:
! 1947:
! 1948: Changes with nginx 0.8.14 07 Sep 2009
! 1949:
! 1950: *) Bugfix: an expired cached response might stick in the "UPDATING"
! 1951: state.
! 1952:
! 1953: *) Bugfix: a segmentation fault might occur in worker process, if
! 1954: error_log was set to info or debug level.
! 1955: Thanks to Sergey Bochenkov.
! 1956:
! 1957: *) Bugfix: in embedded perl module; the bug had appeared in 0.8.11.
! 1958:
! 1959: *) Bugfix: an "error_page" directive did not redirect a 413 error; the
! 1960: bug had appeared in 0.6.10.
! 1961:
! 1962:
! 1963: Changes with nginx 0.8.13 31 Aug 2009
! 1964:
! 1965: *) Bugfix: in the "aio sendfile" directive; the bug had appeared in
! 1966: 0.8.12.
! 1967:
! 1968: *) Bugfix: nginx could not be built without the --with-file-aio option
! 1969: on FreeBSD; the bug had appeared in 0.8.12.
! 1970:
! 1971:
! 1972: Changes with nginx 0.8.12 31 Aug 2009
! 1973:
! 1974: *) Feature: the "sendfile" parameter in the "aio" directive on FreeBSD.
! 1975:
! 1976: *) Bugfix: in try_files; the bug had appeared in 0.8.11.
! 1977:
! 1978: *) Bugfix: in memcached; the bug had appeared in 0.8.11.
! 1979:
! 1980:
! 1981: Changes with nginx 0.8.11 28 Aug 2009
! 1982:
! 1983: *) Change: now directive "gzip_disable msie6" does not disable gzipping
! 1984: for MSIE 6.0 SV1.
! 1985:
! 1986: *) Feature: file AIO support on FreeBSD and Linux.
! 1987:
! 1988: *) Feature: the "directio_alignment" directive.
! 1989:
! 1990:
! 1991: Changes with nginx 0.8.10 24 Aug 2009
! 1992:
! 1993: *) Bugfix: memory leaks if GeoIP City database was used.
! 1994:
! 1995: *) Bugfix: in copying temporary files to permanent storage area; the bug
! 1996: had appeared in 0.8.9.
! 1997:
! 1998:
! 1999: Changes with nginx 0.8.9 17 Aug 2009
! 2000:
! 2001: *) Feature: now the start cache loader runs in a separate process; this
! 2002: should improve large caches handling.
! 2003:
! 2004: *) Feature: now temporary files and permanent storage area may reside at
! 2005: different file systems.
! 2006:
! 2007:
! 2008: Changes with nginx 0.8.8 10 Aug 2009
! 2009:
! 2010: *) Bugfix: in handling FastCGI headers split in records.
! 2011:
! 2012: *) Bugfix: a segmentation fault occurred in worker process, if a request
! 2013: was handled in two proxied or FastCGIed locations and a caching was
! 2014: enabled in the first location; the bug had appeared in 0.8.7.
! 2015:
! 2016:
! 2017: Changes with nginx 0.8.7 27 Jul 2009
! 2018:
! 2019: *) Change: minimum supported OpenSSL version is 0.9.7.
! 2020:
! 2021: *) Change: the "ask" parameter of the "ssl_verify_client" directive was
! 2022: changed to the "optional" parameter and now it checks a client
! 2023: certificate if it was offered.
! 2024: Thanks to Brice Figureau.
! 2025:
! 2026: *) Feature: the $ssl_client_verify variable.
! 2027: Thanks to Brice Figureau.
! 2028:
! 2029: *) Feature: the "ssl_crl" directive.
! 2030: Thanks to Brice Figureau.
! 2031:
! 2032: *) Feature: the "proxy" parameter of the "geo" directive.
! 2033:
! 2034: *) Feature: the "image_filter" directive supports variables for setting
! 2035: size.
! 2036:
! 2037: *) Bugfix: the $ssl_client_cert variable usage corrupted memory; the bug
! 2038: had appeared in 0.7.7.
! 2039: Thanks to Sergey Zhuravlev.
! 2040:
! 2041: *) Bugfix: "proxy_pass_header" and "fastcgi_pass_header" directives did
! 2042: not pass to a client the "X-Accel-Redirect", "X-Accel-Limit-Rate",
! 2043: "X-Accel-Buffering", and "X-Accel-Charset" lines from backend
! 2044: response header.
! 2045: Thanks to Maxim Dounin.
! 2046:
! 2047: *) Bugfix: in handling "Last-Modified" and "Accept-Ranges" backend
! 2048: response header lines; the bug had appeared in 0.7.44.
! 2049: Thanks to Maxim Dounin.
! 2050:
! 2051: *) Bugfix: the "[alert] zero size buf" error if subrequest returns an
! 2052: empty response; the bug had appeared in 0.8.5.
! 2053:
! 2054:
! 2055: Changes with nginx 0.8.6 20 Jul 2009
! 2056:
! 2057: *) Feature: the ngx_http_geoip_module.
! 2058:
! 2059: *) Bugfix: XSLT filter may fail with message "not well formed XML
! 2060: document" for valid XML document.
! 2061: Thanks to Kuramoto Eiji.
! 2062:
! 2063: *) Bugfix: now in MacOSX, Cygwin, and nginx/Windows locations given by a
! 2064: regular expression are always tested in case insensitive mode.
! 2065:
! 2066: *) Bugfix: now nginx/Windows ignores trailing dots in URI.
! 2067: Thanks to Hugo Leisink.
! 2068:
! 2069: *) Bugfix: name of file specified in --conf-path was not honored during
! 2070: installation; the bug had appeared in 0.6.6.
! 2071: Thanks to Maxim Dounin.
! 2072:
! 2073:
! 2074: Changes with nginx 0.8.5 13 Jul 2009
! 2075:
! 2076: *) Bugfix: now nginx allows underscores in a request method.
! 2077:
! 2078: *) Bugfix: a 500 error code was returned for invalid login/password
! 2079: while HTTP Basic authentication on Windows.
! 2080:
! 2081: *) Bugfix: ngx_http_perl_module responses did not work in subrequests.
! 2082:
! 2083: *) Bugfix: in ngx_http_limit_req_module.
! 2084: Thanks to Maxim Dounin.
! 2085:
! 2086:
! 2087: Changes with nginx 0.8.4 22 Jun 2009
! 2088:
! 2089: *) Bugfix: nginx could not be built --without-http-cache; the bug had
! 2090: appeared in 0.8.3.
! 2091:
! 2092:
! 2093: Changes with nginx 0.8.3 19 Jun 2009
! 2094:
! 2095: *) Feature: the $upstream_cache_status variable.
! 2096:
! 2097: *) Bugfix: nginx could not be built on MacOSX 10.6.
! 2098:
! 2099: *) Bugfix: nginx could not be built --without-http-cache; the bug had
! 2100: appeared in 0.8.2.
! 2101:
! 2102: *) Bugfix: a segmentation fault occurred in worker process, if a backend
! 2103: 401 error was intercepted and the backend did not set the
! 2104: "WWW-Authenticate" response header line.
! 2105: Thanks to Eugene Mychlo.
! 2106:
! 2107:
! 2108: Changes with nginx 0.8.2 15 Jun 2009
! 2109:
! 2110: *) Bugfix: in open_file_cache and proxy/fastcgi cache interaction on
! 2111: start up.
! 2112:
! 2113: *) Bugfix: open_file_cache might cache open file descriptors too long;
! 2114: the bug had appeared in 0.7.4.
! 2115:
! 2116:
! 2117: Changes with nginx 0.8.1 08 Jun 2009
! 2118:
! 2119: *) Feature: the "updating" parameter in "proxy_cache_use_stale" and
! 2120: "fastcgi_cache_use_stale" directives.
! 2121:
! 2122: *) Bugfix: the "If-Modified-Since", "If-Range", etc. client request
! 2123: header lines were passed to backend while caching if no
! 2124: "proxy_set_header" directive was used with any parameters.
! 2125:
! 2126: *) Bugfix: the "Set-Cookie" and "P3P" response header lines were not
! 2127: hidden while caching if no "proxy_hide_header/fastcgi_hide_header"
! 2128: directives were used with any parameters.
! 2129:
! 2130: *) Bugfix: the ngx_http_image_filter_module did not support GIF87a
! 2131: format.
! 2132: Thanks to Denis Ilyinyh.
! 2133:
! 2134: *) Bugfix: nginx could not be built modules on Solaris 10 and early; the
! 2135: bug had appeared in 0.7.56.
! 2136:
! 2137:
! 2138: Changes with nginx 0.8.0 02 Jun 2009
! 2139:
! 2140: *) Feature: the "keepalive_requests" directive.
! 2141:
! 2142: *) Feature: the "limit_rate_after" directive.
! 2143: Thanks to Ivan Debnar.
! 2144:
! 2145: *) Bugfix: XLST filter did not work in subrequests.
! 2146:
! 2147: *) Bugfix: in relative paths handling in nginx/Windows.
! 2148:
! 2149: *) Bugfix: in proxy_store, fastcgi_store, proxy_cache, and fastcgi_cache
! 2150: in nginx/Windows.
! 2151:
! 2152: *) Bugfix: in memory allocation error handling.
! 2153: Thanks to Maxim Dounin and Kirill A. Korinskiy.
! 2154:
! 2155:
! 2156: Changes with nginx 0.7.59 25 May 2009
! 2157:
! 2158: *) Feature: the "proxy_cache_methods" and "fastcgi_cache_methods"
! 2159: directives.
! 2160:
! 2161: *) Bugfix: socket leak; the bug had appeared in 0.7.25.
! 2162: Thanks to Maxim Dounin.
! 2163:
! 2164: *) Bugfix: a segmentation fault occurred in worker process, if a request
! 2165: had no body and the $request_body variable was used;
! 2166: the bug had appeared in 0.7.58.
! 2167:
! 2168: *) Bugfix: the SSL modules might not built on Solaris and Linux;
! 2169: the bug had appeared in 0.7.56.
! 2170:
! 2171: *) Bugfix: ngx_http_xslt_filter_module responses were not handled by
! 2172: SSI, charset, and gzip filters.
! 2173:
! 2174: *) Bugfix: a "charset" directive did not set a charset to
! 2175: ngx_http_gzip_static_module responses.
! 2176:
! 2177:
! 2178: Changes with nginx 0.7.58 18 May 2009
! 2179:
! 2180: *) Feature: a "listen" directive of the mail proxy module supports IPv6.
! 2181:
! 2182: *) Feature: the "image_filter_jpeg_quality" directive.
! 2183:
! 2184: *) Feature: the "client_body_in_single_buffer" directive.
! 2185:
! 2186: *) Feature: the $request_body variable.
! 2187:
! 2188: *) Bugfix: in ngx_http_autoindex_module in file name links having a ":"
! 2189: symbol in the name.
! 2190:
! 2191: *) Bugfix: "make upgrade" procedure did not work; the bug had appeared
! 2192: in 0.7.53.
! 2193: Thanks to Denis F. Latypoff.
! 2194:
! 2195:
! 2196: Changes with nginx 0.7.57 12 May 2009
! 2197:
! 2198: *) Bugfix: a floating-point fault occurred in worker process, if the
! 2199: ngx_http_image_filter_module errors were redirected to named
! 2200: location; the bug had appeared in 0.7.56.
! 2201:
! 2202:
! 2203: Changes with nginx 0.7.56 11 May 2009
! 2204:
! 2205: *) Feature: nginx/Windows supports IPv6 in a "listen" directive of the
! 2206: HTTP module.
! 2207:
! 2208: *) Bugfix: in ngx_http_image_filter_module.
! 2209:
! 2210:
! 2211: Changes with nginx 0.7.55 06 May 2009
! 2212:
! 2213: *) Bugfix: the http_XXX parameters in "proxy_cache_use_stale" and
! 2214: "fastcgi_cache_use_stale" directives did not work.
! 2215:
! 2216: *) Bugfix: fastcgi cache did not cache header only responses.
! 2217:
! 2218: *) Bugfix: of "select() failed (9: Bad file descriptor)" error in
! 2219: nginx/Unix and "select() failed (10038: ...)" error in nginx/Windows.
! 2220:
! 2221: *) Bugfix: a segmentation fault might occur in worker process, if an
! 2222: "debug_connection" directive was used; the bug had appeared in
! 2223: 0.7.54.
! 2224:
! 2225: *) Bugfix: fix ngx_http_image_filter_module building errors.
! 2226:
! 2227: *) Bugfix: the files bigger than 2G could not be transferred using
! 2228: $r->sendfile.
! 2229: Thanks to Maxim Dounin.
! 2230:
! 2231:
! 2232: Changes with nginx 0.7.54 01 May 2009
! 2233:
! 2234: *) Feature: the ngx_http_image_filter_module.
! 2235:
! 2236: *) Feature: the "proxy_ignore_headers" and "fastcgi_ignore_headers"
! 2237: directives.
! 2238:
! 2239: *) Bugfix: a segmentation fault might occur in worker process, if an
! 2240: "open_file_cache_errors off" directive was used; the bug had appeared
! 2241: in 0.7.53.
! 2242:
! 2243: *) Bugfix: the "port_in_redirect off" directive did not work; the bug
! 2244: had appeared in 0.7.39.
! 2245:
! 2246: *) Bugfix: improve handling of "select" method errors.
! 2247:
! 2248: *) Bugfix: of "select() failed (10022: ...)" error in nginx/Windows.
! 2249:
! 2250: *) Bugfix: in error text descriptions in nginx/Windows; the bug had
! 2251: appeared in 0.7.53.
! 2252:
! 2253:
! 2254: Changes with nginx 0.7.53 27 Apr 2009
! 2255:
! 2256: *) Change: now a log set by --error-log-path is created from the very
! 2257: start-up.
! 2258:
! 2259: *) Feature: now the start up errors and warnings are outputted to an
! 2260: error_log and stderr.
! 2261:
! 2262: *) Feature: the empty --prefix= configure parameter forces nginx to use
! 2263: a directory where it was run as prefix.
! 2264:
! 2265: *) Feature: the -p switch.
! 2266:
! 2267: *) Feature: the -s switch on Unix platforms.
! 2268:
! 2269: *) Feature: the -? and -h switches.
! 2270: Thanks to Jerome Loyet.
! 2271:
! 2272: *) Feature: now switches may be set in condensed form.
! 2273:
! 2274: *) Bugfix: nginx/Windows did not work if configuration file was given by
! 2275: the -c switch.
! 2276:
! 2277: *) Bugfix: temporary files might be not removed if the "proxy_store",
! 2278: "fastcgi_store", "proxy_cache", or "fastcgi_cache" were used.
! 2279: Thanks to Maxim Dounin.
! 2280:
! 2281: *) Bugfix: an incorrect value was passed to mail proxy authentication
! 2282: server in "Auth-Method" header line; the bug had appeared
! 2283: in 0.7.34.
! 2284: Thanks to Simon Lecaille.
! 2285:
! 2286: *) Bugfix: system error text descriptions were not logged on Linux;
! 2287: the bug had appeared in 0.7.45.
! 2288:
! 2289: *) Bugfix: the "fastcgi_cache_min_uses" directive did not work.
! 2290: Thanks to Andrew Vorobyoff.
! 2291:
! 2292:
! 2293: Changes with nginx 0.7.52 20 Apr 2009
! 2294:
! 2295: *) Feature: the first native Windows binary release.
! 2296:
! 2297: *) Bugfix: in processing HEAD method while caching.
! 2298:
! 2299: *) Bugfix: in processing the "If-Modified-Since", "If-Range", etc.
! 2300: client request header lines while caching.
! 2301:
! 2302: *) Bugfix: now the "Set-Cookie" and "P3P" header lines are hidden in
! 2303: cacheable responses.
! 2304:
! 2305: *) Bugfix: if nginx was built with the ngx_http_perl_module and with a
! 2306: perl which supports threads, then during a master process exit the
! 2307: message "panic: MUTEX_LOCK" might be issued.
! 2308:
! 2309: *) Bugfix: nginx could not be built --without-http-cache; the bug had
! 2310: appeared in 0.7.48.
! 2311:
! 2312: *) Bugfix: nginx could not be built on platforms different from i386,
! 2313: amd64, sparc, and ppc; the bug had appeared in 0.7.42.
! 2314:
! 2315:
! 2316: Changes with nginx 0.7.51 12 Apr 2009
! 2317:
! 2318: *) Feature: the "try_files" directive supports a response code in the
! 2319: fallback parameter.
! 2320:
! 2321: *) Feature: now any response code can be used in the "return" directive.
! 2322:
! 2323: *) Bugfix: the "error_page" directive made an external redirect without
! 2324: query string; the bug had appeared in 0.7.44.
! 2325:
! 2326: *) Bugfix: if servers listened on several defined explicitly addresses,
! 2327: then virtual servers might not work; the bug had appeared in 0.7.39.
! 2328:
! 2329:
! 2330: Changes with nginx 0.7.50 06 Apr 2009
! 2331:
! 2332: *) Bugfix: the $arg_... variables did not work; the bug had appeared in
! 2333: 0.7.49.
! 2334:
! 2335:
! 2336: Changes with nginx 0.7.49 06 Apr 2009
! 2337:
! 2338: *) Bugfix: a segmentation fault might occur in worker process, if the
! 2339: $arg_... variables were used; the bug had appeared in 0.7.48.
! 2340:
! 2341:
! 2342: Changes with nginx 0.7.48 06 Apr 2009
! 2343:
! 2344: *) Feature: the "proxy_cache_key" directive.
! 2345:
! 2346: *) Bugfix: now nginx takes into account the "X-Accel-Expires",
! 2347: "Expires", and "Cache-Control" header lines in a backend response.
! 2348:
! 2349: *) Bugfix: now nginx caches responses for the GET requests only.
! 2350:
! 2351: *) Bugfix: the "fastcgi_cache_key" directive was not inherited.
! 2352:
! 2353: *) Bugfix: the $arg_... variables did not work with SSI subrequests.
! 2354: Thanks to Maxim Dounin.
! 2355:
! 2356: *) Bugfix: nginx could not be built with uclibc library.
! 2357: Thanks to Timothy Redaelli.
! 2358:
! 2359: *) Bugfix: nginx could not be built on OpenBSD; the bug had
! 2360: appeared in 0.7.46.
! 2361:
! 2362:
! 2363: Changes with nginx 0.7.47 01 Apr 2009
! 2364:
! 2365: *) Bugfix: nginx could not be built on FreeBSD 6 and early versions; the
! 2366: bug had appeared in 0.7.46.
! 2367:
! 2368: *) Bugfix: nginx could not be built on MacOSX; the bug had
! 2369: appeared in 0.7.46.
! 2370:
! 2371: *) Bugfix: if the "max_size" parameter was set, then the cache manager
! 2372: might purge a whole cache; the bug had appeared in 0.7.46.
! 2373:
! 2374: *) Change: a segmentation fault might occur in worker process, if the
! 2375: "proxy_cache"/"fastcgi_cache" and the "proxy_cache_valid"/
! 2376: "fastcgi_cache_valid" were set on different levels; the bug had
! 2377: appeared in 0.7.46.
! 2378:
! 2379: *) Bugfix: a segmentation fault might occur in worker process, if a
! 2380: request was redirected to a proxied or FastCGI server via error_page
! 2381: or try_files; the bug had appeared in 0.7.44.
! 2382:
! 2383:
! 2384: Changes with nginx 0.7.46 30 Mar 2009
! 2385:
! 2386: *) Bugfix: the previous release tarball was incorrect.
! 2387:
! 2388:
! 2389: Changes with nginx 0.7.45 30 Mar 2009
! 2390:
! 2391: *) Change: now the "proxy_cache" and the "proxy_cache_valid" directives
! 2392: can be set on different levels.
! 2393:
! 2394: *) Change: the "clean_time" parameter of the "proxy_cache_path"
! 2395: directive is canceled.
! 2396:
! 2397: *) Feature: the "max_size" parameter of the "proxy_cache_path"
! 2398: directive.
! 2399:
! 2400: *) Feature: the ngx_http_fastcgi_module preliminary cache support.
! 2401:
! 2402: *) Feature: now on shared memory allocation errors directive and zone
! 2403: names are logged.
! 2404:
! 2405: *) Bugfix: the directive "add_header last-modified ''" did not delete a
! 2406: "Last-Modified" response header line; the bug had appeared in 0.7.44.
! 2407:
! 2408: *) Bugfix: a relative path in the "auth_basic_user_file" directive given
! 2409: without variables did not work; the bug had appeared in 0.7.44.
! 2410: Thanks to Jerome Loyet.
! 2411:
! 2412: *) Bugfix: in an "alias" directive given using variables without
! 2413: references to captures of regular expressions; the bug had appeared
! 2414: in 0.7.42.
! 2415:
! 2416:
! 2417: Changes with nginx 0.7.44 23 Mar 2009
! 2418:
! 2419: *) Feature: the ngx_http_proxy_module preliminary cache support.
! 2420:
! 2421: *) Feature: the --with-pcre option in the configure.
! 2422:
! 2423: *) Feature: the "try_files" directive is now allowed on the server block
! 2424: level.
! 2425:
! 2426: *) Bugfix: the "try_files" directive handled incorrectly a query string
! 2427: in a fallback parameter.
! 2428:
! 2429: *) Bugfix: the "try_files" directive might test incorrectly directories.
! 2430:
! 2431: *) Bugfix: if there was a single server for given address:port pair,
! 2432: then captures in regular expressions in a "server_name" directive did
! 2433: not work.
! 2434:
! 2435:
! 2436: Changes with nginx 0.7.43 18 Mar 2009
! 2437:
! 2438: *) Bugfix: a request was handled incorrectly, if a "root" directive used
! 2439: variables; the bug had appeared in 0.7.42.
! 2440:
! 2441: *) Bugfix: if a server listened on wildcard address, then the
! 2442: $server_addr variable value was "0.0.0.0"; the bug had appeared in
! 2443: 0.7.36.
! 2444:
! 2445:
! 2446: Changes with nginx 0.7.42 16 Mar 2009
! 2447:
! 2448: *) Change: now the "Invalid argument" error returned by
! 2449: setsockopt(TCP_NODELAY) on Solaris, is ignored.
! 2450:
! 2451: *) Change: now if a file specified in a "auth_basic_user_file" directive
! 2452: is absent, then the 403 error is returned instead of the 500 one.
! 2453:
! 2454: *) Feature: the "auth_basic_user_file" directive supports variables.
! 2455: Thanks to Kirill A. Korinskiy.
! 2456:
! 2457: *) Feature: the "listen" directive supports the "ipv6only" parameter.
! 2458: Thanks to Zhang Hua.
! 2459:
! 2460: *) Bugfix: in an "alias" directive with references to captures of
! 2461: regular expressions; the bug had appeared in 0.7.40.
! 2462:
! 2463: *) Bugfix: compatibility with Tru64 UNIX.
! 2464: Thanks to Dustin Marquess.
! 2465:
! 2466: *) Bugfix: nginx could not be built without PCRE library; the bug had
! 2467: appeared in 0.7.41.
! 2468:
! 2469:
! 2470: Changes with nginx 0.7.41 11 Mar 2009
! 2471:
! 2472: *) Bugfix: a segmentation fault might occur in worker process, if a
! 2473: "server_name" or a "location" directives had captures in regular
! 2474: expressions; the issue had appeared in 0.7.40.
! 2475: Thanks to Vladimir Sopot.
! 2476:
! 2477:
! 2478: Changes with nginx 0.7.40 09 Mar 2009
! 2479:
! 2480: *) Feature: the "location" directive supports captures in regular
! 2481: expressions.
! 2482:
! 2483: *) Feature: an "alias" directive with capture references may be used
! 2484: inside a location given by a regular expression with captures.
! 2485:
! 2486: *) Feature: the "server_name" directive supports captures in regular
! 2487: expressions.
! 2488:
! 2489: *) Workaround: the ngx_http_autoindex_module did not show the trailing
! 2490: slash in directories on XFS filesystem; the issue had appeared in
! 2491: 0.7.15.
! 2492: Thanks to Dmitry Kuzmenko.
! 2493:
! 2494:
! 2495: Changes with nginx 0.7.39 02 Mar 2009
! 2496:
! 2497: *) Bugfix: large response with SSI might hang, if gzipping was enabled;
! 2498: the bug had appeared in 0.7.28.
! 2499: Thanks to Artem Bokhan.
! 2500:
! 2501: *) Bugfix: a segmentation fault might occur in worker process, if short
! 2502: static variants are used in a "try_files" directive.
! 2503:
! 2504:
! 2505: Changes with nginx 0.7.38 23 Feb 2009
! 2506:
! 2507: *) Feature: authentication failures logging.
! 2508:
! 2509: *) Bugfix: name/password in auth_basic_user_file were ignored after odd
! 2510: number of empty lines.
! 2511: Thanks to Alexander Zagrebin.
! 2512:
! 2513: *) Bugfix: a segmentation fault occurred in a master process, if long
! 2514: path was used in unix domain socket; the bug had appeared in 0.7.36.
! 2515:
! 2516:
! 2517: Changes with nginx 0.7.37 21 Feb 2009
! 2518:
! 2519: *) Bugfix: directives using upstreams did not work; the bug had appeared
! 2520: in 0.7.36.
! 2521:
! 2522:
! 2523: Changes with nginx 0.7.36 21 Feb 2009
! 2524:
! 2525: *) Feature: a preliminary IPv6 support; the "listen" directive of the
! 2526: HTTP module supports IPv6.
! 2527:
! 2528: *) Bugfix: the $ancient_browser variable did not work for browsers
! 2529: preset by a "modern_browser" directives.
! 2530:
! 2531:
! 2532: Changes with nginx 0.7.35 16 Feb 2009
! 2533:
! 2534: *) Bugfix: a "ssl_engine" directive did not use a SSL-accelerator for
! 2535: asymmetric ciphers.
! 2536: Thanks to Marcin Gozdalik.
! 2537:
! 2538: *) Bugfix: a "try_files" directive set MIME type depending on an
! 2539: original request extension.
! 2540:
! 2541: *) Bugfix: "*domain.tld" names were handled incorrectly in
! 2542: "server_name", "valid_referers", and "map" directives, if
! 2543: ".domain.tld" and ".subdomain.domain.tld" wildcards were used;
! 2544: the bug had appeared in 0.7.9.
! 2545:
! 2546:
! 2547: Changes with nginx 0.7.34 10 Feb 2009
! 2548:
! 2549: *) Feature: the "off" parameter of the "if_modified_since" directive.
! 2550:
! 2551: *) Feature: now nginx sends an HELO/EHLO command after a XCLIENT
! 2552: command.
! 2553: Thanks to Maxim Dounin.
! 2554:
! 2555: *) Feature: Microsoft specific "AUTH LOGIN with User Name" mode support
! 2556: in mail proxy server.
! 2557: Thanks to Maxim Dounin.
! 2558:
! 2559: *) Bugfix: in a redirect rewrite directive original arguments were
! 2560: concatenated with new arguments by a "?" rather than an "&";
! 2561: the bug had appeared in 0.1.18.
! 2562: Thanks to Maxim Dounin.
! 2563:
! 2564: *) Bugfix: nginx could not be built on AIX.
! 2565:
! 2566:
! 2567: Changes with nginx 0.7.33 02 Feb 2009
! 2568:
! 2569: *) Bugfix: a double response might be returned if the epoll or rtsig
! 2570: methods are used and a redirect was returned to a request with body.
! 2571: Thanks to Eden Li.
! 2572:
! 2573: *) Bugfix: the $sent_http_location variable was empty for some redirects
! 2574: types.
! 2575:
! 2576: *) Bugfix: a segmentation fault might occur in worker process if
! 2577: "resolver" directive was used in SMTP proxy.
! 2578:
! 2579:
! 2580: Changes with nginx 0.7.32 26 Jan 2009
! 2581:
! 2582: *) Feature: now a directory existence testing can be set explicitly in
! 2583: the "try_files" directive.
! 2584:
! 2585: *) Bugfix: fastcgi_store stored files not always.
! 2586:
! 2587: *) Bugfix: in geo ranges.
! 2588:
! 2589: *) Bugfix: in shared memory allocations if nginx was built without
! 2590: debugging.
! 2591: Thanks to Andrey Kvasov.
! 2592:
! 2593:
! 2594: Changes with nginx 0.7.31 19 Jan 2009
! 2595:
! 2596: *) Change: now the "try_files" directive tests files only and ignores
! 2597: directories.
! 2598:
! 2599: *) Feature: the "fastcgi_split_path_info" directive.
! 2600:
! 2601: *) Bugfixes in an "Expect" request header line support.
! 2602:
! 2603: *) Bugfixes in geo ranges.
! 2604:
! 2605: *) Bugfix: in a miss case ngx_http_memcached_module returned the "END"
! 2606: line as response body instead of default 404 page body; the bug had
! 2607: appeared in 0.7.18.
! 2608: Thanks to Maxim Dounin.
! 2609:
! 2610: *) Bugfix: while SMTP proxying nginx issued message "250 2.0.0 OK"
! 2611: instead of "235 2.0.0 OK"; the bug had appeared in 0.7.22.
! 2612: Thanks to Maxim Dounin.
! 2613:
! 2614:
! 2615: Changes with nginx 0.7.30 24 Dec 2008
! 2616:
! 2617: *) Bugfix: a segmentation fault occurred in worker process, if variables
! 2618: were used in the "fastcgi_pass" or "proxy_pass" directives and host
! 2619: name must be resolved; the bug had appeared in 0.7.29.
! 2620:
! 2621:
! 2622: Changes with nginx 0.7.29 24 Dec 2008
! 2623:
! 2624: *) Bugfix: the "fastcgi_pass" and "proxy_pass" directives did not
! 2625: support variables if unix domain sockets were used.
! 2626:
! 2627: *) Bugfixes in subrequest processing; the bugs had appeared in 0.7.25.
! 2628:
! 2629: *) Bugfix: a "100 Continue" response was issued for HTTP/1.0 requests;
! 2630: Thanks to Maxim Dounin.
! 2631:
! 2632: *) Bugfix: in memory allocation in the ngx_http_gzip_filter_module on
! 2633: Cygwin.
! 2634:
! 2635:
! 2636: Changes with nginx 0.7.28 22 Dec 2008
! 2637:
! 2638: *) Change: in memory allocation in the ngx_http_gzip_filter_module.
! 2639:
! 2640: *) Change: the default "gzip_buffers" directive values have been changed
! 2641: to 32 4k or 16 8k from 4 4k/8k.
! 2642:
! 2643:
! 2644: Changes with nginx 0.7.27 15 Dec 2008
! 2645:
! 2646: *) Feature: the "try_files" directive.
! 2647:
! 2648: *) Feature: variables support in the "fastcgi_pass" directive.
! 2649:
! 2650: *) Feature: now the $geo variable may get an address from a variable.
! 2651: Thanks to Andrei Nigmatulin.
! 2652:
! 2653: *) Feature: now a location's modifier may be used without space before
! 2654: name.
! 2655:
! 2656: *) Feature: the $upstream_response_length variable.
! 2657:
! 2658: *) Bugfix: now a "add_header" directive does not add an empty value.
! 2659:
! 2660: *) Bugfix: if zero length static file was requested, then nginx just
! 2661: closed connection; the bug had appeared in 0.7.25.
! 2662:
! 2663: *) Bugfix: a MOVE method could not move file in non-existent directory.
! 2664:
! 2665: *) Bugfix: a segmentation fault occurred in worker process, if no one
! 2666: named location was defined in server, but some one was used in an
! 2667: error_page directive.
! 2668: Thanks to Sergey Bochenkov.
! 2669:
! 2670:
! 2671: Changes with nginx 0.7.26 08 Dec 2008
! 2672:
! 2673: *) Bugfix: in subrequest processing; the bug had appeared in 0.7.25.
! 2674:
! 2675:
! 2676: Changes with nginx 0.7.25 08 Dec 2008
! 2677:
! 2678: *) Change: in subrequest processing.
! 2679:
! 2680: *) Change: now POSTs without "Content-Length" header line are allowed.
! 2681:
! 2682: *) Bugfix: now the "limit_req" and "limit_conn" directives log a
! 2683: prohibition reason.
! 2684:
! 2685: *) Bugfix: in the "delete" parameter of the "geo" directive.
! 2686:
! 2687:
! 2688: Changes with nginx 0.7.24 01 Dec 2008
! 2689:
! 2690: *) Feature: the "if_modified_since" directive.
! 2691:
! 2692: *) Bugfix: nginx did not process a FastCGI server response, if the
! 2693: server send too many messages to stderr before response.
! 2694:
! 2695: *) Bugfix: the "$cookie_..." variables did not work in the SSI and the
! 2696: perl module.
! 2697:
! 2698:
! 2699: Changes with nginx 0.7.23 27 Nov 2008
! 2700:
! 2701: *) Feature: the "delete" and "ranges" parameters in the "geo" directive.
! 2702:
! 2703: *) Feature: speeding up loading of geo base with large number of values.
! 2704:
! 2705: *) Feature: decrease of memory required for geo base load.
! 2706:
! 2707:
! 2708: Changes with nginx 0.7.22 20 Nov 2008
! 2709:
! 2710: *) Feature: the "none" parameter in the "smtp_auth" directive.
! 2711: Thanks to Maxim Dounin.
! 2712:
! 2713: *) Feature: the "$cookie_..." variables.
! 2714:
! 2715: *) Bugfix: the "directio" directive did not work in XFS filesystem.
! 2716:
! 2717: *) Bugfix: the resolver did not understand big DNS responses.
! 2718: Thanks to Zyb.
! 2719:
! 2720:
! 2721: Changes with nginx 0.7.21 11 Nov 2008
! 2722:
! 2723: *) Changes in the ngx_http_limit_req_module.
! 2724:
! 2725: *) Feature: the EXSLT support in the ngx_http_xslt_module.
! 2726: Thanks to Denis F. Latypoff.
! 2727:
! 2728: *) Workaround: compatibility with glibc 2.3.
! 2729: Thanks to Eric Benson and Maxim Dounin.
! 2730:
! 2731: *) Bugfix: nginx could not run on MacOSX 10.4 and earlier; the bug had
! 2732: appeared in 0.7.6.
! 2733:
! 2734:
! 2735: Changes with nginx 0.7.20 10 Nov 2008
! 2736:
! 2737: *) Changes in the ngx_http_gzip_filter_module.
! 2738:
! 2739: *) Feature: the ngx_http_limit_req_module.
! 2740:
! 2741: *) Bugfix: worker processes might exit on a SIGBUS signal on sparc and
! 2742: ppc platforms; the bug had appeared in 0.7.3.
! 2743: Thanks to Maxim Dounin.
! 2744:
! 2745: *) Bugfix: the "proxy_pass http://host/some:uri" directives did not
! 2746: work; the bug had appeared in 0.7.12.
! 2747:
! 2748: *) Bugfix: in HTTPS mode requests might fail with the "bad write retry"
! 2749: error.
! 2750:
! 2751: *) Bugfix: the ngx_http_secure_link_module did not work inside
! 2752: locations, whose names are less than 3 characters.
! 2753:
! 2754: *) Bugfix: $server_addr variable might have no value.
! 2755:
! 2756:
! 2757: Changes with nginx 0.7.19 13 Oct 2008
! 2758:
! 2759: *) Bugfix: version number update.
! 2760:
! 2761:
! 2762: Changes with nginx 0.7.18 13 Oct 2008
! 2763:
! 2764: *) Change: the "underscores_in_headers" directive; now nginx does not
! 2765: allows underscores in a client request header line names.
! 2766:
! 2767: *) Feature: the ngx_http_secure_link_module.
! 2768:
! 2769: *) Feature: the "real_ip_header" directive supports any header.
! 2770:
! 2771: *) Feature: the "log_subrequest" directive.
! 2772:
! 2773: *) Feature: the $realpath_root variable.
! 2774:
! 2775: *) Feature: the "http_502" and "http_504" parameters of the
! 2776: "proxy_next_upstream" directive.
! 2777:
! 2778: *) Bugfix: the "http_503" parameter of the "proxy_next_upstream" or
! 2779: "fastcgi_next_upstream" directives did not work.
! 2780:
! 2781: *) Bugfix: nginx might send a "Transfer-Encoding: chunked" header line
! 2782: for HEAD requests.
! 2783:
! 2784: *) Bugfix: now accept threshold depends on worker_connections.
! 2785:
! 2786:
! 2787: Changes with nginx 0.7.17 15 Sep 2008
! 2788:
! 2789: *) Feature: now the "directio" directive works on Linux.
! 2790:
! 2791: *) Feature: the $pid variable.
! 2792:
! 2793: *) Bugfix: the "directio" optimization that had appeared in 0.7.15 did
! 2794: not work with open_file_cache.
! 2795:
! 2796: *) Bugfix: the "access_log" with variables did not work on Linux; the
! 2797: bug had appeared in 0.7.7.
! 2798:
! 2799: *) Bugfix: the ngx_http_charset_module did not understand quoted charset
! 2800: name received from backend.
! 2801:
! 2802:
! 2803: Changes with nginx 0.7.16 08 Sep 2008
! 2804:
! 2805: *) Bugfix: nginx could not be built on 64-bit platforms; the bug had
! 2806: appeared in 0.7.15.
! 2807:
! 2808:
! 2809: Changes with nginx 0.7.15 08 Sep 2008
! 2810:
! 2811: *) Feature: the ngx_http_random_index_module.
! 2812:
! 2813: *) Feature: the "directio" directive has been optimized for file
! 2814: requests starting from arbitrary position.
! 2815:
! 2816: *) Feature: the "directio" directive turns off sendfile if it is
! 2817: necessary.
! 2818:
! 2819: *) Feature: now nginx allows underscores in a client request header line
! 2820: names.
! 2821:
! 2822:
! 2823: Changes with nginx 0.7.14 01 Sep 2008
! 2824:
! 2825: *) Change: now the ssl_certificate and ssl_certificate_key directives
! 2826: have no default values.
! 2827:
! 2828: *) Feature: the "listen" directive supports the "ssl" parameter.
! 2829:
! 2830: *) Feature: now nginx takes into account a time zone change while
! 2831: reconfiguration on FreeBSD and Linux.
! 2832:
! 2833: *) Bugfix: the "listen" directive parameters such as "backlog",
! 2834: "rcvbuf", etc. were not set, if a default server was not the first
! 2835: one.
! 2836:
! 2837: *) Bugfix: if URI part captured by a "rewrite" directive was used as a
! 2838: query string, then the query string was not escaped.
! 2839:
! 2840: *) Bugfix: configuration file validity test improvements.
! 2841:
! 2842:
! 2843: Changes with nginx 0.7.13 26 Aug 2008
! 2844:
! 2845: *) Bugfix: nginx could not be built on Linux and Solaris; the bug had
! 2846: appeared in 0.7.12.
! 2847:
! 2848:
! 2849: Changes with nginx 0.7.12 26 Aug 2008
! 2850:
! 2851: *) Feature: the "server_name" directive supports empty name "".
! 2852:
! 2853: *) Feature: the "gzip_disable" directive supports special "msie6" mask.
! 2854:
! 2855: *) Bugfix: if the "max_fails=0" parameter was used in upstream with
! 2856: several servers, then a worker process exited on a SIGFPE signal.
! 2857: Thanks to Maxim Dounin.
! 2858:
! 2859: *) Bugfix: a request body was dropped while redirection via an
! 2860: "error_page" directive.
! 2861:
! 2862: *) Bugfix: a full response was returned for request method HEAD while
! 2863: redirection via an "error_page" directive.
! 2864:
! 2865: *) Bugfix: the $r->header_in() method did not return value of the
! 2866: "Host", "User-Agent", and "Connection" request header lines; the bug
! 2867: had appeared in 0.7.0.
! 2868:
! 2869:
! 2870: Changes with nginx 0.7.11 18 Aug 2008
! 2871:
! 2872: *) Change: now ngx_http_charset_module does not work by default with
! 2873: text/css MIME type.
! 2874:
! 2875: *) Feature: now nginx returns the 405 status code for POST method
! 2876: requesting a static file only if the file exists.
! 2877:
! 2878: *) Feature: the "proxy_ssl_session_reuse" directive.
! 2879:
! 2880: *) Bugfix: a "proxy_pass" directive without URI part might use original
! 2881: request after the "X-Accel-Redirect" redirection was used;
! 2882:
! 2883: *) Bugfix: if a directory has search only rights and the first index
! 2884: file was absent, then nginx returned the 500 status code.
! 2885:
! 2886: *) Bugfix: in inclusive locations; the bugs had appeared in 0.7.1.
! 2887:
! 2888:
! 2889: Changes with nginx 0.7.10 13 Aug 2008
! 2890:
! 2891: *) Bugfix: in the "addition_types", "charset_types", "gzip_types",
! 2892: "ssi_types", "sub_filter_types", and "xslt_types" directives; the
! 2893: bugs had appeared in 0.7.9.
! 2894:
! 2895: *) Bugfix: of recursive error_page for 500 status code.
! 2896:
! 2897: *) Bugfix: now the ngx_http_realip_module sets address not for whole
! 2898: keepalive connection, but for each request passed via the connection.
! 2899:
! 2900:
! 2901: Changes with nginx 0.7.9 12 Aug 2008
! 2902:
! 2903: *) Change: now ngx_http_charset_module works by default with following
! 2904: MIME types: text/html, text/css, text/xml, text/plain,
! 2905: text/vnd.wap.wml, application/x-javascript, and application/rss+xml.
! 2906:
! 2907: *) Feature: the "charset_types" and "addition_types" directives.
! 2908:
! 2909: *) Feature: now the "gzip_types", "ssi_types", and "sub_filter_types"
! 2910: directives use hash.
! 2911:
! 2912: *) Feature: the ngx_cpp_test_module.
! 2913:
! 2914: *) Feature: the "expires" directive supports daily time.
! 2915:
! 2916: *) Feature: the ngx_http_xslt_module improvements and bug fixing.
! 2917: Thanks to Denis F. Latypoff and Maxim Dounin.
! 2918:
! 2919: *) Bugfix: the "log_not_found" directive did not work for index files
! 2920: tests.
! 2921:
! 2922: *) Bugfix: HTTPS connections might hang, if kqueue, epoll, rtsig, or
! 2923: eventport methods were used; the bug had appeared in 0.7.7.
! 2924:
! 2925: *) Bugfix: if the "server_name", "valid_referers", and "map" directives
! 2926: used an "*.domain.tld" wildcard and exact name "domain.tld" was not
! 2927: set, then the exact name was matched by the wildcard; the bug had
! 2928: appeared in 0.3.18.
! 2929:
! 2930:
! 2931: Changes with nginx 0.7.8 04 Aug 2008
! 2932:
! 2933: *) Feature: the ngx_http_xslt_module.
! 2934:
! 2935: *) Feature: the "$arg_..." variables.
! 2936:
! 2937: *) Feature: Solaris directio support.
! 2938: Thanks to Ivan Debnar.
! 2939:
! 2940: *) Bugfix: now if FastCGI server sends a "Location" header line without
! 2941: status line, then nginx uses 302 status code.
! 2942: Thanks to Maxim Dounin.
! 2943:
! 2944:
! 2945: Changes with nginx 0.7.7 30 Jul 2008
! 2946:
! 2947: *) Change: now the EAGAIN error returned by connect() is not considered
! 2948: as temporary error.
! 2949:
! 2950: *) Change: now the $ssl_client_cert variable value is a certificate with
! 2951: TAB character intended before each line except first one; an
! 2952: unchanged certificate is available in the $ssl_client_raw_cert
! 2953: variable.
! 2954:
! 2955: *) Feature: the "ask" parameter in the "ssl_verify_client" directive.
! 2956:
! 2957: *) Feature: byte-range processing improvements.
! 2958: Thanks to Maxim Dounin.
! 2959:
! 2960: *) Feature: the "directio" directive.
! 2961: Thanks to Jiang Hong.
! 2962:
! 2963: *) Feature: MacOSX 10.5 sendfile() support.
! 2964:
! 2965: *) Bugfix: now in MacOSX and Cygwin locations are tested in case
! 2966: insensitive mode; however, the compare is provided by single-byte
! 2967: locales only.
! 2968:
! 2969: *) Bugfix: mail proxy SSL connections hanged, if select, poll, or
! 2970: /dev/poll methods were used.
! 2971:
! 2972: *) Bugfix: UTF-8 encoding usage in the ngx_http_autoindex_module.
! 2973:
! 2974:
! 2975: Changes with nginx 0.7.6 07 Jul 2008
! 2976:
! 2977: *) Bugfix: now if variables are used in the "access_log" directive a
! 2978: request root existence is always tested.
! 2979:
! 2980: *) Bugfix: the ngx_http_flv_module did not support several values in a
! 2981: query string.
! 2982:
! 2983:
! 2984: Changes with nginx 0.7.5 01 Jul 2008
! 2985:
! 2986: *) Bugfixes in variables support in the "access_log" directive; the bugs
! 2987: had appeared in 0.7.4.
! 2988:
! 2989: *) Bugfix: nginx could not be built --without-http_gzip_module; the bug
! 2990: had appeared in 0.7.3.
! 2991: Thanks to Kirill A. Korinskiy.
! 2992:
! 2993: *) Bugfix: if sub_filter and SSI were used together, then responses
! 2994: might were transferred incorrectly.
! 2995:
! 2996:
! 2997: Changes with nginx 0.7.4 30 Jun 2008
! 2998:
! 2999: *) Feature: variables support in the "access_log" directive.
! 3000:
! 3001: *) Feature: the "open_log_file_cache" directive.
! 3002:
! 3003: *) Feature: the -g switch.
! 3004:
! 3005: *) Feature: the "Expect" request header line support.
! 3006:
! 3007: *) Bugfix: large SSI inclusions might be truncated.
! 3008:
! 3009:
! 3010: Changes with nginx 0.7.3 23 Jun 2008
! 3011:
! 3012: *) Change: the "rss" extension MIME type has been changed to
! 3013: "application/rss+xml".
! 3014:
! 3015: *) Change: now the "gzip_vary" directive turned on issues a
! 3016: "Vary: Accept-Encoding" header line for uncompressed responses too.
! 3017:
! 3018: *) Feature: now the "rewrite" directive does a redirect automatically if
! 3019: the "https://" protocol is used.
! 3020:
! 3021: *) Bugfix: the "proxy_pass" directive did not work with the HTTPS
! 3022: protocol; the bug had appeared in 0.6.9.
! 3023:
! 3024:
! 3025: Changes with nginx 0.7.2 16 Jun 2008
! 3026:
! 3027: *) Feature: now nginx supports EDH key exchange ciphers.
! 3028:
! 3029: *) Feature: the "ssl_dhparam" directive.
! 3030:
! 3031: *) Feature: the $ssl_client_cert variable.
! 3032: Thanks to Manlio Perillo.
! 3033:
! 3034: *) Bugfix: after changing URI via a "rewrite" directive nginx did not
! 3035: search a new location; the bug had appeared in 0.7.1.
! 3036: Thanks to Maxim Dounin.
! 3037:
! 3038: *) Bugfix: nginx could not be built without PCRE library; the bug had
! 3039: appeared in 0.7.1.
! 3040:
! 3041: *) Bugfix: when a request to a directory was redirected with the slash
! 3042: added, nginx dropped a query string from the original request.
! 3043:
! 3044:
! 3045: Changes with nginx 0.7.1 26 May 2008
! 3046:
! 3047: *) Change: now locations are searched in a tree.
! 3048:
! 3049: *) Change: the "optimize_server_names" directive was canceled due to the
! 3050: "server_name_in_redirect" directive introduction.
! 3051:
! 3052: *) Change: some long deprecated directives are not supported anymore.
! 3053:
! 3054: *) Change: the "none" parameter in the "ssl_session_cache" directive;
! 3055: now this is default parameter.
! 3056: Thanks to Rob Mueller.
! 3057:
! 3058: *) Bugfix: worker processes might not catch reconfiguration and log
! 3059: rotation signals.
! 3060:
! 3061: *) Bugfix: nginx could not be built on latest Fedora 9 Linux.
! 3062: Thanks to Roxis.
! 3063:
! 3064:
! 3065: Changes with nginx 0.7.0 19 May 2008
! 3066:
! 3067: *) Change: now the 0x00-0x1F, '"' and '\' characters are escaped as \xXX
! 3068: in an access_log.
! 3069: Thanks to Maxim Dounin.
! 3070:
! 3071: *) Change: now nginx allows several "Host" request header line.
! 3072:
! 3073: *) Feature: the "modified" flag in the "expires" directive.
! 3074:
! 3075: *) Feature: the $uid_got and $uid_set variables may be used at any
! 3076: request processing stage.
! 3077:
! 3078: *) Feature: the $hostname variable.
! 3079: Thanks to Andrei Nigmatulin.
! 3080:
! 3081: *) Feature: DESTDIR support.
! 3082: Thanks to Todd A. Fisher and Andras Voroskoi.
! 3083:
! 3084: *) Bugfix: a segmentation fault might occur in worker process on Linux,
! 3085: if keepalive was enabled.
! 3086:
! 3087:
! 3088: Changes with nginx 0.6.31 12 May 2008
! 3089:
! 3090: *) Bugfix: nginx did not process FastCGI response if header was at the
! 3091: end of FastCGI record; the bug had appeared in 0.6.2.
! 3092: Thanks to Sergey Serov.
! 3093:
! 3094: *) Bugfix: a segmentation fault might occur in worker process if a file
! 3095: was deleted and the "open_file_cache_errors" directive was off.
! 3096:
! 3097:
! 3098: Changes with nginx 0.6.30 29 Apr 2008
! 3099:
! 3100: *) Change: now if an "include" directive pattern does not match any
! 3101: file, then nginx does not issue an error.
! 3102:
! 3103: *) Feature: now the time in directives may be specified without spaces,
! 3104: for example, "1h50m".
! 3105:
! 3106: *) Bugfix: memory leaks if the "ssl_verify_client" directive was on.
! 3107: Thanks to Chavelle Vincent.
! 3108:
! 3109: *) Bugfix: the "sub_filter" directive might set text to change into
! 3110: output.
! 3111:
! 3112: *) Bugfix: the "error_page" directive did not take into account
! 3113: arguments in redirected URI.
! 3114:
! 3115: *) Bugfix: now nginx always opens files in binary mode under Cygwin.
! 3116:
! 3117: *) Bugfix: nginx could not be built on OpenBSD; the bug had appeared in
! 3118: 0.6.15.
! 3119:
! 3120:
! 3121: Changes with nginx 0.6.29 18 Mar 2008
! 3122:
! 3123: *) Feature: the ngx_google_perftools_module.
! 3124:
! 3125: *) Bugfix: the ngx_http_perl_module could not be built on 64-bit
! 3126: platforms; the bug had appeared in 0.6.27.
! 3127:
! 3128:
! 3129: Changes with nginx 0.6.28 13 Mar 2008
! 3130:
! 3131: *) Bugfix: the rtsig method could not be built; the bug had appeared in
! 3132: 0.6.27.
! 3133:
! 3134:
! 3135: Changes with nginx 0.6.27 12 Mar 2008
! 3136:
! 3137: *) Change: now by default the rtsig method is not built on
! 3138: Linux 2.6.18+.
! 3139:
! 3140: *) Change: now a request method is not changed while redirection to a
! 3141: named location via an "error_page" directive.
! 3142:
! 3143: *) Feature: the "resolver" and "resolver_timeout" directives in SMTP
! 3144: proxy.
! 3145:
! 3146: *) Feature: the "post_action" directive supports named locations.
! 3147:
! 3148: *) Bugfix: a segmentation fault occurred in worker process, if a request
! 3149: was redirected from proxy, FastCGI, or memcached location to static
! 3150: named locations.
! 3151:
! 3152: *) Bugfix: browsers did not repeat SSL handshake if there is no valid
! 3153: client certificate in first handshake.
! 3154: Thanks to Alexander V. Inyukhin.
! 3155:
! 3156: *) Bugfix: if response code 495-497 was redirected via an "error_page"
! 3157: directive without code change, then nginx tried to allocate too many
! 3158: memory.
! 3159:
! 3160: *) Bugfix: memory leak in long-lived non buffered connections.
! 3161:
! 3162: *) Bugfix: memory leak in resolver.
! 3163:
! 3164: *) Bugfix: a segmentation fault occurred in worker process, if a request
! 3165: was redirected from proxy, FastCGI, or memcached location to static
! 3166: named locations.
! 3167:
! 3168: *) Bugfix: in the $proxy_host and $proxy_port variables caching.
! 3169: Thanks to Sergey Bochenkov.
! 3170:
! 3171: *) Bugfix: a "proxy_pass" directive with variables used incorrectly the
! 3172: same port as in another "proxy_pass" directive with the same host
! 3173: name and without variables.
! 3174: Thanks to Sergey Bochenkov.
! 3175:
! 3176: *) Bugfix: an alert "sendmsg() failed (9: Bad file descriptor)" on some
! 3177: 64-bit platforms while reconfiguration.
! 3178:
! 3179: *) Bugfix: a segmentation fault occurred in worker process, if empty
! 3180: stub block was used second time in SSI.
! 3181:
! 3182: *) Bugfix: in copying URI part contained escaped symbols into arguments.
! 3183:
! 3184:
! 3185: Changes with nginx 0.6.26 11 Feb 2008
! 3186:
! 3187: *) Bugfix: the "proxy_store" and "fastcgi_store" directives did not
! 3188: check a response length.
! 3189:
! 3190: *) Bugfix: a segmentation fault occurred in worker process, if big value
! 3191: was used in a "expires" directive.
! 3192: Thanks to Joaquin Cuenca Abela.
! 3193:
! 3194: *) Bugfix: nginx incorrectly detected cache line size on Pentium 4.
! 3195: Thanks to Gena Makhomed.
! 3196:
! 3197: *) Bugfix: in proxied or FastCGI subrequests a client original method
! 3198: was used instead of the GET method.
! 3199:
! 3200: *) Bugfix: socket leak in HTTPS mode if deferred accept was used.
! 3201: Thanks to Ben Maurer.
! 3202:
! 3203: *) Bugfix: nginx issued the bogus error message "SSL_shutdown() failed
! 3204: (SSL: )"; the bug had appeared in 0.6.23.
! 3205:
! 3206: *) Bugfix: in HTTPS mode requests might fail with the "bad write retry"
! 3207: error; the bug had appeared in 0.6.23.
! 3208:
! 3209:
! 3210: Changes with nginx 0.6.25 08 Jan 2008
! 3211:
! 3212: *) Change: now the "server_name_in_redirect" directive is used instead
! 3213: of the "server_name" directive's special "*" parameter.
! 3214:
! 3215: *) Change: now wildcard and regex names can be used as main name in a
! 3216: "server_name" directive.
! 3217:
! 3218: *) Change: the "satisfy_any" directive was replaced by the "satisfy"
! 3219: directive.
! 3220:
! 3221: *) Workaround: old worker processes might hog CPU after reconfiguration
! 3222: if they was run under Linux OpenVZ.
! 3223:
! 3224: *) Feature: the "min_delete_depth" directive.
! 3225:
! 3226: *) Bugfix: the COPY and MOVE methods did not work with single files.
! 3227:
! 3228: *) Bugfix: the ngx_http_gzip_static_module did not allow the
! 3229: ngx_http_dav_module to work; the bug had appeared in 0.6.23.
! 3230:
! 3231: *) Bugfix: socket leak in HTTPS mode if deferred accept was used.
! 3232: Thanks to Ben Maurer.
! 3233:
! 3234: *) Bugfix: nginx could not be built without PCRE library; the bug had
! 3235: appeared in 0.6.23.
! 3236:
! 3237:
! 3238: Changes with nginx 0.6.24 27 Dec 2007
! 3239:
! 3240: *) Bugfix: a segmentation fault might occur in worker process if HTTPS
! 3241: was used; the bug had appeared in 0.6.23.
! 3242:
! 3243:
! 3244: Changes with nginx 0.6.23 27 Dec 2007
! 3245:
! 3246: *) Change: the "off" parameter in the "ssl_session_cache" directive; now
! 3247: this is default parameter.
! 3248:
! 3249: *) Change: the "open_file_cache_retest" directive was renamed to the
! 3250: "open_file_cache_valid".
! 3251:
! 3252: *) Feature: the "open_file_cache_min_uses" directive.
! 3253:
! 3254: *) Feature: the ngx_http_gzip_static_module.
! 3255:
! 3256: *) Feature: the "gzip_disable" directive.
! 3257:
! 3258: *) Feature: the "memcached_pass" directive may be used inside the "if"
! 3259: block.
! 3260:
! 3261: *) Bugfix: a segmentation fault occurred in worker process, if the
! 3262: "memcached_pass" and "if" directives were used in the same location.
! 3263:
! 3264: *) Bugfix: if a "satisfy_any on" directive was used and not all access
! 3265: and auth modules directives were set, then other given access and
! 3266: auth directives were not tested;
! 3267:
! 3268: *) Bugfix: regex parameters in a "valid_referers" directive were not
! 3269: inherited from previous level.
! 3270:
! 3271: *) Bugfix: a "post_action" directive did run if a request was completed
! 3272: with 499 status code.
! 3273:
! 3274: *) Bugfix: optimization of 16K buffer usage in a SSL connection.
! 3275: Thanks to Ben Maurer.
! 3276:
! 3277: *) Bugfix: the STARTTLS in SMTP mode did not work.
! 3278: Thanks to Oleg Motienko.
! 3279:
! 3280: *) Bugfix: in HTTPS mode requests might fail with the "bad write retry"
! 3281: error; the bug had appeared in 0.5.13.
! 3282:
! 3283:
! 3284: Changes with nginx 0.6.22 19 Dec 2007
! 3285:
! 3286: *) Change: now all ngx_http_perl_module methods return values copied to
! 3287: perl's allocated memory.
! 3288:
! 3289: *) Bugfix: if nginx was built with ngx_http_perl_module, the perl before
! 3290: 5.8.6 was used, and perl supported threads, then during
! 3291: reconfiguration the master process aborted; the bug had appeared in
! 3292: 0.5.9.
! 3293: Thanks to Boris Zhmurov.
! 3294:
! 3295: *) Bugfix: the ngx_http_perl_module methods may get invalid values of
! 3296: the regex captures.
! 3297:
! 3298: *) Bugfix: a segmentation fault occurred in worker process, if the
! 3299: $r->has_request_body() method was called for a request whose small
! 3300: request body was already received.
! 3301:
! 3302: *) Bugfix: large_client_header_buffers did not freed before going to
! 3303: keep-alive state.
! 3304: Thanks to Olexander Shtepa.
! 3305:
! 3306: *) Bugfix: the last address was missed in the $upstream_addr variable;
! 3307: the bug had appeared in 0.6.18.
! 3308:
! 3309: *) Bugfix: the "fastcgi_catch_stderr" directive did return error code;
! 3310: now it returns 502 code, that can be rerouted to a next server using
! 3311: the "fastcgi_next_upstream invalid_header" directive.
! 3312:
! 3313: *) Bugfix: a segmentation fault occurred in master process if the
! 3314: "fastcgi_catch_stderr" directive was used; the bug had appeared in
! 3315: 0.6.10.
! 3316: Thanks to Manlio Perillo.
! 3317:
! 3318:
! 3319: Changes with nginx 0.6.21 03 Dec 2007
! 3320:
! 3321: *) Change: if variable values used in a "proxy_pass" directive contain
! 3322: IP-addresses only, then a "resolver" directive is not mandatory.
! 3323:
! 3324: *) Bugfix: a segmentation fault might occur in worker process if a
! 3325: "proxy_pass" directive with URI-part was used; the bug had appeared
! 3326: in 0.6.19.
! 3327:
! 3328: *) Bugfix: if resolver was used on platform that does not support
! 3329: kqueue, then nginx issued an alert "name is out of response".
! 3330: Thanks to Andrei Nigmatulin.
! 3331:
! 3332: *) Bugfix: if the $server_protocol was used in FastCGI parameters and a
! 3333: request line length was near to the "client_header_buffer_size"
! 3334: directive value, then nginx issued an alert "fastcgi: the request
! 3335: record is too big".
! 3336:
! 3337: *) Bugfix: if a plain text HTTP/0.9 version request was made to HTTPS
! 3338: server, then nginx returned usual response.
! 3339:
! 3340:
! 3341: Changes with nginx 0.6.20 28 Nov 2007
! 3342:
! 3343: *) Bugfix: a segmentation fault might occur in worker process if a
! 3344: "proxy_pass" directive with URI-part was used; the bug had appeared
! 3345: in 0.6.19.
! 3346:
! 3347:
! 3348: Changes with nginx 0.6.19 27 Nov 2007
! 3349:
! 3350: *) Bugfix: the 0.6.18 version could not be built.
! 3351:
! 3352:
! 3353: Changes with nginx 0.6.18 27 Nov 2007
! 3354:
! 3355: *) Change: now the ngx_http_userid_module adds start time microseconds
! 3356: to the cookie field contains a pid value.
! 3357:
! 3358: *) Change: now the full request line instead of URI only is written to
! 3359: error_log.
! 3360:
! 3361: *) Feature: variables support in the "proxy_pass" directive.
! 3362:
! 3363: *) Feature: the "resolver" and "resolver_timeout" directives.
! 3364:
! 3365: *) Feature: now the directive "add_header last-modified ''" deletes a
! 3366: "Last-Modified" response header line.
! 3367:
! 3368: *) Bugfix: the "limit_rate" directive did not allow to use full
! 3369: throughput, even if limit value was very high.
! 3370:
! 3371:
! 3372: Changes with nginx 0.6.17 15 Nov 2007
! 3373:
! 3374: *) Feature: the "If-Range" request header line support.
! 3375: Thanks to Alexander V. Inyukhin.
! 3376:
! 3377: *) Bugfix: URL double escaping in a redirect of the "msie_refresh"
! 3378: directive; the bug had appeared in 0.6.4.
! 3379:
! 3380: *) Bugfix: the "autoindex" directive did not work with the "alias /"
! 3381: directive.
! 3382:
! 3383: *) Bugfix: a segmentation fault might occur in worker process if
! 3384: subrequests were used.
! 3385:
! 3386: *) Bugfix: the big responses may be transferred truncated if SSL and
! 3387: gzip were used.
! 3388:
! 3389: *) Bugfix: the $status variable was equal to 0 if a proxied server
! 3390: returned response in HTTP/0.9 version.
! 3391:
! 3392:
! 3393: Changes with nginx 0.6.16 29 Oct 2007
! 3394:
! 3395: *) Change: now the uname(2) is used on Linux instead of procfs.
! 3396: Thanks to Ilya Novikov.
! 3397:
! 3398: *) Bugfix: if the "?" character was in a "error_page" directive, then it
! 3399: was escaped in a proxied request; the bug had appeared in 0.6.11.
! 3400:
! 3401: *) Bugfix: compatibility with mget.
! 3402:
! 3403:
! 3404: Changes with nginx 0.6.15 22 Oct 2007
! 3405:
! 3406: *) Feature: Cygwin compatibility.
! 3407: Thanks to Vladimir Kutakov.
! 3408:
! 3409: *) Feature: the "merge_slashes" directive.
! 3410:
! 3411: *) Feature: the "gzip_vary" directive.
! 3412:
! 3413: *) Feature: the "server_tokens" directive.
! 3414:
! 3415: *) Bugfix: nginx did not unescape URI in the "include" SSI command.
! 3416:
! 3417: *) Bugfix: the segmentation fault was occurred on start or while
! 3418: reconfiguration if variable was used in the "charset" or
! 3419: "source_charset" directives.
! 3420:
! 3421: *) Bugfix: nginx returned the 400 response on requests like
! 3422: "GET http://www.domain.com HTTP/1.0".
! 3423: Thanks to James Oakley.
! 3424:
! 3425: *) Bugfix: if request with request body was redirected using the
! 3426: "error_page" directive, then nginx tried to read the request body
! 3427: again; the bug had appeared in 0.6.7.
! 3428:
! 3429: *) Bugfix: a segmentation fault occurred in worker process if no
! 3430: server_name was explicitly defined for server processing request; the
! 3431: bug had appeared in 0.6.7.
! 3432:
! 3433:
! 3434: Changes with nginx 0.6.14 15 Oct 2007
! 3435:
! 3436: *) Change: now by default the "echo" SSI command uses entity encoding.
! 3437:
! 3438: *) Feature: the "encoding" parameter in the "echo" SSI command.
! 3439:
! 3440: *) Feature: the "access_log" directive may be used inside the
! 3441: "limit_except" block.
! 3442:
! 3443: *) Bugfix: if all upstream servers were failed, then all servers had got
! 3444: weight the was equal one until servers became alive; the bug had
! 3445: appeared in 0.6.6.
! 3446:
! 3447: *) Bugfix: a segmentation fault occurred in worker process if
! 3448: $date_local and $date_gmt were used outside the
! 3449: ngx_http_ssi_filter_module.
! 3450:
! 3451: *) Bugfix: a segmentation fault might occur in worker process if debug
! 3452: log was enabled.
! 3453: Thanks to Andrei Nigmatulin.
! 3454:
! 3455: *) Bugfix: ngx_http_memcached_module did not set
! 3456: $upstream_response_time.
! 3457: Thanks to Maxim Dounin.
! 3458:
! 3459: *) Bugfix: a worker process may got caught in an endless loop, if the
! 3460: memcached was used.
! 3461:
! 3462: *) Bugfix: nginx supported low case only "close" and "keep-alive" values
! 3463: in the "Connection" request header line; the bug had appeared in
! 3464: 0.6.11.
! 3465:
! 3466: *) Bugfix: sub_filter did not work with empty substitution.
! 3467:
! 3468: *) Bugfix: in sub_filter parsing.
! 3469:
! 3470:
! 3471: Changes with nginx 0.6.13 24 Sep 2007
! 3472:
! 3473: *) Bugfix: nginx did not close directory file on HEAD request if
! 3474: autoindex was used.
! 3475: Thanks to Arkadiusz Patyk.
! 3476:
! 3477:
! 3478: Changes with nginx 0.6.12 21 Sep 2007
! 3479:
! 3480: *) Change: mail proxy was split on three modules: pop3, imap and smtp.
! 3481:
! 3482: *) Feature: the --without-mail_pop3_module, --without-mail_imap_module,
! 3483: and --without-mail_smtp_module configuration parameters.
! 3484:
! 3485: *) Feature: the "smtp_greeting_delay" and "smtp_client_buffer"
! 3486: directives of the ngx_mail_smtp_module.
! 3487:
! 3488: *) Bugfix: the trailing wildcards did not work; the bug had appeared in
! 3489: 0.6.9.
! 3490:
! 3491: *) Bugfix: nginx could not start on Solaris if the shared PCRE library
! 3492: located in non-standard place was used.
! 3493:
! 3494: *) Bugfix: the "proxy_hide_header" and "fastcgi_hide_header" directives
! 3495: did not hide response header lines whose name was longer than 32
! 3496: characters.
! 3497: Thanks to Manlio Perillo.
! 3498:
! 3499:
! 3500: Changes with nginx 0.6.11 11 Sep 2007
! 3501:
! 3502: *) Bugfix: active connection counter always increased if mail proxy was
! 3503: used.
! 3504:
! 3505: *) Bugfix: if backend returned response header only using non-buffered
! 3506: proxy, then nginx closed backend connection on timeout.
! 3507:
! 3508: *) Bugfix: nginx did not support several "Connection" request header
! 3509: lines.
! 3510:
! 3511: *) Bugfix: if the "max_fails" was set for upstream server, then after
! 3512: first failure server weight was always one; the bug had appeared in
! 3513: 0.6.6.
! 3514:
! 3515:
! 3516: Changes with nginx 0.6.10 03 Sep 2007
! 3517:
! 3518: *) Feature: the "open_file_cache", "open_file_cache_retest", and
! 3519: "open_file_cache_errors" directives.
! 3520:
! 3521: *) Bugfix: socket leak; the bug had appeared in 0.6.7.
! 3522:
! 3523: *) Bugfix: a charset set by the "charset" directive was not appended to
! 3524: the "Content-Type" header set by $r->send_http_header().
! 3525:
! 3526: *) Bugfix: a segmentation fault might occur in worker process if
! 3527: /dev/poll method was used.
! 3528:
! 3529:
! 3530: Changes with nginx 0.6.9 28 Aug 2007
! 3531:
! 3532: *) Bugfix: a worker process may got caught in an endless loop, if the
! 3533: HTTPS protocol was used; the bug had appeared in 0.6.7.
! 3534:
! 3535: *) Bugfix: if server listened on two addresses or ports and trailing
! 3536: wildcard was used, then nginx did not run.
! 3537:
! 3538: *) Bugfix: the "ip_hash" directive might incorrectly mark servers as
! 3539: down.
! 3540:
! 3541: *) Bugfix: nginx could not be built on amd64; the bug had appeared in
! 3542: 0.6.8.
! 3543:
! 3544:
! 3545: Changes with nginx 0.6.8 20 Aug 2007
! 3546:
! 3547: *) Change: now nginx tries to set the "worker_priority",
! 3548: "worker_rlimit_nofile", "worker_rlimit_core", and
! 3549: "worker_rlimit_sigpending" without super-user privileges.
! 3550:
! 3551: *) Change: now nginx escapes space and "%" in request to a mail proxy
! 3552: authentication server.
! 3553:
! 3554: *) Change: now nginx escapes "%" in $memcached_key variable.
! 3555:
! 3556: *) Bugfix: nginx used path relative to configuration prefix for
! 3557: non-absolute configuration file path specified in the "-c" key; the
! 3558: bug had appeared in 0.6.6.
! 3559:
! 3560: *) Bugfix: nginx did not work on FreeBSD/sparc64.
! 3561:
! 3562:
! 3563: Changes with nginx 0.6.7 15 Aug 2007
! 3564:
! 3565: *) Change: now the paths specified in the "include",
! 3566: "auth_basic_user_file", "perl_modules", "ssl_certificate",
! 3567: "ssl_certificate_key", and "ssl_client_certificate" directives are
! 3568: relative to directory of nginx configuration file nginx.conf, but not
! 3569: to nginx prefix directory.
! 3570:
! 3571: *) Change: the --sysconfdir=PATH option in configure was canceled.
! 3572:
! 3573: *) Change: the special make target "upgrade1" was defined for online
! 3574: upgrade of 0.1.x versions.
! 3575:
! 3576: *) Feature: the "server_name" and "valid_referers" directives support
! 3577: regular expressions.
! 3578:
! 3579: *) Feature: the "server" directive in the "upstream" context supports
! 3580: the "backup" parameter.
! 3581:
! 3582: *) Feature: the ngx_http_perl_module supports the
! 3583: $r->discard_request_body.
! 3584:
! 3585: *) Feature: the "add_header Last-Modified ..." directive changes the
! 3586: "Last-Modified" response header line.
! 3587:
! 3588: *) Bugfix: if a response different than 200 was returned to a request
! 3589: with body and connection went to the keep-alive state after the
! 3590: request, then nginx returned 400 for the next request.
! 3591:
! 3592: *) Bugfix: a segmentation fault occurred in worker process if invalid
! 3593: address was set in the "auth_http" directive.
! 3594:
! 3595: *) Bugfix: now nginx uses default listen backlog value 511 on all
! 3596: platforms except FreeBSD.
! 3597: Thanks to Jiang Hong.
! 3598:
! 3599: *) Bugfix: a worker process may got caught in an endless loop, if a
! 3600: "server" inside "upstream" block was marked as "down"; the bug had
! 3601: appeared in 0.6.6.
! 3602:
! 3603: *) Bugfix: now Solaris sendfilev() is not used to transfer the client
! 3604: request body to FastCGI-server via the unix domain socket.
! 3605:
! 3606:
! 3607: Changes with nginx 0.6.6 30 Jul 2007
! 3608:
! 3609: *) Feature: the --sysconfdir=PATH option in configure.
! 3610:
! 3611: *) Feature: named locations.
! 3612:
! 3613: *) Feature: the $args variable can be set with the "set" directive.
! 3614:
! 3615: *) Feature: the $is_args variable.
! 3616:
! 3617: *) Bugfix: fair big weight upstream balancer.
! 3618:
! 3619: *) Bugfix: if a client has closed connection to mail proxy then nginx
! 3620: might not close connection to backend.
! 3621:
! 3622: *) Bugfix: if the same host without specified port was used as backend
! 3623: for HTTP and HTTPS, then nginx used only one port - 80 or 443.
! 3624:
! 3625: *) Bugfix: fix building on Solaris/amd64 by Sun Studio 11 and early
! 3626: versions; the bug had appeared in 0.6.4.
! 3627:
! 3628:
! 3629: Changes with nginx 0.6.5 23 Jul 2007
! 3630:
! 3631: *) Feature: $nginx_version variable.
! 3632: Thanks to Nick S. Grechukh.
! 3633:
! 3634: *) Feature: the mail proxy supports AUTHENTICATE in IMAP mode.
! 3635: Thanks to Maxim Dounin.
! 3636:
! 3637: *) Feature: the mail proxy supports STARTTLS in SMTP mode.
! 3638: Thanks to Maxim Dounin.
! 3639:
! 3640: *) Bugfix: now nginx escapes space in $memcached_key variable.
! 3641:
! 3642: *) Bugfix: nginx was incorrectly built by Sun Studio on Solaris/amd64.
! 3643: Thanks to Jiang Hong.
! 3644:
! 3645: *) Bugfix: of minor potential bugs.
! 3646: Thanks to Coverity's Scan.
! 3647:
! 3648:
! 3649: Changes with nginx 0.6.4 17 Jul 2007
! 3650:
! 3651: *) Security: the "msie_refresh" directive allowed XSS.
! 3652: Thanks to Maxim Boguk.
! 3653:
! 3654: *) Change: the "proxy_store" and "fastcgi_store" directives were
! 3655: changed.
! 3656:
! 3657: *) Feature: the "proxy_store_access" and "fastcgi_store_access"
! 3658: directives.
! 3659:
! 3660: *) Bugfix: nginx did not work on Solaris/sparc64 if it was built by Sun
! 3661: Studio.
! 3662: Thanks to Andrei Nigmatulin.
! 3663:
! 3664: *) Workaround: for Sun Studio 12.
! 3665: Thanks to Jiang Hong.
! 3666:
! 3667:
! 3668: Changes with nginx 0.6.3 12 Jul 2007
! 3669:
! 3670: *) Feature: the "proxy_store" and "fastcgi_store" directives.
! 3671:
! 3672: *) Bugfix: a segmentation fault might occur in worker process if the
! 3673: "auth_http_header" directive was used.
! 3674: Thanks to Maxim Dounin.
! 3675:
! 3676: *) Bugfix: a segmentation fault occurred in worker process if the
! 3677: CRAM-MD5 authentication method was used, but it was not enabled.
! 3678:
! 3679: *) Bugfix: a segmentation fault might occur in worker process when the
! 3680: HTTPS protocol was used in the "proxy_pass" directive.
! 3681:
! 3682: *) Bugfix: a segmentation fault might occur in worker process if the
! 3683: eventport method was used.
! 3684:
! 3685: *) Bugfix: the "proxy_ignore_client_abort" and
! 3686: "fastcgi_ignore_client_abort" directives did not work; the bug had
! 3687: appeared in 0.5.13.
! 3688:
! 3689:
! 3690: Changes with nginx 0.6.2 09 Jul 2007
! 3691:
! 3692: *) Bugfix: if the FastCGI header was split in records, then nginx passed
! 3693: garbage in the header to a client.
! 3694:
! 3695:
! 3696: Changes with nginx 0.6.1 17 Jun 2007
! 3697:
! 3698: *) Bugfix: in SSI parsing.
! 3699:
! 3700: *) Bugfix: if remote SSI subrequest was used, then posterior local file
! 3701: subrequest might transferred to client in wrong order.
! 3702:
! 3703: *) Bugfix: large SSI inclusions buffered in temporary files were
! 3704: truncated.
! 3705:
! 3706: *) Bugfix: the perl $$ variable value in ngx_http_perl_module was equal
! 3707: to the master process identification number.
! 3708:
! 3709:
! 3710: Changes with nginx 0.6.0 14 Jun 2007
! 3711:
! 3712: *) Feature: the "server_name", "map", and "valid_referers" directives
! 3713: support the "www.example.*" wildcards.
! 3714:
! 3715:
! 3716: Changes with nginx 0.5.25 11 Jun 2007
! 3717:
! 3718: *) Bugfix: nginx could not be built with the
! 3719: --without-http_rewrite_module parameter; the bug had appeared in
! 3720: 0.5.24.
! 3721:
! 3722:
! 3723: Changes with nginx 0.5.24 06 Jun 2007
! 3724:
! 3725: *) Security: the "ssl_verify_client" directive did not work if request
! 3726: was made using HTTP/0.9.
! 3727:
! 3728: *) Bugfix: a part of response body might be passed uncompressed if gzip
! 3729: was used; the bug had appeared in 0.5.23.
! 3730:
! 3731:
! 3732: Changes with nginx 0.5.23 04 Jun 2007
! 3733:
! 3734: *) Feature: the ngx_http_ssl_module supports Server Name Indication TLS
! 3735: extension.
! 3736:
! 3737: *) Feature: the "fastcgi_catch_stderr" directive.
! 3738: Thanks to Nick S. Grechukh, OWOX project.
! 3739:
! 3740: *) Bugfix: a segmentation fault occurred in master process if two
! 3741: virtual servers should bind() to the overlapping ports.
! 3742:
! 3743: *) Bugfix: if nginx was built with ngx_http_perl_module and perl
! 3744: supported threads, then during second reconfiguration the error
! 3745: messages "panic: MUTEX_LOCK" and "perl_parse() failed" were issued.
! 3746:
! 3747: *) Bugfix: in the HTTPS protocol in the "proxy_pass" directive.
! 3748:
! 3749:
! 3750: Changes with nginx 0.5.22 29 May 2007
! 3751:
! 3752: *) Bugfix: a big request body might not be passed to backend; the bug
! 3753: had appeared in 0.5.21.
! 3754:
! 3755:
! 3756: Changes with nginx 0.5.21 28 May 2007
! 3757:
! 3758: *) Bugfix: if server has more than about ten locations, then regex
! 3759: locations might be choosen not in that order as they were specified.
! 3760:
! 3761: *) Bugfix: a worker process may got caught in an endless loop on 64-bit
! 3762: platform, if the 33-rd or next in succession backend has failed.
! 3763: Thanks to Anton Povarov.
! 3764:
! 3765: *) Bugfix: a bus error might occur on Solaris/sparc64 if the PCRE
! 3766: library was used.
! 3767: Thanks to Andrei Nigmatulin.
! 3768:
! 3769: *) Bugfix: in the HTTPS protocol in the "proxy_pass" directive.
! 3770:
! 3771:
! 3772: Changes with nginx 0.5.20 07 May 2007
! 3773:
! 3774: *) Feature: the "sendfile_max_chunk" directive.
! 3775:
! 3776: *) Feature: the "$http_...", "$sent_http_...", and "$upstream_http_..."
! 3777: variables may be changed using the "set" directive.
! 3778:
! 3779: *) Bugfix: a segmentation fault might occur in worker process if the SSI
! 3780: command 'if expr="$var = /"' was used.
! 3781:
! 3782: *) Bugfix: trailing boundary of multipart range response was transferred
! 3783: incorrectly.
! 3784: Thanks to Evan Miller.
! 3785:
! 3786: *) Bugfix: nginx did not work on Solaris/sparc64 if it was built by Sun
! 3787: Studio.
! 3788: Thanks to Andrei Nigmatulin.
! 3789:
! 3790: *) Bugfix: the ngx_http_perl_module could not be built by Solaris make.
! 3791: Thanks to Andrei Nigmatulin.
! 3792:
! 3793:
! 3794: Changes with nginx 0.5.19 24 Apr 2007
! 3795:
! 3796: *) Change: now the $request_time variable has millisecond precision.
! 3797:
! 3798: *) Change: the method $r->rflush of ngx_http_perl_module was renamed to
! 3799: the $r->flush.
! 3800:
! 3801: *) Feature: the $upstream_addr variable.
! 3802:
! 3803: *) Feature: the "proxy_headers_hash_max_size" and
! 3804: "proxy_headers_hash_bucket_size" directives.
! 3805: Thanks to Volodymyr Kostyrko.
! 3806:
! 3807: *) Bugfix: the files more than 2G could not be transferred using
! 3808: sendfile and limit_rate on 64-bit platforms.
! 3809:
! 3810: *) Bugfix: the files more than 2G could not be transferred using
! 3811: sendfile on 64-bit Linux.
! 3812:
! 3813:
! 3814: Changes with nginx 0.5.18 19 Apr 2007
! 3815:
! 3816: *) Feature: the ngx_http_sub_filter_module.
! 3817:
! 3818: *) Feature: the "$upstream_http_..." variables.
! 3819:
! 3820: *) Feature: now the $upstream_status and $upstream_response_time
! 3821: variables keep data about all upstreams before X-Accel-Redirect.
! 3822:
! 3823: *) Bugfix: a segmentation fault occurred in master process after first
! 3824: reconfiguration and receiving any signal if nginx was built with
! 3825: ngx_http_perl_module and perl did not support multiplicity; the bug
! 3826: had appeared in 0.5.9.
! 3827:
! 3828: *) Bugfix: if perl did not support multiplicity, then after
! 3829: reconfiguration perl code did not work; the bug had appeared in
! 3830: 0.3.38.
! 3831:
! 3832:
! 3833: Changes with nginx 0.5.17 02 Apr 2007
! 3834:
! 3835: *) Change: now nginx always returns the 405 status for the TRACE method.
! 3836:
! 3837: *) Feature: now nginx supports the "include" directive inside the
! 3838: "types" block.
! 3839:
! 3840: *) Bugfix: the $document_root variable usage in the "root" and "alias"
! 3841: directives is disabled: this caused recursive stack overflow.
! 3842:
! 3843: *) Bugfix: in the HTTPS protocol in the "proxy_pass" directive.
! 3844:
! 3845: *) Bugfix: in some cases non-cachable variables (such as $uri variable)
! 3846: returned old cached value.
! 3847:
! 3848:
! 3849: Changes with nginx 0.5.16 26 Mar 2007
! 3850:
! 3851: *) Bugfix: the C-class network was not used as hash key in the "ip_hash"
! 3852: directive.
! 3853: Thanks to Pavel Yarkovoy.
! 3854:
! 3855: *) Bugfix: a segmentation fault might occur in worker process if a
! 3856: charset was set in the "Content-Type" header line and the line has
! 3857: trailing ";"; the bug had appeared in 0.3.50.
! 3858:
! 3859: *) Bugfix: the "[alert] zero size buf" error when FastCGI server was
! 3860: used and a request body written in a temporary file was multiple of
! 3861: 32K.
! 3862:
! 3863: *) Bugfix: nginx could not be built on Solaris without the --with-debug
! 3864: option; the bug had appeared in 0.5.15.
! 3865:
! 3866:
! 3867: Changes with nginx 0.5.15 19 Mar 2007
! 3868:
! 3869: *) Feature: the mail proxy supports authenticated SMTP proxying and the
! 3870: "smtp_auth", "smtp_capablities", and "xclient" directives.
! 3871: Thanks to Anton Yuzhaninov and Maxim Dounin.
! 3872:
! 3873: *) Feature: now the keep-alive connections are closed just after
! 3874: receiving the reconfiguration signal.
! 3875:
! 3876: *) Change: the "imap" and "auth" directives were renamed to the "mail"
! 3877: and "pop3_auth" directives.
! 3878:
! 3879: *) Bugfix: a segmentation fault occurred in worker process if the
! 3880: CRAM-MD5 authentication method was used and the APOP method was
! 3881: disabled.
! 3882:
! 3883: *) Bugfix: if the "starttls only" directive was used in POP3 protocol,
! 3884: then nginx allowed authentication without switching to the SSL mode.
! 3885:
! 3886: *) Bugfix: worker processes did not exit after reconfiguration and did
! 3887: not rotate logs if the eventport method was used.
! 3888:
! 3889: *) Bugfix: a worker process may got caught in an endless loop, if the
! 3890: "ip_hash" directive was used.
! 3891:
! 3892: *) Bugfix: now nginx does not log some alerts if eventport or /dev/poll
! 3893: methods are used.
! 3894:
! 3895:
! 3896: Changes with nginx 0.5.14 23 Feb 2007
! 3897:
! 3898: *) Bugfix: nginx ignored superfluous closing "}" in the end of
! 3899: configuration file.
! 3900:
! 3901:
! 3902: Changes with nginx 0.5.13 19 Feb 2007
! 3903:
! 3904: *) Feature: the COPY and MOVE methods.
! 3905:
! 3906: *) Bugfix: the ngx_http_realip_module set garbage for requests passed
! 3907: via keep-alive connection.
! 3908:
! 3909: *) Bugfix: nginx did not work on big-endian 64-bit Linux.
! 3910: Thanks to Andrei Nigmatulin.
! 3911:
! 3912: *) Bugfix: now when IMAP/POP3 proxy receives too long command it closes
! 3913: the connection right away, but not after timeout.
! 3914:
! 3915: *) Bugfix: if the "epoll" method was used and a client closed a
! 3916: connection prematurely, then nginx closed the connection after a send
! 3917: timeout only.
! 3918:
! 3919: *) Bugfix: nginx could not be built on platforms different from i386,
! 3920: amd64, sparc, and ppc; the bug had appeared in 0.5.8.
! 3921:
! 3922:
! 3923: Changes with nginx 0.5.12 12 Feb 2007
! 3924:
! 3925: *) Bugfix: nginx could not be built on platforms different from i386,
! 3926: amd64, sparc, and ppc; the bug had appeared in 0.5.8.
! 3927:
! 3928: *) Bugfix: a segmentation fault might occur in worker process if the
! 3929: temporary files were used while working with FastCGI server; the bug
! 3930: had appeared in 0.5.8.
! 3931:
! 3932: *) Bugfix: a segmentation fault might occur in worker process if the
! 3933: $fastcgi_script_name variable was logged.
! 3934:
! 3935: *) Bugfix: ngx_http_perl_module could not be built on Solaris.
! 3936:
! 3937:
! 3938: Changes with nginx 0.5.11 05 Feb 2007
! 3939:
! 3940: *) Feature: now configure detects system PCRE library in MacPorts.
! 3941: Thanks to Chris McGrath.
! 3942:
! 3943: *) Bugfix: the response was incorrect if several ranges were requested;
! 3944: the bug had appeared in 0.5.6.
! 3945:
! 3946: *) Bugfix: the "create_full_put_path" directive could not create the
! 3947: intermediate directories if no "dav_access" directive was set.
! 3948: Thanks to Evan Miller.
! 3949:
! 3950: *) Bugfix: the "0" response code might be logged in the access_log
! 3951: instead of the "400" and "408" error codes.
! 3952:
! 3953: *) Bugfix: a segmentation fault might occur in worker process if nginx
! 3954: was built with -O2 optimization.
! 3955:
! 3956:
! 3957: Changes with nginx 0.5.10 26 Jan 2007
! 3958:
! 3959: *) Bugfix: while online executable file upgrade the new master process
! 3960: did not inherit the listening sockets; the bug had appeared in 0.5.9.
! 3961:
! 3962: *) Bugfix: a segmentation fault might occur in worker process if nginx
! 3963: was built with -O2 optimization; the bug had appeared in 0.5.1.
! 3964:
! 3965:
! 3966: Changes with nginx 0.5.9 25 Jan 2007
! 3967:
! 3968: *) Change: now the ngx_http_memcached_module uses the $memcached_key
! 3969: variable value as a key.
! 3970:
! 3971: *) Feature: the $memcached_key variable.
! 3972:
! 3973: *) Feature: the "clean" parameter in the "client_body_in_file_only"
! 3974: directive.
! 3975:
! 3976: *) Feature: the "env" directive.
! 3977:
! 3978: *) Feature: the "sendfile" directive is available inside the "if" block.
! 3979:
! 3980: *) Feature: now on failure of the writing to access nginx logs a message
! 3981: to error_log, but not more often than once a minute.
! 3982:
! 3983: *) Bugfix: the "access_log off" directive did not always turn off the
! 3984: logging.
! 3985:
! 3986:
! 3987: Changes with nginx 0.5.8 19 Jan 2007
! 3988:
! 3989: *) Bugfix: a segmentation fault might occur if
! 3990: "client_body_in_file_only on" was used and a request body was small.
! 3991:
! 3992: *) Bugfix: a segmentation fault occurred if
! 3993: "client_body_in_file_only on" and "proxy_pass_request_body off" or
! 3994: "fastcgi_pass_request_body off" directives were used, and nginx
! 3995: switched to a next upstream.
! 3996:
! 3997: *) Bugfix: if the "proxy_buffering off" directive was used and a client
! 3998: connection was non-active, then the connection was closed after send
! 3999: timeout; the bug had appeared in 0.4.7.
! 4000:
! 4001: *) Bugfix: if the "epoll" method was used and a client closed a
! 4002: connection prematurely, then nginx closed the connection after a send
! 4003: timeout only.
! 4004:
! 4005: *) Bugfix: the "[alert] zero size buf" error when FastCGI server was
! 4006: used.
! 4007:
! 4008: *) Bugfixes in the "limit_zone" directive.
! 4009:
! 4010:
! 4011: Changes with nginx 0.5.7 15 Jan 2007
! 4012:
! 4013: *) Feature: the ssl_session_cache storage optimization.
! 4014:
! 4015: *) Bugfixes in the "ssl_session_cache" and "limit_zone" directives.
! 4016:
! 4017: *) Bugfix: the segmentation fault was occurred on start or while
! 4018: reconfiguration if the "ssl_session_cache" or "limit_zone" directives
! 4019: were used on 64-bit platforms.
! 4020:
! 4021: *) Bugfix: a segmentation fault occurred if the "add_before_body" or
! 4022: "add_after_body" directives were used and there was no "Content-Type"
! 4023: header line in response.
! 4024:
! 4025: *) Bugfix: the OpenSSL library was always built with the threads
! 4026: support.
! 4027: Thanks to Den Ivanov.
! 4028:
! 4029: *) Bugfix: the PCRE-6.5+ library and the icc compiler compatibility.
! 4030:
! 4031:
! 4032: Changes with nginx 0.5.6 09 Jan 2007
! 4033:
! 4034: *) Change: now the ngx_http_index_module ignores all methods except the
! 4035: GET, HEAD, and POST methods.
! 4036:
! 4037: *) Feature: the ngx_http_limit_zone_module.
! 4038:
! 4039: *) Feature: the $binary_remote_addr variable.
! 4040:
! 4041: *) Feature: the "ssl_session_cache" directives of the
! 4042: ngx_http_ssl_module and ngx_imap_ssl_module.
! 4043:
! 4044: *) Feature: the DELETE method supports recursive removal.
! 4045:
! 4046: *) Bugfix: the byte-ranges were transferred incorrectly if the
! 4047: $r->sendfile() was used.
! 4048:
! 4049:
! 4050: Changes with nginx 0.5.5 24 Dec 2006
! 4051:
! 4052: *) Change: the -v switch does not show compiler information any more.
! 4053:
! 4054: *) Feature: the -V switch.
! 4055:
! 4056: *) Feature: the "worker_rlimit_core" directive supports size in K, M,
! 4057: and G.
! 4058:
! 4059: *) Bugfix: the nginx.pm module now could be installed by an unprivileged
! 4060: user.
! 4061:
! 4062: *) Bugfix: a segmentation fault might occur if the $r->request_body or
! 4063: $r->request_body_file methods were used.
! 4064:
! 4065: *) Bugfix: the ppc platform specific bugs.
! 4066:
! 4067:
! 4068: Changes with nginx 0.5.4 15 Dec 2006
! 4069:
! 4070: *) Feature: the "perl" directive may be used inside the "limit_except"
! 4071: block.
! 4072:
! 4073: *) Bugfix: the ngx_http_dav_module required the "Date" request header
! 4074: line for the DELETE method.
! 4075:
! 4076: *) Bugfix: if one only parameter was used in the "dav_access" directive,
! 4077: then nginx might report about configuration error.
! 4078:
! 4079: *) Bugfix: a segmentation fault might occur if the $host variable was
! 4080: used; the bug had appeared in 0.4.14.
! 4081:
! 4082:
! 4083: Changes with nginx 0.5.3 13 Dec 2006
! 4084:
! 4085: *) Feature: the ngx_http_perl_module supports the $r->status,
! 4086: $r->log_error, and $r->sleep methods.
! 4087:
! 4088: *) Feature: the $r->variable method supports variables that do not exist
! 4089: in nginx configuration.
! 4090:
! 4091: *) Bugfix: the $r->has_request_body method did not work.
! 4092:
! 4093:
! 4094: Changes with nginx 0.5.2 11 Dec 2006
! 4095:
! 4096: *) Bugfix: if the "proxy_pass" directive used the name of the "upstream"
! 4097: block, then nginx tried to resolve the name; the bug had appeared in
! 4098: 0.5.1.
! 4099:
! 4100:
! 4101: Changes with nginx 0.5.1 11 Dec 2006
! 4102:
! 4103: *) Bugfix: the "post_action" directive might not run after a
! 4104: unsuccessful completion of a request.
! 4105:
! 4106: *) Workaround: for Eudora for Mac; the bug had appeared in 0.4.11.
! 4107: Thanks to Bron Gondwana.
! 4108:
! 4109: *) Bugfix: if the "upstream" name was used in the "fastcgi_pass", then
! 4110: the message "no port in upstream" was issued; the bug had appeared in
! 4111: 0.5.0.
! 4112:
! 4113: *) Bugfix: if the "proxy_pass" and "fastcgi_pass" directives used the
! 4114: same servers but different ports, then these directives uses the
! 4115: first described port; the bug had appeared in 0.5.0.
! 4116:
! 4117: *) Bugfix: if the "proxy_pass" and "fastcgi_pass" directives used the
! 4118: unix domain sockets, then these directives used first described
! 4119: socket; the bug had appeared in 0.5.0.
! 4120:
! 4121: *) Bugfix: ngx_http_auth_basic_module ignored the user if it was in the
! 4122: last line in the password file and there was no the carriage return,
! 4123: the line feed, or the ":" symbol after the password.
! 4124:
! 4125: *) Bugfix: the $upstream_response_time variable might be equal to
! 4126: "0.000", although response time was more than 1 millisecond.
! 4127:
! 4128:
! 4129: Changes with nginx 0.5.0 04 Dec 2006
! 4130:
! 4131: *) Change: the parameters in the "%name" form in the "log_format"
! 4132: directive are not supported anymore.
! 4133:
! 4134: *) Change: the "proxy_upstream_max_fails",
! 4135: "proxy_upstream_fail_timeout", "fastcgi_upstream_max_fails",
! 4136: "fastcgi_upstream_fail_timeout", "memcached_upstream_max_fails", and
! 4137: "memcached_upstream_fail_timeout" directives are not supported
! 4138: anymore.
! 4139:
! 4140: *) Feature: the "server" directive in the "upstream" context supports
! 4141: the "max_fails", "fail_timeout", and "down" parameters.
! 4142:
! 4143: *) Feature: the "ip_hash" directive inside the "upstream" block.
! 4144:
! 4145: *) Feature: the WAIT status in the "Auth-Status" header line of the
! 4146: IMAP/POP3 proxy authentication server response.
! 4147:
! 4148: *) Bugfix: nginx could not be built on 64-bit platforms; the bug had
! 4149: appeared in 0.4.14.
! 4150:
! 4151:
! 4152: Changes with nginx 0.4.14 27 Nov 2006
! 4153:
! 4154: *) Feature: the "proxy_pass_error_message" directive in IMAP/POP3 proxy.
! 4155:
! 4156: *) Feature: now configure detects system PCRE library on FreeBSD, Linux,
! 4157: and NetBSD.
! 4158:
! 4159: *) Bugfix: ngx_http_perl_module did not work with perl built with the
! 4160: threads support; the bug had appeared in 0.3.38.
! 4161:
! 4162: *) Bugfix: ngx_http_perl_module did not work if perl was called
! 4163: recursively.
! 4164:
! 4165: *) Bugfix: nginx ignored a host name in a request line.
! 4166:
! 4167: *) Bugfix: a worker process may got caught in an endless loop, if a
! 4168: FastCGI server sent too many data to the stderr.
! 4169:
! 4170: *) Bugfix: the $upstream_response_time variable may be negative if the
! 4171: system time was changed backward.
! 4172:
! 4173: *) Bugfix: the "Auth-Login-Attempt" parameter was not sent to IMAP/POP3
! 4174: proxy authentication server when POP3 was used.
! 4175:
! 4176: *) Bugfix: a segmentation fault might occur if connect to IMAP/POP3
! 4177: proxy authentication server failed.
! 4178:
! 4179:
! 4180: Changes with nginx 0.4.13 15 Nov 2006
! 4181:
! 4182: *) Feature: the "proxy_pass" directive may be used inside the
! 4183: "limit_except" block.
! 4184:
! 4185: *) Feature: the "limit_except" directive supports all WebDAV methods.
! 4186:
! 4187: *) Bugfix: if the "add_before_body" directive was used without the
! 4188: "add_after_body" directive, then a response did not transferred
! 4189: complete.
! 4190:
! 4191: *) Bugfix: a large request body did not receive if the epoll method and
! 4192: the deferred accept() were used.
! 4193:
! 4194: *) Bugfix: a charset could not be set for ngx_http_autoindex_module
! 4195: responses; the bug had appeared in 0.3.50.
! 4196:
! 4197: *) Bugfix: the "[alert] zero size buf" error when FastCGI server was
! 4198: used;
! 4199:
! 4200: *) Bugfix: the --group= configuration parameter was ignored.
! 4201: Thanks to Thomas Moschny.
! 4202:
! 4203: *) Bugfix: the 50th subrequest in SSI response did not work; the bug had
! 4204: appeared in 0.3.50.
! 4205:
! 4206:
! 4207: Changes with nginx 0.4.12 31 Oct 2006
! 4208:
! 4209: *) Feature: the ngx_http_perl_module supports the $r->variable method.
! 4210:
! 4211: *) Bugfix: if a big static file was included using SSI in a response,
! 4212: then the response may be transferred incomplete.
! 4213:
! 4214: *) Bugfix: nginx did not omit the "#fragment" part in URI.
! 4215:
! 4216:
! 4217: Changes with nginx 0.4.11 25 Oct 2006
! 4218:
! 4219: *) Feature: the POP3 proxy supports the AUTH LOGIN PLAIN and CRAM-MD5.
! 4220:
! 4221: *) Feature: the ngx_http_perl_module supports the $r->allow_ranges
! 4222: method.
! 4223:
! 4224: *) Bugfix: if the APOP was enabled in the POP3 proxy, then the USER/PASS
! 4225: commands might not work; the bug had appeared in 0.4.10.
! 4226:
! 4227:
! 4228: Changes with nginx 0.4.10 23 Oct 2006
! 4229:
! 4230: *) Feature: the POP3 proxy supports the APOP command.
! 4231:
! 4232: *) Bugfix: if the select, poll or /dev/poll methods were used, then
! 4233: while waiting authentication server response the IMAP/POP3 proxy
! 4234: hogged CPU.
! 4235:
! 4236: *) Bugfix: a segmentation fault might occur if the $server_addr variable
! 4237: was used in the "map" directive.
! 4238:
! 4239: *) Bugfix: the ngx_http_flv_module did not support the byte ranges for
! 4240: full responses; the bug had appeared in 0.4.7.
! 4241:
! 4242: *) Bugfix: nginx could not be built on Debian amd64; the bug had
! 4243: appeared in 0.4.9.
! 4244:
! 4245:
! 4246: Changes with nginx 0.4.9 13 Oct 2006
! 4247:
! 4248: *) Feature: the "set" parameter in the "include" SSI command.
! 4249:
! 4250: *) Feature: the ngx_http_perl_module now tests the nginx.pm module
! 4251: version.
! 4252:
! 4253:
! 4254: Changes with nginx 0.4.8 11 Oct 2006
! 4255:
! 4256: *) Bugfix: if an "include" SSI command were before another "include" SSI
! 4257: command with a "wait" parameter, then the "wait" parameter might not
! 4258: work.
! 4259:
! 4260: *) Bugfix: the ngx_http_flv_module added the FLV header to the full
! 4261: responses.
! 4262: Thanks to Alexey Kovyrin.
! 4263:
! 4264:
! 4265: Changes with nginx 0.4.7 10 Oct 2006
! 4266:
! 4267: *) Feature: the ngx_http_flv_module.
! 4268:
! 4269: *) Feature: the $request_body_file variable.
! 4270:
! 4271: *) Feature: the "charset" and "source_charset" directives support the
! 4272: variables.
! 4273:
! 4274: *) Bugfix: if an "include" SSI command were before another "include" SSI
! 4275: command with a "wait" parameter, then the "wait" parameter might not
! 4276: work.
! 4277:
! 4278: *) Bugfix: if the "proxy_buffering off" directive was used or while
! 4279: working with memcached the connections might not be closed on
! 4280: timeout.
! 4281:
! 4282: *) Bugfix: nginx did not run on 64-bit platforms except amd64, sparc64,
! 4283: and ppc64.
! 4284:
! 4285:
! 4286: Changes with nginx 0.4.6 06 Oct 2006
! 4287:
! 4288: *) Bugfix: nginx did not run on 64-bit platforms except amd64, sparc64,
! 4289: and ppc64.
! 4290:
! 4291: *) Bugfix: nginx sent the chunked response for HTTP/1.1 request,
! 4292: if its length was set by text string in the
! 4293: $r->headers_out("Content-Length", ...) method.
! 4294:
! 4295: *) Bugfix: after redirecting error by an "error_page" directive any
! 4296: ngx_http_rewrite_module directive returned this error code; the bug
! 4297: had appeared in 0.4.4.
! 4298:
! 4299:
! 4300: Changes with nginx 0.4.5 02 Oct 2006
! 4301:
! 4302: *) Bugfix: nginx could not be built on Linux and Solaris; the bug had
! 4303: appeared in 0.4.4.
! 4304:
! 4305:
! 4306: Changes with nginx 0.4.4 02 Oct 2006
! 4307:
! 4308: *) Feature: the $scheme variable.
! 4309:
! 4310: *) Feature: the "expires" directive supports the "max" parameter.
! 4311:
! 4312: *) Feature: the "include" directive supports the "*" mask.
! 4313: Thanks to Jonathan Dance.
! 4314:
! 4315: *) Bugfix: the "return" directive always overrode the "error_page"
! 4316: response code redirected by the "error_page" directive.
! 4317:
! 4318: *) Bugfix: a segmentation fault occurred if zero-length body was in PUT
! 4319: method.
! 4320:
! 4321: *) Bugfix: the redirect was changed incorrectly if the variables were
! 4322: used in the "proxy_redirect" directive.
! 4323:
! 4324:
! 4325: Changes with nginx 0.4.3 26 Sep 2006
! 4326:
! 4327: *) Change: now the 499 error could not be redirected using an
! 4328: "error_page" directive.
! 4329:
! 4330: *) Feature: the Solaris 10 event ports support.
! 4331:
! 4332: *) Feature: the ngx_http_browser_module.
! 4333:
! 4334: *) Bugfix: a segmentation fault may occur while redirecting the 400
! 4335: error to the proxied server using a "proxy_pass" directive.
! 4336:
! 4337: *) Bugfix: a segmentation fault occurred if an unix domain socket was
! 4338: used in a "proxy_pass" directive; the bug had appeared in 0.3.47.
! 4339:
! 4340: *) Bugfix: SSI did work with memcached and nonbuffered responses.
! 4341:
! 4342: *) Workaround: of the Sun Studio PAUSE hardware capability bug.
! 4343:
! 4344:
! 4345: Changes with nginx 0.4.2 14 Sep 2006
! 4346:
! 4347: *) Bugfix: the O_NOATIME flag support on Linux was canceled; the bug had
! 4348: appeared in 0.4.1.
! 4349:
! 4350:
! 4351: Changes with nginx 0.4.1 14 Sep 2006
! 4352:
! 4353: *) Bugfix: the DragonFlyBSD compatibility.
! 4354: Thanks to Pavel Nazarov.
! 4355:
! 4356: *) Workaround: of bug in 64-bit Linux sendfile(), when file is more than
! 4357: 2G.
! 4358:
! 4359: *) Feature: now on Linux nginx uses O_NOATIME flag for static requests.
! 4360: Thanks to Yusuf Goolamabbas.
! 4361:
! 4362:
! 4363: Changes with nginx 0.4.0 30 Aug 2006
! 4364:
! 4365: *) Change in internal API: the HTTP modules initialization was moved
! 4366: from the init module phase to the HTTP postconfiguration phase.
! 4367:
! 4368: *) Change: now the request body is not read beforehand for the
! 4369: ngx_http_perl_module: it's required to start the reading using the
! 4370: $r->has_request_body method.
! 4371:
! 4372: *) Feature: the ngx_http_perl_module supports the DECLINED return code.
! 4373:
! 4374: *) Feature: the ngx_http_dav_module supports the incoming "Date" header
! 4375: line for the PUT method.
! 4376:
! 4377: *) Feature: the "ssi" directive is available inside the "if" block.
! 4378:
! 4379: *) Bugfix: a segmentation fault occurred if there was an "index"
! 4380: directive with variables and the first index name was without
! 4381: variables; the bug had appeared in 0.1.29.
! 4382:
! 4383:
! 4384: Changes with nginx 0.3.61 28 Aug 2006
! 4385:
! 4386: *) Change: now the "tcp_nodelay" directive is turned on by default.
! 4387:
! 4388: *) Feature: the "msie_refresh" directive.
! 4389:
! 4390: *) Feature: the "recursive_error_pages" directive.
! 4391:
! 4392: *) Bugfix: the "rewrite" directive returned incorrect redirect, if the
! 4393: redirect had the captured escaped symbols from original URI.
! 4394:
! 4395:
! 4396: Changes with nginx 0.3.60 18 Aug 2006
! 4397:
! 4398: *) Bugfix: a worker process may got caught in an endless loop while an
! 4399: error redirection; the bug had appeared in 0.3.59.
! 4400:
! 4401:
! 4402: Changes with nginx 0.3.59 16 Aug 2006
! 4403:
! 4404: *) Feature: now is possible to do several redirection using the
! 4405: "error_page" directive.
! 4406:
! 4407: *) Bugfix: the "dav_access" directive did not support three parameters.
! 4408:
! 4409: *) Bugfix: the "error_page" directive did not changes the "Content-Type"
! 4410: header line after the "X-Accel-Redirect" was used; the bug had
! 4411: appeared in 0.3.58.
! 4412:
! 4413:
! 4414: Changes with nginx 0.3.58 14 Aug 2006
! 4415:
! 4416: *) Feature: the "error_page" directive supports the variables.
! 4417:
! 4418: *) Change: now the procfs interface instead of sysctl is used on Linux.
! 4419:
! 4420: *) Change: now the "Content-Type" header line is inherited from first
! 4421: response when the "X-Accel-Redirect" was used.
! 4422:
! 4423: *) Bugfix: the "error_page" directive did not redirect the 413 error.
! 4424:
! 4425: *) Bugfix: the trailing "?" did not remove old arguments if no new
! 4426: arguments were added to a rewritten URI.
! 4427:
! 4428: *) Bugfix: nginx could not run on 64-bit FreeBSD 7.0-CURRENT.
! 4429:
! 4430:
! 4431: Changes with nginx 0.3.57 09 Aug 2006
! 4432:
! 4433: *) Feature: the $ssl_client_serial variable.
! 4434:
! 4435: *) Bugfix: in the "!-e" operator of the "if" directive.
! 4436: Thanks to Andrian Budanstov.
! 4437:
! 4438: *) Bugfix: while a client certificate verification nginx did not send to
! 4439: a client the required certificates information.
! 4440:
! 4441: *) Bugfix: the $document_root variable did not support the variables in
! 4442: the "root" directive.
! 4443:
! 4444:
! 4445: Changes with nginx 0.3.56 04 Aug 2006
! 4446:
! 4447: *) Feature: the "dav_access" directive.
! 4448:
! 4449: *) Feature: the "if" directive supports the "-d", "!-d", "-e", "!-e",
! 4450: "-x", and "!-x" operators.
! 4451:
! 4452: *) Bugfix: a segmentation fault occurred if a request returned a
! 4453: redirect and some sent to client header lines were logged in the
! 4454: access log.
! 4455:
! 4456:
! 4457: Changes with nginx 0.3.55 28 Jul 2006
! 4458:
! 4459: *) Feature: the "stub" parameter in the "include" SSI command.
! 4460:
! 4461: *) Feature: the "block" SSI command.
! 4462:
! 4463: *) Feature: the unicode2nginx script was added to contrib.
! 4464:
! 4465: *) Bugfix: if a "root" was specified by variable only, then the root was
! 4466: relative to a server prefix.
! 4467:
! 4468: *) Bugfix: if the request contained "//" or "/./" and escaped symbols
! 4469: after them, then the proxied request was sent unescaped.
! 4470:
! 4471: *) Bugfix: the $r->header_in("Cookie") of the ngx_http_perl_module now
! 4472: returns all "Cookie" header lines.
! 4473:
! 4474: *) Bugfix: a segmentation fault occurred if
! 4475: "client_body_in_file_only on" was used and nginx switched to a next
! 4476: upstream.
! 4477:
! 4478: *) Bugfix: on some condition while reconfiguration character codes
! 4479: inside the "charset_map" may be treated invalid; the bug had appeared
! 4480: in 0.3.50.
! 4481:
! 4482:
! 4483: Changes with nginx 0.3.54 11 Jul 2006
! 4484:
! 4485: *) Feature: nginx now logs the subrequest information to the error log.
! 4486:
! 4487: *) Feature: the "proxy_next_upstream", "fastcgi_next_upstream", and
! 4488: "memcached_next_upstream" directives support the "off" parameter.
! 4489:
! 4490: *) Feature: the "debug_connection" directive supports the CIDR address
! 4491: form.
! 4492:
! 4493: *) Bugfix: if a response of proxied server or FastCGI server was
! 4494: converted from UTF-8 or back, then it may be transferred incomplete.
! 4495:
! 4496: *) Bugfix: the $upstream_response_time variable had the time of the
! 4497: first request to a backend only.
! 4498:
! 4499: *) Bugfix: nginx could not be built on amd64 platform; the bug had
! 4500: appeared in 0.3.53.
! 4501:
! 4502:
! 4503: Changes with nginx 0.3.53 07 Jul 2006
! 4504:
! 4505: *) Change: the "add_header" directive adds the string to 204, 301, and
! 4506: 302 responses.
! 4507:
! 4508: *) Feature: the "server" directive in the "upstream" context supports
! 4509: the "weight" parameter.
! 4510:
! 4511: *) Feature: the "server_name" directive supports the "*" wildcard.
! 4512:
! 4513: *) Feature: nginx supports the request body size more than 2G.
! 4514:
! 4515: *) Bugfix: if a client was successfully authorized using "satisfy_any
! 4516: on", then anyway the message "access forbidden by rule" was written
! 4517: in the log.
! 4518:
! 4519: *) Bugfix: the "PUT" method may erroneously not create a file and return
! 4520: the 409 code.
! 4521:
! 4522: *) Bugfix: if the IMAP/POP3 backend returned an error, then nginx
! 4523: continued proxying anyway.
! 4524:
! 4525:
! 4526: Changes with nginx 0.3.52 03 Jul 2006
! 4527:
! 4528: *) Change: the ngx_http_index_module behavior for the "POST /" requests
! 4529: is reverted to the 0.3.40 version state: the module now does not
! 4530: return the 405 error.
! 4531:
! 4532: *) Bugfix: the worker process may got caught in an endless loop if the
! 4533: limit rate was used; the bug had appeared in 0.3.37.
! 4534:
! 4535: *) Bugfix: ngx_http_charset_module logged "unknown charset" alert, even
! 4536: if the recoding was not needed; the bug had appeared in 0.3.50.
! 4537:
! 4538: *) Bugfix: if a code response of the PUT request was 409, then a
! 4539: temporary file was not removed.
! 4540:
! 4541:
! 4542: Changes with nginx 0.3.51 30 Jun 2006
! 4543:
! 4544: *) Bugfix: the "<" symbols might disappeared some conditions in the SSI;
! 4545: the bug had appeared in 0.3.50.
! 4546:
! 4547:
! 4548: Changes with nginx 0.3.50 28 Jun 2006
! 4549:
! 4550: *) Change: the "proxy_redirect_errors" and "fastcgi_redirect_errors"
! 4551: directives was renamed to the "proxy_intercept_errors" and
! 4552: "fastcgi_intercept_errors" directives.
! 4553:
! 4554: *) Feature: the ngx_http_charset_module supports the recoding from the
! 4555: single byte encodings to the UTF-8 encoding and back.
! 4556:
! 4557: *) Feature: the "X-Accel-Charset" response header line is supported in
! 4558: proxy and FastCGI mode.
! 4559:
! 4560: *) Bugfix: the "\" escape symbol in the "\"" and "\'" pairs in the SSI
! 4561: command was removed only if the command also has the "$" symbol.
! 4562:
! 4563: *) Bugfix: the "<!--" string might be added on some conditions in the
! 4564: SSI after inclusion.
! 4565:
! 4566: *) Bugfix: if the "Content-Length: 0" header line was in response, then
! 4567: in nonbuffered proxying mode the client connection was not closed.
! 4568:
! 4569:
! 4570: Changes with nginx 0.3.49 31 May 2006
! 4571:
! 4572: *) Bugfix: in the "set" directive.
! 4573:
! 4574: *) Bugfix: if two or more FastCGI subrequests was in SSI, then first
! 4575: subrequest output was included instead of second and following
! 4576: subrequests.
! 4577:
! 4578:
! 4579: Changes with nginx 0.3.48 29 May 2006
! 4580:
! 4581: *) Change: now the ngx_http_charset_module works for subrequests, if the
! 4582: response has no "Content-Type" header line.
! 4583:
! 4584: *) Bugfix: if the "proxy_pass" directive has no URI part, then the
! 4585: "proxy_redirect default" directive add the unnecessary slash in start
! 4586: of the rewritten redirect.
! 4587:
! 4588: *) Bugfix: the internal redirect always transform client's HTTP method
! 4589: to GET, now the transformation is made for the "X-Accel-Redirect"
! 4590: redirects only and if the method is not HEAD; the bug had appeared in
! 4591: 0.3.42.
! 4592:
! 4593: *) Bugfix: the ngx_http_perl_module could not be built, if the perl was
! 4594: built with the threads support; the bug had appeared in 0.3.46.
! 4595:
! 4596:
! 4597: Changes with nginx 0.3.47 23 May 2006
! 4598:
! 4599: *) Feature: the "upstream" directive.
! 4600:
! 4601: *) Change: now the "\" escape symbol in the "\"" and "\'" pairs in the
! 4602: SSI command is always removed.
! 4603:
! 4604:
! 4605: Changes with nginx 0.3.46 11 May 2006
! 4606:
! 4607: *) Feature: the "proxy_hide_header", "proxy_pass_header",
! 4608: "fastcgi_hide_header", and "fastcgi_pass_header" directives.
! 4609:
! 4610: *) Change: the "proxy_pass_x_powered_by", "fastcgi_x_powered_by", and
! 4611: "proxy_pass_server" directives were canceled.
! 4612:
! 4613: *) Feature: the "X-Accel-Buffering" response header line is supported in
! 4614: proxy mode.
! 4615:
! 4616: *) Bugfix: the reconfiguration bug and memory leaks in the
! 4617: ngx_http_perl_module.
! 4618:
! 4619:
! 4620: Changes with nginx 0.3.45 06 May 2006
! 4621:
! 4622: *) Feature: the "ssl_verify_client", "ssl_verify_depth", and
! 4623: "ssl_client_certificate" directives.
! 4624:
! 4625: *) Change: the $request_method variable now returns the main request
! 4626: method.
! 4627:
! 4628: *) Change: the ° symbol codes were changed in koi-win conversion
! 4629: table.
! 4630:
! 4631: *) Feature: the euro and N symbols were added to koi-win conversion
! 4632: table.
! 4633:
! 4634: *) Bugfix: if nginx distributed the requests among several backends and
! 4635: some backend failed, then requests intended for this backend was
! 4636: directed to one live backend only instead of being distributed among
! 4637: the rest.
! 4638:
! 4639:
! 4640: Changes with nginx 0.3.44 04 May 2006
! 4641:
! 4642: *) Feature: the "wait" parameter in the "include" SSI command.
! 4643:
! 4644: *) Feature: the Ukrainian and Byelorussian characters were added to
! 4645: koi-win conversion table.
! 4646:
! 4647: *) Bugfix: in the SSI.
! 4648:
! 4649:
! 4650: Changes with nginx 0.3.43 26 Apr 2006
! 4651:
! 4652: *) Bugfix: in the SSI.
! 4653:
! 4654:
! 4655: Changes with nginx 0.3.42 26 Apr 2006
! 4656:
! 4657: *) Feature: the "bind" option of the "listen" directive in IMAP/POP3
! 4658: proxy.
! 4659:
! 4660: *) Bugfix: if the same capture in the "rewrite" directive was used more
! 4661: then once.
! 4662:
! 4663: *) Bugfix: the $sent_http_content_type, $sent_http_content_length,
! 4664: $sent_http_last_modified, $sent_http_connection,
! 4665: $sent_http_keep_alive, and $sent_http_transfer_encoding variables
! 4666: were not written to access log.
! 4667:
! 4668: *) Bugfix: the $sent_http_cache_control returned value of the single
! 4669: "Cache-Control" response header line.
! 4670:
! 4671:
! 4672: Changes with nginx 0.3.41 21 Apr 2006
! 4673:
! 4674: *) Feature: the -v switch.
! 4675:
! 4676: *) Bugfix: the segmentation fault may occurred if the SSI page has
! 4677: remote subrequests.
! 4678:
! 4679: *) Bugfix: in FastCGI handling.
! 4680:
! 4681: *) Bugfix: if the perl modules path was not set using
! 4682: --with-perl_modules_path=PATH or the "perl_modules", then the
! 4683: segmentation fault was occurred.
! 4684:
! 4685:
! 4686: Changes with nginx 0.3.40 19 Apr 2006
! 4687:
! 4688: *) Feature: the ngx_http_dav_module supports the MKCOL method.
! 4689:
! 4690: *) Feature: the "create_full_put_path" directive.
! 4691:
! 4692: *) Feature: the "$limit_rate" variable.
! 4693:
! 4694:
! 4695: Changes with nginx 0.3.39 17 Apr 2006
! 4696:
! 4697: *) Feature: the "uninitialized_variable_warn" directive; the logging
! 4698: level of the "uninitialized variable" message was lowered from
! 4699: "alert" to "warn".
! 4700:
! 4701: *) Feature: the "override_charset" directive.
! 4702:
! 4703: *) Change: now if the unknown variable is used in the "echo" and "if
! 4704: expr='$name'" SSI-commands, then the "unknown variable" message is
! 4705: not logged.
! 4706:
! 4707: *) Bugfix: the active connection counter increased on the exceeding of
! 4708: the connection limit specified by the "worker_connections" directive;
! 4709: the bug had appeared in 0.2.0.
! 4710:
! 4711: *) Bugfix: the limit rate might not work on some condition; the bug had
! 4712: appeared in 0.3.38.
! 4713:
! 4714:
! 4715: Changes with nginx 0.3.38 14 Apr 2006
! 4716:
! 4717: *) Feature: the ngx_http_dav_module.
! 4718:
! 4719: *) Change: the ngx_http_perl_module optimizations.
! 4720: Thanks to Sergey Skvortsov.
! 4721:
! 4722: *) Feature: the ngx_http_perl_module supports the $r->request_body_file
! 4723: method.
! 4724:
! 4725: *) Feature: the "client_body_in_file_only" directive.
! 4726:
! 4727: *) Workaround: now on disk overflow nginx tries to write access logs
! 4728: once a second only.
! 4729: Thanks to Anton Yuzhaninov and Maxim Dounin.
! 4730:
! 4731: *) Bugfix: now the "limit_rate" directive more precisely limits rate if
! 4732: rate is more than 100 Kbyte/s.
! 4733: Thanks to ForJest.
! 4734:
! 4735: *) Bugfix: now the IMAP/POP3 proxy escapes the "\r" and "\n" symbols in
! 4736: login and password to pass authorization server.
! 4737: Thanks to Maxim Dounin.
! 4738:
! 4739:
! 4740: Changes with nginx 0.3.37 07 Apr 2006
! 4741:
! 4742: *) Feature: the "limit_except" directive.
! 4743:
! 4744: *) Feature: the "if" directive supports the "!~", "!~*", "-f", and "!-f"
! 4745: operators.
! 4746:
! 4747: *) Feature: the ngx_http_perl_module supports the $r->request_body
! 4748: method.
! 4749:
! 4750: *) Bugfix: in the ngx_http_addition_filter_module.
! 4751:
! 4752:
! 4753: Changes with nginx 0.3.36 05 Apr 2006
! 4754:
! 4755: *) Feature: the ngx_http_addition_filter_module.
! 4756:
! 4757: *) Feature: the "proxy_pass" and "fastcgi_pass" directives may be used
! 4758: inside the "if" block.
! 4759:
! 4760: *) Feature: the "proxy_ignore_client_abort" and
! 4761: "fastcgi_ignore_client_abort" directives.
! 4762:
! 4763: *) Feature: the "$request_completion" variable.
! 4764:
! 4765: *) Feature: the ngx_http_perl_module supports the $r->request_method and
! 4766: $r->remote_addr.
! 4767:
! 4768: *) Feature: the ngx_http_ssi_module supports the "elif" command.
! 4769:
! 4770: *) Bugfix: the "\/" string in the expression of the "if" command of the
! 4771: ngx_http_ssi_module was treated incorrectly.
! 4772:
! 4773: *) Bugfix: in the regular expressions in the "if" command of the
! 4774: ngx_http_ssi_module.
! 4775:
! 4776: *) Bugfix: if the relative path was specified in the
! 4777: "client_body_temp_path", "proxy_temp_path", "fastcgi_temp_path", and
! 4778: "perl_modules" directives, then the directory was used relatively to
! 4779: a current path but not to a server prefix.
! 4780:
! 4781:
! 4782: Changes with nginx 0.3.35 22 Mar 2006
! 4783:
! 4784: *) Bugfix: the accept-filter and the TCP_DEFER_ACCEPT option were set
! 4785: for first "listen" directive only; the bug had appeared in 0.3.31.
! 4786:
! 4787: *) Bugfix: in the "proxy_pass" directive without the URI part in a
! 4788: subrequest.
! 4789:
! 4790:
! 4791: Changes with nginx 0.3.34 21 Mar 2006
! 4792:
! 4793: *) Feature: the "add_header" directive supports the variables.
! 4794:
! 4795:
! 4796: Changes with nginx 0.3.33 15 Mar 2006
! 4797:
! 4798: *) Feature: the "http_503" parameter of the "proxy_next_upstream" or
! 4799: "fastcgi_next_upstream" directives.
! 4800:
! 4801: *) Bugfix: ngx_http_perl_module did not work with inlined in the
! 4802: configuration code, if it was not started with the "sub" word.
! 4803:
! 4804: *) Bugfix: in the "post_action" directive.
! 4805:
! 4806:
! 4807: Changes with nginx 0.3.32 11 Mar 2006
! 4808:
! 4809: *) Bugfix: the debug logging on startup and reconfiguration time was
! 4810: removed; the bug had appeared in 0.3.31.
! 4811:
! 4812:
! 4813: Changes with nginx 0.3.31 10 Mar 2006
! 4814:
! 4815: *) Change: now nginx passes the malformed proxied backend responses.
! 4816:
! 4817: *) Feature: the "listen" directives support the address in the "*:port"
! 4818: form.
! 4819:
! 4820: *) Feature: the EVFILER_TIMER support in MacOSX 10.4.
! 4821:
! 4822: *) Workaround: for MacOSX 64-bit kernel kqueue millisecond timeout bug.
! 4823: Thanks to Andrei Nigmatulin.
! 4824:
! 4825: *) Bugfix: if there were several "listen" directives listening one
! 4826: various addresses inside one server, then server names like
! 4827: "*.domain.tld" worked for first address only; the bug had appeared in
! 4828: 0.3.18.
! 4829:
! 4830: *) Bugfix: if the HTTPS protocol was used in the "proxy_pass" directive
! 4831: and the request body was in temporary file then the request was not
! 4832: transferred.
! 4833:
! 4834: *) Bugfix: perl 5.8.8 compatibility.
! 4835:
! 4836:
! 4837: Changes with nginx 0.3.30 22 Feb 2006
! 4838:
! 4839: *) Change: the ECONNABORTED error log level was changed to "error" from
! 4840: "crit".
! 4841:
! 4842: *) Bugfix: the ngx_http_perl_module could not be build without the
! 4843: ngx_http_ssi_filter_module.
! 4844:
! 4845: *) Bugfix: nginx could not be built on i386 platform, if the PIC was
! 4846: used; the bug had appeared in 0.3.27.
! 4847:
! 4848:
! 4849: Changes with nginx 0.3.29 20 Feb 2006
! 4850:
! 4851: *) Feature: now nginx uses less memory, if PHP in FastCGI mode sends
! 4852: many warnings before the response.
! 4853:
! 4854: *) Bugfix: the "Transfer-Encoding: chunked" header line was issued in
! 4855: the 204 responses for the HTTP/1.1 requests.
! 4856:
! 4857: *) Bugfix: nginx returned the 502 response, if the complete response
! 4858: header lines were transferred in a separate FastCGI records.
! 4859:
! 4860: *) Bugfix: if the proxied URI was specified in the "post_action"
! 4861: directive, then it ran only after a successful completion of a
! 4862: request.
! 4863:
! 4864:
! 4865: Changes with nginx 0.3.28 16 Feb 2006
! 4866:
! 4867: *) Feature: the "restrict_host_names" directive was canceled.
! 4868:
! 4869: *) Feature: the --with-cpu-opt=ppc64 configuration parameter.
! 4870:
! 4871: *) Bugfix: on some condition the proxied connection with a client was
! 4872: terminated prematurely.
! 4873: Thanks to Vladimir Shutoff.
! 4874:
! 4875: *) Bugfix: the "X-Accel-Limit-Rate" header line was not taken into
! 4876: account if the request was redirected using the "X-Accel-Redirect"
! 4877: header line.
! 4878:
! 4879: *) Bugfix: the "post_action" directive ran only after a successful
! 4880: completion of a request.
! 4881:
! 4882: *) Bugfix: the proxied response body generated by the "post_action"
! 4883: directive was transferred to a client.
! 4884:
! 4885:
! 4886: Changes with nginx 0.3.27 08 Feb 2006
! 4887:
! 4888: *) Change: the "variables_hash_max_size" and
! 4889: "variables_hash_bucket_size" directives.
! 4890:
! 4891: *) Feature: the $body_bytes_sent variable can be used not only in the
! 4892: "log_format" directive.
! 4893:
! 4894: *) Feature: the $ssl_protocol and $ssl_cipher variables.
! 4895:
! 4896: *) Feature: the cache line size detection for widespread CPUs at start
! 4897: time.
! 4898:
! 4899: *) Feature: now the "accept_mutex" directive is supported using fcntl(2)
! 4900: on platforms different from i386, amd64, sparc64, and ppc.
! 4901:
! 4902: *) Feature: the "lock_file" directive and the --with-lock-path=PATH
! 4903: autoconfiguration directive.
! 4904:
! 4905: *) Bugfix: if the HTTPS protocol was used in the "proxy_pass" directive
! 4906: then the requests with the body was not transferred.
! 4907:
! 4908:
! 4909: Changes with nginx 0.3.26 03 Feb 2006
! 4910:
! 4911: *) Change: the "optimize_host_names" directive was renamed to the
! 4912: "optimize_server_names".
! 4913:
! 4914: *) Bugfix: if in the "proxy_pass" directive was no the URI part, then
! 4915: the main request URI was transferred to a backend while proxying the
! 4916: SSI subrequest.
! 4917:
! 4918:
! 4919: Changes with nginx 0.3.25 01 Feb 2006
! 4920:
! 4921: *) Bugfix: the segmentation fault was occurred on start or while
! 4922: reconfiguration if there was invalid configuration; the bug had
! 4923: appeared in 0.3.24.
! 4924:
! 4925:
! 4926: Changes with nginx 0.3.24 01 Feb 2006
! 4927:
! 4928: *) Workaround: for bug in FreeBSD kqueue.
! 4929:
! 4930: *) Bugfix: now a response generated by the "post_action" directive is
! 4931: not transferred to a client.
! 4932:
! 4933: *) Bugfix: the memory leaks were occurring if many log files were used.
! 4934:
! 4935: *) Bugfix: the first "proxy_redirect" directive was working inside one
! 4936: location.
! 4937:
! 4938: *) Bugfix: on 64-bit platforms segmentation fault may occurred on start
! 4939: if the many names were used in the "server_name" directives; the bug
! 4940: had appeared in 0.3.18.
! 4941:
! 4942:
! 4943: Changes with nginx 0.3.23 24 Jan 2006
! 4944:
! 4945: *) Feature: the "optimize_host_names" directive.
! 4946:
! 4947: *) Bugfix: in using of the variables in the "path" and "alias"
! 4948: directives.
! 4949:
! 4950: *) Bugfix: the ngx_http_perl_module was incorrectly built on Linux and
! 4951: Solaris.
! 4952:
! 4953:
! 4954: Changes with nginx 0.3.22 17 Jan 2006
! 4955:
! 4956: *) Feature: the ngx_http_perl_module supports the $r->args and
! 4957: $r->unescape methods.
! 4958:
! 4959: *) Feature: the method $r->query_string of ngx_http_perl_module was
! 4960: canceled.
! 4961:
! 4962: *) Bugfix: segmentation fault was occurred if the "none" or "blocked"
! 4963: values was specified in the "valid_referers" directive; the bug had
! 4964: appeared in 0.3.18.
! 4965:
! 4966:
! 4967: Changes with nginx 0.3.21 16 Jan 2006
! 4968:
! 4969: *) Feature: the ngx_http_perl_module.
! 4970:
! 4971: *) Change: the "valid_referers" directive allows the referreres without
! 4972: URI part.
! 4973:
! 4974:
! 4975: Changes with nginx 0.3.20 11 Jan 2006
! 4976:
! 4977: *) Bugfix: in SSI handling.
! 4978:
! 4979: *) Bugfix: the ngx_http_memcached_module did not support the keys in the
! 4980: "/usr?args" form.
! 4981:
! 4982:
! 4983: Changes with nginx 0.3.19 28 Dec 2005
! 4984:
! 4985: *) Feature: the "path" and "alias" directives support the variables.
! 4986:
! 4987: *) Change: now the "valid_referers" directive again checks the URI part.
! 4988:
! 4989: *) Bugfix: in SSI handling.
! 4990:
! 4991:
! 4992: Changes with nginx 0.3.18 26 Dec 2005
! 4993:
! 4994: *) Feature: the "server_names" directive supports the ".domain.tld"
! 4995: names.
! 4996:
! 4997: *) Feature: the "server_names" directive uses the hash for the
! 4998: "*.domain.tld" names and more effective hash for usual names.
! 4999:
! 5000: *) Change: the "server_names_hash_max_size" and
! 5001: "server_names_hash_bucket_size" directives.
! 5002:
! 5003: *) Change: the "server_names_hash" and "server_names_hash_threshold"
! 5004: directives were canceled.
! 5005:
! 5006: *) Feature: the "valid_referers" directive uses the hash site names.
! 5007:
! 5008: *) Change: now the "valid_referers" directive checks the site names only
! 5009: without the URI part.
! 5010:
! 5011: *) Bugfix: some ".domain.tld" names incorrectly processed by the
! 5012: ngx_http_map_module.
! 5013:
! 5014: *) Bugfix: segmentation fault was occurred if configuration file did not
! 5015: exist; the bug had appeared in 0.3.12.
! 5016:
! 5017: *) Bugfix: on 64-bit platforms segmentation fault may occurred on start;
! 5018: the bug had appeared in 0.3.16.
! 5019:
! 5020:
! 5021: Changes with nginx 0.3.17 18 Dec 2005
! 5022:
! 5023: *) Change: now on Linux configure checks the presence of epoll and
! 5024: sendfile64() in kernel.
! 5025:
! 5026: *) Feature: the "map" directive supports domain names in the
! 5027: ".domain.tld" form.
! 5028:
! 5029: *) Bugfix: the timeouts were not used in SSL handshake; the bug had
! 5030: appeared in 0.2.4.
! 5031:
! 5032: *) Bugfix: in the HTTPS protocol in the "proxy_pass" directive.
! 5033:
! 5034: *) Bugfix: when the HTTPS protocol was used in the "proxy_pass"
! 5035: directive the port 80 was used by default.
! 5036:
! 5037:
! 5038: Changes with nginx 0.3.16 16 Dec 2005
! 5039:
! 5040: *) Feature: the ngx_http_map_module.
! 5041:
! 5042: *) Feature: the "types_hash_max_size" and "types_hash_bucket_size"
! 5043: directives.
! 5044:
! 5045: *) Feature: the "ssi_value_length" directive.
! 5046:
! 5047: *) Feature: the "worker_rlimit_core" directive.
! 5048:
! 5049: *) Workaround: the connection number in logs was always 1 if nginx was
! 5050: built by the icc 8.1 or 9.0 compilers with optimization for
! 5051: Pentium 4.
! 5052:
! 5053: *) Bugfix: the "config timefmt" SSI command set incorrect time format.
! 5054:
! 5055: *) Bugfix: nginx did not close connection to IMAP/POP3 backend for the
! 5056: SSL connections; the bug had appeared in 0.3.13.
! 5057: Thanks to Rob Mueller.
! 5058:
! 5059: *) Bugfix: segmentation fault may occurred in at SSL shutdown; the bug
! 5060: had appeared in 0.3.13.
! 5061:
! 5062:
! 5063: Changes with nginx 0.3.15 07 Dec 2005
! 5064:
! 5065: *) Feature: the new 444 code of the "return" directive to close
! 5066: connection.
! 5067:
! 5068: *) Feature: the "so_keepalive" directive in IMAP/POP3 proxy.
! 5069:
! 5070: *) Bugfix: if there are unclosed connection nginx now calls abort() only
! 5071: on gracefull quit and active "debug_points" directive.
! 5072:
! 5073:
! 5074: Changes with nginx 0.3.14 05 Dec 2005
! 5075:
! 5076: *) Bugfix: in the 304 response the body was transferred; the bug had
! 5077: appeared in 0.3.13.
! 5078:
! 5079:
! 5080: Changes with nginx 0.3.13 05 Dec 2005
! 5081:
! 5082: *) Feature: the IMAP/POP3 proxy supports STARTTLS and STLS.
! 5083:
! 5084: *) Bugfix: the IMAP/POP3 proxy did not work with the select, poll, and
! 5085: /dev/poll methods.
! 5086:
! 5087: *) Bugfix: in SSI handling.
! 5088:
! 5089: *) Bugfix: now Solaris sendfilev() is not used to transfer the client
! 5090: request body to FastCGI-server via the unix domain socket.
! 5091:
! 5092: *) Bugfix: the "auth_basic" directive did not disable the authorization;
! 5093: the bug had appeared in 0.3.11.
! 5094:
! 5095:
! 5096: Changes with nginx 0.3.12 26 Nov 2005
! 5097:
! 5098: *) Security: if nginx was built with the ngx_http_realip_module and the
! 5099: "satisfy_any on" directive was used, then access and authorization
! 5100: directives did not work. The ngx_http_realip_module was not built and
! 5101: is not built by default.
! 5102:
! 5103: *) Change: the "$time_gmt" variable name was changed to "$time_local".
! 5104:
! 5105: *) Change: the "proxy_header_buffer_size" and
! 5106: "fastcgi_header_buffer_size" directives was renamed to the
! 5107: "proxy_buffer_size" and "fastcgi_buffer_size" directives.
! 5108:
! 5109: *) Feature: the ngx_http_memcached_module.
! 5110:
! 5111: *) Feature: the "proxy_buffering" directive.
! 5112:
! 5113: *) Bugfix: the changes in accept mutex handling when the "rtsig" method
! 5114: was used; the bug had appeared in 0.3.0.
! 5115:
! 5116: *) Bugfix: if the client sent the "Transfer-Encoding: chunked" header
! 5117: line, then nginx returns the 411 error.
! 5118:
! 5119: *) Bugfix: if the "auth_basic" directive was inherited from the http
! 5120: level, then the realm in the "WWW-Authenticate" header line was
! 5121: without the "Basic realm" text.
! 5122:
! 5123: *) Bugfix: if the "combined" format was explicitly specified in the
! 5124: "access_log" directive, then the empty lines was written to the log;
! 5125: the bug had appeared in 0.3.8.
! 5126:
! 5127: *) Bugfix: nginx did not run on the sparc platform under any OS except
! 5128: Solaris.
! 5129:
! 5130: *) Bugfix: now it is not necessary to place space between the quoted
! 5131: string and closing bracket in the "if" directive.
! 5132:
! 5133:
! 5134: Changes with nginx 0.3.11 15 Nov 2005
! 5135:
! 5136: *) Bugfix: nginx did not pass the client request headers and body while
! 5137: proxying; the bug had appeared in 0.3.10.
! 5138:
! 5139:
! 5140: Changes with nginx 0.3.10 15 Nov 2005
! 5141:
! 5142: *) Change: the "valid_referers" directive and the "$invalid_referer"
! 5143: variable were moved to the new ngx_http_referer_module from the
! 5144: ngx_http_rewrite_module.
! 5145:
! 5146: *) Change: the "$apache_bytes_sent" variable name was changed to
! 5147: "$body_bytes_sent".
! 5148:
! 5149: *) Feature: the "$sent_http_..." variables.
! 5150:
! 5151: *) Feature: the "if" directive supports the "=" and "!=" operations.
! 5152:
! 5153: *) Feature: the "proxy_pass" directive supports the HTTPS protocol.
! 5154:
! 5155: *) Feature: the "proxy_set_body" directive.
! 5156:
! 5157: *) Feature: the "post_action" directive.
! 5158:
! 5159: *) Feature: the ngx_http_empty_gif_module.
! 5160:
! 5161: *) Feature: the "worker_cpu_affinity" directive for Linux.
! 5162:
! 5163: *) Bugfix: the "rewrite" directive did not unescape URI part in
! 5164: redirect, now it is unescaped except the %00-%25 and %7F-%FF
! 5165: characters.
! 5166:
! 5167: *) Bugfix: nginx could not be built by the icc 9.0 compiler.
! 5168:
! 5169: *) Bugfix: if the SSI was enabled for zero size static file, then the
! 5170: chunked response was encoded incorrectly.
! 5171:
! 5172:
! 5173: Changes with nginx 0.3.9 10 Nov 2005
! 5174:
! 5175: *) Bugfix: nginx considered URI as unsafe if two any symbols was between
! 5176: two slashes; the bug had appeared in 0.3.8.
! 5177:
! 5178:
! 5179: Changes with nginx 0.3.8 09 Nov 2005
! 5180:
! 5181: *) Security: nginx now checks URI got from a backend in
! 5182: "X-Accel-Redirect" header line or in SSI file for the "/../" paths
! 5183: and zeroes.
! 5184:
! 5185: *) Change: nginx now does not treat the empty user name in the
! 5186: "Authorization" header line as valid one.
! 5187:
! 5188: *) Feature: the "ssl_session_timeout" directives of the
! 5189: ngx_http_ssl_module and ngx_imap_ssl_module.
! 5190:
! 5191: *) Feature: the "auth_http_header" directive of the
! 5192: ngx_imap_auth_http_module.
! 5193:
! 5194: *) Feature: the "add_header" directive.
! 5195:
! 5196: *) Feature: the ngx_http_realip_module.
! 5197:
! 5198: *) Feature: the new variables to use in the "log_format" directive:
! 5199: $bytes_sent, $apache_bytes_sent, $status, $time_gmt, $uri,
! 5200: $request_time, $request_length, $upstream_status,
! 5201: $upstream_response_time, $gzip_ratio, $uid_got, $uid_set,
! 5202: $connection, $pipe, and $msec. The parameters in the "%name" form
! 5203: will be canceled soon.
! 5204:
! 5205: *) Change: now the false variable values in the "if" directive are the
! 5206: empty string "" and string starting with "0".
! 5207:
! 5208: *) Bugfix: while using proxied or FastCGI-server nginx may leave
! 5209: connections and temporary files with client requests in open state.
! 5210:
! 5211: *) Bugfix: the worker processes did not flush the buffered logs on
! 5212: graceful exit.
! 5213:
! 5214: *) Bugfix: if the request URI was changes by the "rewrite" directive and
! 5215: the request was proxied in location given by regular expression, then
! 5216: the incorrect request was transferred to backend; the bug had
! 5217: appeared in 0.2.6.
! 5218:
! 5219: *) Bugfix: the "expires" directive did not remove the previous "Expires"
! 5220: header.
! 5221:
! 5222: *) Bugfix: nginx may stop to accept requests if the "rtsig" method and
! 5223: several worker processes were used.
! 5224:
! 5225: *) Bugfix: the "\"" and "\'" escape symbols were incorrectly handled in
! 5226: SSI commands.
! 5227:
! 5228: *) Bugfix: if the response was ended just after the SSI command and
! 5229: gzipping was used, then the response did not transferred complete or
! 5230: did not transferred at all.
! 5231:
! 5232:
! 5233: Changes with nginx 0.3.7 27 Oct 2005
! 5234:
! 5235: *) Feature: the "access_log" supports the "buffer=" parameter.
! 5236:
! 5237: *) Bugfix: nginx could not be built on platforms different from i386,
! 5238: amd64, sparc, and ppc; the bug had appeared in 0.3.2.
! 5239:
! 5240:
! 5241: Changes with nginx 0.3.6 24 Oct 2005
! 5242:
! 5243: *) Change: now the IMAP/POP3 proxy do not send the empty login to
! 5244: authorization server.
! 5245:
! 5246: *) Feature: the "log_format" supports the variables in the $name form.
! 5247:
! 5248: *) Bugfix: if at least in one server was no the "listen" directive, then
! 5249: nginx did not listen on the 80 port; the bug had appeared in 0.3.3.
! 5250:
! 5251: *) Bugfix: if the URI part is omitted in "proxy_pass" directive, the 80
! 5252: port was always used.
! 5253:
! 5254:
! 5255: Changes with nginx 0.3.5 21 Oct 2005
! 5256:
! 5257: *) Bugfix: the segmentation fault may occurred if the IMAP/POP3 login
! 5258: was changed by authorization server; the bug had appeared in 0.2.2.
! 5259:
! 5260: *) Bugfix: the accept mutex did not work and all connections were
! 5261: handled by one process; the bug had appeared in 0.3.3.
! 5262:
! 5263: *) Bugfix: the timeout did not work if the "rtsig" method and the
! 5264: "timer_resolution" directive were used.
! 5265:
! 5266:
! 5267: Changes with nginx 0.3.4 19 Oct 2005
! 5268:
! 5269: *) Bugfix: nginx could not be built on Linux 2.4+ and MacOS X; the bug
! 5270: had appeared in 0.3.3.
! 5271:
! 5272:
! 5273: Changes with nginx 0.3.3 19 Oct 2005
! 5274:
! 5275: *) Change: the "bl" and "af" parameters of the "listen" directive was
! 5276: renamed to the "backlog" and "accept_filter".
! 5277:
! 5278: *) Feature: the "rcvbuf" and "sndbuf" parameters of the "listen"
! 5279: directive.
! 5280:
! 5281: *) Change: the "$msec" log parameter does not require now the additional
! 5282: the gettimeofday() system call.
! 5283:
! 5284: *) Feature: the -t switch now tests the "listen" directives.
! 5285:
! 5286: *) Bugfix: if the invalid address was specified in the "listen"
! 5287: directive, then after the -HUP signal nginx left an open socket in
! 5288: the CLOSED state.
! 5289:
! 5290: *) Bugfix: the mime type may be incorrectly set to default value for
! 5291: index file with variable in the name; the bug had appeared in 0.3.0.
! 5292:
! 5293: *) Feature: the "timer_resolution" directive.
! 5294:
! 5295: *) Feature: the millisecond "$upstream_response_time" log parameter.
! 5296:
! 5297: *) Bugfix: a temporary file with client request body now is removed just
! 5298: after the response header was transferred to a client.
! 5299:
! 5300: *) Bugfix: OpenSSL 0.9.6 compatibility.
! 5301:
! 5302: *) Bugfix: the SSL certificate and key file paths could not be relative.
! 5303:
! 5304: *) Bugfix: the "ssl_prefer_server_ciphers" directive did not work in the
! 5305: ngx_imap_ssl_module.
! 5306:
! 5307: *) Bugfix: the "ssl_protocols" directive allowed to specify the single
! 5308: protocol only.
! 5309:
! 5310:
! 5311: Changes with nginx 0.3.2 12 Oct 2005
! 5312:
! 5313: *) Feature: the Sun Studio 10 C compiler support.
! 5314:
! 5315: *) Feature: the "proxy_upstream_max_fails",
! 5316: "proxy_upstream_fail_timeout", "fastcgi_upstream_max_fails", and
! 5317: "fastcgi_upstream_fail_timeout" directives.
! 5318:
! 5319:
! 5320: Changes with nginx 0.3.1 10 Oct 2005
! 5321:
! 5322: *) Bugfix: the segmentation fault occurred when the signal queue
! 5323: overflowed if the "rtsig" method was used; the bug had appeared in
! 5324: 0.2.0.
! 5325:
! 5326: *) Change: correct handling of the "\\", "\"", "\'", and "\$" pairs in
! 5327: SSI.
! 5328:
! 5329:
! 5330: Changes with nginx 0.3.0 07 Oct 2005
! 5331:
! 5332: *) Change: the 10-days live time limit of worker process was eliminated.
! 5333: The limit was introduced because of millisecond timers overflow.
! 5334:
! 5335:
! 5336: Changes with nginx 0.2.6 05 Oct 2005
! 5337:
! 5338: *) Change: while using load-balancing the time before the failed backend
! 5339: retry was decreased from 60 to 10 seconds.
! 5340:
! 5341: *) Change: the "proxy_pass_unparsed_uri" was canceled, the original URI
! 5342: now passed, if the URI part is omitted in "proxy_pass" directive.
! 5343:
! 5344: *) Feature: the "error_page" directive supports redirects and allows
! 5345: more flexible to change an error code.
! 5346:
! 5347: *) Change: the charset in the "Content-Type" header line now is ignored
! 5348: in proxied subrequests.
! 5349:
! 5350: *) Bugfix: if the URI was changed in the "if" block and request did not
! 5351: found new configuration, then the ngx_http_rewrite_module rules ran
! 5352: again.
! 5353:
! 5354: *) Bugfix: if the "set" directive set the ngx_http_geo_module variable
! 5355: in some configuration part, the this variable was not available in
! 5356: other configuration parts and the "using uninitialized variable"
! 5357: error was occurred; the bug had appeared in 0.2.2.
! 5358:
! 5359:
! 5360: Changes with nginx 0.2.5 04 Oct 2005
! 5361:
! 5362: *) Change: the duplicate value of the ngx_http_geo_module variable now
! 5363: causes the warning and changes old value.
! 5364:
! 5365: *) Feature: the ngx_http_ssi_module supports the "set" command.
! 5366:
! 5367: *) Feature: the ngx_http_ssi_module supports the "file" parameter in the
! 5368: "include" command.
! 5369:
! 5370: *) Feature: the ngx_http_ssi_module supports the variable value
! 5371: substitutions in expressions of the "if" command.
! 5372:
! 5373:
! 5374: Changes with nginx 0.2.4 03 Oct 2005
! 5375:
! 5376: *) Feature: the ngx_http_ssi_module supports "$var=text", "$var!=text",
! 5377: "$var=/text/", and "$var!=/text/" expressions in the "if" command.
! 5378:
! 5379: *) Bugfix: in proxying location without trailing slash; the bug had
! 5380: appeared in 0.1.44.
! 5381:
! 5382: *) Bugfix: the segmentation fault may occurred if the "rtsig" method was
! 5383: used; the bug had appeared in 0.2.0.
! 5384:
! 5385:
! 5386: Changes with nginx 0.2.3 30 Sep 2005
! 5387:
! 5388: *) Bugfix: nginx could not be built without the --with-debug option; the
! 5389: bug had appeared in 0.2.2.
! 5390:
! 5391:
! 5392: Changes with nginx 0.2.2 30 Sep 2005
! 5393:
! 5394: *) Feature: the "config errmsg" command of the ngx_http_ssi_module.
! 5395:
! 5396: *) Change: the ngx_http_geo_module variables can be overridden by the
! 5397: "set" directive.
! 5398:
! 5399: *) Feature: the "ssl_protocols" and "ssl_prefer_server_ciphers"
! 5400: directives of the ngx_http_ssl_module and ngx_imap_ssl_module.
! 5401:
! 5402: *) Bugfix: the ngx_http_autoindex_module did not show correctly the long
! 5403: file names;
! 5404:
! 5405: *) Bugfix: the ngx_http_autoindex_module now do not show the files
! 5406: starting by dot.
! 5407:
! 5408: *) Bugfix: if the SSL handshake failed then another connection may be
! 5409: closed too.
! 5410: Thanks to Rob Mueller.
! 5411:
! 5412: *) Bugfix: the export versions of MSIE 5.x could not connect via HTTPS.
! 5413:
! 5414:
! 5415: Changes with nginx 0.2.1 23 Sep 2005
! 5416:
! 5417: *) Bugfix: if all backend using in load-balancing failed after one
! 5418: error, then nginx may got caught in an endless loop; the bug had
! 5419: appeared in 0.2.0.
! 5420:
! 5421:
! 5422: Changes with nginx 0.2.0 23 Sep 2005
! 5423:
! 5424: *) The pid-file names used during online upgrade was changed and now is
! 5425: not required a manual rename operation. The old master process adds
! 5426: the ".oldbin" suffix to its pid-file and executes a new binary file.
! 5427: The new master process creates usual pid-file without the ".newbin"
! 5428: suffix. If the master process exits, then old master process renames
! 5429: back its pid-file with the ".oldbin" suffix to the pid-file without
! 5430: suffix.
! 5431:
! 5432: *) Change: the "worker_connections" directive, new name of the
! 5433: "connections" directive; now the directive specifies maximum number
! 5434: of connections, but not maximum socket descriptor number.
! 5435:
! 5436: *) Feature: SSL supports the session cache inside one worker process.
! 5437:
! 5438: *) Feature: the "satisfy_any" directive.
! 5439:
! 5440: *) Change: the ngx_http_access_module and ngx_http_auth_basic_module do
! 5441: not run for subrequests.
! 5442:
! 5443: *) Feature: the "worker_rlimit_nofile" and "worker_rlimit_sigpending"
! 5444: directives.
! 5445:
! 5446: *) Bugfix: if all backend using in load-balancing failed after one
! 5447: error, then nginx did not try do connect to them during 60 seconds.
! 5448:
! 5449: *) Bugfix: in IMAP/POP3 command argument parsing.
! 5450: Thanks to Rob Mueller.
! 5451:
! 5452: *) Bugfix: errors while using SSL in IMAP/POP3 proxy.
! 5453:
! 5454: *) Bugfix: errors while using SSI and gzipping.
! 5455:
! 5456: *) Bugfix: the "Expires" and "Cache-Control" header lines were omitted
! 5457: from the 304 responses.
! 5458: Thanks to Alexandr Kukushkin.
! 5459:
! 5460:
! 5461: Changes with nginx 0.1.45 08 Sep 2005
! 5462:
! 5463: *) Change: the "ssl_engine" directive was canceled in the
! 5464: ngx_http_ssl_module and now is introduced at global level.
! 5465:
! 5466: *) Bugfix: the responses with SSI subrequests did not transferred via
! 5467: SSL connection.
! 5468:
! 5469: *) Various bug fixes in the IMAP/POP3 proxy.
! 5470:
! 5471:
! 5472: Changes with nginx 0.1.44 06 Sep 2005
! 5473:
! 5474: *) Feature: the IMAP/POP3 proxy supports SSL.
! 5475:
! 5476: *) Feature: the "proxy_timeout" directive of the ngx_imap_proxy_module.
! 5477:
! 5478: *) Feature: the "userid_mark" directive.
! 5479:
! 5480: *) Feature: the $remote_user variable value is determined independently
! 5481: of authorization use.
! 5482:
! 5483:
! 5484: Changes with nginx 0.1.43 30 Aug 2005
! 5485:
! 5486: *) Feature: the listen(2) backlog in the "listen" directive can be
! 5487: changed using the -HUP signal.
! 5488:
! 5489: *) Feature: the geo2nginx.pl script was added to contrib.
! 5490:
! 5491: *) Change: the FastCGI parameters with the empty values now are passed
! 5492: to a server.
! 5493:
! 5494: *) Bugfix: the segmentation fault occurred or the worker process may got
! 5495: caught in an endless loop if the proxied or FastCGI server sent the
! 5496: "Cache-Control" header line and the "expires" directive was used; in
! 5497: the proxied mode the bug had appeared in 0.1.29.
! 5498:
! 5499:
! 5500: Changes with nginx 0.1.42 23 Aug 2005
! 5501:
! 5502: *) Bugfix: if the request URI had a zero length after the processing in
! 5503: the ngx_http_proxy_module, then the segmentation fault or bus error
! 5504: occurred in the ngx_http_proxy_module.
! 5505:
! 5506: *) Bugfix: the "limit_rate" directive did not work inside the "if"
! 5507: block; the bug had appeared in 0.1.38.
! 5508:
! 5509:
! 5510: Changes with nginx 0.1.41 25 Jul 2005
! 5511:
! 5512: *) Bugfix: if the variable was used in the configuration file, then it
! 5513: can not be used in SSI.
! 5514:
! 5515:
! 5516: Changes with nginx 0.1.40 22 Jul 2005
! 5517:
! 5518: *) Bugfix: if a client sent too long header line, then the request
! 5519: information did not logged in the error log.
! 5520:
! 5521: *) Bugfix: the "Set-Cookie" header line was not transferred when the
! 5522: "X-Accel-Redirect" was used; the bug had appeared in 0.1.39.
! 5523:
! 5524: *) Bugfix: the "Content-Disposition" header line was not transferred
! 5525: when the "X-Accel-Redirect" was used.
! 5526:
! 5527: *) Bugfix: the master process did not close the listen socket on the
! 5528: SIGQUIT signal.
! 5529:
! 5530: *) Bugfix: after on-line upgrade on Linux and Solaris the process name
! 5531: became shorter in the "ps" command.
! 5532:
! 5533:
! 5534: Changes with nginx 0.1.39 14 Jul 2005
! 5535:
! 5536: *) The changes in the ngx_http_charset_module: the "default_charset"
! 5537: directive was canceled; the "charset" directive sets the response
! 5538: charset; the "source_charset" directive sets the source charset only.
! 5539:
! 5540: *) Bugfix: the backend "WWW-Authenticate" header line did not
! 5541: transferred while the 401 response code redirecting.
! 5542:
! 5543: *) Bugfix: the ngx_http_proxy_module and ngx_http_fastcgi_module may
! 5544: close a connection before anything was transferred to a client; the
! 5545: bug had appeared in 0.1.38.
! 5546:
! 5547: *) Workaround: the Linux glibc crypt_r() initialization bug.
! 5548:
! 5549: *) Bugfix: the ngx_http_ssi_module did not support the relative URI in
! 5550: the "include virtual" command.
! 5551:
! 5552: *) Bugfix: if the backend response had the "Location" header line and
! 5553: nginx should not rewrite this line, then the 500 code response body
! 5554: was transferred; the bug had appeared in 0.1.29.
! 5555:
! 5556: *) Bugfix: some directives of the ngx_http_proxy_module and
! 5557: ngx_http_fastcgi_module were not inherited from the server to the
! 5558: location level; the bug had appeared in 0.1.29.
! 5559:
! 5560: *) Bugfix: the ngx_http_ssl_module did not support the certificate
! 5561: chain.
! 5562:
! 5563: *) Bugfix: the ngx_http_autoindex_module did not show correctly the long
! 5564: file names; the bug had appeared in 0.1.38.
! 5565:
! 5566: *) Bugfixes in IMAP/POP3 proxy in interaction with a backend at the
! 5567: login state.
! 5568:
! 5569:
! 5570: Changes with nginx 0.1.38 08 Jul 2005
! 5571:
! 5572: *) Feature: the "limit_rate" directive is supported in proxy and FastCGI
! 5573: mode.
! 5574:
! 5575: *) Feature: the "X-Accel-Limit-Rate" response header line is supported
! 5576: in proxy and FastCGI mode.
! 5577:
! 5578: *) Feature: the "break" directive.
! 5579:
! 5580: *) Feature: the "log_not_found" directive.
! 5581:
! 5582: *) Bugfix: the response status code was not changed when request was
! 5583: redirected by the ""X-Accel-Redirect" header line.
! 5584:
! 5585: *) Bugfix: the variables set by the "set" directive could not be used in
! 5586: SSI.
! 5587:
! 5588: *) Bugfix: the segmentation fault may occurred if the SSI page has more
! 5589: than one remote subrequest.
! 5590:
! 5591: *) Bugfix: nginx treated the backend response as invalid if the status
! 5592: line in the header was transferred in two packets; the bug had
! 5593: appeared in 0.1.29.
! 5594:
! 5595: *) Feature: the "ssi_types" directive.
! 5596:
! 5597: *) Feature: the "autoindex_exact_size" directive.
! 5598:
! 5599: *) Bugfix: the ngx_http_autoindex_module did not support the long file
! 5600: names in UTF-8.
! 5601:
! 5602: *) Feature: the IMAP/POP3 proxy.
! 5603:
! 5604:
! 5605: Changes with nginx 0.1.37 23 Jun 2005
! 5606:
! 5607: *) Change: now the "\n" is added to the end of the "nginx.pid" file.
! 5608:
! 5609: *) Bugfix: the responses may be transferred not completely, if many
! 5610: parts or the big parts were included by SSI.
! 5611:
! 5612: *) Bugfix: if all backends had returned the 404 reponse and the
! 5613: "http_404" parameter of the "proxy_next_upstream" or
! 5614: "fastcgi_next_upstream" directives was used, then nginx started to
! 5615: request all backends again.
! 5616:
! 5617:
! 5618: Changes with nginx 0.1.36 15 Jun 2005
! 5619:
! 5620: *) Change: if the request header has duplicate the "Host", "Connection",
! 5621: "Content-Length", or "Authorization" lines, then nginx now returns
! 5622: the 400 error.
! 5623:
! 5624: *) Change: the "post_accept_timeout" directive was canceled.
! 5625:
! 5626: *) Feature: the "default", "af=", "bl=", "deferred", and "bind"
! 5627: parameters of the "listen" directive.
! 5628:
! 5629: *) Feature: the FreeBSD accept filters support.
! 5630:
! 5631: *) Feature: the Linux TCP_DEFER_ACCEPT support.
! 5632:
! 5633: *) Bugfix: the ngx_http_autoindex_module did not support the file names
! 5634: in UTF-8.
! 5635:
! 5636: *) Bugfix: the new log file can be rotated by the -USR1 signal only if
! 5637: the reconfiguration by the -HUP signal was made twice.
! 5638:
! 5639:
! 5640: Changes with nginx 0.1.35 07 Jun 2005
! 5641:
! 5642: *) Feature: the "working_directory" directive.
! 5643:
! 5644: *) Feature: the "port_in_redirect" directive.
! 5645:
! 5646: *) Bugfix: the segmentation fault was occurred if the backend response
! 5647: header was in several packets; the bug had appeared in 0.1.29.
! 5648:
! 5649: *) Bugfix: if more than 10 servers were configured or some server did
! 5650: not use the "listen" directive, then the segmentation fault was
! 5651: occurred on the start.
! 5652:
! 5653: *) Bugfix: the segmentation fault might occur if the response was bigger
! 5654: than the temporary file.
! 5655:
! 5656: *) Bugfix: nginx returned the 400 response on requests like
! 5657: "GET http://www.domain.com/uri HTTP/1.0"; the bug had appeared in
! 5658: 0.1.28.
! 5659:
! 5660:
! 5661: Changes with nginx 0.1.34 26 May 2005
! 5662:
! 5663: *) Bugfix: the worker process may got caught in an endless loop if the
! 5664: big response part were include by SSI.
! 5665:
! 5666: *) Bugfix: the variables set by the "set" directive were not available
! 5667: in SSI.
! 5668:
! 5669: *) Feature: the "autoindex_localtime" directive.
! 5670:
! 5671: *) Bugfix: the empty value of the "proxy_set_header" directive forbids
! 5672: the client request header line passing.
! 5673:
! 5674:
! 5675: Changes with nginx 0.1.33 23 May 2005
! 5676:
! 5677: *) Bugfix: nginx could not be built with the --without-pcre parameter;
! 5678: the bug had appeared in 0.1.29.
! 5679:
! 5680: *) Bugfix: 3, 4, 7, and 8 the "proxy_set_header" directives in one level
! 5681: cause the bus fault on start up.
! 5682:
! 5683: *) Bugfix: the HTTP protocol was specified in the HTTPS redirects.
! 5684:
! 5685: *) Bugfix: if the "rewrite" directive used the captures inside the "if"
! 5686: directive, then the 500 error code was returned.
! 5687:
! 5688:
! 5689: Changes with nginx 0.1.32 19 May 2005
! 5690:
! 5691: *) Bugfix: the arguments were omitted in the redirects, issued by the
! 5692: "rewrite" directive; the bug had appeared in 0.1.29.
! 5693:
! 5694: *) Feature: the "if" directive supports the captures in regular
! 5695: expressions.
! 5696:
! 5697: *) Feature: the "set" directive supports the variables and the captures
! 5698: of regular expressions.
! 5699:
! 5700: *) Feature: the "X-Accel-Redirect" response header line is supported in
! 5701: proxy and FastCGI mode.
! 5702:
! 5703:
! 5704: Changes with nginx 0.1.31 16 May 2005
! 5705:
! 5706: *) Bugfix: the response encrypted by SSL may not transferred complete.
! 5707:
! 5708: *) Bugfix: errors while processing FastCGI response by SSI.
! 5709:
! 5710: *) Bugfix: errors while using SSI and gzipping.
! 5711:
! 5712: *) Bugfix: the redirect with the 301 code was transferred without
! 5713: response body; the bug had appeared in 0.1.30.
! 5714:
! 5715:
! 5716: Changes with nginx 0.1.30 14 May 2005
! 5717:
! 5718: *) Bugfix: the worker process may got caught in an endless loop if the
! 5719: SSI was used.
! 5720:
! 5721: *) Bugfix: the response encrypted by SSL may not transferred complete.
! 5722:
! 5723: *) Bugfix: if the length of the response part received at once from
! 5724: proxied or FastCGI server was equal to 500, then nginx returns the
! 5725: 500 response code; in proxy mode the bug had appeared in 0.1.29 only.
! 5726:
! 5727: *) Bugfix: nginx did not consider the directives with 8 or 9 parameters
! 5728: as invalid.
! 5729:
! 5730: *) Feature: the "return" directive can return the 204 response code.
! 5731:
! 5732: *) Feature: the "ignore_invalid_headers" directive.
! 5733:
! 5734:
! 5735: Changes with nginx 0.1.29 12 May 2005
! 5736:
! 5737: *) Feature: the ngx_http_ssi_module supports "include virtual" command.
! 5738:
! 5739: *) Feature: the ngx_http_ssi_module supports the condition command like
! 5740: 'if expr="$NAME"' and "else" and "endif" commands. Only one nested
! 5741: level is supported.
! 5742:
! 5743: *) Feature: the ngx_http_ssi_module supports the DATE_LOCAL and DATE_GMT
! 5744: variables and "config timefmt" command.
! 5745:
! 5746: *) Feature: the "ssi_ignore_recycled_buffers" directive.
! 5747:
! 5748: *) Bugfix: the "echo" command did not show the default value for the
! 5749: empty QUERY_STRING variable.
! 5750:
! 5751: *) Change: the ngx_http_proxy_module was rewritten.
! 5752:
! 5753: *) Feature: the "proxy_redirect", "proxy_pass_request_headers",
! 5754: "proxy_pass_request_body", and "proxy_method" directives.
! 5755:
! 5756: *) Feature: the "proxy_set_header" directive. The "proxy_x_var" was
! 5757: canceled and must be replaced with the proxy_set_header directive.
! 5758:
! 5759: *) Change: the "proxy_preserve_host" is canceled and must be replaced
! 5760: with the "proxy_set_header Host $host" and the "proxy_redirect off"
! 5761: directives, the "proxy_set_header Host $host:$proxy_port" directive
! 5762: and the appropriate proxy_redirect directives.
! 5763:
! 5764: *) Change: the "proxy_set_x_real_ip" is canceled and must be replaced
! 5765: with the "proxy_set_header X-Real-IP $remote_addr" directive.
! 5766:
! 5767: *) Change: the "proxy_add_x_forwarded_for" is canceled and must be
! 5768: replaced with
! 5769: the "proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for"
! 5770: directive.
! 5771:
! 5772: *) Change: the "proxy_set_x_url" is canceled and must be replaced with
! 5773: the "proxy_set_header X-URL http://$host:$server_port$request_uri"
! 5774: directive.
! 5775:
! 5776: *) Feature: the "fastcgi_param" directive.
! 5777:
! 5778: *) Change: the "fastcgi_root", "fastcgi_set_var" and "fastcgi_params"
! 5779: directive are canceled and must be replaced with the fastcgi_param
! 5780: directives.
! 5781:
! 5782: *) Feature: the "index" directive can use the variables.
! 5783:
! 5784: *) Feature: the "index" directive can be used at http and server levels.
! 5785:
! 5786: *) Change: the last index only in the "index" directive can be absolute.
! 5787:
! 5788: *) Feature: the "rewrite" directive can use the variables.
! 5789:
! 5790: *) Feature: the "internal" directive.
! 5791:
! 5792: *) Feature: the CONTENT_LENGTH, CONTENT_TYPE, REMOTE_PORT, SERVER_ADDR,
! 5793: SERVER_PORT, SERVER_PROTOCOL, DOCUMENT_ROOT, SERVER_NAME,
! 5794: REQUEST_METHOD, REQUEST_URI, and REMOTE_USER variables.
! 5795:
! 5796: *) Change: nginx now passes the invalid lines in a client request
! 5797: headers or a backend response header.
! 5798:
! 5799: *) Bugfix: if the backend did not transfer response for a long time and
! 5800: the "send_timeout" was less than "proxy_read_timeout", then nginx
! 5801: returned the 408 response.
! 5802:
! 5803: *) Bugfix: the segmentation fault was occurred if the backend sent an
! 5804: invalid line in response header; the bug had appeared in 0.1.26.
! 5805:
! 5806: *) Bugfix: the segmentation fault may occurred in FastCGI fault
! 5807: tolerance configuration.
! 5808:
! 5809: *) Bugfix: the "expires" directive did not remove the previous "Expires"
! 5810: and "Cache-Control" headers.
! 5811:
! 5812: *) Bugfix: nginx did not take into account trailing dot in "Host" header
! 5813: line.
! 5814:
! 5815: *) Bugfix: the ngx_http_auth_module did not work under Linux.
! 5816:
! 5817: *) Bugfix: the rewrite directive worked incorrectly, if the arguments
! 5818: were in a request.
! 5819:
! 5820: *) Bugfix: nginx could not be built on MacOS X.
! 5821:
! 5822:
! 5823: Changes with nginx 0.1.28 08 Apr 2005
! 5824:
! 5825: *) Bugfix: nginx hogs CPU while proxying the huge files.
! 5826:
! 5827: *) Bugfix: nginx could not be built by gcc 4.0 on Linux.
! 5828:
! 5829:
! 5830: Changes with nginx 0.1.27 28 Mar 2005
! 5831:
! 5832: *) Feature: the "blocked" parameter of the "valid_referers" directive.
! 5833:
! 5834: *) Change: the errors while handling the request header now logged at
! 5835: "info" level. The server name and the "Host" and "Referer" header
! 5836: lines also logged.
! 5837:
! 5838: *) Change: the "Host" header line is also logged in error log.
! 5839:
! 5840: *) Feature: the proxy_pass_unparsed_uri directive. The special handling
! 5841: of the "://" symbols in URI, appeared in 0.1.11 version, now is
! 5842: canceled.
! 5843:
! 5844: *) Bugfix: nginx could not be built on FreeBSD and Linux, if the
! 5845: --without-ngx_http_auth_basic_module configuration parameter was
! 5846: used.
! 5847:
! 5848:
! 5849: Changes with nginx 0.1.26 22 Mar 2005
! 5850:
! 5851: *) Change: the invalid client header lines are now ignored and logged at
! 5852: the info level.
! 5853:
! 5854: *) Change: the server name is also logged in error log.
! 5855:
! 5856: *) Feature: the ngx_http_auth_basic_module module and the auth_basic and
! 5857: auth_basic_user_file directives.
! 5858:
! 5859:
! 5860: Changes with nginx 0.1.25 19 Mar 2005
! 5861:
! 5862: *) Bugfix: nginx did run on Linux parisc.
! 5863:
! 5864: *) Feature: nginx now does not start under FreeBSD if the sysctl
! 5865: kern.ipc.somaxconn value is too big.
! 5866:
! 5867: *) Bugfix: if a request was internally redirected by the
! 5868: ngx_http_index_module module to the ngx_http_proxy_module or
! 5869: ngx_http_fastcgi_module modules, then the index file was not closed
! 5870: after request completion.
! 5871:
! 5872: *) Feature: the "proxy_pass" can be used in location with regular
! 5873: expression.
! 5874:
! 5875: *) Feature: the ngx_http_rewrite_filter_module module supports the
! 5876: condition like "if ($HTTP_USER_AGENT ~ MSIE)".
! 5877:
! 5878: *) Bugfix: nginx started too slow if the large number of addresses and
! 5879: text values were used in the "geo" directive.
! 5880:
! 5881: *) Change: a variable name must be declared as "$name" in the "geo"
! 5882: directive. The previous variant without "$" is still supported, but
! 5883: will be removed soon.
! 5884:
! 5885: *) Feature: the "%{VARIABLE}v" logging parameter.
! 5886:
! 5887: *) Feature: the "set $name value" directive.
! 5888:
! 5889: *) Bugfix: gcc 4.0 compatibility.
! 5890:
! 5891: *) Feature: the --with-openssl-opt=OPTIONS autoconfiguration directive.
! 5892:
! 5893:
! 5894: Changes with nginx 0.1.24 04 Mar 2005
! 5895:
! 5896: *) Feature: the ngx_http_ssi_filter_module supports the QUERY_STRING and
! 5897: DOCUMENT_URI variables.
! 5898:
! 5899: *) Bugfix: the ngx_http_autoindex_module may some times return the 404
! 5900: response for existent directory, if this directory was used in
! 5901: "alias" directive.
! 5902:
! 5903: *) Bugfix: the ngx_http_ssi_filter_module ran incorrectly for large
! 5904: responses.
! 5905:
! 5906: *) Bugfix: the lack of the "Referer" header line was always accounted as
! 5907: valid referrer.
! 5908:
! 5909:
! 5910: Changes with nginx 0.1.23 01 Mar 2005
! 5911:
! 5912: *) Feature: the ngx_http_ssi_filter_module and the ssi,
! 5913: ssi_silent_errors, and ssi_min_file_chunk directives. The 'echo
! 5914: var="HTTP_..." default=""' and 'echo var="REMOTE_ADDR"' commands are
! 5915: supported.
! 5916:
! 5917: *) Feature: the %request_time log parameter.
! 5918:
! 5919: *) Feature: if the request has no the "Host" header line, then the
! 5920: "proxy_preserve_host" directive set this header line to the first
! 5921: server name of the "server_name" directive.
! 5922:
! 5923: *) Bugfix: nginx could not be built on platforms different from i386,
! 5924: amd64, sparc, and ppc; the bug had appeared in 0.1.22.
! 5925:
! 5926: *) Bugfix: the ngx_http_autoindex_module now shows the information not
! 5927: about the symlink, but about file or directory it points to.
! 5928:
! 5929: *) Bugfix: the %apache_length parameter logged the negative length of
! 5930: the response header if the no response was transferred to a client.
! 5931:
! 5932:
! 5933: Changes with nginx 0.1.22 22 Feb 2005
! 5934:
! 5935: *) Bugfix: the ngx_http_stub_status_module showed incorrect handled
! 5936: connections statistics if the proxying or FastCGI server were used.
! 5937:
! 5938: *) Bugfix: the installation paths were incorrectly quoted on Linux and
! 5939: Solaris; the bug had appeared in 0.1.21.
! 5940:
! 5941:
! 5942: Changes with nginx 0.1.21 22 Feb 2005
! 5943:
! 5944: *) Bugfix: the ngx_http_stub_status_module showed incorrect statistics
! 5945: if "rtsig" method was used or if several worker process ran on SMP.
! 5946:
! 5947: *) Bugfix: nginx could not be built by the icc compiler on Linux or if
! 5948: the zlib-1.2.x library was building from sources.
! 5949:
! 5950: *) Bugfix: nginx could not be built on NetBSD 2.0.
! 5951:
! 5952:
! 5953: Changes with nginx 0.1.20 17 Feb 2005
! 5954:
! 5955: *) Feature: the new "script_filename" and "remote_port" parameters of
! 5956: the fastcgi_params directive.
! 5957:
! 5958: *) Bugfix: the FastCGI stderr stream was handled incorrectly.
! 5959:
! 5960:
! 5961: Changes with nginx 0.1.19 16 Feb 2005
! 5962:
! 5963: *) Bugfix: now, if request contains the zero, then the 404 error is
! 5964: returned for the local requests.
! 5965:
! 5966: *) Bugfix: nginx could not be built on NetBSD 2.0.
! 5967:
! 5968: *) Bugfix: the timeout may occur while reading of the client request
! 5969: body via SSL connections.
! 5970:
! 5971:
! 5972: Changes with nginx 0.1.18 09 Feb 2005
! 5973:
! 5974: *) Workaround: the default values of the devpoll_events and the
! 5975: devpoll_changes directives changed from 512 to 32 to be compatible
! 5976: with Solaris 10.
! 5977:
! 5978: *) Bugfix: the proxy_set_x_var and fastcgi_set_var directives were not
! 5979: inherited.
! 5980:
! 5981: *) Bugfix: in a redirect rewrite directive arguments were concatenated
! 5982: with URI by an "&" rather than a "?".
! 5983:
! 5984: *) Bugfix: the lines without trailing ";" in the file being included by
! 5985: the ngx_http_geo_module were silently ignored.
! 5986:
! 5987: *) Feature: the ngx_http_stub_status_module.
! 5988:
! 5989: *) Bugfix: the unknown log format in the access_log directive caused the
! 5990: segmentation fault.
! 5991:
! 5992: *) Feature: the new "document_root" parameter of the fastcgi_params
! 5993: directive.
! 5994:
! 5995: *) Feature: the fastcgi_redirect_errors directive.
! 5996:
! 5997: *) Feature: the new "break" modifier of the "rewrite" directive allows
! 5998: to stop the rewrite/location cycle and sets the current configuration
! 5999: to the request.
! 6000:
! 6001:
! 6002: Changes with nginx 0.1.17 03 Feb 2005
! 6003:
! 6004: *) Change: the ngx_http_rewrite_module was rewritten from the scratch.
! 6005: Now it is possible to redirect, to return the error codes, to check
! 6006: the variables and referrers. The directives can be used inside
! 6007: locations. The redirect directive was canceled.
! 6008:
! 6009: *) Feature: the ngx_http_geo_module.
! 6010:
! 6011: *) Feature: the proxy_set_x_var and fastcgi_set_var directives.
! 6012:
! 6013: *) Bugfix: the location configuration with "=" modifier may be used in
! 6014: another location.
! 6015:
! 6016: *) Bugfix: the correct content type was set only for requests that use
! 6017: small caps letters in extension.
! 6018:
! 6019: *) Bugfix: if the proxy_pass or fastcgi_pass directives were set in the
! 6020: location, and access was denied, and the error was redirected to a
! 6021: static page, then the segmentation fault occurred.
! 6022:
! 6023: *) Bugfix: if in a proxied "Location" header was a relative URL, then a
! 6024: host name and a slash were added to them; the bug had appeared in
! 6025: 0.1.14.
! 6026:
! 6027: *) Bugfix: the system error message was not logged on Linux.
! 6028:
! 6029:
! 6030: Changes with nginx 0.1.16 25 Jan 2005
! 6031:
! 6032: *) Bugfix: if the response were transferred by chunks, then on the HEAD
! 6033: request the final chunk was issued.
! 6034:
! 6035: *) Bugfix: the "Connection: keep-alive" header were issued, even if the
! 6036: keepalive_timeout directive forbade the keep-alive use.
! 6037:
! 6038: *) Bugfix: the errors in the ngx_http_fastcgi_module caused the
! 6039: segmentation faults.
! 6040:
! 6041: *) Bugfix: the compressed response encrypted by SSL may not transferred
! 6042: complete.
! 6043:
! 6044: *) Bugfix: the TCP-specific TCP_NODELAY, TCP_NOPSUH, and TCP_CORK
! 6045: options, are not used for the unix domain sockets.
! 6046:
! 6047: *) Feature: the rewrite directive supports the arguments rewriting.
! 6048:
! 6049: *) Bugfix: the response code 400 was returned for the POST request with
! 6050: the "Content-Length: 0" header; the bug had appeared in 0.1.14.
! 6051:
! 6052:
! 6053: Changes with nginx 0.1.15 19 Jan 2005
! 6054:
! 6055: *) Bugfix: the error while the connecting to the FastCGI server caused
! 6056: segmentation fault.
! 6057:
! 6058: *) Bugfix: the correct handling of the regular expression, that has
! 6059: different number of the captures and substitutions.
! 6060:
! 6061: *) Feature: the location, that is passed to the FastCGI server, can be
! 6062: regular expression.
! 6063:
! 6064: *) Bugfix: the FastCGI's parameter REQUEST_URI is now passed with the
! 6065: arguments and in the original state.
! 6066:
! 6067: *) Bugfix: the ngx_http_rewrite_module module was required to be built
! 6068: to use the regular expressions in locations.
! 6069:
! 6070: *) Bugfix: the directive "proxy_preserve_host on" adds port 80 to the
! 6071: "Host" headers, if upstream listen on port 80; the bug had appeared
! 6072: in 0.1.14.
! 6073:
! 6074: *) Bugfix: the same paths in autoconfiguration parameters
! 6075: --http-client-body-temp-path=PATH and --http-proxy-temp-path=PATH, or
! 6076: --http-client-body-temp-path=PATH and --http-fastcgi-temp-path=PATH
! 6077: caused segmentation fault.
! 6078:
! 6079:
! 6080: Changes with nginx 0.1.14 18 Jan 2005
! 6081:
! 6082: *) Feature: the autoconfiguration directives:
! 6083: --http-client-body-temp-path=PATH, --http-proxy-temp-path=PATH, and
! 6084: --http-fastcgi-temp-path=PATH
! 6085:
! 6086: *) Change: the directory name for the temporary files with the client
! 6087: request body is specified by directive client_body_temp_path, by
! 6088: default it is <prefix>/client_body_temp.
! 6089:
! 6090: *) Feature: the ngx_http_fastcgi_module and the directives:
! 6091: fastcgi_pass, fastcgi_root, fastcgi_index, fastcgi_params,
! 6092: fastcgi_connect_timeout, fastcgi_send_timeout, fastcgi_read_timeout,
! 6093: fastcgi_send_lowat, fastcgi_header_buffer_size, fastcgi_buffers,
! 6094: fastcgi_busy_buffers_size, fastcgi_temp_path,
! 6095: fastcgi_max_temp_file_size, fastcgi_temp_file_write_size,
! 6096: fastcgi_next_upstream, and fastcgi_x_powered_by.
! 6097:
! 6098: *) Bugfix: the "[alert] zero size buf" error; the bug had appeared in
! 6099: 0.1.3.
! 6100:
! 6101: *) Change: the URI must be specified after the host name in the
! 6102: proxy_pass directive.
! 6103:
! 6104: *) Change: the %3F symbol in the URI was considered as the argument
! 6105: string start.
! 6106:
! 6107: *) Feature: the unix domain sockets support in the
! 6108: ngx_http_proxy_module.
! 6109:
! 6110: *) Feature: the ssl_engine and ssl_ciphers directives.
! 6111: Thanks to Sergey Skvortsov for SSL-accelerator.
! 6112:
! 6113:
! 6114: Changes with nginx 0.1.13 21 Dec 2004
! 6115:
! 6116: *) Feature: the server_names_hash and server_names_hash_threshold
! 6117: directives.
! 6118:
! 6119: *) Bugfix: the *.domain.tld names in the "server_name" directive did not
! 6120: work.
! 6121:
! 6122: *) Bugfix: the %request_length log parameter logged the incorrect
! 6123: length.
! 6124:
! 6125:
! 6126: Changes with nginx 0.1.12 06 Dec 2004
! 6127:
! 6128: *) Feature: the %request_length log parameter.
! 6129:
! 6130: *) Bugfix: when using the /dev/poll, select and poll on the platforms,
! 6131: where these methods may do the false reports, there may be the long
! 6132: delay when the request was passed via the keep-alive connection. It
! 6133: may be at least on Solaris when using the /dev/poll.
! 6134:
! 6135: *) Bugfix: the send_lowat directive is ignored on Linux because Linux
! 6136: does not support the SO_SNDLOWAT option.
! 6137:
! 6138:
! 6139: Changes with nginx 0.1.11 02 Dec 2004
! 6140:
! 6141: *) Feature: the worker_priority directive.
! 6142:
! 6143: *) Change: both tcp_nopush and tcp_nodelay directives affect the
! 6144: transferred response.
! 6145:
! 6146: *) Bugfix: nginx did not call initgroups().
! 6147: Thanks to Andrew Sitnikov and Andrei Nigmatulin.
! 6148:
! 6149: *) Change: now the ngx_http_autoindex_module shows the file size in the
! 6150: bytes.
! 6151:
! 6152: *) Bugfix: the ngx_http_autoindex_module returned the 500 error if the
! 6153: broken symlink was in a directory.
! 6154:
! 6155: *) Bugfix: the files bigger than 4G could not be transferred using
! 6156: sendfile.
! 6157:
! 6158: *) Bugfix: if the backend was resolved to several backends and there was
! 6159: an error while the response waiting then process may got caught in an
! 6160: endless loop.
! 6161:
! 6162: *) Bugfix: the worker process may exit with the "unknown cycle" message
! 6163: when the /dev/poll method was used.
! 6164:
! 6165: *) Bugfix: "close() channel failed" errors.
! 6166:
! 6167: *) Bugfix: the autodetection of the "nobody" and "nogroup" groups.
! 6168:
! 6169: *) Bugfix: the send_lowat directive did not work on Linux.
! 6170:
! 6171: *) Bugfix: the segmentation fault occurred if there was no events
! 6172: section in configuration.
! 6173:
! 6174: *) Bugfix: nginx could not be built on OpenBSD.
! 6175:
! 6176: *) Bugfix: the double slashes in "://" in the URI were converted to
! 6177: ":/".
! 6178:
! 6179:
! 6180: Changes with nginx 0.1.10 26 Nov 2004
! 6181:
! 6182: *) Bugfix: if the request without arguments contains "//", "/./", "/../"
! 6183: or "%XX" then the last character in the request line was lost; the
! 6184: bug had appeared in 0.1.9.
! 6185:
! 6186: *) Bugfix: the fix in 0.1.9 for the files bigger than 2G on Linux did
! 6187: not work.
! 6188:
! 6189:
! 6190: Changes with nginx 0.1.9 25 Nov 2004
! 6191:
! 6192: *) Bugfix: the proxied request was sent without arguments if the request
! 6193: contains "//", "/./", "/../" or "%XX".
! 6194:
! 6195: *) Bugfix: the large compressed responses may be transferred not
! 6196: completely.
! 6197:
! 6198: *) Bugfix: the files bigger than 2G was not transferred on Linux that
! 6199: does not support sendfile64().
! 6200:
! 6201: *) Bugfix: while the build configuration on Linux the --with-poll_module
! 6202: parameter was required; the bug had appeared in 0.1.8.
! 6203:
! 6204:
! 6205: Changes with nginx 0.1.8 20 Nov 2004
! 6206:
! 6207: *) Bugfix: in the ngx_http_autoindex_module if the long file names were
! 6208: in the listing.
! 6209:
! 6210: *) Feature: the "^~" modifier in the location directive.
! 6211:
! 6212: *) Feature: the proxy_max_temp_file_size directive.
! 6213:
! 6214:
! 6215: Changes with nginx 0.1.7 12 Nov 2004
! 6216:
! 6217: *) Bugfix: on FreeBSD the segmentation fault may occur if the size of
! 6218: the transferred file was changed; the bug had appeared in 0.1.5.
! 6219:
! 6220:
! 6221: Changes with nginx 0.1.6 11 Nov 2004
! 6222:
! 6223: *) Bugfix: some location directive combinations with the regular
! 6224: expressions caused the wrong configuration choose.
! 6225:
! 6226:
! 6227: Changes with nginx 0.1.5 11 Nov 2004
! 6228:
! 6229: *) Bugfix: on Solaris and Linux there may be too many "recvmsg()
! 6230: returned not enough data" alerts.
! 6231:
! 6232: *) Bugfix: there were the "writev() failed (22: Invalid argument)"
! 6233: errors on Solaris in proxy mode without sendfile. On other platforms
! 6234: that do not support sendfile at all the process got caught in an
! 6235: endless loop.
! 6236:
! 6237: *) Bugfix: segmentation fault on Solaris in proxy mode and using
! 6238: sendfile.
! 6239:
! 6240: *) Bugfix: segmentation fault on Solaris.
! 6241:
! 6242: *) Bugfix: on-line upgrade did not work on Linux.
! 6243:
! 6244: *) Bugfix: the ngx_http_autoindex_module module did not escape the
! 6245: spaces, the quotes, and the percent signs in the directory listing.
! 6246:
! 6247: *) Change: the decrease of the copy operations.
! 6248:
! 6249: *) Feature: the userid_p3p directive.
! 6250:
! 6251:
! 6252: Changes with nginx 0.1.4 26 Oct 2004
! 6253:
! 6254: *) Bugfix: in the ngx_http_autoindex_module.
! 6255:
! 6256:
! 6257: Changes with nginx 0.1.3 25 Oct 2004
! 6258:
! 6259: *) Feature: the ngx_http_autoindex_module and the autoindex directive.
! 6260:
! 6261: *) Feature: the proxy_set_x_url directive.
! 6262:
! 6263: *) Bugfix: proxy module may get caught in an endless loop when sendfile
! 6264: is not used.
! 6265:
! 6266:
! 6267: Changes with nginx 0.1.2 21 Oct 2004
! 6268:
! 6269: *) Feature: the --user=USER, --group=GROUP, and --with-ld-opt=OPTIONS
! 6270: options in configure.
! 6271:
! 6272: *) Feature: the server_name directive supports *.domain.tld.
! 6273:
! 6274: *) Bugfix: the portability improvements.
! 6275:
! 6276: *) Bugfix: if configuration file was set in command line, the
! 6277: reconfiguration was impossible; the bug had appeared in 0.1.1.
! 6278:
! 6279: *) Bugfix: proxy module may get caught in an endless loop when sendfile
! 6280: is not used.
! 6281:
! 6282: *) Bugfix: with sendfile the response was not recoded according to the
! 6283: charset module directives; the bug had appeared in 0.1.1.
! 6284:
! 6285: *) Bugfix: very seldom bug in the kqueue processing.
! 6286:
! 6287: *) Bugfix: the gzip module compressed the proxied responses that was
! 6288: already compressed.
! 6289:
! 6290:
! 6291: Changes with nginx 0.1.1 11 Oct 2004
! 6292:
! 6293: *) Feature: the gzip_types directive.
! 6294:
! 6295: *) Feature: the tcp_nodelay directive.
! 6296:
! 6297: *) Feature: the send_lowat directive is working not only on OSes that
! 6298: support kqueue NOTE_LOWAT, but also on OSes that support SO_SNDLOWAT.
! 6299:
! 6300: *) Feature: the setproctitle() emulation for Linux and Solaris.
! 6301:
! 6302: *) Bugfix: the "Location" header rewrite bug fixed while the proxying.
! 6303:
! 6304: *) Bugfix: the ngx_http_chunked_module module may get caught in an
! 6305: endless loop.
! 6306:
! 6307: *) Bugfix: the /dev/poll module bugs fixed.
! 6308:
! 6309: *) Bugfix: the responses were corrupted when the temporary files were
! 6310: used while the proxying.
! 6311:
! 6312: *) Bugfix: the unescaped requests were passed to the backend.
! 6313:
! 6314: *) Bugfix: while the build configuration on Linux 2.4 the
! 6315: --with-poll_module parameter was required.
! 6316:
! 6317:
! 6318: Changes with nginx 0.1.0 04 Oct 2004
! 6319:
! 6320: *) The first public version.
! 6321:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>