tree e6594c2c4578b85fa81c4a5fe334daac91142a6f
parent 741c6e9c1ecd17d2165f2e8e3426023117f4b15d
author Igor Sysoev <igor@sysoev.ru> 1154099777 +0000
committer Igor Sysoev <igor@sysoev.ru> 1154099777 +0000

nginx-0.3.55-RELEASE import

    *) Feature: the "stub" parameter in the "include" SSI command.

    *) Feature: the "block" SSI command.

    *) Feature: the unicode2nginx script was added to contrib.

    *) Bugfix: if a "root" was specified by variable only, then the root
       was relative to a server prefix.

    *) Bugfix: if the request contained "//" or "/./" and escaped symbols
       after them, then the proxied request was sent unescaped.

    *) Bugfix: the $r->headers_in("Cookie") of the ngx_http_perl_module now
       returns all "Cookie" header lines.

    *) Bugfix: a segmentation fault occurred if
       "client_body_in_file_only on" was used and nginx switched to a next
       upstream.

    *) Bugfix: on some condition while reconfiguration character codes
       inside the "charset_map" may be treated invalid; the bug had
       appeared in 0.3.50.
