From 3bb1defc09bcf42e4b2dbfc695632b4c6ece2f69 Mon Sep 17 00:00:00 2001 From: Igor Sysoev Date: Wed, 28 Nov 2007 19:13:23 +0000 Subject: [PATCH] nginx-0.6.20-RELEASE --- docs/xml/nginx/changes.xml | 616 +++++++++++++++++++++++++++++++++++++ 1 file changed, 616 insertions(+) diff --git a/docs/xml/nginx/changes.xml b/docs/xml/nginx/changes.xml index ea32e9f8d..11a5e21dd 100644 --- a/docs/xml/nginx/changes.xml +++ b/docs/xml/nginx/changes.xml @@ -9,6 +9,24 @@ nginx changelog + + + + +ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÄÉÒÅËÔÉ×Ù proxy_pass c URI-ÞÁÓÔØÀ +× ÒÁÂÏÞÅÍ ÐÒÏÃÅÓÓÅ ÍÏÇ ÐÒÏÉÚÏÊÔÉ segmentation fault; +ÏÛÉÂËÁ ÐÏÑ×ÉÌÁÓØ × 0.6.19. + + +a segmentation fault might occur in worker process +if a "proxy_pass" directive with URI-part was used; +bug appeared in 0.6.19. + + + + + + @@ -1204,6 +1222,604 @@ the "www.example.*" wildcards. + + + + +ÔÅÐÅÒØ ÐÏ ÕÍÏÌÞÁÎÉÀ ËÏÍÁÎÄÁ SSI echo ÉÓÐÏÌØÚÕÅÔ ËÏÄÉÒÏ×ÁÎÉÅ entity. + + +now by default the "echo" SSI command uses entity encoding. + + + + + +ÐÁÒÁÍÅÔÒ encoding × ËÏÍÁÎÄÅ SSI echo. + + +the "encoding" parameter in the "echo" SSI command. + + + + + +ÐÏÞÔÏ×ÙÊ ÐÒÏËÓÉ-ÓÅÒ×ÅÒ ÒÁÚÄẠ̊ΠÎÁ ÔÒÉ ÍÏÄÕÌÑ: pop3, imap É smtp. + + +mail proxy was split on three modules: pop3, imap and smtp. + + + + + +ÐÁÒÁÍÅÔÒÙ ËÏÎÆÉÇÕÒÁÃÉÉ --without-mail_pop3_module, +--without-mail_imap_module É --without-mail_smtp_module. + + +the --without-mail_pop3_module, --without-mail_imap_module, +and --without-mail_smtp_module configuration parameters. + + + + + +ÄÉÒÅËÔÉ×Ù smtp_greeting_delay É smtp_client_buffer ÍÏÄÕÌÑ ngx_mail_smtp_module. + + +the "smtp_greeting_delay" and "smtp_client_buffer" directives +of the ngx_mail_smtp_module. + + + + + +ÄÉÒÅËÔÉ×Ù server_name É valid_referers ÐÏÄÄÅÒÖÉ×ÁÀÔ ÒÅÇÕÌÑÒÎÙÅ ×ÙÒÁÖÅÎÉÑ. + + +the "server_name" and "valid_referers" directives support regular expressions. + + + + + +ÄÉÒÅËÔÉ×Ù "server_name", "map", and "valid_referers" ÐÏÄÄÅÒÖÉ×ÁÀÔ +ÍÁÓËÉ ×ÉÄÁ "www.example.*". + + +the "server_name", "map", and "valid_referers" directives support +the "www.example.*" wildcards. + + + + + +sub_filter ÎÅ ÒÁÂÏÔÁÌ Ó ÐÕÓÔÏÊ ÓÔÒÏËÏÊ ÚÁÍÅÎÙ. + + +sub_filter did not work with empty substitution. + + + + + +× ÐÁÒÓÉÎÇÅ sub_filter. + + +in sub_filter parsing. + + + + + +ÒÁÂÏÞÉÊ ÐÒÏÃÅÓÓ ÍÏÇ ÚÁÃÉËÌÉÔØÓÑ ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ memcached. + + +a worker process may got caught in an endless loop, if the memcached was used. + + + + + +nginx ÒÁÓÐÏÚÎÁ×ÁÌ ÐÁÒÁÍÅÔÒÙ "close" É "keep-alive" × ÓÔÒÏËÅ "Connection" +× ÚÁÇÏÌÏ×ËÅ ÚÁÐÒÏÓÁ ÔÏÌØËÏ, ÅÓÌÉ ÏÎÉ ÂÙÌÉ × ÎÉÖÎÅÍ ÒÅÇÉÓÔÒÅ; +ÏÛÉÂËÁ ÐÏÑ×ÉÌÁÓØ × 0.5.32. + + +nginx supported low case only "close" and "keep-alive" values +in the "Connection" request header line; +bug appeared in 0.5.32. + + + + + +ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÒÁÚÄÅÌÑÅÍÏÊ ÂÉÂÌÉÏÔÅËÉ PCRE, +ÒÁÓÐÏÌÏÖÅÎÎÏÊ × ÎÅÓÔÁÎÄÁÒÔÎÏÍ ÍÅÓÔÅ, nginx ÎÅ ÚÁÐÕÓËÁÌÓÑ ÎÁ Solaris. + + +nginx could not start on Solaris if the shared PCRE library located +in non-standard place was used. + + + + + + + + + + +ÔÅÐÅÒØ nginx ÐÙÔÁÅÔÓÑ ÕÓÔÁÎÏ×ÉÔØ ÄÉÒÅËÔÉ×Ù worker_priority, +worker_rlimit_nofile, worker_rlimit_core, worker_rlimit_sigpending +ÂÅÚ ÐÒÉ×ÉÌÅÇÉÊ root'Á. + + +now nginx tries to set the "worker_priority", "worker_rlimit_nofile", +"worker_rlimit_core", and "worker_rlimit_sigpending" without super-user +privileges. + + + + + +ÔÅÐÅÒØ nginx ÜËÒÁÎÉÒÕÅÔ ÓÉÍ×ÏÌÙ ÐÒÏÂÅÌÁ É "%" ÐÒÉ ÐÅÒÅÄÁÞÅ ÚÁÐÒÏÓÁ +ÓÅÒ×ÅÒÕ ÁÕÔÅÎÔÉÆÉËÁÃÉÉ ÐÏÞÔÏ×ÏÇÏ ÐÒÏËÓÉ-ÓÅÒ×ÅÒÁ. + + +now nginx escapes space and "%" in request to a mail proxy authentication +server. + + + + + +ÔÅÐÅÒØ nginx ÜËÒÁÎÉÒÕÅÔ ÓÉÍ×ÏÌ "%" × ÐÅÒÅÍÅÎÎÏÊ $memcached_key. + + +now nginx escapes "%" in $memcached_key variable. + + + + + +ÄÌÑ ÏÂÎÏ×ÌÅÎÉÑ ÎÁ ÌÅÔÕ ×ÅÒÓÉÊ 0.1.x ÓÏÚÄÁÎ ÓÐÅÃÉÁÌØÎÙÊ ÓÃÅÎÁÒÉÊ +make upgrade1. + + +the special make target "upgrade1" was defined for online upgrade of +0.1.x versions. + + + + + +ÄÉÒÅËÔÉ×Á "add_header Last-Modified ..." ÍÅÎÑÅÔ ÓÔÒÏËÕ "Last-Modified" +× ÚÁÇÏÌÏ×ËÅ ÏÔ×ÅÔÁ. + + +the "add_header Last-Modified ..." directive changes the "Last-Modified" +response header line. + + + + + +ÐÏÞÔÏ×ÙÊ ÐÒÏËÓÉ-ÓÅÒ×ÅÒ ÐÏÄÄÅÒÖÉ×ÁÅÔ AUTHENTICATE × ÒÅÖÉÍÅ IMAP.
+óÐÁÓÉÂÏ íÁËÓÉÍÕ äÕÎÉÎÕ. +
+ +the mail proxy supports AUTHENTICATE in IMAP mode.
+Thanks to Maxim Dounin. +
+
+ + + +ÐÏÞÔÏ×ÙÊ ÐÒÏËÓÉ-ÓÅÒ×ÅÒ ÐÏÄÄÅÒÖÉ×ÁÅÔ STARTTLS × ÒÅÖÉÍÅ SMTP.
+óÐÁÓÉÂÏ íÁËÓÉÍÕ äÕÎÉÎÕ. +
+ +the mail proxy supports STARTTLS in SMTP mode.
+Thanks to Maxim Dounin. +
+
+ + + +nginx ÎÅ ÚÁËÒÙ×ÁÌ ÆÁÊÌ ËÁÔÁÌÏÇÁ ÄÌÑ ÚÁÐÒÏÓÁ HEAD, +ÅÓÌÉ ÉÓÐÏÌØÚÏ×ÁÌÓÑ autoindex
+óÐÁÓÉÂÏ Arkadiusz Patyk. +
+ +nginx did not close directory file on HEAD request if autoindex was used.
+Thanks to Arkadiusz Patyk. +
+
+ + + +ÄÉÒÅËÔÉ×Ù proxy_hide_header É fastcgi_hide_header ÎÅ ÓËÒÙ×ÁÌÉ +ÓÔÒÏËÉ ÚÁÇÏÌÏ×ËÁ ÏÔ×ÅÔÁ Ó ÉÍÅÎÅÍ ÂÏÌØÛÅ 32 ÓÉÍ×ÏÌÏ×.
+óÐÁÓÉÂÏ Manlio Perillo. +
+ +the "proxy_hide_header" and "fastcgi_hide_header" directives did not +hide response header lines whose name was longer than 32 characters.
+Thanks to Manlio Perillo. +
+
+ + + +ÓÞ£ÔÞÉË ÁËÔÉ×ÎÙÈ ÓÏÅÄÉÎÅÎÉÊ ×ÓÅÇÄÁ ÒÏÓ ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÐÏÞÔÏ×ÏÇÏ +ÐÒÏËÓÉ-ÓÅÒ×ÅÒÁ. + + +active connection counter always increased if mail proxy was used. + + + + + +ÅÓÌÉ ÂÜËÅÎÄ ×ÏÚ×ÒÁÝÁÌ ÔÏÌØËÏ ÚÁÇÏÌÏ×ÏË ÏÔ×ÅÔÁ ÐÒÉ ÎÅÂÕÆÅÒÉÚÉÒÏ×ÁÎÎÏÍ +ÐÒÏËÓÉÒÏ×ÁÎÉÉ, ÔÏ nginx ÚÁËÒÙ×ÁÌ ÓÏÅÄÉÎÅÎÉÅ Ó ÂÜËÅÎÄÏÍ ÐÏ ÔÁÊÍÁÕÔÕ. + + +if backend returned response header only using non-buffered proxy, +then nginx closed backend connection on timeout. + + + + + +nginx ÎÅ ÐÏÄÄÅÒÖÉ×ÁÌ ÎÅÓËÏÌØËÏ ÓÔÒÏË "Connection" × ÚÁÇÏÌÏ×ËÅ ÚÁÐÒÏÓÁ. + + +nginx did not support several "Connection" request header lines. + + + + + +÷ ÓÔÒÏËÕ ÚÁÇÏÌÏ×ËÁ ÏÔ×ÅÔÁ "Content-Type", ÕËÁÚÁÎÎÕÀ × ÍÅÔÏÄÅ +$r->send_http_header(), ÎÅ ÄÏÂÁ×ÌÑÌÁÓØ ËÏÄÉÒÏ×ËÁ, ÕËÁÚÁÎÎÁÑ × ÄÉÒÅËÔÉ×Å charset. + + +a charset set by the "charset" directive was not appended +to the "Content-Type" header set by $r->send_http_header(). + + + + + +ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÍÅÔÏÄÁ /dev/poll +× ÒÁÂÏÞÅÍ ÐÒÏÃÅÓÓÅ ÍÏÇ ÐÒÏÉÚÏÊÔÉ segmentation fault. + + +a segmentation fault might occur in worker process +if /dev/poll method was used. + + + + + +nginx ÎÅ ÒÁÂÏÔÁÌ ÎÁ FreeBSD/sparc64. + + +nginx did not work on FreeBSD/sparc64. + + + + + +ÅÓÌÉ × ÄÉÒÅËÔÉ×Å auth_http ÂÙÌ ÚÁÄÁÎ ÎÅÐÒÁ×ÉÌØÎÙÊ ÁÄÒÅÓ, ÔÏ +× ÒÁÂÏÞÅÍ ÐÒÏÃÅÓÓÅ ÐÒÏÉÓÈÏÄÉÌ segmentation fault. + + +a segmentation fault occurred in worker process +if invalid address was set in the "auth_http" directive. + + + + + +ÔÅÐÅÒØ ÐÏ ÕÍÏÌÞÁÎÉÀ nginx ÉÓÐÏÌØÚÕÅÔ ÚÎÁÞÅÎÉÅ 511 ÄÌÑ listen backlog +ÎÁ ×ÓÅÈ ÐÌÁÔÆÏÒÍÁÈ, ËÒÏÍÅ FreeBSD.
+óÐÁÓÉÂÏ Jiang Hong. +
+ +now nginx uses default listen backlog value 511 on all platforms +except FreeBSD.
+Thanks to Jiang Hong. +
+
+ + + +sendfilev() × Solaris ÔÅÐÅÒØ ÎÅ ÉÓÐÏÌØÚÕÅÔÓÑ ÐÒÉ ÐÅÒÅÄÁÞÅ ÔÅÌÁ ÚÁÐÒÏÓÁ +FastCGI-ÓÅÒ×ÅÒÕ ÞÅÒÅÚ unix domain ÓÏËÅÔ. + + +now Solaris sendfilev() is not used to transfer the client request body +to FastCGI-server via the unix domain socket. + + + + + +ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÏÄÎÏÇÏ ÈÏÓÔÁ × ËÁÞÅÓÔ×Å ÂÜËÅÎÄÏ× ÄÌÑ ÐÒÏÔÏËÏÌÏ× HTTP É HTTPS +ÂÅÚ Ñ×ÎÏÇÏ ÕËÁÚÁÎÉÑ ÐÏÒÔÏ×, nginx ÉÓÐÏÌØÚÏ×ÁÌ ÔÏÌØËÏ ÏÄÉÎ ÐÏÒÔ—80 ÉÌÉ 443. + + +if the same host without specified port was used as backend for HTTP and HTTPS, +then nginx used only one port—80 or 443. + + + + + +ÄÉÒÅËÔÉ×Ù proxy_ignore_client_abort É fastcgi_ignore_client_abort ÎÅ ÒÁÂÏÔÁÌÉ; +ÏÛÉÂËÁ ÐÏÑ×ÉÌÁÓØ × 0.5.13. + + +the "proxy_ignore_client_abort" and "fastcgi_ignore_client_abort" directives +did not work; +bug appeared in 0.5.13. + + + +
+ + + + + + +ÉÍÅÎÏ×ÁÎÎÙÅ location'Ù. + + +named locations. + + + + + +ÄÉÒÅËÔÉ×Ù proxy_store É fastcgi_store. + + +the "proxy_store" and "fastcgi_store" directives. + + + + + +ÄÉÒÅËÔÉ×Ù proxy_store_access É fastcgi_store_access. + + +the "proxy_store_access" and "fastcgi_store_access" directives. + + + + + + + + + + +ÐÅÒÅÍÅÎÎÕÀ $args ÍÏÖÎÏ ÕÓÔÁÎÁ×ÌÉ×ÁÔØ Ó ÐÏÍÏÝØÀ set. + + +the $args variable can be set with the "set" directive. + + + + + +ÐÅÒÅÍÅÎÎÁÑ $is_args. + + +the $is_args variable. + + + + + +ÅÓÌÉ ËÌÉÅÎÔ × ÐÏÞÔÏ×ÏÍ ÐÒÏËÓÉ-ÓÅÒ×ÅÒÅ ÚÁËÒÙ×ÁÌ ÓÏÅÄÉÎÅÎÉÅ, +ÔÏ nginx ÍÏÇ ÎÅ ÚÁËÒÙ×ÁÔØ ÓÏÅÄÉÎÅÎÉÅ Ó ÂÜËÅÎÄÏÍ. + + +if a client has closed connection to mail proxy + then nginx might not close connection to backend. + + + + + +ÔÅÐÅÒØ nginx ÜËÒÁÎÉÒÕÅÔ ÐÒÏÂÅÌ × ÐÅÒÅÍÅÎÎÏÊ $memcached_key. + + +now nginx escapes space in $memcached_key variable. + + + + + +ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÐÒÏÔÏËÏÌÁ HTTPS × ÄÉÒÅËÔÉ×Å proxy_pass +× ÒÁÂÏÞÅÍ ÐÒÏÃÅÓÓÅ ÍÏÇ ÐÒÏÉÚÏÊÔÉ segmentation fault. + + +a segmentation fault might occur in worker process when +the HTTPS protocol was used in the "proxy_pass" directive. + + + + + +ÚÎÁÞÅÎÉÅ perl'Ï×ÏÊ ÐÅÒÅÍÅÎÎÏÊ $$ ÍÏÄÕÌÑ ngx_http_perl_module ÂÙÌÏ ÒÁ×ÎÏ +ÎÏÍÅÒÕ ÇÌÁ×ÎÏÇÏ ÐÒÏÃÅÓÓÁ. + + +the perl $$ variable value in ngx_http_perl_module was equal to the master +process identification number. + + + + + +nginx ÎÅ ÓÏÂÉÒÁÌÓÑ ÎÁ Solaris/amd64 Sun Studio 11 É ÂÏÌÅÅ ÒÁÎÎÉÍÉ ×ÅÒÓÉÑÍÉ; +ÏÛÉÂËÁ ÐÏÑ×ÉÌÁÓØ × 0.5.29. + + +fix building on Solaris/amd64 by Sun Studio 11 and early versions; +bug appeared in 0.5.29. + + + + + + + + + + +ÐÅÒÅÍÅÎÎÁÑ $nginx_version.
+óÐÁÓÉÂÏ îÉËÏÌÁÀ çÒÅÞÕÈÕ. +
+ +$nginx_version variable.
+Thanks to Nick S. Grechukh. +
+
+ + + +ÅÓÌÉ ÚÁÇÏÌÏ×ÏË ÏÔ×ÅÔÁ ÂÙÌ ÒÁÚÄÅÌ£Î × FastCGI-ÚÁÐÉÓÑÈ, ÔÏ nginx ÐÅÒÅÄÁ×ÁÌ +ËÌÉÅÎÔÕ ÍÕÓÏÒ × ÔÁËÉÈ ÚÁÇÏÌÏ×ËÁÈ. + + +if the FastCGI header was split in records, +then nginx passed garbage in the header to a client. + + + + + +ÓÏ×ÍÅÓÔÉÍÏÓÔØ Ó Sun Studio ÎÁ Solaris/amd64 É Solaris/sparc64.
+óÐÁÓÉÂÏ Jiang Hong É áÎÄÒÅÀ îÉÇÍÁÔÕÌÉÎÕ. +
+ +Sun Studio compatibility on Solaris/amd64 and Solaris/sparc64.
+Thanks to Jiang Hong and Andrei Nigmatulin. +
+
+ + + +ÎÅÚÎÁÞÉÔÅÌØÎÙÈ ÐÏÔÅÎÃÉÁÌØÎÙÈ ÏÛÉÂÏË.
+óÐÁÓÉÂÏ Coverity's Scan. +
+ +of minor potential bugs.
+Thanks to Coverity's Scan. +
+
+ +
+ + + + + + +ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÄÉÒÅËÔÉ×Ù msie_refresh ÂÙÌ ×ÏÚÍÏÖÅÎ XSS.
+óÐÁÓÉÂÏ íÁËÓÉÍÕ âÏÇÕËÕ. +
+ +the "msie_refresh" directive allowed XSS.
+Thanks to Maxim Boguk. +
+
+ + + +ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÄÉÒÅËÔÉ×Ù auth_http_header +× ÒÁÂÏÞÅÍ ÐÒÏÃÅÓÓÅ ÍÏÇ ÐÒÏÉÚÏÊÔÉ segmentation fault.
+óÐÁÓÉÂÏ íÁËÓÉÍÕ äÕÎÉÎÕ. +
+ +a segmentation fault might occur in worker process +if the "auth_http_header" directive was used.
+Thanks to Maxim Dounin. +
+
+ + + +ÅÓÌÉ ÉÓÐÏÌØÚÏ×ÁÌÓÑ ÍÅÔÏÄ ÁÕÔÅÎÔÉÆÉËÁÃÉÉ CRAM-MD5, ÎÏ ÏÎ ÎÅ ÂÙÌ ÒÁÚÒÅÛ£Î, +ÔÏ × ÒÁÂÏÞÅÍ ÐÒÏÃÅÓÓÅ ÐÒÏÉÓÈÏÄÉÌ segmentation fault. + + +a segmentation fault occurred in worker process +if the CRAM-MD5 authentication method was used, but it was not enabled. + + + + + +× ÒÁÂÏÞÅÍ ÐÒÏÃÅÓÓÅ ÍÏÇ ÐÒÏÉÚÏÊÔÉ segmentation fault, +ÅÓÌÉ ÉÓÐÏÌØÚÏ×ÁÌÓÑ ÍÅÔÏÄ eventport. + + +a segmentation fault might occur in worker process +if the eventport method was used. + + + +
+ + + + + + +ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÕÄÁÌ£ÎÎÏÇÏ ÐÏÄÚÁÐÒÏÓÁ × SSI ÐÏÓÌÅÄÕÀÝÉÊ +ÐÏÄÚÁÐÒÏÓ ÌÏËÁÌØÎÏÇÏ ÆÁÊÌÁ ÍÏÇ ÏÔÄÁ×ÁÔØÓÑ ËÌÉÅÎÔÕ × ÎÅ×ÅÒÎÏÍ ÐÏÒÑÄËÅ. + + +if remote SSI subrequest was used, then posterior local file subrequest +might transferred to client in wrong order. + + + + + +ÂÏÌØÛÉÅ ×ËÌÀÞÅÎÉÑ × SSI, ÓÏÈÒÁΣÎÎÙÅ ×Ï ×ÒÅÍÅÎÎÙÅ ÆÁÊÌÙ, +ÐÅÒÅÄÁ×ÁÌÉÓØ ÎÅ ÐÏÌÎÏÓÔØÀ. + + +large SSI inclusions buffered in temporary files were truncated. + + + + + + + + + + +× ÐÁÒÓÉÎÇÅ SSI. + + +in SSI parsing. + + + + + + -- 2.47.3