mirror of
https://github.com/nginx/nginx.git
synced 2025-06-07 17:52:38 +08:00
25853 lines
696 KiB
XML
25853 lines
696 KiB
XML
<?xml version="1.0" ?>
|
||
<!DOCTYPE change_log SYSTEM "../../dtd/changes.dtd" >
|
||
|
||
|
||
<change_log title="nginx">
|
||
|
||
|
||
<changes ver="1.13.1" date="2017-05-30">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь в качестве параметра директивы set_real_ip_from
|
||
можно указывать имя хоста.
|
||
</para>
|
||
<para lang="en">
|
||
now a hostname can be used
|
||
as the "set_real_ip_from" directive parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
улучшения в скриптах подсветки синтаксиса для vim.
|
||
</para>
|
||
<para lang="en">
|
||
vim syntax highlighting scripts improvements.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива worker_cpu_affinity теперь работает на DragonFly BSD.<br/>
|
||
Спасибо Sepherosa Ziehau.
|
||
</para>
|
||
<para lang="en">
|
||
the "worker_cpu_affinity" directive now works on DragonFly BSD.<br/>
|
||
Thanks to Sepherosa Ziehau.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
SSL renegotiation в соединениях к бэкендам
|
||
не работал при использовании OpenSSL до 1.1.0.
|
||
</para>
|
||
<para lang="en">
|
||
SSL renegotiation on backend connections
|
||
did not work when using OpenSSL before 1.1.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
nginx не собирался с Oracle Developer Studio 12.5.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with Oracle Developer Studio 12.5.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
теперь cache manager пропускает заблокированные записи
|
||
при очистке кэша по max_size.
|
||
</para>
|
||
<para lang="en">
|
||
now cache manager ignores long locked cache entries
|
||
when cleaning cache based on the "max_size" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
клиентские SSL-соединения сразу закрывались, если использовался
|
||
отложенный accept и параметр proxy_protocol директивы listen.
|
||
</para>
|
||
<para lang="en">
|
||
client SSL connections were immediately closed if deferred accept
|
||
and the "proxy_protocol" parameter of the "listen" directive were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве proxy_cache_background_update.
|
||
</para>
|
||
<para lang="en">
|
||
in the "proxy_cache_background_update" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
теперь директива tcp_nodelay
|
||
устанавливает опцию TCP_NODELAY перед SSL handshake.
|
||
</para>
|
||
<para lang="en">
|
||
now the "tcp_nodelay" directive
|
||
sets the TCP_NODELAY option before an SSL handshake.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.13.0" date="2017-04-25">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь SSL renegotiation допускается в соединениях к бэкендам.
|
||
</para>
|
||
<para lang="en">
|
||
SSL renegotiation is now allowed on backend connections.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметры rcvbuf и sndbuf директив listen
|
||
в почтовом прокси-сервере и модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
the "rcvbuf" and "sndbuf" parameters of the "listen" directives
|
||
of the mail proxy and stream modules.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы return и error_page теперь могут использоваться для возврата
|
||
перенаправлений с кодом 308.<br/>
|
||
Спасибо Simon Leblanc.
|
||
</para>
|
||
<para lang="en">
|
||
the "return" and "error_page" directives can now be used to return 308
|
||
redirections.<br/>
|
||
Thanks to Simon Leblanc.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр TLSv1.3 в директиве ssl_protocols.
|
||
</para>
|
||
<para lang="en">
|
||
the "TLSv1.3" parameter of the "ssl_protocols" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
при логгировании сигналов теперь указывается PID отправившего сигнал процесса.
|
||
</para>
|
||
<para lang="en">
|
||
when logging signals nginx now logs PID of the process which sent the signal.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок выделения памяти.
|
||
</para>
|
||
<para lang="en">
|
||
in memory allocation error handling.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если сервер в модуле stream слушал на wildcard-адресе,
|
||
исходящий адрес ответного UDP-пакета
|
||
мог отличаться от адреса назначения исходного пакета.
|
||
</para>
|
||
<para lang="en">
|
||
if a server in the stream module listened on a wildcard address,
|
||
the source address of a response UDP datagram could differ
|
||
from the original datagram destination address.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.13" date="2017-04-04">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр http_429 в директивах proxy_next_upstream, fastcgi_next_upstream,
|
||
scgi_next_upstream и uwsgi_next_upstream.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
the "http_429" parameter of the "proxy_next_upstream", "fastcgi_next_upstream",
|
||
"scgi_next_upstream", and "uwsgi_next_upstream" directives.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок выделения памяти.
|
||
</para>
|
||
<para lang="en">
|
||
in memory allocation error handling.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директив sendfile и timer_resolution на Linux
|
||
запросы могли зависать.
|
||
</para>
|
||
<para lang="en">
|
||
requests might hang
|
||
when using the "sendfile" and "timer_resolution" directives on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании с подзапросами директив sendfile и aio_write
|
||
запросы могли зависать.
|
||
</para>
|
||
<para lang="en">
|
||
requests might hang
|
||
when using the "sendfile" and "aio_write" directives with subrequests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_v2_module.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_v2_module.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2 в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process when using HTTP/2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
запросы могли зависать
|
||
при использовании с подзапросами директив limit_rate, sendfile_max_chunk,
|
||
limit_req или метода $r->sleep() встроенного перла.
|
||
</para>
|
||
<para lang="en">
|
||
requests might hang
|
||
when using the "limit_rate", "sendfile_max_chunk", "limit_req" directives,
|
||
or the $r->sleep() embedded perl method with subrequests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_slice_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_slice_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.12" date="2017-03-24">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог нагружать процессор;
|
||
ошибка появилась в 1.11.11.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might hog CPU;
|
||
the bug had appeared in 1.11.11.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.11" date="2017-03-21">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива worker_shutdown_timeout.
|
||
</para>
|
||
<para lang="en">
|
||
the "worker_shutdown_timeout" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
улучшения в скриптах подсветки синтаксиса для vim.<br/>
|
||
Спасибо Wei-Ko Kao.
|
||
</para>
|
||
<para lang="en">
|
||
vim syntax highlighting scripts improvements.<br/>
|
||
Thanks to Wei-Ko Kao.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при попытке установить переменную $limit_rate в пустую строку
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the $limit_rate variable was set to an empty string.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы proxy_cache_background_update, fastcgi_cache_background_update,
|
||
scgi_cache_background_update и uwsgi_cache_background_update
|
||
могли работать некорректно, если использовалась директива if.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_cache_background_update", "fastcgi_cache_background_update",
|
||
"scgi_cache_background_update", and "uwsgi_cache_background_update" directives
|
||
might work incorrectly if the "if" directive was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если количество large_client_header_buffers в виртуальном сервере
|
||
отличалось от такового в сервере по умолчанию.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if number of large_client_header_buffers in a virtual server
|
||
was different from the one in the default server.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в почтовом прокси-сервере.
|
||
</para>
|
||
<para lang="en">
|
||
in the mail proxy server.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.10" date="2017-02-14">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
формат заголовка кэша был изменен,
|
||
ранее закэшированные ответы будут загружены заново.
|
||
</para>
|
||
<para lang="en">
|
||
cache header format has been changed,
|
||
previously cached responses will be invalidated.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка расширений stale-while-revalidate и stale-if-error
|
||
в строке "Cache-Control" в заголовке ответа бэкенда.
|
||
</para>
|
||
<para lang="en">
|
||
support of "stale-while-revalidate" and "stale-if-error" extensions
|
||
in the "Cache-Control" backend response header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_cache_background_update, fastcgi_cache_background_update,
|
||
scgi_cache_background_update и uwsgi_cache_background_update.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_cache_background_update", "fastcgi_cache_background_update",
|
||
"scgi_cache_background_update", and "uwsgi_cache_background_update" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь nginx может кэшировать ответы
|
||
со строкой Vary заголовка длиной до 128 символов
|
||
(вместо 42 символов в предыдущих версиях).
|
||
</para>
|
||
<para lang="en">
|
||
nginx is now able to cache responses
|
||
with the "Vary" header line up to 128 characters long
|
||
(instead of 42 characters in previous versions).
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр build директивы server_tokens.<br/>
|
||
Спасибо Tom Thorogood.
|
||
</para>
|
||
<para lang="en">
|
||
the "build" parameter of the "server_tokens" directive.<br/>
|
||
Thanks to Tom Thorogood.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при обработке запросов со строкой "Expect: 100-continue" в заголовке запроса
|
||
в логах могли появляться сообщения "[crit] SSL_write() failed".
|
||
</para>
|
||
<para lang="en">
|
||
"[crit] SSL_write() failed" messages might appear in logs
|
||
when handling requests with the "Expect: 100-continue" request header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_slice_module не работал в именованных location'ах.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_slice_module did not work in named locations.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании AIO после перенаправления запроса с помощью X-Accel-Redirect
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
when using AIO after an "X-Accel-Redirect" redirection.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
уменьшено потребление памяти для долгоживущих запросов, использующих сжатие.
|
||
</para>
|
||
<para lang="en">
|
||
reduced memory consumption for long-lived requests using gzipping.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.9" date="2017-01-24">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании модуля stream nginx мог нагружать процессор;
|
||
ошибка появилась в 1.11.5.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might hog CPU when using the stream module;
|
||
the bug had appeared in 1.11.5.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
метод аутентификации EXTERNAL в почтовом прокси-сервере
|
||
можно было использовать, даже если он не был разрешён в конфигурации.
|
||
</para>
|
||
<para lang="en">
|
||
EXTERNAL authentication mechanism in mail proxy
|
||
was accepted even if it was not enabled in the configuration.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы ssl_verify_client модуля stream
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "ssl_verify_client" directive of the stream module was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива ssl_verify_client модуля stream могла не работать.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_verify_client" directive of the stream module might not work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при исчерпании рабочим процессом свободных соединений
|
||
keepalive-соединения могли закрываться излишне агрессивно.<br/>
|
||
Спасибо Joel Cunningham.
|
||
</para>
|
||
<para lang="en">
|
||
closing keepalive connections due to no free worker connections
|
||
might be too aggressive.<br/>
|
||
Thanks to Joel Cunningham.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы sendfile на FreeBSD и macOS
|
||
мог возвращаться некорректный ответ;
|
||
ошибка появилась в 1.7.8.
|
||
</para>
|
||
<para lang="en">
|
||
an incorrect response might be returned
|
||
when using the "sendfile" directive on FreeBSD and macOS;
|
||
the bug had appeared in 1.7.8.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы aio_write
|
||
ответ мог сохраняться в кэш не полностью.
|
||
</para>
|
||
<para lang="en">
|
||
a truncated response might be stored in cache
|
||
when using the "aio_write" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы aio_write
|
||
могла происходить утечка сокетов.
|
||
</para>
|
||
<para lang="en">
|
||
a socket leak might occur
|
||
when using the "aio_write" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.8" date="2016-12-27">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива absolute_redirect.
|
||
</para>
|
||
<para lang="en">
|
||
the "absolute_redirect" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр escape директивы log_format.
|
||
</para>
|
||
<para lang="en">
|
||
the "escape" parameter of the "log_format" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
проверка клиентских SSL-сертификатов в модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
client SSL certificates verification in the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssl_session_ticket_key поддерживает
|
||
шифрование TLS session tickets с помощью AES256
|
||
при использовании с 80-байтными ключами.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_session_ticket_key" directive supports
|
||
AES256 encryption of TLS session tickets
|
||
when used with 80-byte keys.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка vim-commentary в скриптах для vim.<br/>
|
||
Спасибо Armin Grodon.
|
||
</para>
|
||
<para lang="en">
|
||
vim-commentary support in vim scripts.<br/>
|
||
Thanks to Armin Grodon.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
рекурсия при получении значений переменных не ограничивалась.
|
||
</para>
|
||
<para lang="en">
|
||
recursion when evaluating variables was not limited.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_stream_ssl_preread_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_stream_ssl_preread_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если сервер, описанный в блоке upstream в модуле stream,
|
||
был признан неработающим, то после истечения fail_timeout он
|
||
признавался работающим только после завершения тестового соединения;
|
||
теперь достаточно, чтобы соединение было успешно установлено.
|
||
</para>
|
||
<para lang="en">
|
||
if a server in an upstream in the stream module failed,
|
||
it was considered alive only when a test connection sent
|
||
to it after fail_timeout was closed;
|
||
now a successfully established connection is enough.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows не собирался с 64-битным Visual Studio.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows could not be built with 64-bit Visual Studio.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows не собирался с OpenSSL 1.1.0.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows could not be built with OpenSSL 1.1.0.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.7" date="2016-12-13">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
переменная $ssl_client_verify теперь
|
||
в случае ошибки проверки клиентского сертификата
|
||
содержит строку с описанием ошибки,
|
||
например, "FAILED:certificate has expired".
|
||
</para>
|
||
<para lang="en">
|
||
now in case of a client certificate verification error
|
||
the $ssl_client_verify variable contains a string with the failure reason,
|
||
for example, "FAILED:certificate has expired".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные $ssl_ciphers, $ssl_curves,
|
||
$ssl_client_v_start, $ssl_client_v_end и $ssl_client_v_remain.
|
||
</para>
|
||
<para lang="en">
|
||
the $ssl_ciphers, $ssl_curves,
|
||
$ssl_client_v_start, $ssl_client_v_end, and $ssl_client_v_remain variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр volatile директивы map.
|
||
</para>
|
||
<para lang="en">
|
||
the "volatile" parameter of the "map" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при сборке динамических модулей
|
||
не учитывались заданные для модуля зависимости.
|
||
</para>
|
||
<para lang="en">
|
||
dependencies specified for a module
|
||
were ignored while building dynamic modules.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2 и директив limit_req или auth_request
|
||
тело запроса могло быть повреждено;
|
||
ошибка появилась в 1.11.0.
|
||
</para>
|
||
<para lang="en">
|
||
when using HTTP/2 and the "limit_req" or "auth_request" directives
|
||
client request body might be corrupted;
|
||
the bug had appeared in 1.11.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2 в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 1.11.3.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process when using HTTP/2;
|
||
the bug had appeared in 1.11.3.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_mp4_module.<br/>
|
||
Спасибо Congcong Hu.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_mp4_module.<br/>
|
||
Thanks to Congcong Hu.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_perl_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_perl_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.6" date="2016-11-15">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
формат переменных $ssl_client_s_dn и $ssl_client_i_dn
|
||
изменён на соответствующий RFC 2253 (RFC 4514);
|
||
значения в старом формате доступны через переменные
|
||
$ssl_client_s_dn_legacy и $ssl_client_i_dn_legacy.
|
||
</para>
|
||
<para lang="en">
|
||
format of the $ssl_client_s_dn and $ssl_client_i_dn variables
|
||
has been changed to follow RFC 2253 (RFC 4514);
|
||
values in the old format are available in
|
||
the $ssl_client_s_dn_legacy and $ssl_client_i_dn_legacy variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
при сохранении временных файлов в каталоге кэша
|
||
они теперь располагаются не в отдельном подкаталоге для временных файлов,
|
||
а в том же подкаталоге, что и соответствующие файлы в кэше.
|
||
</para>
|
||
<para lang="en">
|
||
when storing temporary files in a cache directory
|
||
they will be stored in the same subdirectories as corresponding cache files
|
||
instead of a separate subdirectory for temporary files.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка метода аутентификации EXTERNAL
|
||
в почтовом прокси-сервере.<br/>
|
||
Спасибо Robert Norris.
|
||
</para>
|
||
<para lang="en">
|
||
EXTERNAL authentication mechanism support
|
||
in mail proxy.<br/>
|
||
Thanks to Robert Norris.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка WebP в модуле ngx_http_image_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
WebP support in the ngx_http_image_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_method поддерживает переменные.<br/>
|
||
Спасибо Дмитрию Лазуркину.
|
||
</para>
|
||
<para lang="en">
|
||
variables support in the "proxy_method" directive.<br/>
|
||
Thanks to Dmitry Lazurkin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива http2_max_requests в модуле ngx_http_v2_module.
|
||
</para>
|
||
<para lang="en">
|
||
the "http2_max_requests" directive in the ngx_http_v2_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_cache_max_range_offset, fastcgi_cache_max_range_offset,
|
||
scgi_cache_max_range_offset и uwsgi_cache_max_range_offset.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_cache_max_range_offset", "fastcgi_cache_max_range_offset",
|
||
"scgi_cache_max_range_offset", and "uwsgi_cache_max_range_offset" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
плавное завершение старых рабочих процессов могло занимать бесконечное время
|
||
при использовании HTTP/2.
|
||
</para>
|
||
<para lang="en">
|
||
graceful shutdown of old worker processes might require infinite time
|
||
when using HTTP/2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_mp4_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_mp4_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при проксировании WebSocket-соединений и включённом кэшировании
|
||
в логах могли появляться сообщения "ignore long locked inactive cache entry".
|
||
</para>
|
||
<para lang="en">
|
||
"ignore long locked inactive cache entry" alerts might appear in logs
|
||
when proxying WebSocket connections with caching enabled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если во время SSL handshake с бэкендом происходил таймаут,
|
||
nginx ничего не писал в лог
|
||
и возвращал ответ с кодом 502 вместо 504.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not write anything to log
|
||
and returned a response with code 502 instead of 504
|
||
when a timeout occurred during an SSL handshake to a backend.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.5" date="2016-10-11">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
параметр configure --with-ipv6 упразднён,
|
||
поддержка IPv6 теперь собирается автоматически.
|
||
</para>
|
||
<para lang="en">
|
||
the --with-ipv6 configure option was removed,
|
||
now IPv6 support is configured automatically.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь, если в блоке upstream не оказалось доступных серверов,
|
||
nginx не сбрасывает статистику ошибок всех серверов, как делал ранее,
|
||
а ожидает истечения fail_timeout.
|
||
</para>
|
||
<para lang="en">
|
||
now if there are no available servers in an upstream,
|
||
nginx will not reset number of failures of all servers as it previously did,
|
||
but will wait for fail_timeout to expire.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_stream_ssl_preread_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_stream_ssl_preread_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива server в блоке upstream поддерживает параметр max_conns.
|
||
</para>
|
||
<para lang="en">
|
||
the "server" directive in the "upstream" context supports
|
||
the "max_conns" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр configure --with-compat.
|
||
</para>
|
||
<para lang="en">
|
||
the --with-compat configure option.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметры manager_files, manager_threshold и manager_sleep
|
||
директив proxy_cache_path, fastcgi_cache_path, scgi_cache_path и
|
||
uwsgi_cache_path.
|
||
</para>
|
||
<para lang="en">
|
||
"manager_files", "manager_threshold", and "manager_sleep" parameters
|
||
of the "proxy_cache_path", "fastcgi_cache_path", "scgi_cache_path", and
|
||
"uwsgi_cache_path" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при сборке perl-модуля не использовались флаги,
|
||
заданные с помощью параметра configure --with-ld-opt.
|
||
</para>
|
||
<para lang="en">
|
||
flags passed by the --with-ld-opt configure option
|
||
were not used while building perl module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве add_after_body при использовании совместно с директивой sub_filter.
|
||
</para>
|
||
<para lang="en">
|
||
in the "add_after_body" directive when used with the "sub_filter" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в переменной $realip_remote_addr.
|
||
</para>
|
||
<para lang="en">
|
||
in the $realip_remote_addr variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы dav_access, proxy_store_access, fastcgi_store_access,
|
||
scgi_store_access и uwsgi_store_access
|
||
игнорировали права, заданные для пользователя.
|
||
</para>
|
||
<para lang="en">
|
||
the "dav_access", "proxy_store_access", "fastcgi_store_access",
|
||
"scgi_store_access", and "uwsgi_store_access" directives
|
||
ignored permissions specified for user.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
unix domain listen-сокеты могли не наследоваться
|
||
при обновлении исполняемого файла на Linux.
|
||
</para>
|
||
<para lang="en">
|
||
unix domain listen sockets might not be inherited
|
||
during binary upgrade on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx возвращал ошибку 400 на запросы
|
||
с символом "-" в HTTP-методе.
|
||
</para>
|
||
<para lang="en">
|
||
nginx returned the 400 response on requests
|
||
with the "-" character in the HTTP method.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.4" date="2016-09-13">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $upstream_bytes_received.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_bytes_received variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные $bytes_received, $session_time, $protocol, $status,
|
||
$upstream_addr, $upstream_bytes_sent, $upstream_bytes_received,
|
||
$upstream_connect_time, $upstream_first_byte_time
|
||
и $upstream_session_time в модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
the $bytes_received, $session_time, $protocol, $status,
|
||
$upstream_addr, $upstream_bytes_sent, $upstream_bytes_received,
|
||
$upstream_connect_time, $upstream_first_byte_time,
|
||
and $upstream_session_time variables in the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_stream_log_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_stream_log_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр proxy_protocol в директиве listen,
|
||
переменные $proxy_protocol_addr и $proxy_protocol_port
|
||
в модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_protocol" parameter of the "listen" directive,
|
||
the $proxy_protocol_addr and $proxy_protocol_port variables
|
||
in the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_stream_realip_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_stream_realip_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с модулем stream и модулем ngx_http_ssl_module,
|
||
но без модуля ngx_stream_ssl_module;
|
||
ошибка появилась в 1.11.3.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with the stream module and the ngx_http_ssl_module,
|
||
but without ngx_stream_ssl_module;
|
||
the bug had appeared in 1.11.3.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
опция сокета IP_BIND_ADDRESS_NO_PORT не использовалась;
|
||
ошибка появилась в 1.11.2.
|
||
</para>
|
||
<para lang="en">
|
||
the IP_BIND_ADDRESS_NO_PORT socket option was not used;
|
||
the bug had appeared in 1.11.2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в параметре ranges директивы geo.
|
||
</para>
|
||
<para lang="en">
|
||
in the "ranges" parameter of the "geo" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директив "aio threads" и sendfile
|
||
мог возвращаться некорректный ответ; ошибка появилась в 1.9.13.
|
||
</para>
|
||
<para lang="en">
|
||
an incorrect response might be returned
|
||
when using the "aio threads" and "sendfile" directives;
|
||
the bug had appeared in 1.9.13.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.3" date="2016-07-26">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь accept_mutex по умолчанию выключен.
|
||
</para>
|
||
<para lang="en">
|
||
now the "accept_mutex" directive is turned off by default.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь nginx использует EPOLLEXCLUSIVE на Linux.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx uses EPOLLEXCLUSIVE on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_stream_geo_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_stream_geo_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_stream_geoip_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_stream_geoip_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_stream_split_clients_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_stream_split_clients_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_pass и proxy_ssl_name в модуле stream
|
||
поддерживают переменные.
|
||
</para>
|
||
<para lang="en">
|
||
variables support
|
||
in the "proxy_pass" and "proxy_ssl_name" directives in the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки сокетов при использовании HTTP/2.
|
||
</para>
|
||
<para lang="en">
|
||
socket leak when using HTTP/2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в configure.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
in configure tests.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.2" date="2016-07-05">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx всегда использует внутренние реализации MD5 и SHA1;
|
||
параметры configure --with-md5 и --with-sha1 упразднены.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx always uses internal MD5 and SHA1 implementations;
|
||
the --with-md5 and --with-sha1 configure options were canceled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка переменных в модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
variables support in the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_stream_map_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_stream_map_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_stream_return_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_stream_return_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
в директивах proxy_bind, fastcgi_bind, memcached_bind, scgi_bind и uwsgi_bind
|
||
теперь можно указывать порт.
|
||
</para>
|
||
<para lang="en">
|
||
a port can be specified in the "proxy_bind", "fastcgi_bind",
|
||
"memcached_bind", "scgi_bind", and "uwsgi_bind" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь nginx использует опцию сокета IP_BIND_ADDRESS_NO_PORT, если она доступна.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx uses the IP_BIND_ADDRESS_NO_PORT socket option when available.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2 и директивы proxy_request_buffering
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
when using HTTP/2 and the "proxy_request_buffering" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2
|
||
к запросам, передаваемым на бэкенд,
|
||
всегда добавлялась строка заголовка "Content-Length",
|
||
даже если у запроса не было тела.
|
||
</para>
|
||
<para lang="en">
|
||
the "Content-Length" request header line
|
||
was always added to requests passed to backends,
|
||
including requests without body,
|
||
when using HTTP/2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2
|
||
в логах могли появляться сообщения "http request count is zero".
|
||
</para>
|
||
<para lang="en">
|
||
"http request count is zero" alerts might appear in logs
|
||
when using HTTP/2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы sub_filter
|
||
могло буферизироваться больше данных, чем это необходимо;
|
||
проблема появилась в 1.9.4.
|
||
</para>
|
||
<para lang="en">
|
||
unnecessary buffering might occur
|
||
when using the "sub_filter" directive;
|
||
the issue had appeared in 1.9.4.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.1" date="2016-05-31">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
при записи тела специально созданного запроса во временный файл
|
||
в рабочем процессе мог происходить segmentation fault
|
||
(CVE-2016-4450);
|
||
ошибка появилась в 1.3.9.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
while writing a specially crafted request body to a temporary file
|
||
(CVE-2016-4450);
|
||
the bug had appeared in 1.3.9.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.11.0" date="2016-05-24">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр transparent директив proxy_bind, fastcgi_bind,
|
||
memcached_bind, scgi_bind и uwsgi_bind.
|
||
</para>
|
||
<para lang="en">
|
||
the "transparent" parameter of the "proxy_bind", "fastcgi_bind",
|
||
"memcached_bind", "scgi_bind", and "uwsgi_bind" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $request_id.
|
||
</para>
|
||
<para lang="en">
|
||
the $request_id variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива map поддерживает комбинации нескольких переменных
|
||
в качестве результирующих значений.
|
||
</para>
|
||
<para lang="en">
|
||
the "map" directive supports combinations of multiple variables
|
||
as resulting values.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь при использовании метода epoll
|
||
nginx проверяет, поддерживает ли ядро события EPOLLRDHUP,
|
||
и соответственно оптимизирует обработку соединений.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx checks if EPOLLRDHUP events are supported by kernel,
|
||
and optimizes connection handling accordingly
|
||
if the "epoll" method is used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы ssl_certificate и ssl_certificate_key
|
||
теперь можно указывать несколько раз
|
||
для загрузки сертификатов разных типов (например, RSA и ECDSA).
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_certificate" and "ssl_certificate_key" directives
|
||
can be specified multiple times
|
||
to load certificates of different types (for example, RSA and ECDSA).
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
при использовании OpenSSL 1.0.2 и новее
|
||
с помощью директивы ssl_ecdh_curve теперь можно задать список кривых;
|
||
по умолчанию используется встроенный в OpenSSL список кривых.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_ecdh_curve" directive now allows specifying a list of curves
|
||
when using OpenSSL 1.0.2 or newer;
|
||
by default a list built into OpenSSL is used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
для использования DHE-шифров теперь надо явно задавать файл параметров
|
||
с помощью директивы ssl_dhparam.
|
||
</para>
|
||
<para lang="en">
|
||
to use DHE ciphers it is now required to specify parameters
|
||
using the "ssl_dhparam" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $proxy_protocol_port.
|
||
</para>
|
||
<para lang="en">
|
||
the $proxy_protocol_port variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $realip_remote_port в модуле ngx_http_realip_module.
|
||
</para>
|
||
<para lang="en">
|
||
the $realip_remote_port variable in the ngx_http_realip_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_realip_module теперь позволяет устанавливать
|
||
не только адрес, но и порт клиента.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_realip_module is now able to set the client port
|
||
in addition to the address.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
при попытке запросить виртуальный сервер,
|
||
отличающийся от согласованного в процессе SSL handshake,
|
||
теперь возвращается ответ "421 Misdirected Request";
|
||
это улучшает совместимость с некоторыми HTTP/2-клиентами
|
||
в случае использования клиентских сертификатов.
|
||
</para>
|
||
<para lang="en">
|
||
the "421 Misdirected Request" response now used
|
||
when rejecting requests to a virtual server
|
||
different from one negotiated during an SSL handshake;
|
||
this improves interoperability with some HTTP/2 clients
|
||
when using client certificates.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
HTTP/2-клиенты теперь могут сразу присылать тело запроса;
|
||
директива http2_body_preread_size позволяет указать размер буфера, который
|
||
будет использоваться до того, как nginx начнёт читать тело.
|
||
</para>
|
||
<para lang="en">
|
||
HTTP/2 clients can now start sending request body immediately;
|
||
the "http2_body_preread_size" directive controls size of the buffer used
|
||
before nginx will start reading client request body.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы proxy_cache_bypass
|
||
не обновлялись закэшированные ошибочные ответы.
|
||
</para>
|
||
<para lang="en">
|
||
cached error responses were not updated
|
||
when using the "proxy_cache_bypass" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.15" date="2016-04-19">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HHVM в качестве FastCGI-сервера
|
||
могли возникать ошибки "recv() failed".
|
||
</para>
|
||
<para lang="en">
|
||
"recv() failed" errors might occur
|
||
when using HHVM as a FastCGI server.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2 и директив limit_req или auth_request
|
||
при чтении тела запроса мог произойти таймаут
|
||
или ошибка "client violated flow control";
|
||
ошибка появилась в 1.9.14.
|
||
</para>
|
||
<para lang="en">
|
||
when using HTTP/2 and the "limit_req" or "auth_request" directives
|
||
a timeout or a "client violated flow control" error
|
||
might occur while reading client request body;
|
||
the bug had appeared in 1.9.14.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
при использовании HTTP/2 ответ мог не показываться некоторыми браузерами,
|
||
если тело запроса было прочитано не целиком;
|
||
ошибка появилась в 1.9.14.
|
||
</para>
|
||
<para lang="en">
|
||
a response might not be shown by some browsers
|
||
if HTTP/2 was used and client request body was not fully read;
|
||
the bug had appeared in 1.9.14.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы "aio threads" соединения могли зависать.<br/>
|
||
Спасибо Mindaugas Rasiukevicius.
|
||
</para>
|
||
<para lang="en">
|
||
connections might hang when using the "aio threads" directive.<br/>
|
||
Thanks to Mindaugas Rasiukevicius.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.14" date="2016-04-05">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
совместимость с OpenSSL 1.1.0.
|
||
</para>
|
||
<para lang="en">
|
||
OpenSSL 1.1.0 compatibility.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_request_buffering, fastcgi_request_buffering,
|
||
scgi_request_buffering и uwsgi_request_buffering
|
||
теперь работают при использовании HTTP/2.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_request_buffering", "fastcgi_request_buffering",
|
||
"scgi_request_buffering", and "uwsgi_request_buffering" directives
|
||
now work with HTTP/2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2
|
||
в логах могли появляться сообщения "zero size buf in output".
|
||
</para>
|
||
<para lang="en">
|
||
"zero size buf in output" alerts might appear in logs
|
||
when using HTTP/2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2
|
||
директива client_max_body_size могла работать неверно.
|
||
</para>
|
||
<para lang="en">
|
||
the "client_max_body_size" directive might work incorrectly
|
||
when using HTTP/2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
незначительных ошибок логгирования.
|
||
</para>
|
||
<para lang="en">
|
||
of minor bugs in logging.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.13" date="2016-03-29">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
неидемпотентные запросы (POST, LOCK, PATCH)
|
||
теперь по умолчанию не передаются на другой сервер,
|
||
если запрос уже был отправлен на бэкенд;
|
||
параметр non_idempotent директивы proxy_next_upstream
|
||
явно разрешает повторять такие запросы.
|
||
</para>
|
||
<para lang="en">
|
||
non-idempotent requests (POST, LOCK, PATCH)
|
||
are no longer passed to the next server by default
|
||
if a request has been sent to a backend;
|
||
the "non_idempotent" parameter of the "proxy_next_upstream" directive
|
||
explicitly allows retrying such requests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module теперь можно собрать динамически.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module can be built dynamically.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка UDP в модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
UDP support in the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива aio_write.
|
||
</para>
|
||
<para lang="en">
|
||
the "aio_write" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь cache manager следит за количеством элементов в кэше
|
||
и старается не допускать переполнений зоны разделяемой памяти.
|
||
</para>
|
||
<para lang="en">
|
||
now cache manager monitors number of elements in caches
|
||
and tries to avoid cache keys zone overflows.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директив sendfile и aio с подзапросами
|
||
в логах могли появляться сообщения "task already active" и "second aio post".
|
||
</para>
|
||
<para lang="en">
|
||
"task already active" and "second aio post" alerts might appear in logs
|
||
when using the "sendfile" and "aio" directives with subrequests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании кэширования
|
||
в логах могли появляться сообщения "zero size buf in output",
|
||
если клиент закрывал соединение преждевременно.
|
||
</para>
|
||
<para lang="en">
|
||
"zero size buf in output" alerts might appear in logs
|
||
if caching was used
|
||
and a client closed a connection prematurely.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании кэширования
|
||
соединения с клиентами могли закрываться без необходимости.<br/>
|
||
Спасибо Justin Li.
|
||
</para>
|
||
<para lang="en">
|
||
connections with clients might be closed needlessly
|
||
if caching was used.<br/>
|
||
Thanks to Justin Li.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог нагружать процессор
|
||
при использовании директивы sendfile на Linux и Solaris,
|
||
если отправляемый файл был изменён в процессе отправки.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might hog CPU
|
||
if the "sendfile" directive was used on Linux or Solaris
|
||
and a file being sent was changed during sending.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директив sendfile и "aio threads"
|
||
соединения могли зависать.
|
||
</para>
|
||
<para lang="en">
|
||
connections might hang
|
||
when using the "sendfile" and "aio threads" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директивах proxy_pass, fastcgi_pass, scgi_pass и uwsgi_pass
|
||
при использовании переменных.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
in the "proxy_pass", "fastcgi_pass", "scgi_pass", and "uwsgi_pass" directives
|
||
when using variables.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_sub_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_sub_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в закэшированном соединении к бэкенду происходила ошибка,
|
||
запрос передавался на другой сервер
|
||
без учёта директивы proxy_next_upstream.
|
||
</para>
|
||
<para lang="en">
|
||
if an error occurred in a cached backend connection,
|
||
the request was passed to the next server
|
||
regardless of the proxy_next_upstream directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки "CreateFile() failed" при создании временных файлов на Windows.
|
||
</para>
|
||
<para lang="en">
|
||
"CreateFile() failed" errors when creating temporary files on Windows.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.12" date="2016-02-24">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
кодирование Хаффмана заголовков ответов в HTTP/2.<br/>
|
||
Спасибо Владу Краснову.
|
||
</para>
|
||
<para lang="en">
|
||
Huffman encoding of response headers in HTTP/2.<br/>
|
||
Thanks to Vlad Krasnov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива worker_cpu_affinity теперь поддерживает более 64 процессоров.
|
||
</para>
|
||
<para lang="en">
|
||
the "worker_cpu_affinity" directive now supports more than 64 CPUs.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость со сторонними модулями на C++;
|
||
ошибка появилась в 1.9.11.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
compatibility with 3rd party C++ modules;
|
||
the bug had appeared in 1.9.11.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался статически с OpenSSL на Linux;
|
||
ошибка появилась в 1.9.11.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built statically with OpenSSL on Linux;
|
||
the bug had appeared in 1.9.11.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива "add_header ... always" с пустым значением
|
||
не удаляла из заголовков ошибочных ответов
|
||
строки Last-Modified и ETag.
|
||
</para>
|
||
<para lang="en">
|
||
the "add_header ... always" directive with an empty value
|
||
did not delete "Last-Modified" and "ETag" header lines
|
||
from error responses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
при использовании OpenSSL 1.0.2f в логах могли появляться
|
||
сообщения "called a function you should not call" и
|
||
"shutdown while in init".
|
||
</para>
|
||
<para lang="en">
|
||
"called a function you should not call"
|
||
and "shutdown while in init" messages might appear in logs
|
||
when using OpenSSL 1.0.2f.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибочные заголовки могли логгироваться некорректно.
|
||
</para>
|
||
<para lang="en">
|
||
invalid headers might be logged incorrectly.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки сокетов при использовании HTTP/2.
|
||
</para>
|
||
<para lang="en">
|
||
socket leak when using HTTP/2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_v2_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_v2_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.11" date="2016-02-09">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь resolver поддерживает TCP.
|
||
</para>
|
||
<para lang="en">
|
||
TCP support in resolver.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
динамические модули.
|
||
</para>
|
||
<para lang="en">
|
||
dynamic modules.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2
|
||
переменная $request_length не учитывала размер заголовков запроса.
|
||
</para>
|
||
<para lang="en">
|
||
the $request_length variable did not include size of request headers
|
||
when using HTTP/2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_v2_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_v2_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.10" date="2016-01-26">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
при использовании директивы resolver
|
||
во время обработки ответов DNS-сервера
|
||
могло происходить разыменование некорректного адреса,
|
||
что позволяло атакующему,
|
||
имеющему возможность подделывать UDP-пакеты от DNS-сервера,
|
||
вызвать segmentation fault в рабочем процессе (CVE-2016-0742).
|
||
</para>
|
||
<para lang="en">
|
||
invalid pointer dereference might occur
|
||
during DNS server response processing
|
||
if the "resolver" directive was used,
|
||
allowing an attacker who is able to forge UDP packets from the DNS server
|
||
to cause segmentation fault in a worker process (CVE-2016-0742).
|
||
</para>
|
||
</change>
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
при использовании директивы resolver
|
||
во время обработки CNAME-записей
|
||
могло произойти обращение к ранее освобождённой памяти,
|
||
что позволяло атакующему,
|
||
имеющему возможность инициировать преобразование произвольных имён в адреса,
|
||
вызвать segmentation fault в рабочем процессе,
|
||
а также потенциально могло иметь другие последствия (CVE-2016-0746).
|
||
</para>
|
||
<para lang="en">
|
||
use-after-free condition might occur
|
||
during CNAME response processing
|
||
if the "resolver" directive was used,
|
||
allowing an attacker who is able to trigger name resolution
|
||
to cause segmentation fault in a worker process,
|
||
or might have potential other impact (CVE-2016-0746).
|
||
</para>
|
||
</change>
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
при использовании директивы resolver
|
||
во время обработки CNAME-записей
|
||
не во всех случаях проверялось ограничение
|
||
на максимальное количество записей в цепочке,
|
||
что позволяло атакующему,
|
||
имеющему возможность инициировать преобразование произвольных имён в адреса,
|
||
вызвать чрезмерное потребление ресурсов рабочими процессами (CVE-2016-0747).
|
||
</para>
|
||
<para lang="en">
|
||
CNAME resolution was insufficiently limited
|
||
if the "resolver" directive was used,
|
||
allowing an attacker who is able to trigger arbitrary name resolution
|
||
to cause excessive resource consumption in worker processes (CVE-2016-0747).
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр auto директивы worker_cpu_affinity.
|
||
</para>
|
||
<para lang="en">
|
||
the "auto" parameter of the "worker_cpu_affinity" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр proxy_protocol директивы listen не работал
|
||
с IPv6 listen-сокетами.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_protocol" parameter of the "listen" directive did not work
|
||
with IPv6 listen sockets.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы keepalive
|
||
соединения к бэкендам могли кэшироваться некорректно.
|
||
</para>
|
||
<para lang="en">
|
||
connections to upstream servers might be cached incorrectly
|
||
when using the "keepalive" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
после перенаправления запроса с помощью X-Accel-Redirect
|
||
при проксировании использовался HTTP-метод оригинального запроса.
|
||
</para>
|
||
<para lang="en">
|
||
proxying used the HTTP method of the original request
|
||
after an "X-Accel-Redirect" redirection.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.9" date="2015-12-09">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
проксирование в unix domain сокеты не работало при использовании переменных;
|
||
ошибка появилась в 1.9.8.
|
||
</para>
|
||
<para lang="en">
|
||
proxying to unix domain sockets did not work when using variables;
|
||
the bug had appeared in 1.9.8.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.8" date="2015-12-08">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка pwritev().
|
||
</para>
|
||
<para lang="en">
|
||
pwritev() support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива include в блоке upstream.
|
||
</para>
|
||
<para lang="en">
|
||
the "include" directive inside the "upstream" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_slice_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_slice_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании LibreSSL
|
||
в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 1.9.6.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
when using LibreSSL;
|
||
the bug had appeared in 1.9.6.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог не собираться на OS X.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on OS X in some cases.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.7" date="2015-11-17">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр nohostname логгирования в syslog.
|
||
</para>
|
||
<para lang="en">
|
||
the "nohostname" parameter of logging to syslog.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_cache_convert_head.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_cache_convert_head" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $realip_remote_addr в модуле ngx_http_realip_module.
|
||
</para>
|
||
<para lang="en">
|
||
the $realip_remote_addr variable in the ngx_http_realip_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива expires могла не срабатывать при использовании переменных.
|
||
</para>
|
||
<para lang="en">
|
||
the "expires" directive might not work when using variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2
|
||
в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 1.9.6.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
when using HTTP/2;
|
||
the bug had appeared in 1.9.6.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если nginx был собран с модулем ngx_http_v2_module,
|
||
протокол HTTP/2 мог быть использован клиентом,
|
||
даже если не был указан параметр http2 директивы listen.
|
||
</para>
|
||
<para lang="en">
|
||
if nginx was built with the ngx_http_v2_module
|
||
it was possible to use the HTTP/2 protocol
|
||
even if the "http2" parameter of the "listen" directive was not specified.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_v2_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_v2_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.6" date="2015-10-27">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2
|
||
в рабочем процессе мог произойти segmentation fault.<br/>
|
||
Спасибо Piotr Sikora и Denis Andzakovic.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
when using HTTP/2.<br/>
|
||
Thanks to Piotr Sikora and Denis Andzakovic.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP/2 переменная $server_protocol была пустой.
|
||
</para>
|
||
<para lang="en">
|
||
the $server_protocol variable was empty when using HTTP/2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
SSL-соединения к бэкендам в модуле stream
|
||
могли неожиданно завершаться по таймауту.
|
||
</para>
|
||
<para lang="en">
|
||
backend SSL connections in the stream module
|
||
might be timed out unexpectedly.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании различных настроек ssl_session_cache
|
||
в разных виртуальных серверах
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if different ssl_session_cache settings were used
|
||
in different virtual servers.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows не собирался с MinGW gcc;
|
||
ошибка появилась в 1.9.4.<br/>
|
||
Спасибо Kouhei Sutou.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows could not be built with MinGW gcc;
|
||
the bug had appeared in 1.9.4.<br/>
|
||
Thanks to Kouhei Sutou.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы timer_resolution на Windows время не обновлялось.
|
||
</para>
|
||
<para lang="en">
|
||
time was not updated when the timer_resolution directive was used on Windows.
|
||
</para>
|
||
</change>
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Незначительные исправления и улучшения.<br/>
|
||
Спасибо Markus Linnala, Kurtis Nusbaum и Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
Miscellaneous minor fixes and improvements.<br/>
|
||
Thanks to Markus Linnala, Kurtis Nusbaum and Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.5" date="2015-09-22">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_v2_module (заменяет модуль ngx_http_spdy_module).<br/>
|
||
Спасибо Dropbox и Automattic за спонсирование разработки.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_v2_module (replaces ngx_http_spdy_module).<br/>
|
||
Thanks to Dropbox and Automattic for sponsoring this work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь по умолчанию директива output_buffers использует два буфера.
|
||
</para>
|
||
<para lang="en">
|
||
now the "output_buffers" directive uses two buffers by default.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx ограничивает максимальную вложенность подзапросов,
|
||
а не количество одновременных подзапросов.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx limits subrequests recursion,
|
||
not simultaneous subrequests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь при возврате ответов из кэша nginx проверяет ключ полностью.<br/>
|
||
Спасибо Геннадию Махомеду и Сергею Брестеру.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx checks the whole cache key when returning a response from cache.<br/>
|
||
Thanks to Gena Makhomed and Sergey Brester.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании кэша
|
||
в логах могли появляться сообщения "header already sent";
|
||
ошибка появилась в 1.7.5.
|
||
</para>
|
||
<para lang="en">
|
||
"header already sent" alerts might appear in logs
|
||
when using cache;
|
||
the bug had appeared in 1.7.5.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании CephFS и директивы timer_resolution на Linux
|
||
в логах могли появляться сообщения
|
||
"writev() failed (4: Interrupted system call)".
|
||
</para>
|
||
<para lang="en">
|
||
"writev() failed (4: Interrupted system call)"
|
||
errors might appear in logs
|
||
when using CephFS and the "timer_resolution" directive on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок конфигурации.<br/>
|
||
Спасибо Markus Linnala.
|
||
</para>
|
||
<para lang="en">
|
||
in invalid configurations handling.<br/>
|
||
Thanks to Markus Linnala.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы sub_filter на уровне http
|
||
в рабочем процессе происходил segmentation fault;
|
||
ошибка появилась в 1.9.4.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in a worker process
|
||
if the "sub_filter" directive was used at http level;
|
||
the bug had appeared in 1.9.4.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.4" date="2015-08-18">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директивы proxy_downstream_buffer и proxy_upstream_buffer в модуле stream
|
||
заменены директивой proxy_buffer_size.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_downstream_buffer" and "proxy_upstream_buffer" directives
|
||
of the stream module are replaced with the "proxy_buffer_size" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива tcp_nodelay в модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
the "tcp_nodelay" directive in the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь можно указать несколько директив sub_filter одновременно.
|
||
</para>
|
||
<para lang="en">
|
||
multiple "sub_filter" directives can be used simultaneously.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива sub_filter поддерживает переменные в строке поиска.
|
||
</para>
|
||
<para lang="en">
|
||
variables support in the search string of the "sub_filter" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
тестирование конфигурации могло не работать под Linux OpenVZ.<br/>
|
||
Спасибо Геннадию Махомеду.
|
||
</para>
|
||
<para lang="en">
|
||
configuration testing might fail under Linux OpenVZ.<br/>
|
||
Thanks to Gena Makhomed.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
после переконфигурации старые рабочие процессы могли сильно нагружать процессор
|
||
при больших значениях worker_connections.
|
||
</para>
|
||
<para lang="en">
|
||
old worker processes might hog CPU after reconfiguration
|
||
with a large number of worker_connections.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при совместном использовании директив try_files и alias
|
||
внутри location'а, заданного регулярным выражением,
|
||
в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 1.7.1.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "try_files" and "alias" directives were used
|
||
inside a location given by a regular expression;
|
||
the bug had appeared in 1.7.1.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива try_files внутри вложенного location'а, заданного регулярным
|
||
выражением, работала неправильно, если во внешнем location'е использовалась
|
||
директива alias.
|
||
</para>
|
||
<para lang="en">
|
||
the "try_files" directive inside a nested location
|
||
given by a regular expression worked incorrectly
|
||
if the "alias" directive was used in the outer location.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок при построении хэш-таблиц.
|
||
</para>
|
||
<para lang="en">
|
||
in hash table initialization error handling.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с Visual Studio 2015.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with Visual Studio 2015.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.3" date="2015-07-14">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
дублирующиеся блоки http, mail и stream теперь запрещены.
|
||
</para>
|
||
<para lang="en">
|
||
duplicate "http", "mail", and "stream" blocks are now disallowed.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ограничение количества соединений в модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
connection limiting in the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ограничение скорости в модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
data rate limiting in the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива zone в блоке upstream не работала на Windows.
|
||
</para>
|
||
<para lang="en">
|
||
the "zone" directive inside the "upstream" block did not work on Windows.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с LibreSSL в модуле stream.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
compatibility with LibreSSL in the stream module.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в параметре --builddir в configure.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
in the "--builddir" configure parameter.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива ssl_stapling_file не работала;
|
||
ошибка появилась в 1.9.2.<br/>
|
||
Спасибо Faidon Liambotis и Brandon Black.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_stapling_file" directive did not work;
|
||
the bug had appeared in 1.9.2.<br/>
|
||
Thanks to Faidon Liambotis and Brandon Black.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы ssl_stapling
|
||
в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 1.9.2.<br/>
|
||
Спасибо Matthew Baldwin.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "ssl_stapling" directive was used;
|
||
the bug had appeared in 1.9.2.<br/>
|
||
Thanks to Matthew Baldwin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.2" date="2015-06-16">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр backlog директивы listen
|
||
в почтовом прокси-сервере и модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
the "backlog" parameter of the "listen" directives
|
||
of the mail proxy and stream modules.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы allow и deny в модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
the "allow" and "deny" directives in the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_bind в модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_bind" directive in the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_protocol в модуле stream.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_protocol" directive in the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ключ -T.
|
||
</para>
|
||
<para lang="en">
|
||
the -T switch.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр REQUEST_SCHEME добавлен в стандартные конфигурационные файлы
|
||
fastcgi.conf, fastcgi_params, scgi_params и uwsgi_params.
|
||
</para>
|
||
<para lang="en">
|
||
the REQUEST_SCHEME parameter added to the fastcgi.conf, fastcgi_params,
|
||
scgi_params, and uwsgi_params standard configuration files.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр reuseport директивы listen в модуле stream
|
||
не работал.
|
||
</para>
|
||
<para lang="en">
|
||
the "reuseport" parameter of the "listen" directive of the stream module
|
||
did not work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
OCSP stapling в некоторых случаях мог вернуть устаревший OCSP-ответ.
|
||
</para>
|
||
<para lang="en">
|
||
OCSP stapling might return an expired OCSP response in some cases.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.1" date="2015-05-26">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь протокол SSLv3 по умолчанию запрещён.
|
||
</para>
|
||
<para lang="en">
|
||
now SSLv3 protocol is disabled by default.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
некоторые давно устаревшие директивы больше не поддерживаются.
|
||
</para>
|
||
<para lang="en">
|
||
some long deprecated directives are not supported anymore.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр reuseport директивы listen.<br/>
|
||
Спасибо Yingqi Lu из Intel и Sepherosa Ziehau.
|
||
</para>
|
||
<para lang="en">
|
||
the "reuseport" parameter of the "listen" directive.<br/>
|
||
Thanks to Yingqi Lu at Intel and Sepherosa Ziehau.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $upstream_connect_time.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_connect_time variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве hash на big-endian платформах.
|
||
</para>
|
||
<para lang="en">
|
||
in the "hash" directive on big-endian platforms.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог не запускаться на некоторых старых версиях Linux;
|
||
ошибка появилась в 1.7.11.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might fail to start on some old Linux variants;
|
||
the bug had appeared in 1.7.11.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в парсинге IP-адресов.<br/>
|
||
Спасибо Сергею Половко.
|
||
</para>
|
||
<para lang="en">
|
||
in IP address parsing.<br/>
|
||
Thanks to Sergey Polovko.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.9.0" date="2015-04-28">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
устаревшие методы обработки соединений aio и rtsig больше не поддерживаются.
|
||
</para>
|
||
<para lang="en">
|
||
obsolete aio and rtsig event methods have been removed.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива zone в блоке upstream.
|
||
</para>
|
||
<para lang="en">
|
||
the "zone" directive inside the "upstream" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль stream.
|
||
</para>
|
||
<para lang="en">
|
||
the stream module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка byte ranges для ответов модуля ngx_http_memcached_module.<br/>
|
||
Спасибо Martin Mlynář.
|
||
</para>
|
||
<para lang="en">
|
||
byte ranges support in the ngx_http_memcached_module.<br/>
|
||
Thanks to Martin Mlynář.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
разделяемую память теперь можно использовать на версиях Windows
|
||
с рандомизацией адресного пространства.<br/>
|
||
Спасибо Сергею Брестеру.
|
||
</para>
|
||
<para lang="en">
|
||
shared memory can now be used on Windows versions
|
||
with address space layout randomization.<br/>
|
||
Thanks to Sergey Brester.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директиву error_log теперь можно использовать
|
||
на уровнях mail и server в почтовом прокси-сервере.
|
||
</para>
|
||
<para lang="en">
|
||
the "error_log" directive can now be used
|
||
on mail and server levels in mail proxy.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр proxy_protocol директивы listen не работал,
|
||
если не был указан в первой директиве listen для данного listen-сокета.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_protocol" parameter of the "listen" directive did not work
|
||
if not specified in the first "listen" directive for a listen socket.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.12" date="2015-04-07">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь директива tcp_nodelay работает для SSL-соединений с бэкендами.
|
||
</para>
|
||
<para lang="en">
|
||
now the "tcp_nodelay" directive works with backend SSL connections.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь потоки могут использоваться для чтения заголовков файлов в кэше.
|
||
</para>
|
||
<para lang="en">
|
||
now thread pools can be used to read cache file headers.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве proxy_request_buffering.
|
||
</para>
|
||
<para lang="en">
|
||
in the "proxy_request_buffering" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании потоков на Linux
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
when using thread pools on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок при использовании директивы ssl_stapling.<br/>
|
||
Спасибо Filipe da Silva.
|
||
</para>
|
||
<para lang="en">
|
||
in error handling when using the "ssl_stapling" directive.<br/>
|
||
Thanks to Filipe da Silva.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_spdy_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_spdy_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.11" date="2015-03-24">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
параметр sendfile директивы aio более не нужен;
|
||
теперь nginx автоматически использует AIO для подгрузки данных для sendfile,
|
||
если одновременно используются директивы aio и sendfile.
|
||
</para>
|
||
<para lang="en">
|
||
the "sendfile" parameter of the "aio" directive is deprecated;
|
||
now nginx automatically uses AIO to pre-load data for sendfile
|
||
if both "aio" and "sendfile" directives are used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
экспериментальная поддержка потоков.
|
||
</para>
|
||
<para lang="en">
|
||
experimental thread pools support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_request_buffering, fastcgi_request_buffering,
|
||
scgi_request_buffering и uwsgi_request_buffering.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_request_buffering", "fastcgi_request_buffering",
|
||
"scgi_request_buffering", and "uwsgi_request_buffering" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
экспериментальное API для обработки тела запроса.
|
||
</para>
|
||
<para lang="en">
|
||
request body filters experimental API.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
проверка клиентских SSL-сертификатов в почтовом прокси-сервере.<br/>
|
||
Спасибо Sven Peter, Franck Levionnois и Filipe Da Silva.
|
||
</para>
|
||
<para lang="en">
|
||
client SSL certificates support in mail proxy.<br/>
|
||
Thanks to Sven Peter, Franck Levionnois, and Filipe Da Silva.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
уменьшение времени запуска
|
||
при использовании директивы "hash ... consistent" в блоке upstream.<br/>
|
||
Спасибо Wai Keen Woon.
|
||
</para>
|
||
<para lang="en">
|
||
startup speedup
|
||
when using the "hash ... consistent" directive in the upstream block.<br/>
|
||
Thanks to Wai Keen Woon.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
отладочное логгирование в кольцевой буфер в памяти.
|
||
</para>
|
||
<para lang="en">
|
||
debug logging into a cyclic memory buffer.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке хэш-таблиц.<br/>
|
||
Спасибо Chris West.
|
||
</para>
|
||
<para lang="en">
|
||
in hash table handling.<br/>
|
||
Thanks to Chris West.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве proxy_cache_revalidate.
|
||
</para>
|
||
<para lang="en">
|
||
in the "proxy_cache_revalidate" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
SSL-соединения могли зависать, если использовался отложенный accept
|
||
или параметр proxy_protocol директивы listen.<br/>
|
||
Спасибо James Hamlin.
|
||
</para>
|
||
<para lang="en">
|
||
SSL connections might hang if deferred accept
|
||
or the "proxy_protocol" parameter of the "listen" directive were used.<br/>
|
||
Thanks to James Hamlin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $upstream_response_time могла содержать неверное значение
|
||
при использовании директивы image_filter.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_response_time variable might contain a wrong value
|
||
if the "image_filter" directive was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке целочисленных переполнений.<br/>
|
||
Спасибо Régis Leroy.
|
||
</para>
|
||
<para lang="en">
|
||
in integer overflow handling.<br/>
|
||
Thanks to Régis Leroy.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании LibreSSL было невозможно включить поддержку SSLv3.
|
||
</para>
|
||
<para lang="en">
|
||
it was not possible to enable SSLv3 with LibreSSL.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании LibreSSL в логах появлялись сообщения
|
||
"ignoring stale global SSL error ... called a function you should not call".
|
||
</para>
|
||
<para lang="en">
|
||
the "ignoring stale global SSL error ... called a function you should not call"
|
||
alerts appeared in logs when using LibreSSL.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
сертификаты, указанные в директивах ssl_client_certificate и
|
||
ssl_trusted_certificate, использовались
|
||
для автоматического построения цепочек сертификатов.
|
||
</para>
|
||
<para lang="en">
|
||
certificates specified by the "ssl_client_certificate" and
|
||
"ssl_trusted_certificate" directives were inadvertently used
|
||
to automatically construct certificate chains.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.10" date="2015-02-10">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр use_temp_path директив proxy_cache_path, fastcgi_cache_path,
|
||
scgi_cache_path и uwsgi_cache_path.
|
||
</para>
|
||
<para lang="en">
|
||
the "use_temp_path" parameter of the "proxy_cache_path", "fastcgi_cache_path",
|
||
"scgi_cache_path", and "uwsgi_cache_path" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $upstream_header_time.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_header_time variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
теперь при переполнении диска nginx пытается писать error_log'и только
|
||
раз в секунду.
|
||
</para>
|
||
<para lang="en">
|
||
now on disk overflow nginx tries to write error logs once a second only.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива try_files при тестировании каталогов
|
||
не игнорировала обычные файлы.<br/>
|
||
Спасибо Damien Tournoud.
|
||
</para>
|
||
<para lang="en">
|
||
the "try_files" directive did not ignore normal files
|
||
while testing directories.<br/>
|
||
Thanks to Damien Tournoud.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы sendfile на OS X
|
||
возникали ошибки "sendfile() failed";
|
||
ошибка появилась в nginx 1.7.8.
|
||
</para>
|
||
<para lang="en">
|
||
alerts "sendfile() failed"
|
||
if the "sendfile" directive was used on OS X;
|
||
the bug had appeared in 1.7.8.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в лог могли писаться сообщения "sem_post() failed".
|
||
</para>
|
||
<para lang="en">
|
||
alerts "sem_post() failed" might appear in logs.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с musl libc.<br/>
|
||
Спасибо James Taylor.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with musl libc.<br/>
|
||
Thanks to James Taylor.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Tru64 UNIX.<br/>
|
||
Спасибо Goetz T. Fischer.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Tru64 UNIX.<br/>
|
||
Thanks to Goetz T. Fischer.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.9" date="2014-12-23">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_cache, fastcgi_cache, scgi_cache и uwsgi_cache
|
||
поддерживают переменные.
|
||
</para>
|
||
<para lang="en">
|
||
variables support in the "proxy_cache", "fastcgi_cache", "scgi_cache",
|
||
and "uwsgi_cache" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива expires поддерживает переменные.
|
||
</para>
|
||
<para lang="en">
|
||
variables support in the "expires" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
возможность загрузки секретных ключей с аппаратных устройств
|
||
с помощью OpenSSL engines.<br/>
|
||
Спасибо Дмитрию Пичулину.
|
||
</para>
|
||
<para lang="en">
|
||
loading of secret keys from hardware tokens
|
||
with OpenSSL engines.<br/>
|
||
Thanks to Dmitrii Pichulin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива autoindex_format.
|
||
</para>
|
||
<para lang="en">
|
||
the "autoindex_format" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ревалидация элементов кэша теперь используется только для ответов
|
||
с кодами 200 и 206.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
cache revalidation is now only used for responses
|
||
with 200 and 206 status codes.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
строка "TE" заголовка запроса клиента передавалась на бэкенд при проксировании.
|
||
</para>
|
||
<para lang="en">
|
||
the "TE" client request header line was passed to backends while proxying.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы proxy_pass, fastcgi_pass, scgi_pass и uwsgi_pass
|
||
могли неправильно работать внутри блоков if и limit_except.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass", "fastcgi_pass", "scgi_pass", and "uwsgi_pass" directives
|
||
might not work correctly inside the "if" and "limit_except" blocks.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива proxy_store с параметром "on" игнорировалась,
|
||
если на предыдущем уровне использовалась директива proxy_store
|
||
с явно заданным путём к файлам.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_store" directive with the "on" parameter was ignored
|
||
if the "proxy_store" directive with an explicitly specified file path
|
||
was used on a previous level.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с BoringSSL.<br/>
|
||
Спасибо Lukas Tribus.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with BoringSSL.<br/>
|
||
Thanks to Lukas Tribus.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.8" date="2014-12-02">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь строки "If-Modified-Since", "If-Range" и им подобные
|
||
в заголовке запроса клиента передаются бэкенду при включённом кэшировании,
|
||
если nginx заранее знает, что не будет кэшировать ответ
|
||
(например, при использовании proxy_cache_min_uses).
|
||
</para>
|
||
<para lang="en">
|
||
now the "If-Modified-Since", "If-Range", etc.
|
||
client request header lines are passed to a backend while caching
|
||
if nginx knows in advance that the response will not be cached
|
||
(e.g., when using proxy_cache_min_uses).
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь после истечения proxy_cache_lock_timeout
|
||
nginx отправляет запрос на бэкенд без кэширования;
|
||
новые директивы proxy_cache_lock_age, fastcgi_cache_lock_age,
|
||
scgi_cache_lock_age и uwsgi_cache_lock_age позволяют указать,
|
||
через какое время блокировка будет принудительно снята
|
||
и будет сделана ещё одна попытка закэшировать ответ.
|
||
</para>
|
||
<para lang="en">
|
||
now after proxy_cache_lock_timeout
|
||
nginx sends a request to a backend with caching disabled;
|
||
the new directives "proxy_cache_lock_age", "fastcgi_cache_lock_age",
|
||
"scgi_cache_lock_age", and "uwsgi_cache_lock_age" specify a time
|
||
after which the lock will be released
|
||
and another attempt to cache a response will be made.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива log_format теперь может использоваться только на уровне http.
|
||
</para>
|
||
<para lang="en">
|
||
the "log_format" directive can now be used only at http level.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_ssl_certificate, proxy_ssl_certificate_key,
|
||
proxy_ssl_password_file, uwsgi_ssl_certificate,
|
||
uwsgi_ssl_certificate_key и uwsgi_ssl_password_file.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_ssl_certificate", "proxy_ssl_certificate_key",
|
||
"proxy_ssl_password_file", "uwsgi_ssl_certificate",
|
||
"uwsgi_ssl_certificate_key", and "uwsgi_ssl_password_file" directives.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь с помощью X-Accel-Redirect
|
||
можно перейти в именованный location.<br/>
|
||
Спасибо Toshikuni Fukaya.
|
||
</para>
|
||
<para lang="en">
|
||
it is now possible to switch to a named location
|
||
using "X-Accel-Redirect".<br/>
|
||
Thanks to Toshikuni Fukaya.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь директива tcp_nodelay работает для SPDY-соединений.
|
||
</para>
|
||
<para lang="en">
|
||
now the "tcp_nodelay" directive works with SPDY connections.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
новые директивы в скриптах подсветки синтаксиса для vim.<br/>
|
||
Спасибо Peter Wu.
|
||
</para>
|
||
<para lang="en">
|
||
new directives in vim syntax highliting scripts.<br/>
|
||
Thanks to Peter Wu.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx игнорировал значение "s-maxage"
|
||
в строке "Cache-Control" в заголовке ответа бэкенда.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
nginx ignored the "s-maxage" value
|
||
in the "Cache-Control" backend response header line.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_spdy_module.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_spdy_module.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве ssl_password_file
|
||
при использовании OpenSSL 0.9.8zc, 1.0.0o, 1.0.1j.
|
||
</para>
|
||
<para lang="en">
|
||
in the "ssl_password_file" directive
|
||
when using OpenSSL 0.9.8zc, 1.0.0o, 1.0.1j.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы post_action
|
||
в лог писались сообщения "header already sent";
|
||
ошибка появилась в nginx 1.5.4.
|
||
</para>
|
||
<para lang="en">
|
||
alerts "header already sent" appeared in logs
|
||
if the "post_action" directive was used;
|
||
the bug had appeared in 1.5.4.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы "postpone_output 0" с SSI-подзапросами
|
||
в лог могли писаться сообщения "the http output chain is empty".
|
||
</para>
|
||
<para lang="en">
|
||
alerts "the http output chain is empty" might appear in logs
|
||
if the "postpone_output 0" directive was used with SSI includes.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве proxy_cache_lock при использовании SSI-подзапросов.<br/>
|
||
Спасибо Yichun Zhang.
|
||
</para>
|
||
<para lang="en">
|
||
in the "proxy_cache_lock" directive with SSI subrequests.<br/>
|
||
Thanks to Yichun Zhang.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.7" date="2014-10-28">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx учитывает при кэшировании строку "Vary"
|
||
в заголовке ответа бэкенда.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx takes into account the "Vary"
|
||
header line in a backend response while caching.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_force_ranges, fastcgi_force_ranges,
|
||
scgi_force_ranges и uwsgi_force_ranges.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_force_ranges", "fastcgi_force_ranges",
|
||
"scgi_force_ranges", and "uwsgi_force_ranges" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_limit_rate, fastcgi_limit_rate,
|
||
scgi_limit_rate и uwsgi_limit_rate.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_limit_rate", "fastcgi_limit_rate",
|
||
"scgi_limit_rate", and "uwsgi_limit_rate" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр Vary директив proxy_ignore_headers, fastcgi_ignore_headers,
|
||
scgi_ignore_headers и uwsgi_ignore_headers.
|
||
</para>
|
||
<para lang="en">
|
||
the "Vary" parameter of the "proxy_ignore_headers", "fastcgi_ignore_headers",
|
||
"scgi_ignore_headers", and "uwsgi_ignore_headers" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
последняя часть ответа, полученного от бэкенда
|
||
при небуферизированном проксировании,
|
||
могла не отправляться клиенту,
|
||
если использовались директивы gzip или gunzip.
|
||
</para>
|
||
<para lang="en">
|
||
the last part of a response received from a backend
|
||
with unbufferred proxy
|
||
might not be sent to a client
|
||
if "gzip" or "gunzip" directives were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве proxy_cache_revalidate.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
in the "proxy_cache_revalidate" directive.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок.<br/>
|
||
Спасибо Yichun Zhang и Даниилу Бондареву.
|
||
</para>
|
||
<para lang="en">
|
||
in error handling.<br/>
|
||
Thanks to Yichun Zhang and Daniil Bondarev.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директивах
|
||
proxy_next_upstream_tries и proxy_next_upstream_timeout.<br/>
|
||
Спасибо Feng Gu.
|
||
</para>
|
||
<para lang="en">
|
||
in the "proxy_next_upstream_tries" and "proxy_next_upstream_timeout"
|
||
directives.<br/>
|
||
Thanks to Feng Gu.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows не собирался с MinGW-w64 gcc.<br/>
|
||
Спасибо Kouhei Sutou.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows could not be built with MinGW-w64 gcc.<br/>
|
||
Thanks to Kouhei Sutou.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.6" date="2014-09-30">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
устаревшая директива limit_zone больше не поддерживается.
|
||
</para>
|
||
<para lang="en">
|
||
the deprecated "limit_zone" directive is not supported anymore.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
в директивах limit_conn_zone и limit_req_zone теперь можно использовать
|
||
комбинации нескольких переменных.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_conn_zone" and "limit_req_zone" directives now can be used
|
||
with combinations of multiple variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при повторной отправке FastCGI-запроса на бэкенд
|
||
тело запроса могло передаваться неправильно.
|
||
</para>
|
||
<para lang="en">
|
||
request body might be transmitted incorrectly
|
||
when retrying a FastCGI request to the next upstream server.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в логгировании в syslog.
|
||
</para>
|
||
<para lang="en">
|
||
in logging to syslog.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.5" date="2014-09-16">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
при использовании общего для нескольких блоков server
|
||
разделяемого кэша SSL-сессий или общего ключа для шифрования
|
||
TLS session tickets было возможно повторно использовать
|
||
SSL-сессию в контексте другого блока server (CVE-2014-3616).<br/>
|
||
Спасибо Antoine Delignat-Lavaud.
|
||
</para>
|
||
<para lang="en">
|
||
it was possible to reuse SSL sessions in unrelated contexts
|
||
if a shared SSL session cache or the same TLS session ticket key
|
||
was used for multiple "server" blocks (CVE-2014-3616).<br/>
|
||
Thanks to Antoine Delignat-Lavaud.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директиву stub_status теперь можно указывать без параметров.
|
||
</para>
|
||
<para lang="en">
|
||
now the "stub_status" directive does not require a parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр always директивы add_header.
|
||
</para>
|
||
<para lang="en">
|
||
the "always" parameter of the "add_header" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы
|
||
proxy_next_upstream_tries, proxy_next_upstream_timeout,
|
||
fastcgi_next_upstream_tries, fastcgi_next_upstream_timeout,
|
||
memcached_next_upstream_tries, memcached_next_upstream_timeout,
|
||
scgi_next_upstream_tries, scgi_next_upstream_timeout,
|
||
uwsgi_next_upstream_tries и uwsgi_next_upstream_timeout.
|
||
</para>
|
||
<para lang="en">
|
||
the
|
||
"proxy_next_upstream_tries", "proxy_next_upstream_timeout",
|
||
"fastcgi_next_upstream_tries", "fastcgi_next_upstream_timeout",
|
||
"memcached_next_upstream_tries", "memcached_next_upstream_timeout",
|
||
"scgi_next_upstream_tries", "scgi_next_upstream_timeout",
|
||
"uwsgi_next_upstream_tries", and "uwsgi_next_upstream_timeout"
|
||
directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в параметре if директивы access_log.
|
||
</para>
|
||
<para lang="en">
|
||
in the "if" parameter of the "access_log" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_perl_module.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_perl_module.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива listen почтового прокси-сервера
|
||
не позволяла указать более двух параметров.
|
||
</para>
|
||
<para lang="en">
|
||
the "listen" directive of the mail proxy module
|
||
did not allow to specify more than two parameters.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива sub_filter не работала
|
||
с заменяемой строкой из одного символа.
|
||
</para>
|
||
<para lang="en">
|
||
the "sub_filter" directive did not work
|
||
with a string to replace consisting of a single character.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
запросы могли зависать, если использовался resolver
|
||
и в процессе обращения к DNS-серверу происходил таймаут.
|
||
</para>
|
||
<para lang="en">
|
||
requests might hang if resolver was used
|
||
and a timeout occurred during a DNS request.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_spdy_module при использовании совместно с AIO.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_spdy_module when using with AIO.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если с помощью директивы set изменялись переменные
|
||
"$http_...", "$sent_http_..." или "$upstream_http_...".
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "set" directive was used to change the "$http_...",
|
||
"$sent_http_...", or "$upstream_http_..." variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок выделения памяти.<br/>
|
||
Спасибо Markus Linnala и Feng Gu.
|
||
</para>
|
||
<para lang="en">
|
||
in memory allocation error handling.<br/>
|
||
Thanks to Markus Linnala and Feng Gu.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.4" date="2014-08-05">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
pipelined-команды не отбрасывались
|
||
после команды STARTTLS в SMTP прокси-сервере (CVE-2014-3556);
|
||
ошибка появилась в 1.5.6.<br/>
|
||
Спасибо Chris Boulton.
|
||
</para>
|
||
<para lang="en">
|
||
pipelined commands were not discarded
|
||
after STARTTLS command in SMTP proxy (CVE-2014-3556);
|
||
the bug had appeared in 1.5.6.<br/>
|
||
Thanks to Chris Boulton.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
экранирование символов в URI теперь использует
|
||
шестнадцатеричные цифры в верхнем регистре.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
URI escaping now uses
|
||
uppercase hexadecimal digits.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь nginx можно собрать с BoringSSL и LibreSSL.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx can be build with BoringSSL and LibreSSL.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
запросы могли зависать, если использовался resolver
|
||
и DNS-сервер возвращал некорректный ответ;
|
||
ошибка появилась в 1.5.8.
|
||
</para>
|
||
<para lang="en">
|
||
requests might hang if resolver was used
|
||
and a DNS server returned a malformed response;
|
||
the bug had appeared in 1.5.8.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_spdy_module.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_spdy_module.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $uri могла содержать мусор
|
||
при возврате ошибок с кодом 400.<br/>
|
||
Спасибо Сергею Боброву.
|
||
</para>
|
||
<para lang="en">
|
||
the $uri variable might contain garbage
|
||
when returning errors with code 400.<br/>
|
||
Thanks to Sergey Bobrov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок в директиве proxy_store
|
||
и в модуле ngx_http_dav_module.<br/>
|
||
Спасибо Feng Gu.
|
||
</para>
|
||
<para lang="en">
|
||
in error handling in the "proxy_store" directive
|
||
and the ngx_http_dav_module.<br/>
|
||
Thanks to Feng Gu.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при логгировании ошибок в syslog мог происходить segmentation fault;
|
||
ошибка появилась в 1.7.1.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur if logging of errors to syslog was used;
|
||
the bug had appeared in 1.7.1.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменные $geoip_latitude, $geoip_longitude, $geoip_dma_code
|
||
и $geoip_area_code могли не работать.<br/>
|
||
Спасибо Yichun Zhang.
|
||
</para>
|
||
<para lang="en">
|
||
the $geoip_latitude, $geoip_longitude, $geoip_dma_code,
|
||
and $geoip_area_code variables might not work.<br/>
|
||
Thanks to Yichun Zhang.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок выделения памяти.<br/>
|
||
Спасибо Tatsuhiko Kubo и Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
in memory allocation error handling.<br/>
|
||
Thanks to Tatsuhiko Kubo and Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.3" date="2014-07-08">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
weak entity tags теперь не удаляются при изменениях ответа,
|
||
а strong entity tags преобразуются в weak.
|
||
</para>
|
||
<para lang="en">
|
||
weak entity tags are now preserved on response modifications,
|
||
and strong ones are changed to weak.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ревалидация элементов кэша теперь, если это возможно,
|
||
использует заголовок If-None-Match.
|
||
</para>
|
||
<para lang="en">
|
||
cache revalidation now uses If-None-Match header
|
||
if possible.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssl_password_file.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_password_file" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при возврате ответа из кэша
|
||
заголовок запроса If-None-Match игнорировался,
|
||
если в ответе не было заголовка Last-Modified.
|
||
</para>
|
||
<para lang="en">
|
||
the If-None-Match request header line was ignored
|
||
if there was no Last-Modified header
|
||
in a response returned from cache.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
сообщения "peer closed connection in SSL handshake"
|
||
при соединении с бэкендами логгировались на уровне info вместо error.
|
||
</para>
|
||
<para lang="en">
|
||
"peer closed connection in SSL handshake" messages
|
||
were logged at "info" level instead of "error" while connecting to backends.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_dav_module в nginx/Windows.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_dav_module module in nginx/Windows.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
SPDY-соединения могли неожиданно закрываться,
|
||
если использовалось кэширование.
|
||
</para>
|
||
<para lang="en">
|
||
SPDY connections might be closed prematurely
|
||
if caching was used.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.2" date="2014-06-17">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива hash в блоке upstream.
|
||
</para>
|
||
<para lang="en">
|
||
the "hash" directive inside the "upstream" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
дефрагментация свободных блоков разделяемой памяти.<br/>
|
||
Спасибо Wandenberg Peixoto и Yichun Zhang.
|
||
</para>
|
||
<para lang="en">
|
||
defragmentation of free shared memory blocks.<br/>
|
||
Thanks to Wandenberg Peixoto and Yichun Zhang.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовалось значение access_log по умолчанию;
|
||
ошибка появилась в 1.7.0.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the default value of the "access_log" directive was used;
|
||
the bug had appeared in 1.7.0.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
завершающий слэш ошибочно удалялся
|
||
из последнего параметра директивы try_files.
|
||
</para>
|
||
<para lang="en">
|
||
trailing slash was mistakenly removed
|
||
from the last parameter of the "try_files" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог не собираться на OS X.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on OS X in some cases.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_spdy_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_spdy_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.1" date="2014-05-27">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные "$upstream_cookie_...".
|
||
</para>
|
||
<para lang="en">
|
||
the "$upstream_cookie_..." variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $ssl_client_fingerprint.
|
||
</para>
|
||
<para lang="en">
|
||
the $ssl_client_fingerprint variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы error_log и access_log теперь поддерживают логгирование в syslog.
|
||
</para>
|
||
<para lang="en">
|
||
the "error_log" and "access_log" directives now support logging to syslog.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
почтовый прокси-сервер теперь логгирует порт клиента при соединении.
|
||
</para>
|
||
<para lang="en">
|
||
the mail proxy now logs client port on connect.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки памяти при использовании директивы "ssl_stapling".<br/>
|
||
Спасибо Filipe da Silva.
|
||
</para>
|
||
<para lang="en">
|
||
memory leak if the "ssl_stapling" directive was used.<br/>
|
||
Thanks to Filipe da Silva.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива alias внутри location'а, заданного регулярным выражением,
|
||
работала неправильно, если использовались директивы if или limit_except.
|
||
</para>
|
||
<para lang="en">
|
||
the "alias" directive used inside a location given by a regular expression
|
||
worked incorrectly if the "if" or "limit_except" directives were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива charset не ставила кодировку для сжатых ответов бэкендов.
|
||
</para>
|
||
<para lang="en">
|
||
the "charset" directive did not set a charset to encoded backend responses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива proxy_pass без URI могла использовать оригинальный запрос
|
||
после установки переменной $args.<br/>
|
||
Спасибо Yichun Zhang.
|
||
</para>
|
||
<para lang="en">
|
||
a "proxy_pass" directive without URI part might use original request
|
||
after the $args variable was set.<br/>
|
||
Thanks to Yichun Zhang.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в работе параметра none директивы smtp_auth;
|
||
ошибка появилась в 1.5.6.<br/>
|
||
Спасибо Святославу Никольскому.
|
||
</para>
|
||
<para lang="en">
|
||
in the "none" parameter in the "smtp_auth" directive;
|
||
the bug had appeared in 1.5.6.<br/>
|
||
Thanks to Svyatoslav Nikolsky.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при совместном использовании sub_filter и SSI
|
||
ответы могли передаваться неверно.
|
||
</para>
|
||
<para lang="en">
|
||
if sub_filter and SSI were used together,
|
||
then responses might be transferred incorrectly.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с параметром --with-file-aio на Linux/aarch64.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with the --with-file-aio option on Linux/aarch64.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.7.0" date="2014-04-24">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
проверка SSL-сертификатов бэкендов.
|
||
</para>
|
||
<para lang="en">
|
||
backend SSL certificate verification.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка SNI при работе с бэкендами по SSL.
|
||
</para>
|
||
<para lang="en">
|
||
support for SNI while working with SSL backends.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $ssl_server_name.
|
||
</para>
|
||
<para lang="en">
|
||
the $ssl_server_name variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр if директивы access_log.
|
||
</para>
|
||
<para lang="en">
|
||
the "if" parameter of the "access_log" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.13" date="2014-04-08">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
улучшена обработка хэш-таблиц;
|
||
в директивах variables_hash_max_size и types_hash_bucket_size
|
||
значения по умолчанию изменены на 1024 и 64 соответственно.
|
||
</para>
|
||
<para lang="en">
|
||
improved hash table handling;
|
||
the default values of the "variables_hash_max_size" and
|
||
"types_hash_bucket_size" were changed to 1024 and 64 respectively.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_mp4_module теперь понимает аргумент end.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_mp4_module now supports the "end" argument.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка byte ranges модулем ngx_http_mp4_module и при сохранении
|
||
ответов в кэш.
|
||
</para>
|
||
<para lang="en">
|
||
byte ranges support in the ngx_http_mp4_module and while saving responses
|
||
to cache.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь nginx не пишет в лог сообщения "ngx_slab_alloc() failed: no memory"
|
||
при использовании разделяемой памяти в ssl_session_cache
|
||
и в модуле ngx_http_limit_req_module.
|
||
</para>
|
||
<para lang="en">
|
||
alerts "ngx_slab_alloc() failed: no memory" no longer logged
|
||
when using shared memory in the "ssl_session_cache" directive
|
||
and in the ngx_http_limit_req_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива underscores_in_headers
|
||
не разрешала подчёркивание в первом символе заголовка.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
the "underscores_in_headers" directive
|
||
did not allow underscore as a first character of a header.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
cache manager мог нагружать процессор при выходе в nginx/Windows.
|
||
</para>
|
||
<para lang="en">
|
||
cache manager might hog CPU on exit in nginx/Windows.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании ssl_session_cache с параметром shared
|
||
рабочий процесс nginx/Windows завершался аварийно.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows terminated abnormally
|
||
if the "ssl_session_cache" directive was used with the "shared" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_spdy_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_spdy_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.12" date="2014-03-18">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
при обработке специально созданного запроса модулем ngx_http_spdy_module
|
||
могло происходить переполнение буфера в рабочем процессе,
|
||
что потенциально могло приводить к выполнению произвольного кода
|
||
(CVE-2014-0133).<br/>
|
||
Спасибо Lucas Molas из Programa STIC, Fundación Dr. Manuel
|
||
Sadosky, Buenos Aires, Argentina.
|
||
</para>
|
||
<para lang="en">
|
||
a heap memory buffer overflow might occur in a worker process
|
||
while handling a specially crafted request by ngx_http_spdy_module,
|
||
potentially resulting in arbitrary code execution
|
||
(CVE-2014-0133).<br/>
|
||
Thanks to Lucas Molas, researcher at Programa STIC, Fundación Dr. Manuel
|
||
Sadosky, Buenos Aires, Argentina.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр proxy_protocol в директивах listen и real_ip_header,
|
||
переменная $proxy_protocol_addr.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_protocol" parameters of the "listen" and "real_ip_header" directives,
|
||
the $proxy_protocol_addr variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве fastcgi_next_upstream.<br/>
|
||
Спасибо Lucas Molas.
|
||
</para>
|
||
<para lang="en">
|
||
in the "fastcgi_next_upstream" directive.<br/>
|
||
Thanks to Lucas Molas.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.11" date="2014-03-04">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
при обработке специально созданного запроса модулем ngx_http_spdy_module
|
||
на 32-битных платформах могла повреждаться память рабочего процесса,
|
||
что потенциально могло приводить к выполнению произвольного кода
|
||
(CVE-2014-0088);
|
||
ошибка появилась в 1.5.10.<br/>
|
||
Спасибо Lucas Molas из Programa STIC, Fundación Dr. Manuel
|
||
Sadosky, Buenos Aires, Argentina.
|
||
</para>
|
||
<para lang="en">
|
||
memory corruption might occur in a worker process on 32-bit platforms
|
||
while handling a specially crafted request by ngx_http_spdy_module,
|
||
potentially resulting in arbitrary code execution (CVE-2014-0088);
|
||
the bug had appeared in 1.5.10.<br/>
|
||
Thanks to Lucas Molas, researcher at Programa STIC, Fundación Dr. Manuel
|
||
Sadosky, Buenos Aires, Argentina.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $ssl_session_reused.
|
||
</para>
|
||
<para lang="en">
|
||
the $ssl_session_reused variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива client_max_body_size могла не работать
|
||
при чтении тела запроса с использованием chunked transfer encoding;
|
||
ошибка появилась в 1.3.9.<br/>
|
||
Спасибо Lucas Molas.
|
||
</para>
|
||
<para lang="en">
|
||
the "client_max_body_size" directive might not work
|
||
when reading a request body using chunked transfer encoding;
|
||
the bug had appeared in 1.3.9.<br/>
|
||
Thanks to Lucas Molas.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при проксировании WebSocket-соединений
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
when proxying WebSocket connections.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовался модуль ngx_http_spdy_module на 32-битных платформах;
|
||
ошибка появилась в 1.5.10.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the ngx_http_spdy_module was used on 32-bit platforms;
|
||
the bug had appeared in 1.5.10.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
значение переменной $upstream_status могло быть неверным,
|
||
если использовались директивы proxy_cache_use_stale
|
||
или proxy_cache_revalidate.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_status variable might contain wrong data
|
||
if the "proxy_cache_use_stale" or "proxy_cache_revalidate" directives
|
||
were used.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если ошибки с кодом 400 с помощью директивы error_page
|
||
перенаправлялись в именованный location.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if errors with code 400 were redirected to a named location
|
||
using the "error_page" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows не собирался с Visual Studio 2013.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows could not be built with Visual Studio 2013.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.10" date="2014-02-04">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_spdy_module теперь использует протокол SPDY 3.1.<br/>
|
||
Спасибо Automattic и MaxCDN за спонсирование разработки.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_spdy_module now uses SPDY 3.1 protocol.<br/>
|
||
Thanks to Automattic and MaxCDN for sponsoring this work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_mp4_module теперь пропускает дорожки,
|
||
имеющие меньшую длину, чем запрошенная перемотка.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_mp4_module now skips tracks
|
||
too short for a seek requested.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если переменная $ssl_session_id использовалась при логгировании;
|
||
ошибка появилась в 1.5.9.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the $ssl_session_id variable was used in logs;
|
||
the bug had appeared in 1.5.9.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменные $date_local и $date_gmt использовали неверный формат
|
||
вне модуля ngx_http_ssi_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
the $date_local and $date_gmt variables used wrong format
|
||
outside of the ngx_http_ssi_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
клиентские соединения могли сразу закрываться,
|
||
если использовался отложенный accept;
|
||
ошибка появилась в 1.3.15.
|
||
</para>
|
||
<para lang="en">
|
||
client connections might be immediately closed
|
||
if deferred accept was used;
|
||
the bug had appeared in 1.3.15.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
сообщения "getsockopt(TCP_FASTOPEN) ... failed" записывались в лог
|
||
в процессе обновления исполняемого файла на Linux;
|
||
ошибка появилась в 1.5.8.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
alerts "getsockopt(TCP_FASTOPEN) ... failed" appeared in logs
|
||
during binary upgrade on Linux;
|
||
the bug had appeared in 1.5.8.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.9" date="2014-01-22">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь в заголовке X-Accel-Redirect nginx ожидает закодированный URI.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx expects escaped URIs in "X-Accel-Redirect" headers.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssl_buffer_size.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_buffer_size" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директиву limit_rate теперь можно использовать для
|
||
ограничения скорости передачи ответов клиенту в SPDY-соединениях.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_rate" directive can now be used to
|
||
rate limit responses sent in SPDY connections.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива spdy_chunk_size.
|
||
</para>
|
||
<para lang="en">
|
||
the "spdy_chunk_size" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssl_session_tickets.<br/>
|
||
Спасибо Dirkjan Bussink.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_session_tickets" directive.<br/>
|
||
Thanks to Dirkjan Bussink.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $ssl_session_id содержала всю сессию в сериализованном виде
|
||
вместо её идентификатора.<br/>
|
||
Спасибо Ivan Ristić.
|
||
</para>
|
||
<para lang="en">
|
||
the $ssl_session_id variable contained full session serialized
|
||
instead of just a session id.<br/>
|
||
Thanks to Ivan Ristić.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx неправильно обрабатывал закодированный символ "?" в команде SSI include.
|
||
</para>
|
||
<para lang="en">
|
||
nginx incorrectly handled escaped "?" character in the "include" SSI command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_dav_module не раскодировал целевой URI при
|
||
обработке методов COPY и MOVE.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_dav_module did not unescape destination URI
|
||
of the COPY and MOVE methods.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
resolver не понимал доменные имена с точкой в конце.
|
||
Спасибо Yichun Zhang.
|
||
</para>
|
||
<para lang="en">
|
||
resolver did not understand domain names with a trailing dot.
|
||
Thanks to Yichun Zhang.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при проксировании в логах могли появляться сообщения "zero size buf in output";
|
||
ошибка появилась в 1.3.9.
|
||
</para>
|
||
<para lang="en">
|
||
alerts "zero size buf in output" might appear in logs while proxying;
|
||
the bug had appeared in 1.3.9.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовался модуль ngx_http_spdy_module.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the ngx_http_spdy_module was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании методов обработки соединений select, poll и /dev/poll
|
||
проксируемые WebSocket-соединения могли зависать сразу после открытия.
|
||
</para>
|
||
<para lang="en">
|
||
proxied WebSocket connections might hang right after handshake
|
||
if the select, poll, or /dev/poll methods were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива xclient почтового прокси-сервера
|
||
некорректно передавала IPv6-адреса.
|
||
</para>
|
||
<para lang="en">
|
||
the "xclient" directive of the mail proxy module
|
||
incorrectly handled IPv6 client addresses.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.8" date="2013-12-17">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь resolver поддерживает IPv6.
|
||
</para>
|
||
<para lang="en">
|
||
IPv6 support in resolver.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива listen поддерживает параметр fastopen.<br/>
|
||
Спасибо Mathew Rodley.
|
||
</para>
|
||
<para lang="en">
|
||
the "listen" directive supports the "fastopen" parameter.<br/>
|
||
Thanks to Mathew Rodley.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка SSL в модуле ngx_http_uwsgi_module.<br/>
|
||
Спасибо Roberto De Ioris.
|
||
</para>
|
||
<para lang="en">
|
||
SSL support in the ngx_http_uwsgi_module.<br/>
|
||
Thanks to Roberto De Ioris.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
скрипты подсветки синтаксиса для vim добавлены в contrib.<br/>
|
||
Спасибо Evan Miller.
|
||
</para>
|
||
<para lang="en">
|
||
vim syntax highlighting scripts were added to contrib.<br/>
|
||
Thanks to Evan Miller.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при чтении тела запроса с использованием chunked transfer encoding
|
||
по SSL-соединению мог произойти таймаут.
|
||
</para>
|
||
<para lang="en">
|
||
a timeout might occur while reading client request body
|
||
in an SSL connection using chunked transfer encoding.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива master_process работала неправильно в nginx/Windows.
|
||
</para>
|
||
<para lang="en">
|
||
the "master_process" directive did not work correctly in nginx/Windows.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр setfib директивы listen мог не работать.
|
||
</para>
|
||
<para lang="en">
|
||
the "setfib" parameter of the "listen" directive might not work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_spdy_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_spdy_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.7" date="2013-11-19">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
символ, следующий за незакодированным пробелом в строке запроса,
|
||
обрабатывался неправильно (CVE-2013-4547);
|
||
ошибка появилась в 0.8.41.<br/>
|
||
Спасибо Ivan Fratric из Google Security Team.
|
||
</para>
|
||
<para lang="en">
|
||
a character following an unescaped space in a request line
|
||
was handled incorrectly (CVE-2013-4547);
|
||
the bug had appeared in 0.8.41.<br/>
|
||
Thanks to Ivan Fratric of the Google Security Team.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
уровень логгирования ошибок auth_basic об отсутствии пароля
|
||
понижен с уровня error до info.
|
||
</para>
|
||
<para lang="en">
|
||
a logging level of auth_basic errors about no user/password provided
|
||
has been lowered from "error" to "info".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_cache_revalidate, fastcgi_cache_revalidate,
|
||
scgi_cache_revalidate и uwsgi_cache_revalidate.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_cache_revalidate", "fastcgi_cache_revalidate",
|
||
"scgi_cache_revalidate", and "uwsgi_cache_revalidate" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssl_session_ticket_key.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_session_ticket_key" directive.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива "add_header Cache-Control ''"
|
||
добавляла строку заголовка ответа "Cache-Control" с пустым значением.
|
||
</para>
|
||
<para lang="en">
|
||
the directive "add_header Cache-Control ''"
|
||
added a "Cache-Control" response header line with an empty value.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива "satisfy any" могла вернуть ошибку 403 вместо 401
|
||
при использовании директив auth_request и auth_basic.<br/>
|
||
Спасибо Jan Marc Hoffmann.
|
||
</para>
|
||
<para lang="en">
|
||
the "satisfy any" directive might return 403 error instead of 401
|
||
if auth_request and auth_basic directives were used.<br/>
|
||
Thanks to Jan Marc Hoffmann.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметры accept_filter и deferred директивы listen игнорировались
|
||
для listen-сокетов, создаваемых в процессе обновления исполняемого файла.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
the "accept_filter" and "deferred" parameters of the "listen" directive
|
||
were ignored for listen sockets created during binary upgrade.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
часть данных, полученных от бэкенда при небуферизированном проксировании,
|
||
могла не отправляться клиенту сразу,
|
||
если использовались директивы gzip или gunzip.<br/>
|
||
Спасибо Yichun Zhang.
|
||
</para>
|
||
<para lang="en">
|
||
some data received from a backend with unbufferred proxy
|
||
might not be sent to a client immediately
|
||
if "gzip" or "gunzip" directives were used.<br/>
|
||
Thanks to Yichun Zhang.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок в модуле ngx_http_gunzip_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
in error handling in ngx_http_gunzip_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответы могли зависать,
|
||
если использовался модуль ngx_http_spdy_module
|
||
и директива auth_request.
|
||
</para>
|
||
<para lang="en">
|
||
responses might hang
|
||
if the ngx_http_spdy_module was used
|
||
with the "auth_request" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки памяти в nginx/Windows.
|
||
</para>
|
||
<para lang="en">
|
||
memory leak in nginx/Windows.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.6" date="2013-10-01">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива fastcgi_buffering.
|
||
</para>
|
||
<para lang="en">
|
||
the "fastcgi_buffering" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_ssl_protocols и proxy_ssl_ciphers.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_ssl_protocols" and "proxy_ssl_ciphers" directives.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
оптимизация SSL handshake при использовании длинных цепочек сертификатов.
|
||
</para>
|
||
<para lang="en">
|
||
optimization of SSL handshakes when using long certificate chains.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
почтовый прокси-сервер поддерживает SMTP pipelining.
|
||
</para>
|
||
<para lang="en">
|
||
the mail proxy supports SMTP pipelining.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_auth_basic_module
|
||
при использовании метода шифрования паролей "$apr1$".<br/>
|
||
Спасибо Markus Linnala.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_auth_basic_module
|
||
when using "$apr1$" password encryption method.<br/>
|
||
Thanks to Markus Linnala.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на MacOSX, Cygwin и nginx/Windows
|
||
для обработки запроса мог использоваться неверный location,
|
||
если для задания location'ов использовались символы разных регистров.
|
||
</para>
|
||
<para lang="en">
|
||
in MacOSX, Cygwin, and nginx/Windows
|
||
incorrect location might be used to process a request
|
||
if locations were given using characters in different cases.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
автоматическое перенаправление с добавлением завершающего слэша
|
||
для проксированных location'ов могло не работать.
|
||
</para>
|
||
<para lang="en">
|
||
automatic redirect with appended trailing slash
|
||
for proxied locations might not work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в почтовом прокси-сервере.
|
||
</para>
|
||
<para lang="en">
|
||
in the mail proxy server.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_spdy_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_spdy_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.5" date="2013-09-17">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx по умолчанию использует HTTP/1.0,
|
||
если точно определить протокол не удалось.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx assumes HTTP/1.0 by default
|
||
if it is not able to detect protocol reliably.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива disable_symlinks теперь использует O_PATH на Linux.
|
||
</para>
|
||
<para lang="en">
|
||
the "disable_symlinks" directive now uses O_PATH on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
для определения того, что клиент закрыл соединение,
|
||
при использовании метода epoll
|
||
теперь используются события EPOLLRDHUP.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx uses EPOLLRDHUP events
|
||
to detect premature connection close by clients
|
||
if the "epoll" method is used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве valid_referers при использовании параметра server_names.
|
||
</para>
|
||
<para lang="en">
|
||
in the "valid_referers" directive if the "server_names" parameter was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $request_time не работала в nginx/Windows.
|
||
</para>
|
||
<para lang="en">
|
||
the $request_time variable did not work in nginx/Windows.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве image_filter.<br/>
|
||
Спасибо Lanshun Zhou.
|
||
</para>
|
||
<para lang="en">
|
||
in the "image_filter" directive.<br/>
|
||
Thanks to Lanshun Zhou.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с OpenSSL 1.0.1f.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
OpenSSL 1.0.1f compatibility.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.4" date="2013-08-27">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
MIME-тип для расширения js изменён на "application/javascript";
|
||
значение по умолчанию директивы charset_types изменено соответственно.
|
||
</para>
|
||
<para lang="en">
|
||
the "js" extension MIME type has been changed to "application/javascript";
|
||
default value of the "charset_types" directive was changed accordingly.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь директива image_filter с параметром size
|
||
возвращает ответ с MIME-типом "application/json".
|
||
</para>
|
||
<para lang="en">
|
||
now the "image_filter" directive with the "size" parameter
|
||
returns responses with the "application/json" MIME type.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_auth_request_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_auth_request_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на старте или во время переконфигурации мог произойти segmentation fault,
|
||
если использовалась директива try_files с пустым параметром.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur on start or during reconfiguration
|
||
if the "try_files" directive was used with an empty parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки памяти при использовании в директивах root и auth_basic_user_file
|
||
относительных путей, заданных с помощью переменных.
|
||
</para>
|
||
<para lang="en">
|
||
memory leak if relative paths were specified using variables
|
||
in the "root" or "auth_basic_user_file" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива valid_referers неправильно выполняла регулярные выражения,
|
||
если заголовок Referer начинался с "https://".<br/>
|
||
Спасибо Liangbin Li.
|
||
</para>
|
||
<para lang="en">
|
||
the "valid_referers" directive incorrectly executed regular expressions
|
||
if a "Referer" header started with "https://".<br/>
|
||
Thanks to Liangbin Li.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответы могли зависать, если использовались подзапросы и при обработке подзапроса
|
||
происходила ошибка во время SSL handshake с бэкендом.<br/>
|
||
Спасибо Aviram Cohen.
|
||
</para>
|
||
<para lang="en">
|
||
responses might hang if subrequests were used
|
||
and an SSL handshake error happened during subrequest processing.<br/>
|
||
Thanks to Aviram Cohen.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_autoindex_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_autoindex_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_spdy_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_spdy_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.3" date="2013-07-30">
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Изменение во внутреннем API:
|
||
теперь при небуферизированной работе с бэкендами
|
||
u->length по умолчанию устанавливается в -1.
|
||
</para>
|
||
<para lang="en">
|
||
Change in internal API:
|
||
now u->length defaults to -1
|
||
if working with backends in unbuffered mode.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь при получении неполного ответа от бэкенда
|
||
nginx отправляет полученную часть ответа,
|
||
после чего закрывает соединение с клиентом.
|
||
</para>
|
||
<para lang="en">
|
||
now after receiving an incomplete response from a backend server
|
||
nginx tries to send an available part of the response to a client,
|
||
and then closes client connection.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовался модуль ngx_http_spdy_module
|
||
и директива client_body_in_file_only.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the ngx_http_spdy_module was used
|
||
with the "client_body_in_file_only" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр so_keepalive директивы listen
|
||
мог работать некорректно на DragonFlyBSD.<br/>
|
||
Спасибо Sepherosa Ziehau.
|
||
</para>
|
||
<para lang="en">
|
||
the "so_keepalive" parameter of the "listen" directive
|
||
might be handled incorrectly on DragonFlyBSD.<br/>
|
||
Thanks to Sepherosa Ziehau.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_xslt_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_xslt_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_sub_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_sub_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.2" date="2013-07-02">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь можно использовать несколько директив error_log.
|
||
</para>
|
||
<para lang="en">
|
||
now several "error_log" directives can be used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
метод $r->header_in() встроенного перла не возвращал значения строк
|
||
"Cookie" и "X-Forwarded-For" из заголовка запроса;
|
||
ошибка появилась в 1.3.14.
|
||
</para>
|
||
<para lang="en">
|
||
the $r->header_in() embedded perl method did not return value of the
|
||
"Cookie" and "X-Forwarded-For" request header lines;
|
||
the bug had appeared in 1.3.14.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_spdy_module.<br/>
|
||
Спасибо Jim Radford.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_spdy_module.<br/>
|
||
Thanks to Jim Radford.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Linux при использовании x32 ABI.<br/>
|
||
Спасибо Сергею Иванцову.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Linux with x32 ABI.<br/>
|
||
Thanks to Serguei Ivantsov.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.1" date="2013-06-04">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы ssi_last_modified, sub_filter_last_modified и
|
||
xslt_last_modified.<br/>
|
||
Спасибо Алексею Колпакову.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssi_last_modified", "sub_filter_last_modified", and
|
||
"xslt_last_modified" directives.<br/>
|
||
Thanks to Alexey Kolpakov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр http_403 в директивах proxy_next_upstream, fastcgi_next_upstream,
|
||
scgi_next_upstream и uwsgi_next_upstream.
|
||
</para>
|
||
<para lang="en">
|
||
the "http_403" parameter of the "proxy_next_upstream", "fastcgi_next_upstream",
|
||
"scgi_next_upstream", and "uwsgi_next_upstream" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы allow и deny теперь поддерживают unix domain сокеты.
|
||
</para>
|
||
<para lang="en">
|
||
the "allow" and "deny" directives now support unix domain sockets.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с модулем ngx_mail_ssl_module,
|
||
но без модуля ngx_http_ssl_module;
|
||
ошибка появилась в 1.3.14.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with the ngx_mail_ssl_module,
|
||
but without ngx_http_ssl_module;
|
||
the bug had appeared in 1.3.14.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве proxy_set_body.<br/>
|
||
Спасибо Lanshun Zhou.
|
||
</para>
|
||
<para lang="en">
|
||
in the "proxy_set_body" directive.<br/>
|
||
Thanks to Lanshun Zhou.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве lingering_time.<br/>
|
||
Спасибо Lanshun Zhou.
|
||
</para>
|
||
<para lang="en">
|
||
in the "lingering_time" directive.<br/>
|
||
Thanks to Lanshun Zhou.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр fail_timeout директивы server
|
||
в блоке upstream мог не работать,
|
||
если использовался параметр max_fails;
|
||
ошибка появилась в 1.3.0.
|
||
</para>
|
||
<para lang="en">
|
||
the "fail_timeout" parameter of the "server" directive
|
||
in the "upstream" context might not work
|
||
if "max_fails" parameter was used;
|
||
the bug had appeared in 1.3.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовалась директива ssl_stapling.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "ssl_stapling" directive was used.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в почтовом прокси-сервере.<br/>
|
||
Спасибо Filipe Da Silva.
|
||
</para>
|
||
<para lang="en">
|
||
in the mail proxy server.<br/>
|
||
Thanks to Filipe Da Silva.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows мог перестать принимать соединения,
|
||
если использовалось несколько рабочих процессов.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows might stop accepting connections
|
||
if several worker processes were used.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.5.0" date="2013-05-07">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
при обработке специально созданного запроса
|
||
мог перезаписываться стек рабочего процесса,
|
||
что могло приводить к выполнению произвольного кода (CVE-2013-2028);
|
||
ошибка появилась в 1.3.9.<br/>
|
||
Спасибо Greg MacManus, iSIGHT Partners Labs.
|
||
</para>
|
||
<para lang="en">
|
||
a stack-based buffer overflow might occur in a worker process
|
||
while handling a specially crafted request,
|
||
potentially resulting in arbitrary code execution (CVE-2013-2028);
|
||
the bug had appeared in 1.3.9.<br/>
|
||
Thanks to Greg MacManus, iSIGHT Partners Labs.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.4.0" date="2013-04-24">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с модулем ngx_http_perl_module,
|
||
если использовался параметр --with-openssl;
|
||
ошибка появилась в 1.3.16.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with the ngx_http_perl_module
|
||
if the --with-openssl option was used;
|
||
the bug had appeared in 1.3.16.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в работе с телом запроса из модуля ngx_http_perl_module;
|
||
ошибка появилась в 1.3.9.
|
||
</para>
|
||
<para lang="en">
|
||
in a request body handling in the ngx_http_perl_module;
|
||
the bug had appeared in 1.3.9.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.16" date="2013-04-16">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовались подзапросы;
|
||
ошибка появилась в 1.3.9.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if subrequests were used;
|
||
the bug had appeared in 1.3.9.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива tcp_nodelay вызывала ошибку
|
||
при проксировании WebSocket-соединений в unix domain сокет.
|
||
</para>
|
||
<para lang="en">
|
||
the "tcp_nodelay" directive caused an error
|
||
if a WebSocket connection was proxied into a unix domain socket.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $upstream_response_length возвращала значение "0",
|
||
если не использовалась буферизация.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_response_length variable has an incorrect value "0"
|
||
if buffering was not used.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в методах обработки соединений eventport и /dev/poll.
|
||
</para>
|
||
<para lang="en">
|
||
in the eventport and /dev/poll methods.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.15" date="2013-03-26">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
открытие и закрытие соединения без отправки в нём каких-либо данных
|
||
больше не записывается в access_log с кодом ошибки 400.
|
||
</para>
|
||
<para lang="en">
|
||
opening and closing a connection without sending any data in it
|
||
is no longer logged to access_log with error code 400.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_spdy_module.<br/>
|
||
Спасибо Automattic за спонсирование разработки.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_spdy_module.<br/>
|
||
Thanks to Automattic for sponsoring this work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы limit_req_status и limit_conn_status.<br/>
|
||
Спасибо Nick Marden.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_req_status" and "limit_conn_status" directives.<br/>
|
||
Thanks to Nick Marden.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива image_filter_interlace.<br/>
|
||
Спасибо Ивану Боброву.
|
||
</para>
|
||
<para lang="en">
|
||
the "image_filter_interlace" directive.<br/>
|
||
Thanks to Ian Babrou.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $connections_waiting в модуле ngx_http_stub_status_module.
|
||
</para>
|
||
<para lang="en">
|
||
$connections_waiting variable in the ngx_http_stub_status_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь почтовый прокси-сервер поддерживает IPv6-бэкенды.
|
||
</para>
|
||
<para lang="en">
|
||
the mail proxy module now supports IPv6 backends.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при повторной отправке запроса на бэкенд
|
||
тело запроса могло передаваться неправильно;
|
||
ошибка появилась в 1.3.9.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
request body might be transmitted incorrectly
|
||
when retrying a request to the next upstream server;
|
||
the bug had appeared in 1.3.9.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве client_body_in_file_only;
|
||
ошибка появилась в 1.3.9.
|
||
</para>
|
||
<para lang="en">
|
||
in the "client_body_in_file_only" directive;
|
||
the bug had appeared in 1.3.9.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответы могли зависать,
|
||
если использовались подзапросы
|
||
и при обработке подзапроса происходила DNS-ошибка.<br/>
|
||
Спасибо Lanshun Zhou.
|
||
</para>
|
||
<para lang="en">
|
||
responses might hang
|
||
if subrequests were used
|
||
and a DNS error happened during subrequest processing.<br/>
|
||
Thanks to Lanshun Zhou.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в процедуре учёта использования бэкендов.
|
||
</para>
|
||
<para lang="en">
|
||
in backend usage accounting.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.14" date="2013-03-05">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные $connections_active, $connections_reading и $connections_writing
|
||
в модуле ngx_http_stub_status_module.
|
||
</para>
|
||
<para lang="en">
|
||
$connections_active, $connections_reading, and $connections_writing variables
|
||
in the ngx_http_stub_status_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка WebSocket-соединений
|
||
в модулях ngx_http_uwsgi_module и ngx_http_scgi_module.
|
||
</para>
|
||
<para lang="en">
|
||
support of WebSocket connections
|
||
in the ngx_http_uwsgi_module and ngx_http_scgi_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке виртуальных серверов при использовании SNI.
|
||
</para>
|
||
<para lang="en">
|
||
in virtual servers handling with SNI.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы "ssl_session_cache shared"
|
||
новые сессии могли не сохраняться,
|
||
если заканчивалось место в разделяемой памяти.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
new sessions were not always stored
|
||
if the "ssl_session_cache shared" directive was used
|
||
and there was no free space in shared memory.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
несколько заголовков X-Forwarded-For обрабатывались неправильно.<br/>
|
||
Спасибо Neal Poole за спонсирование разработки.
|
||
</para>
|
||
<para lang="en">
|
||
multiple X-Forwarded-For headers were handled incorrectly.<br/>
|
||
Thanks to Neal Poole for sponsoring this work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_mp4_module.<br/>
|
||
Спасибо Gernot Vormayr.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_mp4_module.<br/>
|
||
Thanks to Gernot Vormayr.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.13" date="2013-02-19">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь для сборки по умолчанию используется компилятор с именем "cc".
|
||
</para>
|
||
<para lang="en">
|
||
a compiler with name "cc" is now used by default.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка проксирования WebSocket-соединений.<br/>
|
||
Спасибо Apcera и CloudBees за спонсирование разработки.
|
||
</para>
|
||
<para lang="en">
|
||
support for proxying of WebSocket connections.<br/>
|
||
Thanks to Apcera and CloudBees for sponsoring this work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива auth_basic_user_file поддерживает шифрование паролей
|
||
методом "{SHA}".<br/>
|
||
Спасибо Louis Opter.
|
||
</para>
|
||
<para lang="en">
|
||
the "auth_basic_user_file" directive supports "{SHA}"
|
||
password encryption method.<br/>
|
||
Thanks to Louis Opter.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.12" date="2013-02-05">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_bind, fastcgi_bind, memcached_bind, scgi_bind и uwsgi_bind
|
||
поддерживают переменные.
|
||
</para>
|
||
<para lang="en">
|
||
variables support in the "proxy_bind", "fastcgi_bind", "memcached_bind",
|
||
"scgi_bind", and "uwsgi_bind" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные $pipe, $request_length, $time_iso8601 и $time_local
|
||
теперь можно использовать не только в директиве log_format.<br/>
|
||
Спасибо Kiril Kalchev.
|
||
</para>
|
||
<para lang="en">
|
||
the $pipe, $request_length, $time_iso8601, and $time_local variables
|
||
can now be used not only in the "log_format" directive.
|
||
Thanks to Kiril Kalchev.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка IPv6 в модуле ngx_http_geoip_module.<br/>
|
||
Спасибо Gregor Kališnik.
|
||
</para>
|
||
<para lang="en">
|
||
IPv6 support in the ngx_http_geoip_module.<br/>
|
||
Thanks to Gregor Kališnik.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива proxy_method работала неверно, если была указана на уровне http.
|
||
</para>
|
||
<para lang="en">
|
||
in the "proxy_method" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовался resolver и метод poll.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if resolver was used with the poll method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог нагружать процессор во время SSL handshake с бэкендом
|
||
при использовании методов обработки соединений select, poll и /dev/poll.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might hog CPU during SSL handshake with a backend
|
||
if the select, poll, or /dev/poll methods were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибка "[crit] SSL_write() failed (SSL:)".
|
||
</para>
|
||
<para lang="en">
|
||
the "[crit] SSL_write() failed (SSL:)" error.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве client_body_in_file_only;
|
||
ошибка появилась в 1.3.9.
|
||
</para>
|
||
<para lang="en">
|
||
in the "client_body_in_file_only" directive;
|
||
the bug had appeared in 1.3.9.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве fastcgi_keep_conn.
|
||
</para>
|
||
<para lang="en">
|
||
in the "fastcgi_keep_conn" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.11" date="2013-01-10">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при записи в лог мог происходить segmentation fault;
|
||
ошибка появилась в 1.3.10.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur if logging was used;
|
||
the bug had appeared in 1.3.10.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива proxy_pass не работала с IP-адресами
|
||
без явного указания порта;
|
||
ошибка появилась в 1.3.10.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass" directive did not work with IP addresses
|
||
without port specified;
|
||
the bug had appeared in 1.3.10.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на старте или во время переконфигурации происходил segmentation fault,
|
||
если директива keepalive была указана несколько раз
|
||
в одном блоке upstream.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred on start or during reconfiguration
|
||
if the "keepalive" directive was specified more than once
|
||
in a single upstream block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр default директивы geo не определял значение по умолчанию
|
||
для IPv6-адресов.
|
||
</para>
|
||
<para lang="en">
|
||
parameter "default" of the "geo" directive did not set default value
|
||
for IPv6 addresses.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.10" date="2012-12-25">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
для указанных в конфигурационном файле доменных имён теперь
|
||
используются не только IPv4, но и IPv6 адреса.
|
||
</para>
|
||
<para lang="en">
|
||
domain names specified in configuration file
|
||
are now resolved to IPv6 addresses as well as IPv4 ones.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь при использовании директивы include с маской на Unix-системах
|
||
включаемые файлы сортируются в алфавитном порядке.
|
||
</para>
|
||
<para lang="en">
|
||
now if the "include" directive with mask is used on Unix systems,
|
||
included files are sorted in alphabetical order.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива add_header добавляет строки в ответы с кодом 201.
|
||
</para>
|
||
<para lang="en">
|
||
the "add_header" directive adds headers to 201 responses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива geo теперь поддерживает IPv6 адреса в формате CIDR.
|
||
</para>
|
||
<para lang="en">
|
||
the "geo" directive now supports IPv6 addresses in CIDR notation.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметры flush и gzip в директиве access_log.
|
||
</para>
|
||
<para lang="en">
|
||
the "flush" and "gzip" parameters of the "access_log" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива auth_basic поддерживает переменные.
|
||
</para>
|
||
<para lang="en">
|
||
variables support in the "auth_basic" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx в некоторых случаях не собирался с модулем ngx_http_perl_module.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with the ngx_http_perl_module in some cases.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовался модуль ngx_http_xslt_module.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the ngx_http_xslt_module was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог не собираться на MacOSX.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on MacOSX in some cases.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы limit_rate с большими значениями скорости
|
||
на 32-битных системах ответ мог возвращаться не целиком.<br/>
|
||
Спасибо Алексею Антропову.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_rate" directive with high rates
|
||
might result in truncated responses on 32-bit platforms.<br/>
|
||
Thanks to Alexey Antropov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовалась директива if.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "if" directive was used.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответ "100 Continue" выдавался
|
||
вместе с ответом "413 Request Entity Too Large".
|
||
</para>
|
||
<para lang="en">
|
||
a "100 Continue" response was issued
|
||
with "413 Request Entity Too Large" responses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы image_filter, image_filter_jpeg_quality и image_filter_sharpen
|
||
могли наследоваться некорректно.<br/>
|
||
Спасибо Ивану Боброву.
|
||
</para>
|
||
<para lang="en">
|
||
the "image_filter", "image_filter_jpeg_quality"
|
||
and "image_filter_sharpen" directives
|
||
might be inherited incorrectly.<br/>
|
||
Thanks to Ian Babrou.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы auth_basic под Linux
|
||
могли возникать ошибки "crypt_r() failed".
|
||
</para>
|
||
<para lang="en">
|
||
"crypt_r() failed" errors might appear
|
||
if the "auth_basic" directive was used on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке backup-серверов.<br/>
|
||
Спасибо Thomas Chen.
|
||
</para>
|
||
<para lang="en">
|
||
in backup servers handling.<br/>
|
||
Thanks to Thomas Chen.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при проксировании HEAD-запросов мог возвращаться некорректный ответ,
|
||
если использовалась директива gzip.
|
||
</para>
|
||
<para lang="en">
|
||
proxied HEAD requests might return incorrect response
|
||
if the "gzip" directive was used.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.9" date="2012-11-27">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка chunked transfer encoding при получении тела запроса.
|
||
</para>
|
||
<para lang="en">
|
||
support for chunked transfer encoding while reading client request body.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные $request_time и $msec
|
||
теперь можно использовать не только в директиве log_format.
|
||
</para>
|
||
<para lang="en">
|
||
the $request_time and $msec variables
|
||
can now be used not only in the "log_format" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
cache manager и cache loader могли не запускаться,
|
||
если использовалось более 512 listen-сокетов.
|
||
</para>
|
||
<para lang="en">
|
||
cache manager and cache loader processes might not be able to start
|
||
if more than 512 listen sockets were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_dav_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_dav_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.8" date="2012-10-30">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр optional_no_ca директивы ssl_verify_client.<br/>
|
||
Спасибо Михаилу Казанцеву и Eric O'Connor.
|
||
</para>
|
||
<para lang="en">
|
||
the "optional_no_ca" parameter of the "ssl_verify_client" directive.<br/>
|
||
Thanks to Mike Kazantsev and Eric O'Connor.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные $bytes_sent, $connection и $connection_requests
|
||
теперь можно использовать не только в директиве log_format.<br/>
|
||
Спасибо Benjamin Grössing.
|
||
</para>
|
||
<para lang="en">
|
||
the $bytes_sent, $connection, and $connection_requests variables
|
||
can now be used not only in the "log_format" directive.<br/>
|
||
Thanks to Benjamin Grössing.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр auto директивы worker_processes.
|
||
</para>
|
||
<para lang="en">
|
||
the "auto" parameter of the "worker_processes" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
сообщения "cache file ... has md5 collision".
|
||
</para>
|
||
<para lang="en">
|
||
"cache file ... has md5 collision" alert.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_gunzip_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_gunzip_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве ssl_stapling.
|
||
</para>
|
||
<para lang="en">
|
||
in the "ssl_stapling" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.7" date="2012-10-02">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка OCSP stapling.<br/>
|
||
Спасибо Comodo, DigiCert и GlobalSign за спонсирование разработки.
|
||
</para>
|
||
<para lang="en">
|
||
OCSP stapling support.<br/>
|
||
Thanks to Comodo, DigiCert and GlobalSign for sponsoring this work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssl_trusted_certificate.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_trusted_certificate" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь resolver случайным образом меняет порядок
|
||
возвращаемых закэшированных адресов.<br/>
|
||
Спасибо Антону Жулину.
|
||
</para>
|
||
<para lang="en">
|
||
resolver now randomly rotates addresses
|
||
returned from cache.<br/>
|
||
Thanks to Anton Jouline.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с OpenSSL 0.9.7.
|
||
</para>
|
||
<para lang="en">
|
||
OpenSSL 0.9.7 compatibility.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.6" date="2012-09-12">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_gunzip_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_gunzip_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива memcached_gzip_flag.
|
||
</para>
|
||
<para lang="en">
|
||
the "memcached_gzip_flag" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр always директивы gzip_static.
|
||
</para>
|
||
<para lang="en">
|
||
the "always" parameter of the "gzip_static" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве "limit_req";
|
||
ошибка появилась в 1.1.14.<br/>
|
||
Спасибо Charles Chen.
|
||
</para>
|
||
<para lang="en">
|
||
in the "limit_req" directive;
|
||
the bug had appeared in 1.1.14.<br/>
|
||
Thanks to Charles Chen.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался gcc 4.7 с оптимизацией -O2
|
||
если использовался параметр --with-ipv6.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built by gcc 4.7 with -O2 optimization
|
||
if the --with-ipv6 option was used.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.5" date="2012-08-21">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
модуль ngx_http_mp4_module больше не отфильтровывает дорожки
|
||
в форматах, отличных от H.264 и AAC.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_mp4_module module no longer skips
|
||
tracks in formats other than H.264 and AAC.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если в директиве map в качестве значений использовались переменные.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "map" directive was used with variables as values.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault
|
||
при использовании директивы geo с параметром ranges,
|
||
но без параметра default; ошибка появилась в 0.8.43.<br/>
|
||
Спасибо Zhen Chen и Weibin Yao.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "geo" directive was used with the "ranges" parameter
|
||
but without the "default" parameter; the bug had appeared in 0.8.43.<br/>
|
||
Thanks to Zhen Chen and Weibin Yao.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке параметра командной строки -p.
|
||
</para>
|
||
<para lang="en">
|
||
in the -p command-line parameter handling.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в почтовом прокси-сервере.
|
||
</para>
|
||
<para lang="en">
|
||
in the mail proxy server.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
незначительных потенциальных ошибок.<br/>
|
||
Спасибо Coverity.
|
||
</para>
|
||
<para lang="en">
|
||
of minor potential bugs.<br/>
|
||
Thanks to Coverity.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows не собирался с Visual Studio 2005 Express.<br/>
|
||
Спасибо HAYASHI Kentaro.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows could not be built with Visual Studio 2005 Express.<br/>
|
||
Thanks to HAYASHI Kentaro.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.4" date="2012-07-31">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь на слушающих IPv6-сокетах параметр ipv6only
|
||
включён по умолчанию.
|
||
</para>
|
||
<para lang="en">
|
||
the "ipv6only" parameter is now turned on by default for
|
||
listening IPv6 sockets.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка компилятора Clang.
|
||
</para>
|
||
<para lang="en">
|
||
the Clang compiler support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
могли создаваться лишние слушающие сокеты.<br/>
|
||
Спасибо Роману Одайскому.
|
||
</para>
|
||
<para lang="en">
|
||
extra listening sockets might be created.<br/>
|
||
Thanks to Roman Odaisky.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows мог нагружать процессор, если при запуске рабочего процесса
|
||
происходила ошибка.<br/>
|
||
Спасибо Ricardo Villalobos Guevara.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows might hog CPU if a worker process failed to start.<br/>
|
||
Thanks to Ricardo Villalobos Guevara.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы proxy_pass_header, fastcgi_pass_header, scgi_pass_header,
|
||
uwsgi_pass_header, proxy_hide_header, fastcgi_hide_header,
|
||
scgi_hide_header и uwsgi_hide_header
|
||
могли наследоваться некорректно.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass_header", "fastcgi_pass_header", "scgi_pass_header",
|
||
"uwsgi_pass_header", "proxy_hide_header", "fastcgi_hide_header",
|
||
"scgi_hide_header", and "uwsgi_hide_header" directives
|
||
might be inherited incorrectly.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.3" date="2012-07-10">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка entity tags и директива etag.
|
||
</para>
|
||
<para lang="en">
|
||
entity tags support and the "etag" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы map с параметром hostnames
|
||
не игнорировалась конечная точка в исходном значении.
|
||
</para>
|
||
<para lang="en">
|
||
trailing dot in a source value was not ignored
|
||
if the "map" directive was used with the "hostnames" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
для обработки запроса мог использоваться неверный location,
|
||
если переход в именованный location происходил
|
||
после изменения URI с помощью директивы rewrite.
|
||
</para>
|
||
<para lang="en">
|
||
incorrect location might be used to process a request
|
||
if a URI was changed via a "rewrite" directive
|
||
before an internal redirect to a named location.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.2" date="2012-06-26">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
параметр single директивы keepalive теперь игнорируется.
|
||
</para>
|
||
<para lang="en">
|
||
the "single" parameter of the "keepalive" directive is now ignored.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
сжатие SSL теперь отключено
|
||
в том числе при использовании OpenSSL старее 1.0.0.
|
||
</para>
|
||
<para lang="en">
|
||
SSL compression is now disabled when using all versions of OpenSSL,
|
||
including ones prior to 1.0.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директиву "ip_hash" теперь можно использовать для балансировки IPv6 клиентов.
|
||
</para>
|
||
<para lang="en">
|
||
it is now possible to use the "ip_hash" directive to balance IPv6 clients.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменную $status теперь можно использовать не только в директиве log_format.
|
||
</para>
|
||
<para lang="en">
|
||
the $status variable can now be used not only in the "log_format" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при завершении рабочего процесса мог произойти segmentation fault,
|
||
если использовалась директива resolver.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process on shutdown
|
||
if the "resolver" directive was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовался модуль ngx_http_mp4_module.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the ngx_http_mp4_module was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_mp4_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_mp4_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовались конфликтующие имена серверов с масками.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if conflicting wildcard server names were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на платформе ARM nginx мог аварийно завершаться по сигналу SIGBUS.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might be terminated abnormally on a SIGBUS signal on ARM platform.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
во время переконфигурации на HP-UX в лог
|
||
записывался alert "sendmsg() failed (9: Bad file number)".
|
||
</para>
|
||
<para lang="en">
|
||
an alert "sendmsg() failed (9: Bad file number)" on HP-UX
|
||
while reconfiguration.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.1" date="2012-06-05">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
теперь nginx/Windows игнорирует точку в конце компонента URI
|
||
и не разрешает URI, содержащие последовательность ":$".<br/>
|
||
Спасибо Владимиру Кочеткову, Positive Research Center.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx/Windows ignores trailing dot in URI path component, and
|
||
does not allow URIs with ":$" in it.<br/>
|
||
Thanks to Vladimir Kochetkov, Positive Research Center.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_pass, fastcgi_pass, scgi_pass, uwsgi_pass и
|
||
директива server в блоке upstream
|
||
теперь поддерживают IPv6-адреса.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass", "fastcgi_pass", "scgi_pass", "uwsgi_pass" directives, and
|
||
the "server" directive inside the "upstream" block,
|
||
now support IPv6 addresses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
в директиве resolver теперь можно указывать порт и
|
||
задавать IPv6-адреса DNS-серверов.
|
||
</para>
|
||
<para lang="en">
|
||
the "resolver" directive now supports IPv6 addresses and
|
||
an optional port specification.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива least_conn в блоке upstream.
|
||
</para>
|
||
<para lang="en">
|
||
the "least_conn" directive inside the "upstream" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
при использовании директивы ip_hash
|
||
теперь можно задавать веса серверов.
|
||
</para>
|
||
<para lang="en">
|
||
it is now possible to specify a weight for servers
|
||
while using the "ip_hash" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовалась директива image_filter;
|
||
ошибка появилась в 1.3.0.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "image_filter" directive was used;
|
||
the bug had appeared in 1.3.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с модулем ngx_cpp_test_module;
|
||
ошибка появилась в 1.1.12.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with ngx_cpp_test_module;
|
||
the bug had appeared in 1.1.12.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
доступ к переменным из SSI и встроенного перла мог не работать после
|
||
переконфигурации.<br/>
|
||
Спасибо Yichun Zhang.
|
||
</para>
|
||
<para lang="en">
|
||
access to variables from SSI and embedded perl module might not work after
|
||
reconfiguration.<br/>
|
||
Thanks to Yichun Zhang.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_xslt_filter_module.<br/>
|
||
Спасибо Kuramoto Eiji.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_xslt_filter_module.<br/>
|
||
Thanks to Kuramoto Eiji.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки памяти при использовании переменной $geoip_org.<br/>
|
||
Спасибо Денису Латыпову.
|
||
</para>
|
||
<para lang="en">
|
||
memory leak if $geoip_org variable was used.<br/>
|
||
Thanks to Denis F. Latypoff.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директивах proxy_cookie_domain и proxy_cookie_path.
|
||
</para>
|
||
<para lang="en">
|
||
in the "proxy_cookie_domain" and "proxy_cookie_path" directives.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.3.0" date="2012-05-15">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива debug_connection теперь поддерживает IPv6-адреса
|
||
и параметр "unix:".
|
||
</para>
|
||
<para lang="en">
|
||
the "debug_connection" directive now supports IPv6 addresses
|
||
and the "unix:" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива set_real_ip_from и параметр proxy
|
||
директивы geo теперь поддерживают IPv6-адреса.
|
||
</para>
|
||
<para lang="en">
|
||
the "set_real_ip_from" directive and the "proxy" parameter
|
||
of the "geo" directive now support IPv6 addresses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы real_ip_recursive, geoip_proxy и geoip_proxy_recursive.
|
||
</para>
|
||
<para lang="en">
|
||
the "real_ip_recursive", "geoip_proxy", and "geoip_proxy_recursive" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр proxy_recursive директивы geo.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_recursive" parameter of the "geo" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовалась директива resolver.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "resolver" directive was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовались директивы fastcgi_pass, scgi_pass или uwsgi_pass
|
||
и бэкенд возвращал некорректный ответ.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "fastcgi_pass", "scgi_pass", or "uwsgi_pass" directives were used
|
||
and backend returned incorrect response.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовалась директива rewrite и в новых аргументах запроса в строке
|
||
замены использовались переменные.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "rewrite" directive was used and new request arguments
|
||
in a replacement used variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог нагружать процессор,
|
||
если было достигнуто ограничение на количество открытых файлов.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might hog CPU
|
||
if the open file resource limit was reached.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы proxy_next_upstream с параметром http_404
|
||
nginx мог бесконечно перебирать бэкенды, если в блоке upstream был
|
||
хотя бы один сервер с флагом backup.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might loop infinitely over backends
|
||
if the "proxy_next_upstream" directive with the "http_404" parameter was used
|
||
and there were backup servers specified in an upstream block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы ip_hash
|
||
установка параметра down директивы server
|
||
могла приводить к ненужному перераспределению клиентов между бэкендами.
|
||
</para>
|
||
<para lang="en">
|
||
adding the "down" parameter of the "server" directive
|
||
might cause unneeded client redistribution among backend servers
|
||
if the "ip_hash" directive was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки сокетов.<br/>
|
||
Спасибо Yichun Zhang.
|
||
</para>
|
||
<para lang="en">
|
||
socket leak.<br/>
|
||
Thanks to Yichun Zhang.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_fastcgi_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_fastcgi_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.2.0" date="2012-04-23">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовалась директива try_files;
|
||
ошибка появилась в 1.1.19.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "try_files" directive was used;
|
||
the bug had appeared in 1.1.19.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответ мог быть передан не полностью,
|
||
если использовалось больше IOV_MAX буферов.
|
||
</para>
|
||
<para lang="en">
|
||
response might be truncated
|
||
if there were more than IOV_MAX buffers used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в работе параметра crop директивы image_filter.<br/>
|
||
Спасибо Maxim Bublis.
|
||
</para>
|
||
<para lang="en">
|
||
in the "crop" parameter of the "image_filter" directive.<br/>
|
||
Thanks to Maxim Bublis.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.19" date="2012-04-12">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
при обработке специально созданного mp4 файла модулем ngx_http_mp4_module
|
||
могли перезаписываться области памяти рабочего процесса, что могло
|
||
приводить к выполнению произвольного кода (CVE-2012-2089).<br/>
|
||
Спасибо Matthew Daley.
|
||
</para>
|
||
<para lang="en">
|
||
specially crafted mp4 file might allow to overwrite
|
||
memory locations in a worker process
|
||
if the ngx_http_mp4_module was used,
|
||
potentially resulting in arbitrary code execution (CVE-2012-2089).<br/>
|
||
Thanks to Matthew Daley.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows мог завершаться аварийно.<br/>
|
||
Спасибо Vincent Lee.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows might be terminated abnormally.<br/>
|
||
Thanks to Vincent Lee.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx нагружал процессор, если все серверы в upstream'е были помечены
|
||
флагом backup.
|
||
</para>
|
||
<para lang="en">
|
||
nginx hogged CPU if all servers in an upstream were marked as "backup".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы allow и deny могли наследоваться некорректно,
|
||
если в них использовались IPv6 адреса.
|
||
</para>
|
||
<para lang="en">
|
||
the "allow" and "deny" directives might be inherited incorrectly
|
||
if they were used with IPv6 addresses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы modern_browser и ancient_browser
|
||
могли наследоваться некорректно.
|
||
</para>
|
||
<para lang="en">
|
||
the "modern_browser" and "ancient_browser" directives
|
||
might be inherited incorrectly.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
таймауты могли работать некорректно на Solaris/SPARC.
|
||
</para>
|
||
<para lang="en">
|
||
timeouts might be handled incorrectly on Solaris/SPARC.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_mp4_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_mp4_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.18" date="2012-03-28">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь keepalive соединения не запрещены для Safari по умолчанию.
|
||
</para>
|
||
<para lang="en">
|
||
keepalive connections are no longer disabled for Safari by default.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $connection_requests.
|
||
</para>
|
||
<para lang="en">
|
||
the $connection_requests variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd и
|
||
$tcpinfo_rcv_space.
|
||
</para>
|
||
<para lang="en">
|
||
$tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd and
|
||
$tcpinfo_rcv_space variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива worker_cpu_affinity теперь работает на FreeBSD.
|
||
</para>
|
||
<para lang="en">
|
||
the "worker_cpu_affinity" directive now works on FreeBSD.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы xslt_param и xslt_string_param.<br/>
|
||
Спасибо Samuel Behan.
|
||
</para>
|
||
<para lang="en">
|
||
the "xslt_param" and "xslt_string_param" directives.<br/>
|
||
Thanks to Samuel Behan.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в configure.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
in configure tests.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_xslt_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_xslt_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Debian GNU/Hurd.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Debian GNU/Hurd.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.17" date="2012-03-15">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
содержимое ранее освобождённой памяти могло быть отправлено клиенту,
|
||
если бэкенд возвращал специально созданный ответ.<br/>
|
||
Спасибо Matthew Daley.
|
||
</para>
|
||
<para lang="en">
|
||
content of previously freed memory might be sent to a client
|
||
if backend returned specially crafted response.<br/>
|
||
Thanks to Matthew Daley.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании встроенного перла из SSI.<br/>
|
||
Спасибо Matthew Daley.
|
||
</para>
|
||
<para lang="en">
|
||
in the embedded perl module if used from SSI.<br/>
|
||
Thanks to Matthew Daley.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_uwsgi_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_uwsgi_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.16" date="2012-02-29">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
ограничение на количество одновременных подзапросов поднято до 200.
|
||
</para>
|
||
<para lang="en">
|
||
the simultaneous subrequest limit has been raised to 200.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр from в директиве disable_symlinks.
|
||
</para>
|
||
<para lang="en">
|
||
the "from" parameter of the "disable_symlinks" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы return и error_page теперь могут использоваться для возврата
|
||
перенаправлений с кодом 307.
|
||
</para>
|
||
<para lang="en">
|
||
the "return" and "error_page" directives can now be used to return 307
|
||
redirections.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовалась директива resolver
|
||
и на глобальном уровне не была задана директива error_log.<br/>
|
||
Спасибо Роману Арутюняну.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "resolver" directive was used
|
||
and there was no "error_log" directive specified at global level.<br/>
|
||
Thanks to Roman Arutyunyan.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовались директивы "proxy_http_version 1.1" или
|
||
"fastcgi_keep_conn on".
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if the "proxy_http_version 1.1" or "fastcgi_keep_conn on" directives
|
||
were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечек памяти.<br/>
|
||
Спасибо Lanshun Zhou.
|
||
</para>
|
||
<para lang="en">
|
||
memory leaks.<br/>
|
||
Thanks to Lanshun Zhou.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве disable_symlinks.
|
||
</para>
|
||
<para lang="en">
|
||
in the "disable_symlinks" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании ZFS размер кэша на диске мог считаться некорректно;
|
||
ошибка появилась в 1.0.1.
|
||
</para>
|
||
<para lang="en">
|
||
on ZFS filesystem disk cache size might be calculated incorrectly;
|
||
the bug had appeared in 1.0.1.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался компилятором icc 12.1.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built by the icc 12.1 compiler.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался gcc на Solaris;
|
||
ошибка появилась в 1.1.15.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built by gcc on Solaris;
|
||
the bug had appeared in 1.1.15.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.15" date="2012-02-15">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива disable_symlinks.
|
||
</para>
|
||
<para lang="en">
|
||
the "disable_symlinks" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_cookie_domain и proxy_cookie_path.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_cookie_domain" and "proxy_cookie_path" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог некорректно сообщать об ошибке "upstream prematurely closed
|
||
connection" вместо "upstream sent too big header".<br/>
|
||
Спасибо Feibo Li.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might log incorrect error "upstream prematurely closed connection"
|
||
instead of correct "upstream sent too big header" one.<br/>
|
||
Thanks to Feibo Li.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с модулем ngx_http_perl_module,
|
||
если использовался параметр --with-openssl.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with the ngx_http_perl_module
|
||
if the --with-openssl option was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
количество внутренних перенаправлений в именованные location'ы
|
||
не ограничивалось.
|
||
</para>
|
||
<para lang="en">
|
||
the number of internal redirects to named locations was not limited.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
вызов $r->flush() несколько раз подряд мог приводить к ошибкам
|
||
в модуле ngx_http_gzip_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
calling $r->flush() multiple times might cause errors
|
||
in the ngx_http_gzip_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы proxy_store с SSI-подзапросами
|
||
временные файлы могли не удаляться.
|
||
</para>
|
||
<para lang="en">
|
||
temporary files might be not removed
|
||
if the "proxy_store" directive was used with SSI includes.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в некоторых случаях некэшируемые переменные (такие, как $args)
|
||
возвращали старое пустое закэшированное значение.
|
||
</para>
|
||
<para lang="en">
|
||
in some cases non-cacheable variables (such as the $args variable)
|
||
returned old empty cached value.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если одновременно создавалось слишком много SSI-подзапросов;
|
||
ошибка появилась в 0.7.25.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if too many SSI subrequests were issued simultaneously;
|
||
the bug had appeared in 0.7.25.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.14" date="2012-01-30">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь можно указать несколько ограничений limit_req одновременно.
|
||
</para>
|
||
<para lang="en">
|
||
multiple "limit_req" limits may be used simultaneously.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок при соединении с бэкендом.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
in error handling while connecting to a backend.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок при использовании AIO на FreeBSD.
|
||
</para>
|
||
<para lang="en">
|
||
in AIO error handling on FreeBSD.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в инициализации библиотеки OpenSSL.
|
||
</para>
|
||
<para lang="en">
|
||
in the OpenSSL library initialization.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы proxy_redirect могли наследоваться некорректно.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_redirect" directives might be inherited incorrectly.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки памяти при переконфигурации, если использовалась директива pcre_jit.
|
||
</para>
|
||
<para lang="en">
|
||
memory leak during reconfiguration if the "pcre_jit" directive was used.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.13" date="2012-01-16">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметры TLSv1.1 и TLSv1.2 в директиве ssl_protocols.
|
||
</para>
|
||
<para lang="en">
|
||
the "TLSv1.1" and "TLSv1.2" parameters of the "ssl_protocols" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметры директивы limit_req наследовались некорректно;
|
||
ошибка появилась в 1.1.12.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_req" directive parameters were not inherited correctly;
|
||
the bug had appeared in 1.1.12.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива proxy_redirect некорректно обрабатывала заголовок Refresh
|
||
при использовании регулярных выражений.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_redirect" directive incorrectly processed "Refresh" header
|
||
if regular expression were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива proxy_cache_use_stale с параметром error не возвращала ответ из
|
||
кэша, если все бэкенды были признаны неработающими.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_cache_use_stale" directive with "error" parameter did not return
|
||
answer from cache if there were no live upstreams.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива worker_cpu_affinity могла не работать.
|
||
</para>
|
||
<para lang="en">
|
||
the "worker_cpu_affinity" directive might not work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Solaris;
|
||
ошибка появилась в 1.1.12.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Solaris;
|
||
the bug had appeared in 1.1.12.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_mp4_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_mp4_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.12" date="2011-12-26">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
после перенаправления запроса с помощью директивы error_page
|
||
директива proxy_pass без URI теперь использует изменённый URI.<br/>
|
||
Спасибо Lanshun Zhou.
|
||
</para>
|
||
<para lang="en">
|
||
a "proxy_pass" directive without URI part now uses changed URI
|
||
after redirection with the "error_page" directive.<br/>
|
||
Thanks to Lanshun Zhou.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy/fastcgi/scgi/uwsgi_cache_lock,
|
||
proxy/fastcgi/scgi/uwsgi_cache_lock_timeout.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy/fastcgi/scgi/uwsgi_cache_lock",
|
||
"proxy/fastcgi/scgi/uwsgi_cache_lock_timeout" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива pcre_jit.
|
||
</para>
|
||
<para lang="en">
|
||
the "pcre_jit" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
SSI команда if поддерживает выделения в регулярных выражениях.
|
||
</para>
|
||
<para lang="en">
|
||
the "if" SSI command supports captures in regular expressions.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
SSI команда if не работала внутри команды block.
|
||
</para>
|
||
<para lang="en">
|
||
the "if" SSI command did not work inside the "block" command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы limit_conn_log_level и limit_req_log_level могли не работать.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_conn_log_level" and "limit_req_log_level" directives might not work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива limit_rate не позволяла передавать на полной скорости,
|
||
даже если был указан очень большой лимит.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_rate" directive did not allow to use full throughput,
|
||
even if limit value was very high.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива sendfile_max_chunk не работала,
|
||
если использовалась директива limit_rate.
|
||
</para>
|
||
<para lang="en">
|
||
the "sendfile_max_chunk" directive did not work,
|
||
if the "limit_rate" directive was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директиве proxy_pass использовались переменные и не был указан URI,
|
||
всегда использовался URI исходного запроса.
|
||
</para>
|
||
<para lang="en">
|
||
a "proxy_pass" directive without URI part always used original request URI
|
||
if variables were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
после перенаправления запроса с помощью директивы try_files
|
||
директива proxy_pass без URI могла использовать URI исходного запроса.<br/>
|
||
Спасибо Lanshun Zhou.
|
||
</para>
|
||
<para lang="en">
|
||
a "proxy_pass" directive without URI part might use original request
|
||
after redirection with the "try_files" directive.<br/>
|
||
Thanks to Lanshun Zhou.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_scgi_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_scgi_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_mp4_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_mp4_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Solaris;
|
||
ошибка появилась в 1.1.9.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Solaris;
|
||
the bug had appeared in 1.1.9.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.11" date="2011-12-12">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр so_keepalive в директиве listen.<br/>
|
||
Спасибо Всеволоду Стахову.
|
||
</para>
|
||
<para lang="en">
|
||
the "so_keepalive" parameter of the "listen" directive.<br/>
|
||
Thanks to Vsevolod Stakhov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр if_not_empty в директивах fastcgi/scgi/uwsgi_param.
|
||
</para>
|
||
<para lang="en">
|
||
the "if_not_empty" parameter of the "fastcgi/scgi/uwsgi_param" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $https.
|
||
</para>
|
||
<para lang="en">
|
||
the $https variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_redirect поддерживает переменные в первом параметре.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_redirect" directive supports variables in the first parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_redirect поддерживает регулярные выражения.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_redirect" directive supports regular expressions.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $sent_http_cache_control могла содержать неверное значение при
|
||
использовании директивы expires.<br/>
|
||
Спасибо Yichun Zhang.
|
||
</para>
|
||
<para lang="en">
|
||
the $sent_http_cache_control variable might contain a wrong value if the
|
||
"expires" directive was used.<br/>
|
||
Thanks to Yichun Zhang.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива read_ahead могла не работать при использовании совместно с
|
||
try_files и open_file_cache.
|
||
</para>
|
||
<para lang="en">
|
||
the "read_ahead" directive might not work combined with "try_files"
|
||
and "open_file_cache".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в параметре inactive директивы proxy_cache_path
|
||
было указано малое время,
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if small time was used in the "inactive" parameter of
|
||
the "proxy_cache_path" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответы из кэша могли зависать.
|
||
</para>
|
||
<para lang="en">
|
||
responses from cache might hang.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.10" date="2011-11-30">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании AIO на Linux в рабочем процессе происходил segmentation fault;
|
||
ошибка появилась в 1.1.9.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in a worker process if AIO was used on Linux;
|
||
the bug had appeared in 1.1.9.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.9" date="2011-11-28">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь двойные кавычки экранируется при выводе SSI-командой echo.<br/>
|
||
Спасибо Зауру Абасмирзоеву.
|
||
</para>
|
||
<para lang="en">
|
||
now double quotes are encoded in an "echo" SSI-command output.<br/>
|
||
Thanks to Zaur Abasmirzoev.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр valid в директиве resolver. По умолчанию теперь
|
||
используется TTL, возвращённый DNS-сервером.<br/>
|
||
Спасибо Кириллу Коринскому.
|
||
</para>
|
||
<para lang="en">
|
||
the "valid" parameter of the "resolver" directive. By default TTL
|
||
returned by a DNS server is used.<br/>
|
||
Thanks to Kirill A. Korinskiy.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог перестать отвечать, если рабочий процесс завершался аварийно.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might hang after a worker process abnormal termination.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовалось SNI;
|
||
ошибка появилась в 1.1.2.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if SNI was used;
|
||
the bug had appeared in 1.1.2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве keepalive_disable;
|
||
ошибка появилась в 1.1.8.<br/>
|
||
Спасибо Александру Усову.
|
||
</para>
|
||
<para lang="en">
|
||
in the "keepalive_disable" directive;
|
||
the bug had appeared in 1.1.8.<br/>
|
||
Thanks to Alexander Usov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
сигнал SIGWINCH переставал работать после первого обновления исполняемого
|
||
файла;
|
||
ошибка появилась в 1.1.1.
|
||
</para>
|
||
<para lang="en">
|
||
SIGWINCH signal did not work after first binary upgrade;
|
||
the bug had appeared in 1.1.1.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь ответы бэкендов, длина которых не соответствует заголовку
|
||
Content-Length, не кэширутся.
|
||
</para>
|
||
<para lang="en">
|
||
backend responses with length not matching "Content-Length" header line
|
||
are no longer cached.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве scgi_param при использовании составных параметров.
|
||
</para>
|
||
<para lang="en">
|
||
in the "scgi_param" directive, if complex parameters were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в методе epoll.<br/>
|
||
Спасибо Yichun Zhang.
|
||
</para>
|
||
<para lang="en">
|
||
in the "epoll" event method.<br/>
|
||
Thanks to Yichun Zhang.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_flv_module.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_flv_module.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_mp4_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_mp4_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь nginx понимает IPv6-адреса в строке запроса и в заголовке Host.
|
||
</para>
|
||
<para lang="en">
|
||
IPv6 addresses are now handled properly in a request line and in a "Host"
|
||
request header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы add_header и expires не работали для ответов с кодом 206,
|
||
если запрос проксировался.
|
||
</para>
|
||
<para lang="en">
|
||
"add_header" and "expires" directives did not work if a request was proxied
|
||
and response status code was 206.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на FreeBSD 10.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on FreeBSD 10.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на AIX.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on AIX.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.8" date="2011-11-14">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
модуль ngx_http_limit_zone_module переименован в ngx_http_limit_conn_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_limit_zone_module was renamed to the ngx_http_limit_conn_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива limit_zone заменена директивой limit_conn_zone с новым синтаксисом.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_zone" directive was superseded by the "limit_conn_zone" directive
|
||
with a new syntax.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка ограничения по нескольким limit_conn на одном уровне.
|
||
</para>
|
||
<para lang="en">
|
||
support for multiple "limit_conn" limits on the same level.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива image_filter_sharpen.
|
||
</para>
|
||
<para lang="en">
|
||
the "image_filter_sharpen" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если resolver получил большой DNS-ответ.<br/>
|
||
Спасибо Ben Hawkes.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if resolver got a big DNS response.<br/>
|
||
Thanks to Ben Hawkes.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в вычислении ключа для кэширования,
|
||
если использовалась внутренняя реализация MD5;
|
||
ошибка появилась в 1.0.4.
|
||
</para>
|
||
<para lang="en">
|
||
in cache key calculation
|
||
if internal MD5 implementation was used;
|
||
the bug had appeared in 1.0.4.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
строки "If-Modified-Since", "If-Range" и им подобные в заголовке запроса
|
||
клиента могли передаваться бэкенду при кэшировании; или не передаваться при
|
||
выключенном кэшировании, если кэширование было включено в другой части
|
||
конфигурации.
|
||
</para>
|
||
<para lang="en">
|
||
the "If-Modified-Since", "If-Range", etc. client request header lines
|
||
might be passed to backend while caching; or not passed without caching
|
||
if caching was enabled in another part of the configuration.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_mp4_module выдавал неверную строку "Content-Length"
|
||
в заголовке ответа, использовался аргумент start.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
the module ngx_http_mp4_module sent incorrect "Content-Length" response
|
||
header line if the "start" argument was used.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.7" date="2011-10-31">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка нескольких DNS серверов в директиве "resolver".<br/>
|
||
Спасибо Кириллу Коринскому.
|
||
</para>
|
||
<para lang="en">
|
||
support of several DNS servers in the "resolver" directive.<br/>
|
||
Thanks to Kirill A. Korinskiy.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на старте или во время переконфигурации происходил segmentation fault,
|
||
если директива ssl использовалась на уровне http и не был указан
|
||
ssl_certificate.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred on start or during reconfiguration
|
||
if the "ssl" directive was used at http level and there was
|
||
no "ssl_certificate" defined.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
уменьшено потребление памяти при проксировании больших файлов,
|
||
если они буферизировались на диск.
|
||
</para>
|
||
<para lang="en">
|
||
reduced memory consumption while proxying big files
|
||
if they were buffered to disk.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовалась директива "proxy_http_version 1.1".
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if "proxy_http_version 1.1" directive was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве "expires @time".
|
||
</para>
|
||
<para lang="en">
|
||
in the "expires @time" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.6" date="2011-10-17">
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Изменение во внутреннем API: теперь при внутреннем редиректе
|
||
в именованный location контексты модулей очищаются.<br/>
|
||
По запросу Yichun Zhang.
|
||
</para>
|
||
<para lang="en">
|
||
Change in internal API: now module context data are cleared
|
||
while internal redirect to named location.<br/>
|
||
Requested by Yichun Zhang.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь если сервер, описанный в блоке upstream, был признан неработающим,
|
||
то после истечения fail_timeout на него будет отправлен только один запрос;
|
||
сервер будет считаться работающим, если успешно ответит на этот запрос.
|
||
</para>
|
||
<para lang="en">
|
||
if a server in an upstream failed, only one request will be sent to it
|
||
after fail_timeout; the server will be considered alive if it will
|
||
successfully respond to the request.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь символы 0x7F-0xFF в access_log записываются в виде \xXX.
|
||
</para>
|
||
<para lang="en">
|
||
now the 0x7F-0xFF characters are escaped as \xXX in an access_log.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы "proxy/fastcgi/scgi/uwsgi_ignore_headers" теперь поддерживают
|
||
значения X-Accel-Limit-Rate, X-Accel-Buffering и X-Accel-Charset.
|
||
</para>
|
||
<para lang="en">
|
||
"proxy/fastcgi/scgi/uwsgi_ignore_headers" directives support the following
|
||
additional values: X-Accel-Limit-Rate, X-Accel-Buffering, X-Accel-Charset.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
уменьшение потребления памяти при использовании SSL.
|
||
</para>
|
||
<para lang="en">
|
||
decrease of memory consumption if SSL is used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
некоторые UTF-8 символы обрабатывались неправильно.<br/>
|
||
Спасибо Алексею Куцу.
|
||
</para>
|
||
<para lang="en">
|
||
some UTF-8 characters were processed incorrectly.<br/>
|
||
Thanks to Alexey Kuts.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы модуля ngx_http_rewrite_module, заданные на уровне server,
|
||
применялись повторно, если для запроса не находилось ни одного location'а.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_rewrite_module directives specified at "server" level were
|
||
executed twice if no matching locations were defined.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании "aio sendfile" могла происходить утечка сокетов.
|
||
</para>
|
||
<para lang="en">
|
||
a socket leak might occurred if "aio sendfile" was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании файлового AIO соединения с быстрыми клиентами
|
||
могли быть закрыты по истечению send_timeout.
|
||
</para>
|
||
<para lang="en">
|
||
connections with fast clients might be closed after send_timeout
|
||
if file AIO was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_autoindex_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_autoindex_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_mp4_module не поддерживал перемотку на 32-битных платформах.
|
||
</para>
|
||
<para lang="en">
|
||
the module ngx_http_mp4_module did not support seeking on 32-bit platforms.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.5" date="2011-10-05">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы uwsgi_buffering и scgi_buffering.<br/>
|
||
Спасибо Peter Smit.
|
||
</para>
|
||
<para lang="en">
|
||
the "uwsgi_buffering" and "scgi_buffering" directives.<br/>
|
||
Thanks to Peter Smit.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании proxy_cache_bypass могли быть закэшированы
|
||
некэшируемые ответы.<br/>
|
||
Спасибо John Ferlito.
|
||
</para>
|
||
<para lang="en">
|
||
non-cacheable responses might be cached if "proxy_cache_bypass" directive
|
||
was used.<br/>
|
||
Thanks to John Ferlito.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_proxy_module при работе с бэкендами по HTTP/1.1.
|
||
</para>
|
||
<para lang="en">
|
||
in HTTP/1.1 support in the ngx_http_proxy_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
закэшированные ответы с пустым телом возвращались некорректно;
|
||
ошибка появилась в 0.8.31.
|
||
</para>
|
||
<para lang="en">
|
||
cached responses with an empty body were returned incorrectly;
|
||
the bug had appeared in 0.8.31.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответы с кодом 201 модуля ngx_http_dav_module были некорректны;
|
||
ошибка появилась в 0.8.32.
|
||
</para>
|
||
<para lang="en">
|
||
201 responses of the ngx_http_dav_module were incorrect;
|
||
the bug had appeared in 0.8.32.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве return.
|
||
</para>
|
||
<para lang="en">
|
||
in the "return" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы "ssl_session_cache builtin" происходил
|
||
segmentation fault;
|
||
ошибка появилась в 1.1.1.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_session_cache builtin" directive caused segmentation fault;
|
||
the bug had appeared in 1.1.1.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.4" date="2011-09-20">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_upstream_keepalive.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_upstream_keepalive module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_http_version.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_http_version" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива fastcgi_keep_conn.
|
||
</para>
|
||
<para lang="en">
|
||
the "fastcgi_keep_conn" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива worker_aio_requests.
|
||
</para>
|
||
<para lang="en">
|
||
the "worker_aio_requests" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если nginx был собран с файловым AIO,
|
||
он не мог запускаться на Linux без поддержки AIO.
|
||
</para>
|
||
<para lang="en">
|
||
if nginx was built --with-file-aio it could not be run on Linux
|
||
kernel which did not support AIO.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок при работе с Linux AIO.
|
||
<br/>
|
||
Спасибо Hagai Avrahami.
|
||
</para>
|
||
<para lang="en">
|
||
in Linux AIO error processing.
|
||
<br/>
|
||
Thanks to Hagai Avrahami.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
уменьшено потребление памяти для долгоживущих запросов.
|
||
</para>
|
||
<para lang="en">
|
||
reduced memory consumption for long-lived requests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_mp4_module не поддерживал 64-битный MP4-атом co64.
|
||
</para>
|
||
<para lang="en">
|
||
the module ngx_http_mp4_module did not support 64-bit MP4 "co64" atom.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.3" date="2011-09-14">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_mp4_module.
|
||
</para>
|
||
<para lang="en">
|
||
the module ngx_http_mp4_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в Linux AIO, используемым совместно с open_file_cache.
|
||
</para>
|
||
<para lang="en">
|
||
in Linux AIO combined with open_file_cache.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
open_file_cache не обновлял информацию о файле,
|
||
если файл был изменён не атомарно.
|
||
</para>
|
||
<para lang="en">
|
||
open_file_cache did not update file info on retest
|
||
if file was not atomically changed.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на MacOSX 10.7.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on MacOSX 10.7.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.2" date="2011-09-05">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь, если суммарный размер всех диапазонов больше размера исходного ответа,
|
||
то nginx возвращает только исходный ответ, не обрабатывая диапазоны.
|
||
</para>
|
||
<para lang="en">
|
||
now if total size of all ranges is greater than source response size,
|
||
then nginx disables ranges and returns just the source response.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива max_ranges.
|
||
</para>
|
||
<para lang="en">
|
||
the "max_ranges" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы ssl_verify_client, ssl_verify_depth и ssl_prefer_server_cipher
|
||
могли работать некорректно, если использовался SNI.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_verify_client", "ssl_verify_depth", and "ssl_prefer_server_ciphers"
|
||
directives might work incorrectly if SNI was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директивах proxy/fastcgi/scgi/ uwsgi_ignore_client_abort.
|
||
</para>
|
||
<para lang="en">
|
||
in the "proxy/fastcgi/scgi/uwsgi_ignore_client_abort" directives.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.1" date="2011-08-22">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь загрузчик кэша за каждую итерацию либо обрабатывает число файлов,
|
||
указанное в параметре load_files, либо работает не дольше времени,
|
||
указанного в параметре loader_threshold.
|
||
</para>
|
||
<para lang="en">
|
||
now cache loader processes either as many files as specified by "loader_files"
|
||
parameter or works no longer than time specified by the "loader_threshold"
|
||
parameter during each iteration.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
SIGWINCH сигнал теперь работает только в режиме демона.
|
||
</para>
|
||
<para lang="en">
|
||
now SIGWINCH signal works only in daemon mode.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь разделяемые зоны и кэши используют семафоры POSIX на Solaris.<br/>
|
||
Спасибо Денису Иванову.
|
||
</para>
|
||
<para lang="en">
|
||
now shared zones and caches use POSIX semaphores on Solaris.<br/>
|
||
Thanks to Den Ivanov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь на NetBSD поддерживаются accept фильтры.
|
||
</para>
|
||
<para lang="en">
|
||
accept filters are now supported on NetBSD.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Linux 3.0.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Linux 3.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в некоторых случаях nginx не использовал сжатие;
|
||
ошибка появилась в 1.1.0.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not use gzipping in some cases;
|
||
the bug had appeared in 1.1.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
обработка тела запроса могла быть неверной, если клиент использовал pipelining.
|
||
</para>
|
||
<para lang="en">
|
||
request body might be processed incorrectly if client used pipelining.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве request_body_in_single_buf.
|
||
</para>
|
||
<para lang="en">
|
||
in the "request_body_in_single_buf" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директивах proxy_set_body и proxy_pass_request_body
|
||
при использовании SSL-соединения с бэкендом.
|
||
</para>
|
||
<para lang="en">
|
||
in "proxy_set_body" and "proxy_pass_request_body" directives
|
||
if SSL connection to backend was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx нагружал процессор, если все серверы в upstream'е были помечены
|
||
флагом down.
|
||
</para>
|
||
<para lang="en">
|
||
nginx hogged CPU if all servers in an upstream were marked as "down".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при переконфигурации мог произойти segmentation fault,
|
||
если в предыдущей конфигурации был определён, но не использовался
|
||
ssl_session_cache.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur during reconfiguration
|
||
if ssl_session_cache was defined but not used in previous configuration.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании большого количества backup-серверов
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if many backup servers were used in an upstream.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директив fastcgi/scgi/uwsgi_param
|
||
со значениями, начинающимися со строки "HTTP_",
|
||
в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 0.8.40.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
if "fastcgi/scgi/uwsgi_param" directives were used
|
||
with values starting with "HTTP_";
|
||
the bug had appeared in 0.8.40.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.1.0" date="2011-08-01">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
уменьшение времени работы загрузчика кэша.
|
||
</para>
|
||
<para lang="en">
|
||
cache loader run time decrease.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметры loader_files, loader_sleep и loader_threshold
|
||
директив proxy/fastcgi/scgi/uwsgi_cache_path.
|
||
</para>
|
||
<para lang="en">
|
||
"loader_files", "loader_sleep", and "loader_threshold" options
|
||
of the "proxy/fastcgi/scgi/uwsgi_cache_path" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
уменьшение времени загрузки конфигураций с большим количеством HTTPS серверов.
|
||
</para>
|
||
<para lang="en">
|
||
loading time decrease of configuration with large number of HTTPS sites.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь nginx поддерживает шифры с обменом ECDHE-ключами.<br/>
|
||
Спасибо Adrian Kotelba.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx supports ECDHE key exchange ciphers.<br/>
|
||
Thanks to Adrian Kotelba.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива lingering_close.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
the "lingering_close" directive.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
закрытия соединения для pipelined-запросов.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
in closing connection for pipelined requests.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не запрещал сжатие при получении значения "gzip;q=0"
|
||
в строке "Accept-Encoding" в заголовке запроса клиента.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not disable gzipping if client sent "gzip;q=0" in
|
||
"Accept-Encoding" request header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
таймаута при небуферизированном проксировании.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
in timeout in unbuffered proxied mode.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки памяти при использовании переменных в директиве proxy_pass
|
||
при работе с бэкендом по HTTPS.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
memory leaks when a "proxy_pass" directive contains variables and proxies
|
||
to an HTTPS backend.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в проверке параметра директивы proxy_pass, заданного переменными.<br/>
|
||
Спасибо Lanshun Zhou.
|
||
</para>
|
||
<para lang="en">
|
||
in parameter validation of a "proxy_pass" directive with variables.<br/>
|
||
Thanks to Lanshun Zhou.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
SSL не работал на QNX.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
SSL did not work on QNX.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
SSL модули не собирались gcc 4.6 без параметра --with-debug.
|
||
</para>
|
||
<para lang="en">
|
||
SSL modules could not be built by gcc 4.6 without --with-debug option.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.0.5" date="2011-07-19">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь по умолчанию используются следующие шифры SSL: "HIGH:!aNULL:!MD5".<br/>
|
||
Спасибо Rob Stradling.
|
||
</para>
|
||
<para lang="en">
|
||
now default SSL ciphers are "HIGH:!aNULL:!MD5".<br/>
|
||
Thanks to Rob Stradling.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы referer_hash_max_size и referer_hash_bucket_size.<br/>
|
||
Спасибо Witold Filipczyk.
|
||
</para>
|
||
<para lang="en">
|
||
the "referer_hash_max_size" and "referer_hash_bucket_size"
|
||
directives.<br/>
|
||
Thanks to Witold Filipczyk.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $uid_reset.
|
||
</para>
|
||
<para lang="en">
|
||
$uid_reset variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании кэширования
|
||
в рабочем процессе мог произойти segmentation fault.<br/>
|
||
Спасибо Lanshun Zhou.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process,
|
||
if a caching was used.<br/>
|
||
Thanks to Lanshun Zhou.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании кэширования рабочие процессы
|
||
могли зациклиться во время переконфигурации;
|
||
ошибка появилась в 0.8.48.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
worker processes may got caught in an endless loop during reconfiguration,
|
||
if a caching was used;
|
||
the bug had appeared in 0.8.48.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
сообщения "stalled cache updating".<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
"stalled cache updating" alert.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.0.4" date="2011-06-01">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь в регулярных выражениях в директиве map можно задать
|
||
чувствительность к регистру с помощью префиксов "~" и "~*".
|
||
</para>
|
||
<para lang="en">
|
||
now regular expressions case sensitivity in the "map" directive
|
||
is given by prefixes "~" or "~*".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь разделяемые зоны и кэши используют семафоры POSIX на Linux.<br/>
|
||
Спасибо Денису Латыпову.
|
||
</para>
|
||
<para lang="en">
|
||
now shared zones and caches use POSIX semaphores on Linux.<br/>
|
||
Thanks to Denis F. Latypoff.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
сообщения "stalled cache updating".
|
||
</para>
|
||
<para lang="en">
|
||
"stalled cache updating" alert.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с параметром --without-http_auth_basic_module;
|
||
ошибка появилась в 1.0.3.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built --without-http_auth_basic_module;
|
||
the bug had appeared in 1.0.3.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.0.3" date="2011-05-25">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива auth_basic_user_file поддерживает шифрование пароля
|
||
методами "$apr1", "{PLAIN}" и "{SSHA}".<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
the "auth_basic_user_file" directive supports "$apr1", "{PLAIN}",
|
||
and "{SSHA}" password encryption methods.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива geoip_org и переменная $geoip_org.<br/>
|
||
Спасибо Александру Ускову, Arnaud Granal и Денису Латыпову.
|
||
</para>
|
||
<para lang="en">
|
||
the "geoip_org" directive and $geoip_org variable.<br/>
|
||
Thanks to Alexander Uskov, Arnaud Granal, and Denis F. Latypoff.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модули ngx_http_geo_module и ngx_http_geoip_module поддерживают
|
||
адреса IPv4, отображённые на IPv6 адреса.
|
||
</para>
|
||
<para lang="en">
|
||
ngx_http_geo_module and ngx_http_geoip_module support IPv4 addresses
|
||
mapped to IPv6 addresses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при проверке адреса IPv4, отображённого на адрес IPv6,
|
||
в рабочем процессе происходил segmentation fault,
|
||
если директивы access или deny были определены только для адресов IPv6;
|
||
ошибка появилась в 0.8.22.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in a worker process
|
||
during testing IPv4 address mapped to IPv6 address,
|
||
if access or deny rules were defined only for IPv6;
|
||
the bug had appeared in 0.8.22.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
закэшированный ответ мог быть испорчен, если значения директив
|
||
proxy/fastcgi/scgi/uwsgi_cache_bypass и proxy/fastcgi/scgi/ uwsgi_no_cache
|
||
были разными;
|
||
ошибка появилась в 0.8.46.
|
||
</para>
|
||
<para lang="en">
|
||
a cached response may be broken if "proxy/fastcgi/scgi/ uwsgi_cache_bypass"
|
||
and "proxy/fastcgi/scgi/uwsgi_no_cache" directive values were different;
|
||
the bug had appeared in 0.8.46.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.0.2" date="2011-05-10">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь разделяемые зоны и кэши используют семафоры POSIX.
|
||
</para>
|
||
<para lang="en">
|
||
now shared zones and caches use POSIX semaphores.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в работе параметра rotate директивы image_filter.<br/>
|
||
Спасибо Adam Bocim.
|
||
</para>
|
||
<para lang="en">
|
||
in the "rotate" parameter of the "image_filter" directive.<br/>
|
||
Thanks to Adam Bocim.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Solaris;
|
||
ошибка появилась в 1.0.1.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Solaris;
|
||
the bug had appeared in 1.0.1.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.0.1" date="2011-05-03">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь директива split_clients использует алгоритм MurmurHash2 из-за
|
||
лучшего распределения.<br/>
|
||
Спасибо Олегу Мамонтову.
|
||
</para>
|
||
<para lang="en">
|
||
now the "split_clients" directive uses MurmurHash2 algorithm because
|
||
of better distribution.<br/>
|
||
Thanks to Oleg Mamontov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь длинные строки, начинающиеся с нуля, не считаются ложными
|
||
значениями.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
now long strings starting with zero are not considered as false values.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь по умолчанию nginx использует значение 511 для listen backlog на Linux.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx uses a default listen backlog value 511 on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные $upstream_... можно использовать в SSI и перловом модулях.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_... variables may be used in the SSI and perl modules.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь nginx лучше ограничивает размер кэша на диске.<br/>
|
||
Спасибо Олегу Мамонтову.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx limits better disk cache size.<br/>
|
||
Thanks to Oleg Mamontov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при парсинге неправильного IPv4 адреса мог произойти segmentation fault;
|
||
ошибка появилась в 0.8.22.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur while parsing incorrect IPv4 address;
|
||
the bug had appeared in 0.9.3.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался gcc 4.6 без параметра --with-debug.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built by gcc 4.6 without --with-debug option.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Solaris 9 и более ранних;
|
||
ошибка появилась в 0.9.3.<br/>
|
||
Спасибо Dagobert Michelsen.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Solaris 9 and earlier;
|
||
the bug had appeared in 0.9.3.<br/>
|
||
Thanks to Dagobert Michelsen.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $request_time имела неверные значения, если использовались
|
||
подзапросы;
|
||
ошибка появилась в 0.8.47.<br/>
|
||
Спасибо Игорю А. Валькову.
|
||
</para>
|
||
<para lang="en">
|
||
$request_time variable had invalid values if subrequests were used;
|
||
the bug had appeared in 0.8.47.<br/>
|
||
Thanks to Igor A. Valcov.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="1.0.0" date="2011-04-12">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
cache manager мог нагружать процессор после переконфигурации.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
a cache manager might hog CPU after reload.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива "image_filter crop" неправильно работала в сочетании с
|
||
"image_filter rotate 180".
|
||
</para>
|
||
<para lang="en">
|
||
an "image_filter crop" directive worked incorrectly coupled with
|
||
an "image_filter rotate 180" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива "satisfy any" запрещала выдачу пользовательской страницы
|
||
для 401 кода.
|
||
</para>
|
||
<para lang="en">
|
||
a "satisfy any" directive disabled custom 401 error page.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.9.7" date="2011-04-04">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь соединения в состоянии keepalive могут быть закрыты преждевременно,
|
||
если у воркера нет свободных соединений.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
now keepalive connections may be closed premature,
|
||
if there are no free worker connections.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр rotate директивы image_filter.<br/>
|
||
Спасибо Adam Bocim.
|
||
</para>
|
||
<para lang="en">
|
||
the "rotate" parameter of the "image_filter" directive.<br/>
|
||
Thanks to Adam Bocim.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ситуации, когда бэкенд в директивах fastcgi_pass, scgi_pass или uwsgi_pass
|
||
задан выражением и ссылается на описанный upstream.
|
||
</para>
|
||
<para lang="en">
|
||
a case when a backend in "fastcgi_pass", "scgi_pass", or "uwsgi_pass"
|
||
directives is given by expression and refers to a defined upstream.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.9.6" date="2011-03-21">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива map поддерживает регулярные выражения в качестве значения
|
||
первого параметра.
|
||
</para>
|
||
<para lang="en">
|
||
the "map" directive supports regular expressions as value of the first
|
||
parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $time_iso8601 для access_log.<br/>
|
||
Спасибо Michael Lustfield.
|
||
</para>
|
||
<para lang="en">
|
||
$time_iso8601 access_log variable.<br/>
|
||
Thanks to Michael Lustfield.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.9.5" date="2011-02-21">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь по умолчанию nginx использует значение -1 для listen backlog
|
||
на Linux.<br/>
|
||
Спасибо Андрею Нигматулину.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx uses a default listen backlog value -1 on Linux.<br/>
|
||
Thanks to Andrei Nigmatulin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр utf8 в директивах geoip_country и geoip_city.<br/>
|
||
Спасибо Денису Латыпову.
|
||
</para>
|
||
<para lang="en">
|
||
the "utf8" parameter of "geoip_country" and "geoip_city" directives.<br/>
|
||
Thanks to Denis F. Latypoff.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
исправление в умолчательной директиве proxy_redirect, если в директиве
|
||
proxy_pass не был описан URI.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
in a default "proxy_redirect" directive if "proxy_pass" directive has no
|
||
URI part.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива error_page не работала с нестандартными кодами ошибок;
|
||
ошибка появилась в 0.8.53.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
an "error_page" directive did not work with nonstandard error codes;
|
||
the bug had appeared in 0.8.53.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.9.4" date="2011-01-21">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива server_name поддерживает переменную $hostname.
|
||
</para>
|
||
<para lang="en">
|
||
the "server_name" directive supports the $hostname variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
494 код для ошибки "Request Header Too Large".
|
||
</para>
|
||
<para lang="en">
|
||
494 code for "Request Header Too Large" error.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.9.3" date="2010-12-13">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если для пары IPv6-адрес:порт описан только один сервер, то выделения
|
||
в регулярных выражениях в директиве server_name не работали.
|
||
</para>
|
||
<para lang="en">
|
||
if there was a single server for given IPv6 address:port pair,
|
||
then captures in regular expressions in a "server_name" directive did not work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался под Solaris;
|
||
ошибка появилась в 0.9.0.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Solaris;
|
||
the bug had appeared in 0.9.0.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.9.2" date="2010-12-06">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка строки "If-Unmodified-Since" в заголовке запроса клиента.
|
||
</para>
|
||
<para lang="en">
|
||
the "If-Unmodified-Since" client request header line support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
использование accept(), если accept4() не реализован;
|
||
ошибка появилась в 0.9.0.
|
||
</para>
|
||
<para lang="en">
|
||
fallback to accept() syscall if accept4() was not implemented;
|
||
the issue had appeared in 0.9.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался под Cygwin;
|
||
ошибка появилась в 0.9.0.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Cygwin;
|
||
the bug had appeared in 0.9.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
уязвимости в OpenSSL CVE-2010-4180.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
for OpenSSL vulnerability CVE-2010-4180.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.9.1" date="2010-11-30">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы вида "return CODE message" не работали;
|
||
ошибка появилась в 0.9.0.
|
||
</para>
|
||
<para lang="en">
|
||
"return CODE message" directives did not work;
|
||
the bug had appeared in 0.9.0.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.9.0" date="2010-11-29">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива keepalive_disable.
|
||
</para>
|
||
<para lang="en">
|
||
the "keepalive_disable" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива map поддерживает переменные в качестве значения определяемой
|
||
переменной.
|
||
</para>
|
||
<para lang="en">
|
||
the "map" directive supports variables as value of a defined variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива map поддерживает пустые строки в качестве значения первого параметра.
|
||
</para>
|
||
<para lang="en">
|
||
the "map" directive supports empty strings as value of the first parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива map поддерживает выражения в первом параметре.
|
||
</para>
|
||
<para lang="en">
|
||
the "map" directive supports expressions as the first parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
страница руководства nginx(8).<br/>
|
||
Спасибо Сергею Осокину.
|
||
</para>
|
||
<para lang="en">
|
||
nginx(8) manual page.<br/>
|
||
Thanks to Sergey Osokin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка accept4() в Linux.<br/>
|
||
Спасибо Simon Liu.
|
||
</para>
|
||
<para lang="en">
|
||
Linux accept4() support.<br/>
|
||
Thanks to Simon Liu.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
устранение предупреждения линкера о "sys_errlist" и "sys_nerr" под Linux;
|
||
предупреждение появилось в 0.8.35.
|
||
</para>
|
||
<para lang="en">
|
||
elimination of Linux linker warning about "sys_errlist" and "sys_nerr";
|
||
the warning had appeared in 0.8.35.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы auth_basic
|
||
в рабочем процессе мог произойти segmentation fault.<br/>
|
||
Спасибо Михаилу Лалетину.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process,
|
||
if the "auth_basic" directive was used.<br/>
|
||
Thanks to Michail Laletin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с модулем ngx_http_eval_module;
|
||
ошибка появилась в 0.8.42.
|
||
</para>
|
||
<para lang="en">
|
||
compatibility with ngx_http_eval_module;
|
||
the bug had appeared in 0.8.42.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.53" date="2010-10-18">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь директива error_page позволяет менять код статуса у редиректа.
|
||
</para>
|
||
<para lang="en">
|
||
now the "error_page" directive allows to change a status code in a redirect.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива gzip_disable поддерживает специальную маску degradation.
|
||
</para>
|
||
<para lang="en">
|
||
the "gzip_disable" directive supports special "degradation" mask.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании файлового AIO могла происходить утечка сокетов.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
a socket leak might occurred if file AIO was used.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в первом сервере не была описана директива listen и нигде явно
|
||
не описан сервер по умолчанию, то сервером по умолчанию становился
|
||
следующий сервер с директивой listen;
|
||
ошибка появилась в 0.8.21.
|
||
</para>
|
||
<para lang="en">
|
||
if the first server had no "listen" directive and there was no explicit
|
||
default server, then a next server with a "listen" directive became
|
||
the default server;
|
||
the bug had appeared in 0.8.21.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.52" date="2010-09-28">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx использовал режим SSL для listen сокета, если для него был
|
||
установлен любой listen-параметр;
|
||
ошибка появилась в 0.8.51.
|
||
</para>
|
||
<para lang="en">
|
||
nginx used SSL mode for a listen socket if any listen option was set;
|
||
the bug had appeared in 0.8.51.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.51" date="2010-09-27">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива secure_link_expires упразднена.
|
||
</para>
|
||
<para lang="en">
|
||
the "secure_link_expires" directive has been canceled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
уровень логгирования ошибок resolver'а понижен с уровня alert на error.
|
||
</para>
|
||
<para lang="en">
|
||
a logging level of resolver errors has been lowered from "alert" to "error".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь параметр "ssl" listen-сокета можно устанавливать несколько раз.
|
||
</para>
|
||
<para lang="en">
|
||
now a listen socket "ssl" parameter may be set several times.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.50" date="2010-09-02">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы secure_link, secure_link_md5 и secure_link_expires
|
||
модуля ngx_http_secure_link_module.
|
||
</para>
|
||
<para lang="en">
|
||
the "secure_link", "secure_link_md5", and "secure_link_expires" directives of
|
||
the ngx_http_secure_link_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ключ -q.<br/>
|
||
Спасибо Геннадию Махомеду.
|
||
</para>
|
||
<para lang="en">
|
||
the -q switch.<br/>
|
||
Thanks to Gena Makhomed.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании кэширования рабочие процессы и могли зациклиться
|
||
во время переконфигурации;
|
||
ошибка появилась в 0.8.48.
|
||
</para>
|
||
<para lang="en">
|
||
worker processes may got caught in an endless loop during reconfiguration,
|
||
if a caching was used;
|
||
the bug had appeared in 0.8.48.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве gzip_disable.<br/>
|
||
Спасибо Derrick Petzold.
|
||
</para>
|
||
<para lang="en">
|
||
in the "gzip_disable" directive.<br/>
|
||
Thanks to Derrick Petzold.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows не мог посылать сигналы stop, quit, reopen, reload процессу,
|
||
запущенному в другой сессии.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows could not send stop, quit, reopen, and reload signals
|
||
to a process run in other session.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.49" date="2010-08-09">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива image_filter_jpeg_quality поддерживает переменные.
|
||
</para>
|
||
<para lang="en">
|
||
the "image_filter_jpeg_quality" directive supports variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании переменной $geoip_region_name
|
||
в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 0.8.48.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process,
|
||
if the $geoip_region_name variables was used;
|
||
the bug had appeared in 0.8.48.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки, перехваченные error_page, кэшировались только до следующего запроса;
|
||
ошибка появилась в 0.8.48.
|
||
</para>
|
||
<para lang="en">
|
||
errors intercepted by error_page were cached only for next request;
|
||
the bug had appeared in 0.8.48.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.48" date="2010-08-03">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь по умолчанию директива server_name имеет значение пустое имя "".<br/>
|
||
Спасибо Геннадию Махомеду.
|
||
</para>
|
||
<para lang="en">
|
||
now the "server_name" directive default value is an empty name "".<br/>
|
||
Thanks to Gena Makhomed.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь по умолчанию директива server_name_in_redirect имеет значение off.
|
||
</para>
|
||
<para lang="en">
|
||
now the "server_name_in_redirect" directive default value is "off".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные $geoip_dma_code, $geoip_area_code и $geoip_region_name.<br/>
|
||
Спасибо Christine McGonagle.
|
||
</para>
|
||
<para lang="en">
|
||
the $geoip_dma_code, $geoip_area_code, and $geoip_region_name variables.<br/>
|
||
Thanks to Christine McGonagle.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы proxy_pass, fastcgi_pass, uwsgi_pass и scgi_pass не наследовались
|
||
в блоки limit_except.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass", "fastcgi_pass", "uwsgi_pass", and "scgi_pass" directives
|
||
were not inherited inside "limit_except" blocks.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы proxy_cache_min_uses, fastcgi_cache_min_uses
|
||
uwsgi_cache_min_uses и scgi_cache_min_uses не работали;
|
||
ошибка появилась в 0.8.46.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_cache_min_uses", "fastcgi_cache_min_uses"
|
||
"uwsgi_cache_min_uses", and "scgi_cache_min_uses" directives did not work;
|
||
the bug had appeared in 0.8.46.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива fastcgi_split_path_info неверно использовала выделения,
|
||
если в выделения попадала только часть URI.<br/>
|
||
Спасибо Юрию Тарадаю и Frank Enderle.
|
||
</para>
|
||
<para lang="en">
|
||
the "fastcgi_split_path_info" directive used incorrectly captures,
|
||
if only parts of an URI were captured.<br/>
|
||
Thanks to Yuriy Taraday and Frank Enderle.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива rewrite не экранировала символ ";" при копировании из URI
|
||
в аргументы.<br/>
|
||
Спасибо Daisuke Murase.
|
||
</para>
|
||
<para lang="en">
|
||
the "rewrite" directive did not escape a ";" character during copying
|
||
from URI to query string.<br/>
|
||
Thanks to Daisuke Murase.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_image_filter_module закрывал соединение,
|
||
если изображение было больше размера image_filter_buffer.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_image_filter_module closed a connection,
|
||
if an image was larger than "image_filter_buffer" size.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.47" date="2010-07-28">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $request_time имела неверные значения для подзапросов.
|
||
</para>
|
||
<para lang="en">
|
||
$request_time variable had invalid values for subrequests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки, перехваченные error_page, не кэшировались.
|
||
</para>
|
||
<para lang="en">
|
||
errors intercepted by error_page could not be cached.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если использовался параметр max_size, то cache manager мог зациклиться;
|
||
ошибка появилась в 0.8.46.
|
||
</para>
|
||
<para lang="en">
|
||
a cache manager process may got caught in an endless loop,
|
||
if max_size parameter was used;
|
||
the bug had appeared in 0.8.46.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.46" date="2010-07-19">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директивы proxy_no_cache, fastcgi_no_cache, uwsgi_no_cache
|
||
и scgi_no_cache теперь влияют только на сохранение закэшированного ответа.
|
||
</para>
|
||
<para lang="en">
|
||
now the "proxy_no_cache", "fastcgi_no_cache", "uwsgi_no_cache", and
|
||
"scgi_no_cache" directives affect on a cached response saving only.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_cache_bypass, fastcgi_cache_bypass, uwsgi_cache_bypass
|
||
и scgi_cache_bypass.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_cache_bypass", "fastcgi_cache_bypass", "uwsgi_cache_bypass",
|
||
and "scgi_cache_bypass" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не освобождал память в keys_zone кэшей в случае ошибки работы с
|
||
бэкендом: память освобождалась только по истечении времени неактивности
|
||
или при недостатке памяти.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not free memory in cache keys zones if there was an error
|
||
during working with backend: the memory was freed only after inactivity
|
||
time or on memory low condition.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.45" date="2010-07-13">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
улучшения в модуле ngx_http_xslt_filter.<br/>
|
||
Спасибо Laurence Rowe.
|
||
</para>
|
||
<para lang="en">
|
||
ngx_http_xslt_filter improvements.<br/>
|
||
Thanks to Laurence Rowe.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответ SSI модуля мог передаваться не полностью после команды include
|
||
с параметром wait="yes";
|
||
ошибка появилась в 0.7.25.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
SSI response might be truncated after include with wait="yes";
|
||
the bug had appeared in 0.7.25.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива listen не поддерживала параметр setfib=0.
|
||
</para>
|
||
<para lang="en">
|
||
the "listen" directive did not support the "setfib=0" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.44" date="2010-07-05">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx по умолчанию не кэширует ответы бэкендов,
|
||
в заголовке которых есть строка "Set-Cookie".
|
||
</para>
|
||
<para lang="en">
|
||
now nginx does not cache by default backend responses,
|
||
if they have a "Set-Cookie" header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива listen поддерживает параметр setfib.<br/>
|
||
Спасибо Андрею Филонову.
|
||
</para>
|
||
<para lang="en">
|
||
the "listen" directive supports the "setfib" parameter.<br/>
|
||
Thanks to Andrew Filonov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива sub_filter могла изменять регистр букв при частичном совпадении.
|
||
</para>
|
||
<para lang="en">
|
||
the "sub_filter" directive might change character case on partial match.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с HP/UX.
|
||
</para>
|
||
<para lang="en">
|
||
compatibility with HP/UX.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с компилятором AIX xlC_r.
|
||
</para>
|
||
<para lang="en">
|
||
compatibility with AIX xlC_r compiler.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx считал большие пакеты SSLv2 как обычные текстовые запросы.<br/>
|
||
Спасибо Miroslaw Jaworski.
|
||
</para>
|
||
<para lang="en">
|
||
nginx treated large SSLv2 packets as plain requests.<br/>
|
||
Thanks to Miroslaw Jaworski.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.43" date="2010-06-30">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ускорение загрузки больших баз geo-диапазонов.
|
||
</para>
|
||
<para lang="en">
|
||
large geo ranges base loading speed-up.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
перенаправление ошибки в "location /zero {return 204;}" без изменения
|
||
кода ответа оставляло тело ошибки;
|
||
ошибка появилась в 0.8.42.
|
||
</para>
|
||
<para lang="en">
|
||
an error_page redirection to "location /zero {return 204;}" without
|
||
changing status code kept the error body;
|
||
the bug had appeared in 0.8.42.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог закрывать IPv6 listen сокет во время переконфигурации.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might close IPv6 listen socket during reconfiguration.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменную $uid_set можно использовать на любой стадии обработки запроса.
|
||
</para>
|
||
<para lang="en">
|
||
the $uid_set variable may be used at any request processing stage.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.42" date="2010-06-21">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx проверяет location'ы, заданные регулярными выражениями,
|
||
если запрос полностью совпал с location'ом, заданным строкой префикса.
|
||
Предыдущее поведение появилось в 0.7.1.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx tests locations given by regular expressions,
|
||
if request was matched exactly by a location given by a prefix string.
|
||
The previous behavior has been introduced in 0.7.1.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_scgi_module.<br/>
|
||
Спасибо Manlio Perillo.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_scgi_module.<br/>
|
||
Thanks to Manlio Perillo.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
в директиве return можно добавлять текст ответа.
|
||
</para>
|
||
<para lang="en">
|
||
a text answer may be added to a "return" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.41" date="2010-06-15">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
рабочий процесс nginx/Windows мог завершаться аварийно при запросе файла
|
||
с неверной кодировкой UTF-8.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows worker might be terminated abnormally if a requested file name
|
||
has invalid UTF-8 encoding.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx разрешает использовать пробелы в строке запроса.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx allows to use spaces in a request line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива proxy_redirect неправильно изменяла строку "Refresh" в заголовке
|
||
ответа бэкенда.<br/>
|
||
Спасибо Андрею Андрееву и Максиму Согину.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_redirect" directive changed incorrectly a backend "Refresh"
|
||
response header line.<br/>
|
||
Thanks to Andrey Andreew and Max Sogin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не поддерживал путь без имени хоста в
|
||
строке "Destination" в заголовке запроса.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not support path without host name
|
||
in "Destination" request header line.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.40" date="2010-06-07">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
теперь nginx/Windows игнорирует имя потока файла по умолчанию.<br/>
|
||
Спасибо Jose Antonio Vazquez Gonzalez.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx/Windows ignores default file stream name.<br/>
|
||
Thanks to Jose Antonio Vazquez Gonzalez.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_uwsgi_module.<br/>
|
||
Спасибо Roberto De Ioris.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_uwsgi_module.<br/>
|
||
Thanks to Roberto De Ioris.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива fastcgi_param со значением, начинающимся со строки "HTTP_",
|
||
изменяет строку заголовка в запросе клиента.
|
||
</para>
|
||
<para lang="en">
|
||
a "fastcgi_param" directive with value starting with "HTTP_" overrides
|
||
a client request header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
строки "If-Modified-Since", "If-Range" и им подобные в заголовке запроса
|
||
клиента передавались FastCGI-серверу при кэшировании.
|
||
</para>
|
||
<para lang="en">
|
||
the "If-Modified-Since", "If-Range", etc. client request header lines
|
||
were passed to FastCGI-server while caching.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
listen unix domain сокет нельзя было изменить во время переконфигурации.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
listen unix domain socket could not be changed during reconfiguration.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.39" date="2010-05-31">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
наследуемая директива alias неправильно работала во вложенном location'е.
|
||
</para>
|
||
<para lang="en">
|
||
an inherited "alias" directive worked incorrectly in inclusive location.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в комбинации директив alias с переменными и try_files;
|
||
</para>
|
||
<para lang="en">
|
||
in "alias" with variables and "try_files" directives combination.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
listen unix domain и IPv6 сокеты не наследовались во время обновления
|
||
без перерыва.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
listen unix domain and IPv6 sockets did not inherit while online upgrade.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.38" date="2010-05-24">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_no_cache и fastcgi_no_cache.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_no_cache" and "fastcgi_no_cache" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь при использовании переменной $scheme в директиве rewrite
|
||
автоматически делается редирект.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
now the "rewrite" directive does a redirect automatically
|
||
if the $scheme variable is used.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь задержки в директиве limit_req соответствует описанному алгоритму.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
now "limit_req" delay directive conforms to the described algorithm.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменную $uid_got нельзя было использовать в SSI и перловом модулях.
|
||
</para>
|
||
<para lang="en">
|
||
the $uid_got variable might not be used in the SSI and perl modules.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.37" date="2010-05-17">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_split_clients_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_split_clients_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива map поддерживает ключи больше 255 символов.
|
||
</para>
|
||
<para lang="en">
|
||
the "map" directive supports keys more than 255 characters.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx игнорировал значения "private" и "no-store" в строке "Cache-Control"
|
||
в заголовке ответа бэкенда.
|
||
</para>
|
||
<para lang="en">
|
||
nginx ignored the "private" and "no-store" values
|
||
in the "Cache-Control" backend response header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр stub в SSI-директиве include не использовался,
|
||
если пустой ответ имел код 200.
|
||
</para>
|
||
<para lang="en">
|
||
a "stub" parameter of an "include" SSI directive was not used,
|
||
if empty response has 200 status code.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если проксированный или FastCGI запрос внутренне перенаправлялся
|
||
в другой проксированный или FastCGI location,
|
||
то в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 0.8.33.<br/>
|
||
Спасибо Yichun Zhang.
|
||
</para>
|
||
<para lang="en">
|
||
if a proxied or FastCGI request was internally redirected
|
||
to another proxied or FastCGI location,
|
||
then a segmentation fault might occur in a worker process;
|
||
the bug had appeared in 0.8.33.<br/>
|
||
Thanks to Yichun Zhang.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
соединения IMAP к серверу Zimbra могло зависнуть до таймаута.<br/>
|
||
Спасибо Alan Batie.
|
||
</para>
|
||
<para lang="en">
|
||
IMAP connections may hang until they timed out
|
||
while talking to Zimbra server.<br/>
|
||
Thanks to Alan Batie.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.36" date="2010-04-22">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_dav_module неправильно обрабатывал методы DELETE, COPY и MOVE
|
||
для симлинков.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_dav_module handled incorrectly the DELETE, COPY, and MOVE methods
|
||
for symlinks.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль SSI в подзапросах использовал закэшированные в основном запросе
|
||
значения переменных $query_string, $arg_... и им подобных.
|
||
</para>
|
||
<para lang="en">
|
||
values of the $query_string, $arg_..., etc. variables cached in main
|
||
request were used by the SSI module in subrequests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
значение переменной повторно экранировалось после каждого вывода
|
||
SSI-команды echo;
|
||
ошибка появилась в 0.6.14.
|
||
</para>
|
||
<para lang="en">
|
||
a variable value was repeatedly encoded after each
|
||
an "echo" SSI-command output;
|
||
the bug had appeared in 0.6.14.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
рабочий процесс зависал при запросе файла FIFO.<br/>
|
||
Спасибо Vicente Aguilar и Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
a worker process hung if a FIFO file was requested.<br/>
|
||
Thanks to Vicente Aguilar and Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с OpenSSL-1.0.0 на 64-битном Linux.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
OpenSSL-1.0.0 compatibility on 64-bit Linux.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с параметром --without-http-cache;
|
||
ошибка появилась в 0.8.35.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built --without-http-cache;
|
||
the bug had appeared in 0.8.35.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.35" date="2010-04-01">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь charset-фильтр работает до SSI-фильтра.
|
||
</para>
|
||
<para lang="en">
|
||
now the charset filter runs before the SSI filter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива chunked_transfer_encoding.
|
||
</para>
|
||
<para lang="en">
|
||
the "chunked_transfer_encoding" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
символ "&" при копировании в аргументы в правилах rewrite не экранировался.
|
||
</para>
|
||
<para lang="en">
|
||
an "&" character was not escaped when it was copied in arguments part
|
||
in a rewrite rule.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог завершаться аварийно во время обработки сигнала или
|
||
при использовании директивы timer_resolution на платформах,
|
||
не поддерживающих методы kqueue или eventport.<br/>
|
||
Спасибо George Xie и Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might be terminated abnormally
|
||
while a signal processing or if the directive "timer_resolution" was used
|
||
on platforms which do not support kqueue or eventport notification methods.<br/>
|
||
Thanks to George Xie and Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если временные файлы и постоянное место хранения располагались на разных
|
||
файловых системах, то у постоянных файлов время изменения было неверным.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
if temporary files and permanent storage area resided at different
|
||
file systems, then permanent file modification times were incorrect.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_memcached_module мог выдавать ошибку "memcached sent invalid
|
||
trailer".<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
ngx_http_memcached_module might issue the error message "memcached sent invalid
|
||
trailer".<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не мог собрать библиотеку zlib-1.2.4 из исходных текстов.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not built zlib-1.2.4 library using the library sources.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе происходил segmentation fault,
|
||
если перед ответом FastCGI-сервера было много вывода в stderr;
|
||
ошибка появилась в 0.8.34.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in a worker process,
|
||
if there was large stderr output before FastCGI response;
|
||
the bug had appeared in 0.8.34.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.34" date="2010-03-03">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не поддерживал все шифры, используемые в клиентских сертификатах.<br/>
|
||
Спасибо Иннокентию Еникееву.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not support all ciphers and digests used in client certificates.<br/>
|
||
Thanks to Innocenty Enikeew.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx неправильно кэшировал FastCGI-ответы, если перед ответом было
|
||
много вывода в stderr.
|
||
</para>
|
||
<para lang="en">
|
||
nginx cached incorrectly FastCGI responses if there was large stderr output
|
||
before response.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не поддерживал HTTPS-рефереры.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not support HTTPS referrers.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows мог не находить файлы, если путь в конфигурации был задан
|
||
в другом регистре;
|
||
ошибка появилась в 0.8.33.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows might not find file if path in configuration was given
|
||
in other character case;
|
||
the bug had appeared in 0.8.33.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $date_local выдавала неверное время,
|
||
если использовался формат "%s".<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
the $date_local variable has an incorrect value,
|
||
if the "%s" format was used.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если ssl_session_cache не был установлен или установлен в none,
|
||
то при проверке клиентского сертификаты могла происходить
|
||
ошибка "session id context uninitialized";
|
||
ошибка появилась в 0.7.1.
|
||
</para>
|
||
<para lang="en">
|
||
if ssl_session_cache was not set or was set to "none",
|
||
then during client certificate verify
|
||
the error "session id context uninitialized" might occur;
|
||
the bug had appeared in 0.7.1.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
geo-диапазон возвращал значение по умолчанию, если диапазон включал
|
||
в себя одну и более сетей размером /16 и не начинался на границе сети
|
||
размером /16.
|
||
</para>
|
||
<para lang="en">
|
||
a geo range returned default value if the range included two or more
|
||
/16 networks and did not begin at /16 network boundary.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
блок, используемый в параметре stub в SSI-директиве include,
|
||
выводился с MIME-типом "text/plain".
|
||
</para>
|
||
<para lang="en">
|
||
a block used in a "stub" parameter of an "include" SSI directive
|
||
was output with "text/plain" MIME type.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
$r->sleep() не работал;
|
||
ошибка появилась в 0.8.11.
|
||
</para>
|
||
<para lang="en">
|
||
$r->sleep() did not work;
|
||
the bug had appeared in 0.8.11.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.33" date="2010-02-01">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
теперь nginx/Windows игнорирует пробелы в конце URI.<br/>
|
||
Спасибо Dan Crowley, Core Security Technologies.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx/Windows ignores trailing spaces in URI.<br/>
|
||
Thanks to Dan Crowley, Core Security Technologies.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
теперь nginx/Windows игнорирует короткие имена файлов.<br/>
|
||
Спасибо Dan Crowley, Core Security Technologies.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx/Windows ignores short files names.<br/>
|
||
Thanks to Dan Crowley, Core Security Technologies.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь keepalive соединения после запросов POST не запрещаются для
|
||
MSIE 7.0+.<br/>
|
||
Спасибо Adam Lounds.
|
||
</para>
|
||
<para lang="en">
|
||
now keepalive connections after POST requests are not disabled for
|
||
MSIE 7.0+.<br/>
|
||
Thanks to Adam Lounds.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
теперь keepalive соединения запрещены для Safari.<br/>
|
||
Спасибо Joshua Sierles.
|
||
</para>
|
||
<para lang="en">
|
||
now keepalive connections are disabled for Safari.<br/>
|
||
Thanks to Joshua Sierles.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если проксированный или FastCGI запрос внутренне перенаправлялся
|
||
в другой проксированный или FastCGI location, то переменная
|
||
$upstream_response_time могла иметь ненормально большое значение;
|
||
ошибка появилась в 0.8.7.
|
||
</para>
|
||
<para lang="en">
|
||
if a proxied or FastCGI request was internally redirected
|
||
to another proxied or FastCGI location,
|
||
then $upstream_response_time variable may have abnormally large value;
|
||
the bug had appeared in 0.8.7.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault
|
||
при отбрасывания тела запроса;
|
||
ошибка появилась в 0.8.11.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process,
|
||
while discarding a request body;
|
||
the bug had appeared in 0.8.11.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.32" date="2010-01-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании кодировки UTF-8 в ngx_http_autoindex_module.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
UTF-8 encoding usage in the ngx_http_autoindex_module.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
именованные выделения в регулярных выражениях работали только для
|
||
двух переменных.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
regular expression named captures worked for two names only.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь в строке заголовка запроса "Host" используется имя "localhost",
|
||
если в директиве auth_http указан unix domain сокет.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
now the "localhost" name is used in the "Host" request header line,
|
||
if an unix domain socket is defined in the "auth_http" directive.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не поддерживал передачу chunk'ами для 201-ых ответов.<br/>
|
||
Спасибо Julian Reich.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not support chunked transfer encoding for 201 responses.<br/>
|
||
Thanks to Julian Reich.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если директива "expires modified" выставляла дату в прошлом, то в строке
|
||
заголовка ответа "Cache-Control" выдавалось отрицательное число.<br/>
|
||
Спасибо Алексею Капранову.
|
||
</para>
|
||
<para lang="en">
|
||
if the "expires modified" set date in the past, then a negative number
|
||
was set in the "Cache-Control" response header line.<br/>
|
||
Thanks to Alex Kapranoff.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.31" date="2009-12-23">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь директива error_page может перенаправлять ответы со статусом 301 и 302.
|
||
</para>
|
||
<para lang="en">
|
||
now the "error_page" directive may redirect the 301 and 302 responses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные $geoip_city_continent_code, $geoip_latitude и $geoip_longitude.<br/>
|
||
Спасибо Arvind Sundararajan.
|
||
</para>
|
||
<para lang="en">
|
||
the $geoip_city_continent_code, $geoip_latitude, and $geoip_longitude
|
||
variables.<br/>
|
||
Thanks to Arvind Sundararajan.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_image_filter_module теперь всегда удаляет
|
||
EXIF и другие данные, если они занимают больше 5% в JPEG-файле.
|
||
</para>
|
||
<para lang="en">
|
||
now the ngx_http_image_filter_module deletes always EXIF and other
|
||
application specific data if the data consume more than 5% of a JPEG file.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx закрывал соединение при запросе закэшированного
|
||
ответа с пустым телом.<br/>
|
||
Спасибо Piotr Sikora.
|
||
</para>
|
||
<para lang="en">
|
||
nginx closed a connection if a cached response had an empty body.<br/>
|
||
Thanks to Piotr Sikora.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог не собираться gcc 4.x при использовании оптимизации -O2 и выше.<br/>
|
||
Спасибо Максиму Дунину и Денису Латыпову.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might not be built by gcc 4.x if the -O2 or higher optimization option
|
||
was used.<br/>
|
||
Thanks to Maxim Dounin and Denis F. Latypoff.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
регулярные выражения в location всегда тестировались с учётом регистра;
|
||
ошибка появилась в 0.8.25.
|
||
</para>
|
||
<para lang="en">
|
||
regular expressions in location were always tested in case-sensitive mode;
|
||
the bug had appeared in 0.8.25.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx кэшировал 304 ответ, если в заголовке проксируемого запроса
|
||
была строка "If-None-Match".<br/>
|
||
Спасибо Tim Dettrick и David Kostal.
|
||
</para>
|
||
<para lang="en">
|
||
nginx cached a 304 response if there was the "If-None-Match" header line
|
||
in a proxied request.<br/>
|
||
Thanks to Tim Dettrick and David Kostal.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows пытался дважды удалить временный файл
|
||
при перезаписи уже существующего файла.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows tried to delete a temporary file twice
|
||
if the file should replace an already existent file.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.30" date="2009-12-15">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь по умолчанию размер буфера директивы large_client_header_buffers
|
||
равен 8K.<br/>
|
||
Спасибо Andrew Cholakian.
|
||
</para>
|
||
<para lang="en">
|
||
now the default buffer size of the "large_client_header_buffers"
|
||
directive is 8K.<br/>
|
||
Thanks to Andrew Cholakian.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
файл conf/fastcgi.conf для простых конфигураций FastCGI.
|
||
</para>
|
||
<para lang="en">
|
||
the conf/fastcgi.conf for simple FastCGI configurations.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows пытался дважды переименовать временный файл
|
||
при перезаписи уже существующего файла.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows tried to rename a temporary file twice if the file
|
||
should replace an already existent file.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки double free or corruption, возникающей, если имя хоста не было найдено;
|
||
ошибка появилась в 0.8.22.<br/>
|
||
Спасибо Константину Свисту.
|
||
</para>
|
||
<para lang="en">
|
||
of "double free or corruption" error issued if host could not be resolved;
|
||
the bug had appeared in 0.8.22.<br/>
|
||
Thanks to Konstantin Svist.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в использовании libatomic на некоторых платформах.<br/>
|
||
Спасибо W-Mark Kubacki.
|
||
</para>
|
||
<para lang="en">
|
||
in libatomic usage on some platforms.<br/>
|
||
Thanks to W-Mark Kubacki.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.29" date="2009-11-30">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь для проксируемых ответов HTTP/0.9 в лог пишется код ответа "009".
|
||
</para>
|
||
<para lang="en">
|
||
now the "009" status code is written to an access log for proxied HTTP/0.9
|
||
responses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы addition_types, charset_types, gzip_types, ssi_types,
|
||
sub_filter_types и xslt_types поддерживают параметр "*".
|
||
</para>
|
||
<para lang="en">
|
||
the "addition_types", "charset_types", "gzip_types", "ssi_types",
|
||
"sub_filter_types", and "xslt_types" directives support an "*" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
использование встроенных атомарных операций GCC 4.1+.<br/>
|
||
Спасибо W-Mark Kubacki.
|
||
</para>
|
||
<para lang="en">
|
||
GCC 4.1+ built-in atomic operations usage.<br/>
|
||
Thanks to W-Mark Kubacki.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр --with-libatomic[=DIR] в configure.<br/>
|
||
Спасибо W-Mark Kubacki.
|
||
</para>
|
||
<para lang="en">
|
||
the --with-libatomic[=DIR] option in the configure.<br/>
|
||
Thanks to W-Mark Kubacki.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
listen unix domain сокет имели ограниченные права доступа.
|
||
</para>
|
||
<para lang="en">
|
||
listen unix domain socket had limited access rights.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
закэшированные ответы ответов HTTP/0.9 неправильно обрабатывались.
|
||
</para>
|
||
<para lang="en">
|
||
cached HTTP/0.9 responses were handled incorrectly.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
именованные выделения в регулярных выражениях, заданные как "?P<...>",
|
||
не работали в директиве server_name.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
regular expression named captures given by "?P<...>" did not work
|
||
in a "server_name" directive.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.28" date="2009-11-23">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с параметром --without-pcre;
|
||
ошибка появилась в 0.8.25.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with the --without-pcre parameter;
|
||
the bug had appeared in 0.8.25.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.27" date="2009-11-17">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
регулярные выражения не работали в nginx/Windows;
|
||
ошибка появилась в 0.8.25.
|
||
</para>
|
||
<para lang="en">
|
||
regular expressions did not work in nginx/Windows;
|
||
the bug had appeared in 0.8.25.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.26" date="2009-11-16">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании выделений в директиве rewrite;
|
||
ошибка появилась в 0.8.25.
|
||
</para>
|
||
<para lang="en">
|
||
in captures usage in "rewrite" directive;
|
||
the bug had appeared in 0.8.25.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался без параметра --with-debug;
|
||
ошибка появилась в 0.8.25.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built without the --with-debug option;
|
||
the bug had appeared in 0.8.25.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.25" date="2009-11-16">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь в лог ошибок не пишется сообщение, если переменная не найдена
|
||
с помощью метода $r->variable().
|
||
</para>
|
||
<para lang="en">
|
||
now no message is written in an error log if a variable is not found by
|
||
$r->variable() method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_degradation_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_degradation_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
именованные выделения в регулярных выражениях.
|
||
</para>
|
||
<para lang="en">
|
||
regular expression named captures.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь при использовании переменных в директиве proxy_pass не требуется
|
||
задавать URI.
|
||
</para>
|
||
<para lang="en">
|
||
now URI part is not required a "proxy_pass" directive if variables are used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь директива msie_padding работает и для Chrome.
|
||
</para>
|
||
<para lang="en">
|
||
now the "msie_padding" directive works for Chrome too.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе происходил segmentation fault при недостатке памяти;
|
||
ошибка появилась в 0.8.18.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in a worker process on low memory condition;
|
||
the bug had appeared in 0.8.18.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx передавал сжатые ответы клиентам, не поддерживающим сжатие,
|
||
при настройках gzip_static on и gzip_vary off;
|
||
ошибка появилась в 0.8.16.
|
||
</para>
|
||
<para lang="en">
|
||
nginx sent gzipped responses to clients those do not support gzip,
|
||
if "gzip_static on" and "gzip_vary off";
|
||
the bug had appeared in 0.8.16.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.24" date="2009-11-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx всегда добавлял строку "Content-Encoding: gzip" в заголовок
|
||
304-ых ответов модуля ngx_http_gzip_static_module.
|
||
</para>
|
||
<para lang="en">
|
||
nginx always added "Content-Encoding: gzip" response header line
|
||
in 304 responses sent by ngx_http_gzip_static_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался без параметра --with-debug;
|
||
ошибка появилась в 0.8.23.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built without the --with-debug option;
|
||
the bug had appeared in 0.8.23.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр "unix:" в директиве set_real_ip_from неправильно наследовался
|
||
с предыдущего уровня.
|
||
</para>
|
||
<para lang="en">
|
||
the "unix:" parameter of the "set_real_ip_from" directive inherited
|
||
incorrectly from previous level.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в resolver'е при определении пустого имени.
|
||
</para>
|
||
<para lang="en">
|
||
in resolving empty name.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.23" date="2009-11-11">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
теперь SSL/TLS renegotiation запрещён.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
now SSL/TLS renegotiation is disabled.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
listen unix domain сокет не наследовался во время обновления без перерыва.
|
||
</para>
|
||
<para lang="en">
|
||
listen unix domain socket did not inherit while online upgrade.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр "unix:" в директиве set_real_ip_from не работал без ещё
|
||
одной директивы с любым IP-адресом.
|
||
</para>
|
||
<para lang="en">
|
||
the "unix:" parameter of the "set_real_ip_from" directive did not without
|
||
yet another directive with any IP address.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
segmentation fault и зацикливания в resolver'е.
|
||
</para>
|
||
<para lang="en">
|
||
segmentation fault and infinite looping in resolver.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в resolver'е.<br/>
|
||
Спасибо Артёму Бохану.
|
||
</para>
|
||
<para lang="en">
|
||
in resolver.<br/>
|
||
Thanks to Artem Bokhan.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.22" date="2009-11-03">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_bind, fastcgi_bind и memcached_bind.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_bind", "fastcgi_bind", and "memcached_bind" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы access и deny поддерживают IPv6.
|
||
</para>
|
||
<para lang="en">
|
||
the "access" and the "deny" directives support IPv6.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива set_real_ip_from поддерживает IPv6 адреса в заголовках запроса.
|
||
</para>
|
||
<para lang="en">
|
||
the "set_real_ip_from" directive supports IPv6 addresses in request headers.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр "unix:" в директиве set_real_ip_from.
|
||
</para>
|
||
<para lang="en">
|
||
the "unix:" parameter of the "set_real_ip_from" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не удалял unix domain сокет после тестирования конфигурации.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not delete unix domain socket after configuration testing.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx удалял unix domain сокет во время обновления без перерыва.
|
||
</para>
|
||
<para lang="en">
|
||
nginx deleted unix domain socket while online upgrade.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
оператор "!-x" не работал.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
the "!-x" operator did not work.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault
|
||
при использовании limit_rate в HTTPS сервере.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process,
|
||
if limit_rate was used in HTTPS server.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при записи в лог переменной $limit_rate
|
||
в рабочем процессе происходил segmentation fault.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process
|
||
while $limit_rate logging.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если внутри блока server не было директивы listen;
|
||
ошибка появилась в 0.8.21.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in a worker process,
|
||
if there was no "listen" directive in "server" block;
|
||
the bug had appeared in 0.8.21.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.21" date="2009-10-26">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь ключ -V показывает статус поддержки TLS SNI.
|
||
</para>
|
||
<para lang="en">
|
||
now the "-V" switch shows TLS SNI support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива listen модуля HTTP поддерживает unix domain сокеты.<br/>
|
||
Спасибо Hongli Lai.
|
||
</para>
|
||
<para lang="en">
|
||
the "listen" directive of the HTTP module supports unix domain sockets.<br/>
|
||
Thanks to Hongli Lai.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр "default_server" в директиве listen.
|
||
</para>
|
||
<para lang="en">
|
||
the "default_server" parameter of the "listen" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь параметр "default" не обязателен для установки параметров listen-сокета.
|
||
</para>
|
||
<para lang="en">
|
||
now a "default" parameter is not required to set listen socket options.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не поддерживал даты в 2038 году на 32-битных платформах;
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not support dates in 2038 year on 32-bit platforms;
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки сокетов;
|
||
ошибка появилась в 0.8.11.
|
||
</para>
|
||
<para lang="en">
|
||
socket leak;
|
||
the bug had appeared in 0.8.11.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.20" date="2009-10-14">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь по умолчанию используются следующие шифры SSL: "HIGH:!ADH:!MD5".
|
||
</para>
|
||
<para lang="en">
|
||
now default SSL ciphers are "HIGH:!ADH:!MD5".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_autoindex_module не показывал последний слэш для линков
|
||
на каталоги;
|
||
ошибка появилась в 0.7.15.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_autoindex_module did not show the trailing slash in links to
|
||
a directory;
|
||
the bug had appeared in 0.7.15.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не закрывал лог, заданный параметром конфигурации --error-log-path;
|
||
ошибка появилась в 0.7.53.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not close a log file set by the --error-log-path configuration option;
|
||
the bug had appeared in 0.7.53.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не считал запятую разделителем в строке "Cache-Control" в
|
||
заголовке ответа бэкенда.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not treat a comma as separator in the "Cache-Control" backend response
|
||
header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows мог не создать временный файл, файл в кэше или файл
|
||
с помощью директив proxy/fastcgi_store, если рабочий процесс не имел
|
||
достаточно прав для работы с каталогами верхнего уровня.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows might not create temporary file, a cache file, or
|
||
"proxy/fastcgi_store"d file if a worker had no enough access rights
|
||
for top level directories.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
строки "Set-Cookie" и "P3P" в заголовке ответа FastCGI-сервера не скрывались
|
||
при кэшировании, если не использовались директивы fastcgi_hide_header
|
||
с любыми параметрами.
|
||
</para>
|
||
<para lang="en">
|
||
the "Set-Cookie" and "P3P" FastCGI response header lines were not hidden
|
||
while caching if no "fastcgi_hide_header" directives were used with
|
||
any parameters.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx неверно считал размер кэша на диске.
|
||
</para>
|
||
<para lang="en">
|
||
nginx counted incorrectly disk cache size.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.19" date="2009-10-06">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь протокол SSLv2 по умолчанию запрещён.
|
||
</para>
|
||
<para lang="en">
|
||
now SSLv2 protocol is disabled by default.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь по умолчанию используются следующие шифры SSL:
|
||
"ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM".
|
||
</para>
|
||
<para lang="en">
|
||
now default SSL ciphers are "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива limit_req не работала;
|
||
ошибка появилась в 0.8.18.
|
||
</para>
|
||
<para lang="en">
|
||
a "limit_req" directive did not work;
|
||
the bug had appeared in 0.8.18.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.18" date="2009-10-06">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива read_ahead.
|
||
</para>
|
||
<para lang="en">
|
||
the "read_ahead" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь можно использовать несколько директив perl_modules.
|
||
</para>
|
||
<para lang="en">
|
||
now several "perl_modules" directives may be used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы limit_req_log_level и limit_conn_log_level.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_req_log_level" and "limit_conn_log_level" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь директива limit_req соответствует алгоритму leaky bucket.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
now "limit_req" directive conforms to the leaky bucket algorithm.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не работал на Linux/sparc.<br/>
|
||
Спасибо Marcus Ramberg.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not work on Linux/sparc.<br/>
|
||
Thanks to Marcus Ramberg.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx слал символ '\0' в строке "Location" в заголовке в ответе на запрос
|
||
MKCOL.<br/>
|
||
Спасибо Xie Zhenye.
|
||
</para>
|
||
<para lang="en">
|
||
nginx sent '\0' in a "Location" response header line on MKCOL request.<br/>
|
||
Thanks to Xie Zhenye.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
вместо кода ответа 499 в лог записывался код 0;
|
||
ошибка появилась в 0.8.11.
|
||
</para>
|
||
<para lang="en">
|
||
zero status code was logged instead of 499 status code;
|
||
the bug had appeared in 0.8.11.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки сокетов;
|
||
ошибка появилась в 0.8.11.
|
||
</para>
|
||
<para lang="en">
|
||
socket leak;
|
||
the bug had appeared in 0.8.11.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.17" date="2009-09-28">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
теперь символы "/../" запрещены в строке "Destination" в заголовке запроса.
|
||
</para>
|
||
<para lang="en">
|
||
now "/../" are disabled in "Destination" request header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь значение переменной $host всегда в нижнем регистре.
|
||
</para>
|
||
<para lang="en">
|
||
now $host variable value is always low case.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $ssl_session_id.
|
||
</para>
|
||
<para lang="en">
|
||
the $ssl_session_id variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки сокетов;
|
||
ошибка появилась в 0.8.11.
|
||
</para>
|
||
<para lang="en">
|
||
socket leak;
|
||
the bug had appeared in 0.8.11.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.16" date="2009-09-22">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива image_filter_transparency.
|
||
</para>
|
||
<para lang="en">
|
||
the "image_filter_transparency" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива "addition_types" была неверно названа "addtion_types".
|
||
</para>
|
||
<para lang="en">
|
||
"addition_types" directive was incorrectly named "addtion_types".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
порчи кэша resolver'а.<br/>
|
||
Спасибо Matthew Dempsky.
|
||
</para>
|
||
<para lang="en">
|
||
resolver cache poisoning.<br/>
|
||
Thanks to Matthew Dempsky.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки памяти в resolver'е.<br/>
|
||
Спасибо Matthew Dempsky.
|
||
</para>
|
||
<para lang="en">
|
||
memory leak in resolver.<br/>
|
||
Thanks to Matthew Dempsky.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
неверная строка запроса в переменной $request записывалась в access_log
|
||
только при использовании error_log на уровне info или debug.
|
||
</para>
|
||
<para lang="en">
|
||
invalid request line in $request variable was written in access_log
|
||
only if error_log was set to "info" or "debug" level.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в поддержке альфа-канала PNG в модуле ngx_http_image_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
in PNG alpha-channel support in the ngx_http_image_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx всегда добавлял строку "Vary: Accept-Encoding" в заголовок ответа,
|
||
если обе директивы gzip_static и gzip_vary были включены.
|
||
</para>
|
||
<para lang="en">
|
||
nginx always added "Vary: Accept-Encoding" response header line,
|
||
if both "gzip_static" and "gzip_vary" were on.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в поддержке кодировки UTF-8 директивой try_files в nginx/Windows.
|
||
</para>
|
||
<para lang="en">
|
||
in UTF-8 encoding support by "try_files" directive in nginx/Windows.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании post_action;
|
||
ошибка появилась в 0.8.11.<br/>
|
||
Спасибо Игорю Артемьеву.
|
||
</para>
|
||
<para lang="en">
|
||
in "post_action" directive usage;
|
||
the bug had appeared in 0.8.11.<br/>
|
||
Thanks to Igor Artemiev.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.15" date="2009-09-14">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
при обработке специально созданного запроса
|
||
в рабочем процессе мог произойти segmentation fault.<br/>
|
||
Спасибо Chris Ries.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
while specially crafted request handling.<br/>
|
||
Thanks to Chris Ries.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если были описаны имена .domain.tld, .sub.domain.tld и .domain-some.tld,
|
||
то имя .sub.domain.tld попадало под маску .domain.tld.
|
||
</para>
|
||
<para lang="en">
|
||
if names .domain.tld, .sub.domain.tld, and .domain-some.tld were defined,
|
||
then the name .sub.domain.tld was matched by .domain.tld.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в поддержке прозрачности в модуле ngx_http_image_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
in transparency support in the ngx_http_image_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в файловом AIO.
|
||
</para>
|
||
<para lang="en">
|
||
in file AIO.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании X-Accel-Redirect;
|
||
ошибка появилась в 0.8.11.
|
||
</para>
|
||
<para lang="en">
|
||
in X-Accel-Redirect usage;
|
||
the bug had appeared in 0.8.11.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании встроенного перла;
|
||
ошибка появилась в 0.8.11.
|
||
</para>
|
||
<para lang="en">
|
||
in embedded perl module;
|
||
the bug had appeared in 0.8.11.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.14" date="2009-09-07">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
устаревший закэшированный запрос мог залипнуть в состоянии "UPDATING".
|
||
</para>
|
||
<para lang="en">
|
||
an expired cached response might stick in the "UPDATING" state.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании error_log на уровне info или debug
|
||
в рабочем процессе мог произойти segmentation fault.<br/>
|
||
Спасибо Сергею Боченкову.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process,
|
||
if error_log was set to info or debug level.<br/>
|
||
Thanks to Sergey Bochenkov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании встроенного перла;
|
||
ошибка появилась в 0.8.11.
|
||
</para>
|
||
<para lang="en">
|
||
in embedded perl module;
|
||
the bug had appeared in 0.8.11.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива error_page не перенаправляла ошибку 413;
|
||
ошибка появилась в 0.6.10.
|
||
</para>
|
||
<para lang="en">
|
||
an "error_page" directive did not redirect a 413 error;
|
||
the bug had appeared in 0.6.10.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.13" date="2009-08-31">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве "aio sendfile";
|
||
ошибка появилась в 0.8.12.
|
||
</para>
|
||
<para lang="en">
|
||
in the "aio sendfile" directive;
|
||
the bug had appeared in 0.8.12.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался без параметра --with-file-aio на FreeBSD;
|
||
ошибка появилась в 0.8.12.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built without the --with-file-aio option on FreeBSD;
|
||
the bug had appeared in 0.8.12.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.12" date="2009-08-31">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр sendfile в директиве aio во FreeBSD.
|
||
</para>
|
||
<para lang="en">
|
||
the "sendfile" parameter in the "aio" directive on FreeBSD.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании try_files;
|
||
ошибка появилась в 0.8.11.
|
||
</para>
|
||
<para lang="en">
|
||
in try_files;
|
||
the bug had appeared in 0.8.11.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании memcached;
|
||
ошибка появилась в 0.8.11.
|
||
</para>
|
||
<para lang="en">
|
||
in memcached;
|
||
the bug had appeared in 0.8.11.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
<changes ver="0.8.11" date="2009-08-28">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь директива "gzip_disable msie6" не запрещает сжатие для
|
||
<nobr>MSIE 6.0 SV1.</nobr>
|
||
</para>
|
||
<para lang="en">
|
||
now directive "gzip_disable msie6" does not disable gzipping for
|
||
<nobr>MSIE 6.0 SV1.</nobr>
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка файлового AIO во FreeBSD и Linux.
|
||
</para>
|
||
<para lang="en">
|
||
file AIO support on FreeBSD and Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива directio_alignment.
|
||
</para>
|
||
<para lang="en">
|
||
the "directio_alignment" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.10" date="2009-08-24">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечек памяти при использовании базы GeoIP City.
|
||
</para>
|
||
<para lang="en">
|
||
memory leaks if GeoIP City database was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при копировании временных файлов в постоянное место хранения;
|
||
ошибка появилась в 0.8.9.
|
||
</para>
|
||
<para lang="en">
|
||
in copying temporary files to permanent storage area;
|
||
the bug had appeared in 0.8.9.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.9" date="2009-08-17">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь стартовый загрузчик кэша работает в отдельном процесс;
|
||
это должно улучшить обработку больших кэшей.
|
||
</para>
|
||
<para lang="en">
|
||
now the start cache loader runs in a separate process;
|
||
this should improve large caches handling.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь временные файлы и постоянное место хранения могут располагаться
|
||
на разных файловых системах.
|
||
</para>
|
||
<para lang="en">
|
||
now temporary files and permanent storage area may reside at
|
||
different file systems.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.8" date="2009-08-10">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке заголовков ответа, разделённых в FastCGI-записях.
|
||
</para>
|
||
<para lang="en">
|
||
in handling FastCGI headers split in records.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если запрос обрабатывался в двух проксированных или FastCGI location'ах
|
||
и в первом из них использовалось кэширование,
|
||
то в рабочем процессе происходил segmentation fault;
|
||
ошибка появилась в 0.8.7.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process,
|
||
if a request was handled in two proxied or FastCGIed locations
|
||
and a caching was enabled in the first location;
|
||
the bug had appeared in 0.8.7.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.7" date="2009-07-27">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
минимальная поддерживаемая версия OpenSSL—0.9.7.
|
||
</para>
|
||
<para lang="en">
|
||
minimum supported OpenSSL version is 0.9.7.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
параметр ask директивы ssl_verify_client изменён на параметр optional
|
||
и теперь он проверяет клиентский сертификат, если он был предложен.<br/>
|
||
Спасибо Brice Figureau.
|
||
</para>
|
||
<para lang="en">
|
||
the "ask" parameter of the "ssl_verify_client" directive was changed
|
||
to the "optional" parameter and now it checks a client certificate if it was
|
||
offered.<br/>
|
||
Thanks to Brice Figureau.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $ssl_client_verify.<br/>
|
||
Спасибо Brice Figureau.
|
||
</para>
|
||
<para lang="en">
|
||
the $ssl_client_verify variable.<br/>
|
||
Thanks to Brice Figureau.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssl_crl.<br/>
|
||
Спасибо Brice Figureau.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_crl" directive.<br/>
|
||
Thanks to Brice Figureau.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр proxy директивы geo.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy" parameter of the "geo" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива image_filter поддерживает переменные для задания размеров.
|
||
</para>
|
||
<para lang="en">
|
||
the "image_filter" directive supports variables for setting size.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
использование переменной $ssl_client_cert портило память;
|
||
ошибка появилась в 0.7.7.<br/>
|
||
Спасибо Сергею Журавлёву.
|
||
</para>
|
||
<para lang="en">
|
||
the $ssl_client_cert variable usage corrupted memory;
|
||
the bug had appeared in 0.7.7.<br/>
|
||
Thanks to Sergey Zhuravlev.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы proxy_pass_header и fastcgi_pass_header" не передавали клиенту
|
||
строки "X-Accel-Redirect", "X-Accel-Limit-Rate", "X-Accel-Buffering" и
|
||
"X-Accel-Charset" из заголовка ответа бэкенда.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
"proxy_pass_header" and "fastcgi_pass_header" directives did not pass to
|
||
a client the "X-Accel-Redirect", "X-Accel-Limit-Rate", "X-Accel-Buffering",
|
||
and "X-Accel-Charset" lines from backend response header.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке строк "Last-Modified" и "Accept-Ranges" в заголовке ответа бэкенда;
|
||
ошибка появилась в 0.7.44.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
in handling "Last-Modified" and "Accept-Ranges" backend response header lines;
|
||
the bug had appeared in 0.7.44.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки "[alert] zero size buf" при получении пустых ответы в подзапросах;
|
||
ошибка появилась в 0.8.5.
|
||
</para>
|
||
<para lang="en">
|
||
the "[alert] zero size buf" error if subrequest returns an empty response;
|
||
the bug had appeared in 0.8.5.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.6" date="2009-07-20">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_geoip_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_geoip_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
XSLT-фильтр мог выдавать ошибку "not well formed XML document" для
|
||
правильного документа.<br/>
|
||
Спасибо Kuramoto Eiji.
|
||
</para>
|
||
<para lang="en">
|
||
XSLT filter may fail with message "not well formed XML document"
|
||
for valid XML document.<br/>
|
||
Thanks to Kuramoto Eiji.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в MacOSX, Cygwin и nginx/Windows при проверке location'ов, заданных
|
||
регулярным выражением, теперь всегда делается сравнение без учёта
|
||
регистра символов.
|
||
</para>
|
||
<para lang="en">
|
||
now in MacOSX, Cygwin, and nginx/Windows locations given by a regular
|
||
expression are always tested in case insensitive mode.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь nginx/Windows игнорирует точки в конце URI.<br/>
|
||
Спасибо Hugo Leisink.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx/Windows ignores trailing dots in URI.<br/>
|
||
Thanks to Hugo Leisink.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
имя файла указанного в --conf-path игнорировалось при установке;
|
||
ошибка появилась в 0.6.6.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
name of file specified in --conf-path was not honored during installation;
|
||
the bug had appeared in 0.6.6.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.5" date="2009-07-13">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь nginx разрешает подчёркивания в методе запроса.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx allows underscores in a request method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTP Basic-аутентификации на Windows
|
||
для неверных имени/пароля возвращалась 500-ая ошибка.
|
||
</para>
|
||
<para lang="en">
|
||
a 500 error code was returned for invalid login/password while HTTP
|
||
Basic authentication on Windows.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответы модуля ngx_http_perl_module не работали в подзапросах.
|
||
</para>
|
||
<para lang="en">
|
||
ngx_http_perl_module responses did not work in subrequests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_limit_req_module.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
in ngx_http_limit_req_module.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.4" date="2009-06-22">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с параметром --without-http-cache;
|
||
ошибка появилась в 0.8.3.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built --without-http-cache;
|
||
the bug had appeared in 0.8.3.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.3" date="2009-06-19">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $upstream_cache_status.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_cache_status variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на MacOSX 10.6.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on MacOSX 10.6.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с параметром --without-http-cache;
|
||
ошибка появилась в 0.8.2.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built --without-http-cache;
|
||
the bug had appeared in 0.8.2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если использовался перехват 401 ошибки от бэкенда и бэкенд
|
||
не возвращал строку "WWW-Authenticate" в заголовке ответа,
|
||
то в рабочем процессе происходил segmentation fault.<br/>
|
||
Спасибо Евгению Мычло.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process,
|
||
if a backend 401 error was intercepted and the backend did not set
|
||
the "WWW-Authenticate" response header line.<br/>
|
||
Thanks to Eugene Mychlo.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.2" date="2009-06-15">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
во взаимодействии open_file_cache и proxy/fastcgi кэша на старте.
|
||
</para>
|
||
<para lang="en">
|
||
in open_file_cache and proxy/fastcgi cache interaction on start up.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
open_file_cache мог кэшировать открытые файлы очень долго;
|
||
ошибка появилась в 0.7.4.
|
||
</para>
|
||
<para lang="en">
|
||
open_file_cache might cache open file descriptors too long;
|
||
the bug had appeared in 0.7.4.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.1" date="2009-06-08">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр updating в директивах proxy_cache_use_stale и fastcgi_cache_use_stale.
|
||
</para>
|
||
<para lang="en">
|
||
the "updating" parameter in "proxy_cache_use_stale" and
|
||
"fastcgi_cache_use_stale" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
строки "If-Modified-Since", "If-Range" и им подобные в заголовке запроса
|
||
клиента передавались бэкенду при кэшировании, если не использовалась
|
||
директива proxy_set_header с любыми параметрами.
|
||
</para>
|
||
<para lang="en">
|
||
the "If-Modified-Since", "If-Range", etc. client request header lines
|
||
were passed to backend while caching if no "proxy_set_header" directive
|
||
was used with any parameters.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
строки "Set-Cookie" и "P3P" в заголовке ответа бэкенда не скрывались
|
||
при кэшировании, если не использовались директивы
|
||
proxy_hide_header/fastcgi_hide_header с любыми параметрами.
|
||
</para>
|
||
<para lang="en">
|
||
the "Set-Cookie" and "P3P" response header lines were not hidden while caching
|
||
if no "proxy_hide_header/fastcgi_hide_header" directives were used with
|
||
any parameters.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_image_filter_module не понимал формат GIF87a.<br/>
|
||
Спасибо Денису Ильиных.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_image_filter_module did not support GIF87a format.<br/>
|
||
Thanks to Denis Ilyinyh.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Solaris 10 и более ранних;
|
||
ошибка появилась в 0.7.56.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built modules on Solaris 10 and early;
|
||
the bug had appeared in 0.7.56.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.8.0" date="2009-06-02">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива keepalive_requests.
|
||
</para>
|
||
<para lang="en">
|
||
the "keepalive_requests" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива limit_rate_after.<br/>
|
||
Спасибо Ivan Debnar.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_rate_after" directive.<br/>
|
||
Thanks to Ivan Debnar.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
XSLT-фильтр не работал в подзапросах.
|
||
</para>
|
||
<para lang="en">
|
||
XLST filter did not work in subrequests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
обработке относительных путей в nginx/Windows.
|
||
</para>
|
||
<para lang="en">
|
||
in relative paths handling in nginx/Windows.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в proxy_store, fastcgi_store, proxy_cache и fastcgi_cache в nginx/Windows.
|
||
</para>
|
||
<para lang="en">
|
||
in proxy_store, fastcgi_store, proxy_cache, and fastcgi_cache in nginx/Windows.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке ошибок выделения памяти.<br/>
|
||
Спасибо Максиму Дунину и Кириллу Коринскому.
|
||
</para>
|
||
<para lang="en">
|
||
in memory allocation error handling.<br/>
|
||
Thanks to Maxim Dounin and Kirill A. Korinskiy.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.59" date="2009-05-25">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_cache_methods и fastcgi_cache_methods.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_cache_methods" and "fastcgi_cache_methods" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки сокетов;
|
||
ошибка появилась в 0.7.25.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
socket leak;
|
||
the bug had appeared in 0.7.25.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании переменной $request_body
|
||
в рабочем процессе происходил segmentation fault,
|
||
если в запросе не было тела;
|
||
ошибка появилась в 0.7.58.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process,
|
||
<nobr>if a request</nobr> had no body and the $request_body
|
||
variable was used;<br/>
|
||
the bug had appeared in 0.7.58.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
SSL-модули могли не собираться на Solaris и Linux;
|
||
ошибка появилась в 0.7.56.
|
||
</para>
|
||
<para lang="en">
|
||
the SSL modules might not built on Solaris and Linux;<br/>
|
||
the bug had appeared in 0.7.56.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответы модуля ngx_http_xslt_filter_module не обрабатывались
|
||
SSI-, charset- и gzip-фильтрами.
|
||
</para>
|
||
<para lang="en">
|
||
ngx_http_xslt_filter_module responses were not handled by SSI, charset,
|
||
and gzip filters.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива charset не ставила кодировку для ответов модуля
|
||
ngx_http_gzip_static_module.
|
||
</para>
|
||
<para lang="en">
|
||
a "charset" directive did not set a charset to ngx_http_gzip_static_module
|
||
responses.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.58" date="2009-05-18">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива listen почтового прокси-сервера поддерживает IPv6.
|
||
</para>
|
||
<para lang="en">
|
||
a "listen" directive of the mail proxy module supports IPv6.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива image_filter_jpeg_quality.
|
||
</para>
|
||
<para lang="en">
|
||
the "image_filter_jpeg_quality" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива client_body_in_single_buffer.
|
||
</para>
|
||
<para lang="en">
|
||
the "client_body_in_single_buffer" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $request_body.
|
||
</para>
|
||
<para lang="en">
|
||
the $request_body variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_autoindex_module в ссылках на имена файлов,
|
||
содержащих символ ":".
|
||
</para>
|
||
<para lang="en">
|
||
in ngx_http_autoindex_module in file name links
|
||
having a ":" symbol in the name.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
процедура "make upgrade" не работала;
|
||
ошибка появилась в 0.7.53.<br/>
|
||
Спасибо Денису Латыпову.
|
||
</para>
|
||
<para lang="en">
|
||
"make upgrade" procedure did not work;
|
||
the bug had appeared in 0.7.53.<br/>
|
||
Thanks to Denis F. Latypoff.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.57" date="2009-05-12">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при перенаправлении ошибок модуля ngx_http_image_filter_module
|
||
в именованный location в рабочем процессе происходил floating-point fault;
|
||
ошибка появилась в 0.7.56.
|
||
</para>
|
||
<para lang="en">
|
||
a floating-point fault occurred in worker process,
|
||
if the ngx_http_image_filter_module errors were redirected to named location;
|
||
the bug had appeared in 0.7.56.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.56" date="2009-05-11">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
nginx/Windows поддерживает IPv6 в директиве listen модуля HTTP.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows supports IPv6 in a "listen" directive of the HTTP module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_image_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
in ngx_http_image_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.55" date="2009-05-06">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметры http_XXX в директивах proxy_cache_use_stale
|
||
и fastcgi_cache_use_stale не работали.
|
||
</para>
|
||
<para lang="en">
|
||
the http_XXX parameters in "proxy_cache_use_stale" and
|
||
"fastcgi_cache_use_stale" directives did not work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
fastcgi кэш не кэшировал ответы, состоящие только из заголовка.
|
||
</para>
|
||
<para lang="en">
|
||
fastcgi cache did not cache header only responses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки "select() failed (9: Bad file descriptor)" в nginx/Unix
|
||
и "select() failed (10038: ...)" в nginx/Windows.
|
||
</para>
|
||
<para lang="en">
|
||
of "select() failed (9: Bad file descriptor)" error in nginx/Unix
|
||
and "select() failed (10038: ...)" error in nginx/Windows.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы debug_connection
|
||
в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 0.7.54.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process,
|
||
if an "debug_connection" directive was used;
|
||
the bug had appeared in 0.7.54.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в сборке модуля ngx_http_image_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
fix ngx_http_image_filter_module building errors.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
файлы больше 2G не передавались с использованием $r->sendfile.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
the files bigger than 2G could not be transferred using $r->sendfile.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.54" date="2009-05-01">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_image_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_image_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_ignore_headers и fastcgi_ignore_headers.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_ignore_headers" and "fastcgi_ignore_headers" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании переменных "open_file_cache_errors on"
|
||
в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 0.7.53.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process,
|
||
if an "open_file_cache_errors off" directive was used;
|
||
the bug had appeared in 0.7.53.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива "port_in_redirect off" не работала;
|
||
ошибка появилась в 0.7.39.
|
||
</para>
|
||
<para lang="en">
|
||
the "port_in_redirect off" directive did not work;
|
||
the bug had appeared in 0.7.39.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
улучшение обработки ошибок метода select.
|
||
</para>
|
||
<para lang="en">
|
||
improve handling of "select" method errors.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки "select() failed (10022: ...)" в nginx/Windows.
|
||
</para>
|
||
<para lang="en">
|
||
of "select() failed (10022: ...)" error in nginx/Windows.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в текстовых сообщениях об ошибках в nginx/Windows;
|
||
ошибка появилась в 0.7.53.
|
||
</para>
|
||
<para lang="en">
|
||
in error text descriptions in nginx/Windows;
|
||
the bug had appeared in 0.7.53.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.53" date="2009-04-27">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь лог, указанный в --error-log-path, создаётся с самого начала работы.
|
||
</para>
|
||
<para lang="en">
|
||
now a log set by --error-log-path is created from the very start-up.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь ошибки и предупреждения при старте записываются в error_log
|
||
и выводятся на stderr.
|
||
</para>
|
||
<para lang="en">
|
||
now the start up errors and warnings are outputted to an error_log and stderr.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
при сборке с пустым параметром --prefix= nginx использует как префикс каталог,
|
||
в котором он был запущен.
|
||
</para>
|
||
<para lang="en">
|
||
the empty --prefix= configure parameter forces nginx to use a directory
|
||
where it was run as prefix.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ключ -p.
|
||
</para>
|
||
<para lang="en">
|
||
the -p switch.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ключ -s на Unix-платформах.
|
||
</para>
|
||
<para lang="en">
|
||
the -s switch on Unix platforms.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ключи -? и -h.<br/>
|
||
Спасибо Jerome Loyet.
|
||
</para>
|
||
<para lang="en">
|
||
the -? and -h switches.<br/>
|
||
Thanks to Jerome Loyet.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь ключи можно задавать в сжатой форме.
|
||
</para>
|
||
<para lang="en">
|
||
now switches may be set in condensed form.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx/Windows не работал, если файл конфигурации был задан ключом -c.
|
||
</para>
|
||
<para lang="en">
|
||
nginx/Windows did not work if configuration file was given by the -c switch.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директив proxy_store, fastcgi_store,
|
||
proxy_cache или fastcgi_cache временные файлы могли не удаляться.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
temporary files might be not removed if the "proxy_store", "fastcgi_store",
|
||
"proxy_cache", or "fastcgi_cache" were used.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в заголовке Auth-Method запроса серверу аутентификации почтового
|
||
прокси-сервера передавалось неверное значение;
|
||
ошибка появилась в 0.7.34.<br/>
|
||
Спасибо Simon Lecaille.
|
||
</para>
|
||
<para lang="en">
|
||
an incorrect value was passed to mail proxy authentication server
|
||
in "Auth-Method" header line;
|
||
the bug had appeared<br/>
|
||
in 0.7.34.<br/>
|
||
Thanks to Simon Lecaille.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при логгировании на Linux не писались текстовые описания системных ошибок;
|
||
ошибка появилась в 0.7.45.
|
||
</para>
|
||
<para lang="en">
|
||
system error text descriptions were not logged on Linux;<br/>
|
||
the bug had appeared in 0.7.45.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива fastcgi_cache_min_uses не работала.<br/>
|
||
Спасибо Андрею Воробьёву.
|
||
</para>
|
||
<para lang="en">
|
||
the "fastcgi_cache_min_uses" directive did not work.<br/>
|
||
Thanks to Andrew Vorobyoff.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.52" date="2009-04-20">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
первая бинарная версия под Windows.
|
||
</para>
|
||
<para lang="en">
|
||
the first native Windows binary release.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
корректная обработка метода HEAD при кэшировании.
|
||
</para>
|
||
<para lang="en">
|
||
in processing HEAD method while caching.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
корректная обработка строк "If-Modified-Since", "If-Range" и им подобных
|
||
в заголовке запроса клиента при кэшировании.
|
||
</para>
|
||
<para lang="en">
|
||
in processing the "If-Modified-Since", "If-Range", etc. client request
|
||
header lines while caching.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь строки "Set-Cookie" и "P3P" скрываются в заголовке ответа
|
||
для закэшированных ответов.
|
||
</para>
|
||
<para lang="en">
|
||
now the "Set-Cookie" and "P3P" header lines are hidden in cacheable responses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если nginx был собран с модулем ngx_http_perl_module и perl
|
||
поддерживал потоки, то при выходе основного процесса
|
||
могла выдаваться ошибка "panic: MUTEX_LOCK".
|
||
</para>
|
||
<para lang="en">
|
||
if nginx was built with the ngx_http_perl_module and with a perl which
|
||
supports threads, then during a master process exit
|
||
the message "panic: MUTEX_LOCK" might be issued.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с параметром --without-http-cache;
|
||
ошибка появилась в 0.7.48.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built --without-http-cache;
|
||
the bug had appeared in 0.7.48.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на платформах, отличных от i386, amd64, sparc и ppc;
|
||
ошибка появилась в 0.7.42.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on platforms different from i386, amd64, sparc,
|
||
and ppc;
|
||
the bug had appeared in 0.7.42.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.51" date="2009-04-12">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива try_files поддерживает код ответа в последнем параметре.
|
||
</para>
|
||
<para lang="en">
|
||
the "try_files" directive supports a response code in the fallback parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь в директиве return можно использовать любой код ответа.
|
||
</para>
|
||
<para lang="en">
|
||
now any response code can be used in the "return" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива error_page делала внешний редирект без строки запроса;
|
||
ошибка появилась в 0.7.44.
|
||
</para>
|
||
<para lang="en">
|
||
the "error_page" directive made an external redirect without query string;
|
||
the bug had appeared in 0.7.44.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если сервера слушали на нескольких явно описанных адресах,
|
||
то виртуальные сервера могли не работать;
|
||
ошибка появилась в 0.7.39.
|
||
</para>
|
||
<para lang="en">
|
||
if servers listened on several defined explicitly addresses,
|
||
then virtual servers might not work;
|
||
the bug had appeared in 0.7.39.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.50" date="2009-04-06">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменные $arg_... не работали;
|
||
ошибка появилась в 0.7.49.
|
||
</para>
|
||
<para lang="en">
|
||
the $arg_... variables did not work;
|
||
the bug had appeared in 0.7.49.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.49" date="2009-04-06">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании переменных $arg_...
|
||
в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 0.7.48.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process,
|
||
if the $arg_... variables were used;
|
||
the bug had appeared in 0.7.48.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.48" date="2009-04-06">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_cache_key.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_cache_key" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь nginx учитывает при кэшировании строки "X-Accel-Expires",
|
||
"Expires" и "Cache-Control" в заголовке ответа бэкенда.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx takes into account the "X-Accel-Expires", "Expires", and
|
||
"Cache-Control" header lines in a backend response.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь nginx кэширует только ответы на запросы GET.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx caches responses for the GET requests only.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива fastcgi_cache_key не наследовалась.
|
||
</para>
|
||
<para lang="en">
|
||
the "fastcgi_cache_key" directive was not inherited.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменные $arg_... не работали с SSI-подзапросами.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
the $arg_... variables did not work with SSI subrequests.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с библиотекой uclibc.<br/>
|
||
Спасибо Timothy Redaelli.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with uclibc library.<br/>
|
||
Thanks to Timothy Redaelli.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на OpenBSD;
|
||
ошибка появилась <nobr>в 0.7.46.</nobr>
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on OpenBSD;
|
||
the bug had <nobr>appeared in 0.7.46.</nobr>
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.47" date="2009-04-01">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на FreeBSD 6 и более ранних версиях;
|
||
ошибка появилась в 0.7.46.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on FreeBSD 6 and early versions;
|
||
the bug had appeared in 0.7.46.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на MacOSX;
|
||
ошибка появилась в 0.7.46.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on MacOSX;
|
||
the bug had <nobr>appeared in 0.7.46.</nobr>
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если использовался параметр max_size, то cache manager мог удалить весь кэш;
|
||
ошибка появилась в 0.7.46.
|
||
</para>
|
||
<para lang="en">
|
||
if the "max_size" parameter was set, then the cache manager might purge
|
||
a whole cache;
|
||
the bug had appeared in 0.7.46.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если директивы proxy_cache/fastcgi_cache
|
||
и proxy_cache_valid/ fastcgi_cache_valid не были заданы на одном уровне;
|
||
ошибка появилась в 0.7.46.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process,
|
||
if the "proxy_cache"/"fastcgi_cache" and
|
||
the "proxy_cache_valid"/ "fastcgi_cache_valid" were set on different levels;
|
||
the bug had appeared in 0.7.46.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault
|
||
при перенаправлении запроса проксированному или FastCGI-серверу
|
||
с помощью error_page или try_files;
|
||
ошибка появилась в 0.7.44.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process,
|
||
if a request was redirected to a proxied or FastCGI server via
|
||
error_page or try_files;
|
||
the bug had appeared in 0.7.44.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.46" date="2009-03-30">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
архив предыдущего релиза был неверным.
|
||
</para>
|
||
<para lang="en">
|
||
the previous release tarball was incorrect.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.45" date="2009-03-30">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь директивы proxy_cache и proxy_cache_valid можно задавать
|
||
на разных уровнях.
|
||
</para>
|
||
<para lang="en">
|
||
now the "proxy_cache" and the "proxy_cache_valid" directives can be set on
|
||
different levels.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
параметр clean_time в директиве proxy_cache_path удалён.
|
||
</para>
|
||
<para lang="en">
|
||
the "clean_time" parameter of the "proxy_cache_path" directive is canceled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр max_size в директиве proxy_cache_path.
|
||
</para>
|
||
<para lang="en">
|
||
the "max_size" parameter of the "proxy_cache_path" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
предварительная поддержка кэширования в модуле ngx_http_fastcgi_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_fastcgi_module preliminary cache support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь при ошибках выделения в разделяемой памяти в логе указываются
|
||
названия директивы и зоны.
|
||
</para>
|
||
<para lang="en">
|
||
now on shared memory allocation errors directive and zone names are logged.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива "add_header last-modified ''" не удаляла в заголовке ответа
|
||
строку "Last-Modified";
|
||
ошибка появилась в 0.7.44.
|
||
</para>
|
||
<para lang="en">
|
||
the directive "add_header last-modified ''" did not delete a "Last-Modified"
|
||
response header line;
|
||
the bug had appeared in 0.7.44.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве auth_basic_user_file не работал относительный путь,
|
||
заданный строкой без переменных;
|
||
ошибка появилась в 0.7.44.<br/>
|
||
Спасибо Jerome Loyet.
|
||
</para>
|
||
<para lang="en">
|
||
a relative path in the "auth_basic_user_file" directive given without variables
|
||
did not work;
|
||
the bug had appeared in 0.7.44.<br/>
|
||
Thanks to Jerome Loyet.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве alias, заданной переменными
|
||
без ссылок на выделения в регулярных выражениях;
|
||
ошибка появилась в 0.7.42.
|
||
</para>
|
||
<para lang="en">
|
||
in an "alias" directive given using variables
|
||
without references to captures of regular expressions;
|
||
the bug had appeared in 0.7.42.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.44" date="2009-03-23">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
предварительная поддержка кэширования в модуле ngx_http_proxy_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_proxy_module preliminary cache support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр --with-pcre в configure.
|
||
</para>
|
||
<para lang="en">
|
||
the --with-pcre option in the configure.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь директива try_files может быть использована на уровне server.
|
||
</para>
|
||
<para lang="en">
|
||
the "try_files" directive is now allowed on the server block level.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива try_files неправильно обрабатывала строку запроса в последнем
|
||
параметре.
|
||
</para>
|
||
<para lang="en">
|
||
the "try_files" directive handled incorrectly a query string
|
||
in a fallback parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива try_files могла неверно тестировать каталоги.
|
||
</para>
|
||
<para lang="en">
|
||
the "try_files" directive might test incorrectly directories.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если для пары адрес:порт описан только один сервер, то выделения
|
||
в регулярных выражениях в директиве server_name не работали.
|
||
</para>
|
||
<para lang="en">
|
||
if there was a single server for given address:port pair,
|
||
then captures in regular expressions in a "server_name" directive did not work.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.43" date="2009-03-18">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
запрос обрабатывался неверно, если директива root использовала переменные;
|
||
ошибка появилась в 0.7.42.
|
||
</para>
|
||
<para lang="en">
|
||
a request was handled incorrectly, if a "root" directive used variables;
|
||
the bug had appeared in 0.7.42.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если сервер слушал на адресах типа "*", то значение переменной $server_addr
|
||
было "0.0.0.0";
|
||
ошибка появилась в 0.7.36.
|
||
</para>
|
||
<para lang="en">
|
||
if a server listened on wildcard address, then the $server_addr variable
|
||
value was "0.0.0.0";
|
||
the bug had appeared in 0.7.36.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.42" date="2009-03-16">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
ошибка "Invalid argument", возвращаемая setsockopt(TCP_NODELAY) на Solaris,
|
||
теперь игнорируется.
|
||
</para>
|
||
<para lang="en">
|
||
now the "Invalid argument" error returned by setsockopt(TCP_NODELAY) on Solaris,
|
||
is ignored.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
при отсутствии файла, указанного в директиве auth_basic_user_file,
|
||
теперь возвращается ошибка 403 вместо 500.
|
||
</para>
|
||
<para lang="en">
|
||
now if a file specified in a "auth_basic_user_file" directive is absent,
|
||
then the 403 error is returned instead of the 500 one.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива auth_basic_user_file поддерживает переменные.
|
||
<br/>
|
||
Спасибо Кириллу Коринскому.
|
||
</para>
|
||
<para lang="en">
|
||
the "auth_basic_user_file" directive supports variables.<br/>
|
||
Thanks to Kirill A. Korinskiy.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива listen поддерживает параметр ipv6only.<br/>
|
||
Спасибо Zhang Hua.
|
||
</para>
|
||
<para lang="en">
|
||
the "listen" directive supports the "ipv6only" parameter.
|
||
<br/>
|
||
Thanks to Zhang Hua.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве alias со ссылками на выделения в регулярных выражениях;
|
||
ошибка появилась в 0.7.40.
|
||
</para>
|
||
<para lang="en">
|
||
in an "alias" directive with references to captures of regular expressions;
|
||
the bug had appeared in 0.7.40.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с Tru64 UNIX.<br/>
|
||
Спасибо Dustin Marquess.
|
||
</para>
|
||
<para lang="en">
|
||
compatibility with Tru64 UNIX.<br/>
|
||
Thanks to Dustin Marquess.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался без библиотеки PCRE;
|
||
ошибка появилась в 0.7.41.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built without PCRE library;
|
||
the bug had appeared in 0.7.41.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.41" date="2009-03-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если в server_name или location были выделения в регулярных выражениях;
|
||
ошибка появилась в 0.7.40.<br/>
|
||
Спасибо Владимиру Сопоту.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process,
|
||
if a "server_name" or a "location" directives had captures
|
||
in regular expressions;
|
||
the issue had appeared in 0.7.40.<br/>
|
||
Thanks to Vladimir Sopot.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.40" date="2009-03-09">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива location поддерживает выделения в регулярных выражениях.
|
||
</para>
|
||
<para lang="en">
|
||
the "location" directive supports captures in regular expressions.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директиву alias с ссылками на выделения в регулярных выражениях
|
||
можно использовать внутри location'а, заданного регулярным выражением
|
||
с выделениями.
|
||
</para>
|
||
<para lang="en">
|
||
an "alias" directive with capture references may be used inside
|
||
a location given by a regular expression with captures.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива server_name поддерживает выделения в регулярных выражениях.
|
||
</para>
|
||
<para lang="en">
|
||
the "server_name" directive supports captures in regular expressions.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
модуль ngx_http_autoindex_module не показывал последний слэш для каталогов
|
||
на файловой системе XFS;
|
||
ошибка появилась в 0.7.15.<br/>
|
||
Спасибо Дмитрию Кузьменко.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_autoindex_module did not show the trailing slash in directories
|
||
on XFS filesystem;
|
||
the issue had appeared in 0.7.15.<br/>
|
||
Thanks to Dmitry Kuzmenko.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.39" date="2009-03-02">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при включённом сжатии большие ответы с использованием SSI могли зависать;
|
||
ошибка появилась в 0.7.28.<br/>
|
||
Спасибо Артёму Бохану.
|
||
</para>
|
||
<para lang="en">
|
||
large response with SSI might hang, if gzipping was enabled;
|
||
the bug had appeared in 0.7.28.<br/>
|
||
Thanks to Artem Bokhan.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании коротких статических вариантов в директиве try_files
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process,
|
||
if short static variants are used in a "try_files" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.38" date="2009-02-23">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
логгирование ошибок аутентификации.
|
||
</para>
|
||
<para lang="en">
|
||
authentication failures logging.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
имя/пароль, заданные в auth_basic_user_file, игнорировались после нечётного
|
||
числа пустых строк.<br/>
|
||
Спасибо Александру Загребину.
|
||
</para>
|
||
<para lang="en">
|
||
name/password in auth_basic_user_file were ignored after odd number
|
||
of empty lines.<br/>
|
||
Thanks to Alexander Zagrebin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании длинного пути в unix domain сокете
|
||
в главном процессе происходил segmentation fault;
|
||
ошибка появилась в 0.7.36.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in a master process,
|
||
if long path was used in unix domain socket;
|
||
the bug had appeared in 0.7.36.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.37" date="2009-02-21">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы, использующие upstream'ы, не работали;
|
||
ошибка появилась в 0.7.36.
|
||
</para>
|
||
<para lang="en">
|
||
directives using upstreams did not work;
|
||
the bug had appeared in 0.7.36.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.36" date="2009-02-21">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
предварительная поддержка IPv6;
|
||
директива listen модуля HTTP поддерживает IPv6.
|
||
</para>
|
||
<para lang="en">
|
||
a preliminary IPv6 support;
|
||
the "listen" directive of the HTTP module supports IPv6.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $ancient_browser не работала для браузеров, заданных
|
||
директивами modern_browser.
|
||
</para>
|
||
<para lang="en">
|
||
the $ancient_browser variable did not work for browsers
|
||
preset by a "modern_browser" directives.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.35" date="2009-02-16">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива ssl_engine не использовала SSL-акселератор
|
||
для асимметричных шифров.<br/>
|
||
Спасибо Marcin Gozdalik.
|
||
</para>
|
||
<para lang="en">
|
||
a "ssl_engine" directive did not use a SSL-accelerator
|
||
for asymmetric ciphers.<br/>
|
||
Thanks to Marcin Gozdalik.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива try_files выставляла MIME-type, исходя из расширения
|
||
первоначального запроса.
|
||
</para>
|
||
<para lang="en">
|
||
a "try_files" directive set MIME type depending on an
|
||
original request extension.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директивах server_name, valid_referers и map
|
||
неправильно обрабатывались имена вида "*domain.tld",
|
||
если использовались маски вида ".domain.tld" и ".subdomain.domain.tld";
|
||
ошибка появилась в 0.7.9.
|
||
</para>
|
||
<para lang="en">
|
||
"*domain.tld" names were handled incorrectly in
|
||
"server_name", "valid_referers", and "map" directives,
|
||
if ".domain.tld" and ".subdomain.domain.tld" wildcards were used;
|
||
<nobr>the bug had</nobr> appeared in 0.7.9.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.34" date="2009-02-10">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр off в директиве if_modified_since.
|
||
</para>
|
||
<para lang="en">
|
||
the "off" parameter of the "if_modified_since" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь после команды XCLIENT nginx посылает команду HELO/EHLO.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx sends an HELO/EHLO command after a XCLIENT command.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка Microsoft-специфичного режима
|
||
<nobr>"AUTH LOGIN with User Name"</nobr>
|
||
в почтовом прокси-сервере.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
Microsoft specific "AUTH LOGIN with User Name" mode support
|
||
in mail proxy server.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве rewrite, возвращающей редирект, старые аргументы присоединялись
|
||
к новым через символ "?" вместо "&";<br/>
|
||
ошибка появилась в 0.1.18.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
in a redirect rewrite directive original arguments were concatenated with
|
||
new arguments by a "?" rather than an "&";<br/>
|
||
the bug had appeared in 0.1.18.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на AIX.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on AIX.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.33" date="2009-02-02">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если на запрос с телом возвращался редирект, то ответ мог быть двойным
|
||
при использовании методов epoll или rtsig.<br/>
|
||
Спасибо Eden Li.
|
||
</para>
|
||
<para lang="en">
|
||
a double response might be returned if the epoll or rtsig methods are used
|
||
and a redirect was returned to a request with body.<br/>
|
||
Thanks to Eden Li.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
для некоторых типов редиректов в переменной $sent_http_location
|
||
было пустое значение.
|
||
</para>
|
||
<para lang="en">
|
||
the $sent_http_location variable was empty for some redirects types.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы resolver в SMTP прокси-сервере
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if "resolver" directive was used in SMTP proxy.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.32" date="2009-01-26">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь в директиве try_files можно явно указать проверку каталога.
|
||
</para>
|
||
<para lang="en">
|
||
now a directory existence testing can be set explicitly
|
||
in the "try_files" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
fastcgi_store не всегда сохранял файлы.
|
||
</para>
|
||
<para lang="en">
|
||
fastcgi_store stored files not always.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в гео-диапазонах.
|
||
</para>
|
||
<para lang="en">
|
||
in geo ranges.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки выделения больших блоков в разделяемой памяти,
|
||
если nginx был собран без отладки.<br/>
|
||
Спасибо Андрею Квасову.
|
||
</para>
|
||
<para lang="en">
|
||
in shared memory allocations if nginx was built without debugging.<br/>
|
||
Thanks to Andrey Kvasov.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.31" date="2009-01-19">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь директива try_files проверяет только файлы, игнорируя каталоги.
|
||
</para>
|
||
<para lang="en">
|
||
now the "try_files" directive tests files only and ignores directories.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива fastcgi_split_path_info.
|
||
</para>
|
||
<para lang="en">
|
||
the "fastcgi_split_path_info" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Исправления в поддержке строки "Expect" в заголовке запроса.
|
||
</para>
|
||
<para lang="en">
|
||
Bugfixes in an "Expect" request header line support.
|
||
</para>
|
||
</change>
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Исправления в гео-диапазонах.
|
||
</para>
|
||
<para lang="en">
|
||
Bugfixes in geo ranges.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при отсутствии ответа ngx_http_memcached_module возвращал
|
||
в теле ответа строку "END" вместо 404-ой страницы по умолчанию;
|
||
ошибка появилась в 0.7.18.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
in a miss case ngx_http_memcached_module returned the "END" line
|
||
as response body instead of default 404 page body;
|
||
the bug had appeared in 0.7.18.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при проксировании SMTP nginx выдавал сообщение
|
||
<nobr>"250 2.0.0 OK"</nobr> вместо "235 2.0.0 OK";
|
||
ошибка появилась в 0.7.22.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
while SMTP proxying nginx issued message
|
||
"250 2.0.0 OK" instead of "235 2.0.0 OK";
|
||
the bug had appeared in 0.7.22.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
|
||
<changes ver="0.7.30" date="2008-12-24">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе происходил segmentation fault,
|
||
если в директивах fastcgi_pass или proxy_pass
|
||
использовались переменные и имя хоста должно было резолвиться;
|
||
ошибка появилась в 0.7.29.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process,
|
||
if variables were used in the "fastcgi_pass" or "proxy_pass" directives
|
||
and host name must be resolved;
|
||
the bug had appeared in 0.7.29.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.29" date="2008-12-24">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы fastcgi_pass и proxy_pass не поддерживали переменные
|
||
при использовании unix domain сокетов.
|
||
</para>
|
||
<para lang="en">
|
||
the "fastcgi_pass" and "proxy_pass" directives did not support
|
||
variables if unix domain sockets were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Исправления в обработке подзапросов;
|
||
ошибки появились в 0.7.25.
|
||
</para>
|
||
<para lang="en">
|
||
Bugfixes in subrequest processing;
|
||
the bugs had appeared in 0.7.25.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответ "100 Continue" выдавался для запросов версии HTTP/1.0;<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
a "100 Continue" response was issued for HTTP/1.0 requests;<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в выделении памяти в модуле ngx_http_gzip_filter_module под Cygwin.
|
||
</para>
|
||
<para lang="en">
|
||
in memory allocation in the ngx_http_gzip_filter_module on Cygwin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.28" date="2008-12-22">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
в выделении памяти в модуле ngx_http_gzip_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
in memory allocation in the ngx_http_gzip_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
значения по умолчанию для директивы gzip_buffers изменены с 4 4k/8k
|
||
на 32 4k или 16 8k.
|
||
</para>
|
||
<para lang="en">
|
||
the default "gzip_buffers" directive values have been changed
|
||
to 32 4k or 16 8k from 4 4k/8k.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.27" date="2008-12-15">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива try_files.
|
||
</para>
|
||
<para lang="en">
|
||
the "try_files" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива fastcgi_pass поддерживает переменные.
|
||
</para>
|
||
<para lang="en">
|
||
variables support in the "fastcgi_pass" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь директива geo может брать адрес из переменной.<br/>
|
||
Спасибо Андрею Нигматулину.
|
||
</para>
|
||
<para lang="en">
|
||
now the $geo variable may get an address from a variable.<br/>
|
||
Thanks to Andrei Nigmatulin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь модификатор location'а можно указывать без пробела перед названием.
|
||
</para>
|
||
<para lang="en">
|
||
now a location's modifier may be used without space before name.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $upstream_response_length.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_response_length variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь директива add_header не добавляет пустое значение.
|
||
</para>
|
||
<para lang="en">
|
||
now a "add_header" directive does not add an empty value.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при запросе файла нулевой длины nginx закрывал соединение, ничего не передав;
|
||
ошибка появилась в 0.7.25.
|
||
</para>
|
||
<para lang="en">
|
||
if zero length static file was requested, then nginx just closed connection;
|
||
the bug had appeared in 0.7.25.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
метод MOVE не мог перемещать файл в несуществующий каталог.
|
||
</para>
|
||
<para lang="en">
|
||
a MOVE method could not move file in non-existent directory.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в сервере не был описан ни один именованный location,
|
||
но такой location использовался в директиве error_page,
|
||
то в рабочем процессе происходил segmentation fault.<br/>
|
||
Спасибо Сергею Боченкову.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process,
|
||
if no one named location was defined in server,
|
||
but some one was used in an error_page directive.<br/>
|
||
Thanks to Sergey Bochenkov.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.26" date="2008-12-08">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке подзапросов;
|
||
ошибка появилась в 0.7.25.
|
||
</para>
|
||
<para lang="en">
|
||
in subrequest processing;
|
||
the bug had appeared in 0.7.25.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.25" date="2008-12-08">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
в обработке подзапросов.
|
||
</para>
|
||
<para lang="en">
|
||
in subrequest processing.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь разрешаются POST'ы без строки "Content-Length" в заголовке запроса.
|
||
</para>
|
||
<para lang="en">
|
||
now POSTs without "Content-Length" header line are allowed.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь директивы limit_req и limit_conn указывают причину запрета запроса.
|
||
</para>
|
||
<para lang="en">
|
||
now the "limit_req" and "limit_conn" directives log a prohibition reason.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в параметре delete директивы geo.
|
||
</para>
|
||
<para lang="en">
|
||
in the "delete" parameter of the "geo" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.24" date="2008-12-01">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива if_modified_since.
|
||
</para>
|
||
<para lang="en">
|
||
the "if_modified_since" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не обрабатывал ответ FastCGI-сервера,
|
||
если перед ответом сервер передавал много сообщений в stderr.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not process a FastCGI server response,
|
||
if the server send too many messages to stderr before response.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменные "$cookie_..." не работали в SSI and в перловом модуле.
|
||
</para>
|
||
<para lang="en">
|
||
the "$cookie_..." variables did not work in the SSI and the perl module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.23" date="2008-11-27">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметры delete и ranges в директиве geo.
|
||
</para>
|
||
<para lang="en">
|
||
the "delete" and "ranges" parameters in the "geo" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ускорение загрузки geo-базы с большим числом значений.
|
||
</para>
|
||
<para lang="en">
|
||
speeding up loading of geo base with large number of values.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
уменьшение памяти, необходимой для загрузки geo-базы.
|
||
</para>
|
||
<para lang="en">
|
||
decrease of memory required for geo base load.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.22" date="2008-11-20">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр none в директиве smtp_auth.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
the "none" parameter in the "smtp_auth" directive.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные "$cookie_...".
|
||
</para>
|
||
<para lang="en">
|
||
the "$cookie_..." variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива directio не работала с файловой системой XFS.
|
||
</para>
|
||
<para lang="en">
|
||
the "directio" directive did not work in XFS filesystem.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
resolver не понимал большие DNS-ответы.<br/>
|
||
Спасибо Zyb.
|
||
</para>
|
||
<para lang="en">
|
||
the resolver did not understand big DNS responses.<br/>
|
||
Thanks to Zyb.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.21" date="2008-11-11">
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Изменения в модуле ngx_http_limit_req_module.
|
||
</para>
|
||
<para lang="en">
|
||
Changes in the ngx_http_limit_req_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка EXSLT в модуле ngx_http_xslt_module.<br/>
|
||
Спасибо Денису Латыпову.
|
||
</para>
|
||
<para lang="en">
|
||
the EXSLT support in the ngx_http_xslt_module.<br/>
|
||
Thanks to Denis F. Latypoff.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
совместимость с glibc 2.3.<br/>
|
||
Спасибо Eric Benson и Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
compatibility with glibc 2.3.<br/>
|
||
Thanks to Eric Benson and Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не запускался на MacOSX 10.4 и более ранних;
|
||
ошибка появилась в 0.7.6.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not run on MacOSX 10.4 and earlier;
|
||
the bug had appeared in 0.7.6.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.20" date="2008-11-10">
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Изменения в модуле ngx_http_gzip_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
Changes in the ngx_http_gzip_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_limit_req_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_limit_req_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на платформах sparc и ppc рабочие процессы могли выходить по сигналу SIGBUS;
|
||
ошибка появилась в 0.7.3.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
worker processes might exit on a SIGBUS signal on sparc and ppc platforms;
|
||
the bug had appeared in 0.7.3.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы вида "proxy_pass http://host/some:uri" не работали;
|
||
ошибка появилась в 0.7.12.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass http://host/some:uri" directives did not work;
|
||
the bug had appeared in 0.7.12.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTPS запросы могли завершаться с ошибкой "bad write retry".
|
||
</para>
|
||
<para lang="en">
|
||
in HTTPS mode requests might fail with the "bad write retry" error.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_secure_link_module не работал внутри location'ов
|
||
с именами меньше 3 символов.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_secure_link_module did not work inside locations,
|
||
whose names are less than 3 characters.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $server_addr могла не иметь значения.
|
||
</para>
|
||
<para lang="en">
|
||
$server_addr variable might have no value.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.19" date="2008-10-13">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
обновление номера версии.
|
||
</para>
|
||
<para lang="en">
|
||
version number update.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.18" date="2008-10-13">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива underscores_in_headers;
|
||
теперь nginx по умолчанию не разрешает подчёркивания в именах строк
|
||
в заголовке запроса клиента.
|
||
</para>
|
||
<para lang="en">
|
||
the "underscores_in_headers" directive;
|
||
now nginx does not allows underscores in a client request header line names.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_secure_link_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_secure_link_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива real_ip_header поддерживает любой заголовок.
|
||
</para>
|
||
<para lang="en">
|
||
the "real_ip_header" directive supports any header.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива log_subrequest.
|
||
</para>
|
||
<para lang="en">
|
||
the "log_subrequest" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $realpath_root.
|
||
</para>
|
||
<para lang="en">
|
||
the $realpath_root variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметры http_502 и http_504 в директиве proxy_next_upstream.
|
||
</para>
|
||
<para lang="en">
|
||
the "http_502" and "http_504" parameters of the "proxy_next_upstream" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр http_503 в директивах proxy_next_upstream или fastcgi_next_upstream
|
||
не работал.
|
||
</para>
|
||
<para lang="en">
|
||
the "http_503" parameter of the "proxy_next_upstream" or
|
||
"fastcgi_next_upstream" directives did not work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx мог выдавать строку "Transfer-Encoding: chunked" для запросов HEAD.
|
||
</para>
|
||
<para lang="en">
|
||
nginx might send a "Transfer-Encoding: chunked" header line for HEAD requests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь accept-лимит зависит от числа worker_connections.
|
||
</para>
|
||
<para lang="en">
|
||
now accept threshold depends on worker_connections.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.17" date="2008-09-15">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива directio теперь работает на Linux.
|
||
</para>
|
||
<para lang="en">
|
||
now the "directio" directive works on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $pid.
|
||
</para>
|
||
<para lang="en">
|
||
the $pid variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
оптимизация directio, появившаяся в 0.7.15, не работала при использовании
|
||
open_file_cache.
|
||
</para>
|
||
<para lang="en">
|
||
the "directio" optimization that had appeared in 0.7.15 did not work with
|
||
open_file_cache.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
access_log с переменными не работал на Linux;
|
||
ошибка появилась в 0.7.7.
|
||
</para>
|
||
<para lang="en">
|
||
the "access_log" with variables did not work on Linux;
|
||
the bug had appeared in 0.7.7.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_charset_module не понимал название кодировки в кавычках,
|
||
полученное от бэкенда.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_charset_module did not understand quoted charset name
|
||
received from backend.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.16" date="2008-09-08">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на 64-битных платформах;
|
||
ошибка появилась в 0.7.15.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on 64-bit platforms;
|
||
the bug had appeared in 0.7.15.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.15" date="2008-09-08">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_random_index_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_random_index_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива directio оптимизирована для запросов файлов, начинающихся
|
||
с произвольной позиции.
|
||
</para>
|
||
<para lang="en">
|
||
the "directio" directive has been optimized for file requests starting
|
||
from arbitrary position.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива directio при необходимости запрещает использование sendfile.
|
||
</para>
|
||
<para lang="en">
|
||
the "directio" directive turns off sendfile if it is necessary.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь nginx разрешает подчёркивания в именах строк в заголовке запроса клиента.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx allows underscores in a client request header line names.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.14" date="2008-09-01">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь директивы ssl_certificate и ssl_certificate_key не имеют
|
||
значений по умолчанию.
|
||
</para>
|
||
<para lang="en">
|
||
now the ssl_certificate and ssl_certificate_key directives have no
|
||
default values.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива listen поддерживает параметр ssl.
|
||
</para>
|
||
<para lang="en">
|
||
the "listen" directive supports the "ssl" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь при переконфигурации nginx учитывает изменение временной зоны
|
||
на FreeBSD и Linux.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx takes into account a time zone change while reconfiguration
|
||
on FreeBSD and Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметры директивы listen, такие как backlog, rcvbuf и прочие,
|
||
не устанавливались, если сервером по умолчанию был не первый сервер.
|
||
</para>
|
||
<para lang="en">
|
||
the "listen" directive parameters such as "backlog", "rcvbuf", etc.
|
||
were not set, if a default server was not the first one.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании в качестве аргументов части URI, выделенного с помощью
|
||
директивы rewrite, эти аргументы не экранировались.
|
||
</para>
|
||
<para lang="en">
|
||
if URI part captured by a "rewrite" directive was used as a query string,
|
||
then the query string was not escaped.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
улучшения тестирования правильности конфигурационного файла.
|
||
</para>
|
||
<para lang="en">
|
||
configuration file validity test improvements.
|
||
</para>
|
||
</change>
|
||
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.13" date="2008-08-26">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Linux и Solaris;
|
||
ошибка появилась в 0.7.12.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Linux and Solaris;
|
||
the bug had appeared in 0.7.12.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.12" date="2008-08-26">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива server_name поддерживает пустое имя "".
|
||
</para>
|
||
<para lang="en">
|
||
the "server_name" directive supports empty name "".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива gzip_disable поддерживает специальную маску msie6.
|
||
</para>
|
||
<para lang="en">
|
||
the "gzip_disable" directive supports special "msie6" mask.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании параметра max_fails=0 в upstream'е с несколькими
|
||
серверами рабочий процесс выходил по сигналу SIGFPE.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
if the "max_fails=0" parameter was used in upstream with several servers,
|
||
then a worker process exited on a SIGFPE signal.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при перенаправлении запроса с помощью директивы error_page
|
||
терялось тело запроса.
|
||
</para>
|
||
<para lang="en">
|
||
a request body was dropped while redirection via an "error_page" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при перенаправлении запроса с методом HEAD с помощью директивы error_page
|
||
возвращался полный ответ.
|
||
</para>
|
||
<para lang="en">
|
||
a full response was returned for request method HEAD
|
||
while redirection via an "error_page" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
метод $r->header_in() не возвращал значения строк "Host", "User-Agent",
|
||
и "Connection" из заголовка запроса;
|
||
ошибка появилась в 0.7.0.
|
||
</para>
|
||
<para lang="en">
|
||
the $r->header_in() method did not return value of the "Host",
|
||
"User-Agent", and "Connection" request header lines;
|
||
the bug had appeared in 0.7.0.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.11" date="2008-08-18">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь ngx_http_charset_module по умолчанию не работает MIME-типом text/css.
|
||
</para>
|
||
<para lang="en">
|
||
now ngx_http_charset_module does not work by default with text/css MIME type.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь nginx возвращает код 405 для метода POST при запросе статического
|
||
файла, только если файл существует.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx returns the 405 status code for POST method requesting a static file
|
||
only if the file exists.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_ssl_session_reuse.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_ssl_session_reuse" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
после перенаправления запроса с помощью "X-Accel-Redirect"
|
||
директива proxy_pass без URI могла использовать оригинальный запрос.
|
||
</para>
|
||
<para lang="en">
|
||
a "proxy_pass" directive without URI part might use original request
|
||
after the "X-Accel-Redirect" redirection was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если у каталога были права доступа только на поиск файлов
|
||
и первый индексный файл отсутствовал, то nginx возвращал ошибку 500.
|
||
</para>
|
||
<para lang="en">
|
||
if a directory has search only rights and the first index file was absent,
|
||
then nginx returned the 500 status code.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибок во вложенных location'ах;
|
||
ошибки появились в 0.7.1.
|
||
</para>
|
||
<para lang="en">
|
||
in inclusive locations;
|
||
the bugs had appeared in 0.7.1.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.10" date="2008-08-13">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибок в директивах addition_types, charset_types,
|
||
gzip_types, ssi_types, sub_filter_types и xslt_types;
|
||
ошибки появились в 0.7.9.
|
||
</para>
|
||
<para lang="en">
|
||
in the "addition_types", "charset_types",
|
||
"gzip_types", "ssi_types", "sub_filter_types", and "xslt_types" directives;
|
||
the bugs had appeared in 0.7.9.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
рекурсивной error_page для 500 ошибки.
|
||
</para>
|
||
<para lang="en">
|
||
of recursive error_page for 500 status code.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь модуль ngx_http_realip_module устанавливает адрес не для
|
||
всего keepalive соединения, а для каждого запроса по этому соединению.
|
||
</para>
|
||
<para lang="en">
|
||
now the ngx_http_realip_module sets address not for whole keepalive connection,
|
||
but for each request passed via the connection.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.9" date="2008-08-12">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь ngx_http_charset_module по умолчанию работает со следующими MIME-типами:
|
||
text/html, text/css, text/xml, text/plain, text/vnd.wap.wml,
|
||
application/x-javascript и application/rss+xml.
|
||
</para>
|
||
<para lang="en">
|
||
now ngx_http_charset_module works by default with following MIME types:
|
||
text/html, text/css, text/xml, text/plain, text/vnd.wap.wml,
|
||
application/x-javascript, and application/rss+xml.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы charset_types и addition_types.
|
||
</para>
|
||
<para lang="en">
|
||
the "charset_types" and "addition_types" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь директивы gzip_types, ssi_types и sub_filter_types используют хэш.
|
||
</para>
|
||
<para lang="en">
|
||
now the "gzip_types", "ssi_types", and "sub_filter_types" directives use hash.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_cpp_test_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_cpp_test_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива expires поддерживает суточное время.
|
||
</para>
|
||
<para lang="en">
|
||
the "expires" directive supports daily time.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
улучшения и исправления в модуле ngx_http_xslt_module.<br/>
|
||
Спасибо Денису Латыпову и Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_xslt_module improvements and bug fixing.<br/>
|
||
Thanks to Denis F. Latypoff and Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива log_not_found не работала при поиске индексных файлов.
|
||
</para>
|
||
<para lang="en">
|
||
the "log_not_found" directive did not work for index files tests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
HTTPS-соединения могли зависнуть,
|
||
если использовались методы kqueue, epoll, rtsig или eventport;
|
||
ошибка появилась в 0.7.7.
|
||
</para>
|
||
<para lang="en">
|
||
HTTPS connections might hang,
|
||
if kqueue, epoll, rtsig, or eventport methods were used;
|
||
the bug had appeared in 0.7.7.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директивах server_name, valid_referers и map
|
||
использовалась маска вида "*.domain.tld" и при этом полное имя
|
||
вида "domain.tld" не было описано, то это имя попадало под маску;
|
||
ошибка появилась в 0.3.18.
|
||
</para>
|
||
<para lang="en">
|
||
if the "server_name", "valid_referers", and "map" directives used
|
||
an "*.domain.tld" wildcard and exact name "domain.tld" was not set,
|
||
then the exact name was matched by the wildcard;
|
||
the bug had appeared in 0.3.18.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.8" date="2008-08-04">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_xslt_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_xslt_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные "$arg_...".
|
||
</para>
|
||
<para lang="en">
|
||
the "$arg_..." variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка directio в Solaris.<br/>
|
||
Спасибо Ivan Debnar.
|
||
</para>
|
||
<para lang="en">
|
||
Solaris directio support.<br/>
|
||
Thanks to Ivan Debnar.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь, если FastCGI-сервер присылает строку "Location" в заголовке ответа
|
||
без строки статуса, то nginx использует код статуса 302.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
now if FastCGI server sends a "Location" header line without status line,
|
||
then nginx uses 302 status code.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.7" date="2008-07-30">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь ошибка EAGAIN при вызове connect() не считается временной.
|
||
</para>
|
||
<para lang="en">
|
||
now the EAGAIN error returned by connect() is not considered as temporary error.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
значением переменной $ssl_client_cert теперь является сертификат,
|
||
перед каждой строкой которого, кроме первой, вставляется символ табуляции;
|
||
неизменённый сертификат доступен через переменную $ssl_client_raw_cert.
|
||
</para>
|
||
<para lang="en">
|
||
now the $ssl_client_cert variable value is a certificate with TAB character
|
||
intended before each line except first one;
|
||
an unchanged certificate is available in the $ssl_client_raw_cert variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр ask директивы ssl_verify_client.
|
||
</para>
|
||
<para lang="en">
|
||
the "ask" parameter in the "ssl_verify_client" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
улучшения в обработке byte-range.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
byte-range processing improvements.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива directio.<br/>
|
||
Спасибо Jiang Hong.
|
||
</para>
|
||
<para lang="en">
|
||
the "directio" directive.<br/>
|
||
Thanks to Jiang Hong.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка sendfile() в MacOSX 10.5.
|
||
</para>
|
||
<para lang="en">
|
||
MacOSX 10.5 sendfile() support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в MacOSX и Cygwin при проверке location'ов теперь делается сравнение
|
||
без учёта регистра символов;
|
||
однако, сравнение ограничено только однобайтными locale'ями.
|
||
</para>
|
||
<para lang="en">
|
||
now in MacOSX and Cygwin locations are tested in case insensitive mode;
|
||
however, the compare is provided by single-byte locales only.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
соединения почтового прокси-сервера зависали в режиме SSL,
|
||
если использовались методы select, poll или /dev/poll.
|
||
</para>
|
||
<para lang="en">
|
||
mail proxy SSL connections hanged,
|
||
if select, poll, or /dev/poll methods were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании кодировки UTF-8 в ngx_http_autoindex_module.
|
||
</para>
|
||
<para lang="en">
|
||
UTF-8 encoding usage in the ngx_http_autoindex_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.6" date="2008-07-07">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь при использовании переменных в директиве access_log
|
||
всегда проверяется существовании root'а для запроса.
|
||
</para>
|
||
<para lang="en">
|
||
now if variables are used in the "access_log" directive
|
||
a request root existence is always tested.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_flv_module не поддерживал несколько значений в
|
||
аргументах запроса.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_flv_module did not support several values in a query string.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.5" date="2008-07-01">
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Исправления в поддержке переменных в директиве access_log;
|
||
ошибки появились в 0.7.4.
|
||
</para>
|
||
<para lang="en">
|
||
Bugfixes in variables support in the "access_log" directive;
|
||
the bugs had appeared in 0.7.4.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с параметром --without-http_gzip_module;
|
||
ошибка появилась в 0.7.3.<br/>
|
||
Спасибо Кириллу Коринскому.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built --without-http_gzip_module;
|
||
the bug had appeared in 0.7.3.<br/>
|
||
Thanks to Kirill A. Korinskiy.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при совместном использовании sub_filter и SSI
|
||
ответы могли передаваться неверно.
|
||
</para>
|
||
<para lang="en">
|
||
if sub_filter and SSI were used together, then responses might
|
||
were transferred incorrectly.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.4" date="2008-06-30">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива access_log поддерживает переменные.
|
||
</para>
|
||
<para lang="en">
|
||
variables support in the "access_log" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива open_log_file_cache.
|
||
</para>
|
||
<para lang="en">
|
||
the "open_log_file_cache" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ключ -g.
|
||
</para>
|
||
<para lang="en">
|
||
the -g switch.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка строки "Expect" в заголовке запроса.
|
||
</para>
|
||
<para lang="en">
|
||
the "Expect" request header line support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
большие включения в SSI могли передавались не полностью.
|
||
</para>
|
||
<para lang="en">
|
||
large SSI inclusions might be truncated.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.3" date="2008-06-23">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
MIME-тип для расширения rss изменён на "application/rss+xml".
|
||
</para>
|
||
<para lang="en">
|
||
the "rss" extension MIME type has been changed to "application/rss+xml".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь директива "gzip_vary on" выдаёт строку
|
||
<nobr>"Vary: Accept-Encoding"</nobr>
|
||
в заголовке ответа и для несжатых ответов.
|
||
</para>
|
||
<para lang="en">
|
||
now the "gzip_vary" directive turned on issues
|
||
a <nobr>"Vary: Accept-Encoding"</nobr>
|
||
header line for uncompressed responses too.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь при использовании протокола "https://" в директиве rewrite
|
||
автоматически делается редирект.
|
||
</para>
|
||
<para lang="en">
|
||
now the "rewrite" directive does a redirect automatically
|
||
if the "https://" protocol is used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива proxy_pass не работала с протоколом HTTPS;
|
||
ошибка появилась в 0.6.9.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass" directive did not work with the HTTPS protocol;
|
||
the bug had appeared in 0.6.9.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.2" date="2008-06-16">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь nginx поддерживает шифры с обменом EDH-ключами.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx supports EDH key exchange ciphers.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssl_dhparam.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_dhparam" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $ssl_client_cert.<br/>
|
||
Спасибо Manlio Perillo.
|
||
</para>
|
||
<para lang="en">
|
||
the $ssl_client_cert variable.<br/>
|
||
Thanks to Manlio Perillo.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
после изменения URI с помощью директивы rewrite nginx не искал новый location;
|
||
ошибка появилась в 0.7.1.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
after changing URI via a "rewrite" directive nginx did not search
|
||
a new location;
|
||
the bug had appeared in 0.7.1.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался без библиотеки PCRE;
|
||
ошибка появилась в 0.7.1.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built without PCRE library;
|
||
the bug had appeared in 0.7.1.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при редиректе запроса к каталогу с добавлением слэша nginx
|
||
не добавлял аргументы из оригинального запроса.
|
||
</para>
|
||
<para lang="en">
|
||
when a request to a directory was redirected with the slash added,
|
||
nginx dropped a query string from the original request.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.1" date="2008-05-26">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь поиск location'а делается с помощью дерева.
|
||
</para>
|
||
<para lang="en">
|
||
now locations are searched in a tree.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива optimize_server_names упразднена в связи с появлением
|
||
директивы server_name_in_redirect.
|
||
</para>
|
||
<para lang="en">
|
||
the "optimize_server_names" directive was canceled
|
||
due to the "server_name_in_redirect" directive introduction.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
некоторые давно устаревшие директивы больше не поддерживаются.
|
||
</para>
|
||
<para lang="en">
|
||
some long deprecated directives are not supported anymore.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
параметр "none" в директиве ssl_session_cache;
|
||
теперь этот параметр используется по умолчанию.<br/>
|
||
Спасибо Rob Mueller.
|
||
</para>
|
||
<para lang="en">
|
||
the "none" parameter in the "ssl_session_cache" directive;
|
||
now this is default parameter.<br/>
|
||
Thanks to Rob Mueller.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
рабочие процессы могли не реагировать на сигналы переконфигурации
|
||
и ротации логов.
|
||
</para>
|
||
<para lang="en">
|
||
worker processes might not catch reconfiguration and log rotation signals.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на последних Fedora 9 Linux.<br/>
|
||
Спасибо Roxis.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on latest Fedora 9 Linux.<br/>
|
||
Thanks to Roxis.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.7.0" date="2008-05-19">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь символы 0x00-0x1F, '"' и '\' в access_log записываются в виде \xXX.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
now the 0x00-0x1F, '"' and '\' characters are escaped as \xXX in an
|
||
access_log.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx разрешает несколько строк "Host" в заголовке запроса.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx allows several "Host" request header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива expires поддерживает флаг modified.
|
||
</para>
|
||
<para lang="en">
|
||
the "modified" flag in the "expires" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные $uid_got и $uid_set можно использовать на любой стадии обработки
|
||
запроса.
|
||
</para>
|
||
<para lang="en">
|
||
the $uid_got and $uid_set variables may be used at any request processing stage.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $hostname.<br/>
|
||
Спасибо Андрею Нигматулину.
|
||
</para>
|
||
<para lang="en">
|
||
the $hostname variable.<br/>
|
||
Thanks to Andrei Nigmatulin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка DESTDIR.<br/>
|
||
Спасибо Todd A. Fisher и Andras Voroskoi.
|
||
</para>
|
||
<para lang="en">
|
||
DESTDIR support.<br/>
|
||
Thanks to Todd A. Fisher and Andras Voroskoi.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании keepalive на Linux
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process on Linux,
|
||
if keepalive was enabled.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.31" date="2008-05-12">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не обрабатывал ответ FastCGI-сервера, если строка заголовка ответа была
|
||
в конце записи FastCGI;
|
||
ошибка появилась в 0.6.2.<br/>
|
||
Спасибо Сергею Серову.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not process FastCGI response
|
||
if header was at the end of FastCGI record;
|
||
the bug had appeared in 0.6.2.<br/>
|
||
Thanks to Sergey Serov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при удалении файла и использовании директивы open_file_cache_errors off
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process if a file was deleted
|
||
and the "open_file_cache_errors" directive was off.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.30" date="2008-04-29">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь, если маске, заданной в директиве include, не соответствует
|
||
ни один файл, то nginx не выдаёт ошибку.
|
||
</para>
|
||
<para lang="en">
|
||
now if an "include" directive pattern does not match any file,
|
||
then nginx does not issue an error.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь время в директивах можно задавать без пробела, например, "1h50m".
|
||
</para>
|
||
<para lang="en">
|
||
now the time in directives may be specified without spaces,
|
||
for example, "1h50m".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечек памяти, если директива ssl_verify_client имела значение on.<br/>
|
||
Спасибо Chavelle Vincent.
|
||
</para>
|
||
<para lang="en">
|
||
memory leaks if the "ssl_verify_client" directive was on.<br/>
|
||
Thanks to Chavelle Vincent.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива sub_filter могла вставлять заменяемый текст в вывод.
|
||
</para>
|
||
<para lang="en">
|
||
the "sub_filter" directive might set text to change into output.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива error_page не воспринимала параметры в перенаправляемом URI.
|
||
</para>
|
||
<para lang="en">
|
||
the "error_page" directive did not take into account arguments in
|
||
redirected URI.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь при сборке с Cygwin nginx всегда открывает файлы в бинарном режиме.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx always opens files in binary mode under Cygwin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался под OpenBSD;
|
||
ошибка появилась в 0.6.15.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on OpenBSD;
|
||
the bug had appeared in 0.6.15.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.29" date="2008-03-18">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_google_perftools_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_google_perftools_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module не собирался на 64-битных платформах;
|
||
ошибка появилась в 0.6.27.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module could not be built on 64-bit platforms;
|
||
the bug had appeared in 0.6.27.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.28" date="2008-03-13">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
метод rtsig не собирался;
|
||
ошибка появилась в 0.6.27.
|
||
</para>
|
||
<para lang="en">
|
||
the rtsig method could not be built;
|
||
the bug had appeared in 0.6.27.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.27" date="2008-03-12">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь на Linux 2.6.18+ по умолчанию не собирается метод rtsig.
|
||
</para>
|
||
<para lang="en">
|
||
now by default the rtsig method is not built on <nobr>Linux 2.6.18+.</nobr>
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь при перенаправлении запроса в именованный location с помощью
|
||
директивы error_page метод запроса не изменяется.
|
||
</para>
|
||
<para lang="en">
|
||
now a request method is not changed while redirection to a named location
|
||
via an "error_page" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы resolver и resolver_timeout в SMTP прокси-сервере.
|
||
</para>
|
||
<para lang="en">
|
||
the "resolver" and "resolver_timeout" directives in SMTP proxy.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива post_action поддерживает именованные location'ы.
|
||
</para>
|
||
<para lang="en">
|
||
the "post_action" directive supports named locations.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при перенаправлении запроса из location'а c обработчиком proxy, FastCGI
|
||
или memcached в именованный location со статическим обработчиком
|
||
в рабочем процессе происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process,
|
||
if a request was redirected from proxy, FastCGI, or memcached location
|
||
to static named locations.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
браузеры не повторяли SSL handshake, если при первом handshake
|
||
не оказалось правильного клиентского сертификата.
|
||
<br/>
|
||
Спасибо Александру Инюхину.
|
||
</para>
|
||
<para lang="en">
|
||
browsers did not repeat SSL handshake if there is no valid client certificate
|
||
in first handshake.
|
||
<br/>
|
||
Thanks to Alexander V. Inyukhin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при перенаправлении ошибок 495-497 с помощью директивы error_page
|
||
без изменения кода ошибки nginx пытался выделить очень много памяти.
|
||
</para>
|
||
<para lang="en">
|
||
if response code 495-497 was redirected via an "error_page" directive
|
||
without code change, then nginx tried to allocate too many memory.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки памяти в долгоживущих небуфферизированных соединениях.
|
||
</para>
|
||
<para lang="en">
|
||
memory leak in long-lived non buffered connections.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки памяти в resolver'е.
|
||
</para>
|
||
<para lang="en">
|
||
memory leak in resolver.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при перенаправлении запроса из location'а c обработчиком proxy
|
||
в другой location с обработчиком proxy
|
||
в рабочем процессе происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process,
|
||
if a request was redirected from proxy, FastCGI, or memcached location
|
||
to static named locations.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки в кэшировании переменных $proxy_host и $proxy_port.<br/>
|
||
Спасибо Сергею Боченкову.
|
||
</para>
|
||
<para lang="en">
|
||
in the $proxy_host and $proxy_port variables caching.<br/>
|
||
Thanks to Sergey Bochenkov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива proxy_pass с переменными использовала порт, описанной в другой
|
||
директиве proxy_pass без переменных, но с таким же именем хоста.<br/>
|
||
Спасибо Сергею Боченкову.
|
||
</para>
|
||
<para lang="en">
|
||
a "proxy_pass" directive with variables used incorrectly the same port
|
||
as in another "proxy_pass" directive with the same host name
|
||
and without variables.<br/>
|
||
Thanks to Sergey Bochenkov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
во время переконфигурации на некоторых 64-битном платформах в лог
|
||
записывался alert "sendmsg() failed (9: Bad file descriptor)".
|
||
</para>
|
||
<para lang="en">
|
||
an alert "sendmsg() failed (9: Bad file descriptor)" on some 64-bit platforms
|
||
while reconfiguration.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при повторном использовании в SSI пустого block'а в качестве заглушки
|
||
в рабочем процессе происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process,
|
||
if empty stub block was used second time in SSI.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при копировании части URI, содержащего экранированные символы,
|
||
в аргументы.
|
||
</para>
|
||
<para lang="en">
|
||
in copying URI part contained escaped symbols into arguments.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.26" date="2008-02-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы proxy_store и fastcgi_store не проверяли длину ответа.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_store" and "fastcgi_store" directives did not check
|
||
a response length.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании большого значения в директиве expires
|
||
в рабочем процессе происходил segmentation fault.<br/>
|
||
Спасибо Joaquin Cuenca Abela.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process,
|
||
if big value was used in a "expires" directive.<br/>
|
||
Thanks to Joaquin Cuenca Abela.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx неверно определял длину строки кэша на <nobr>Pentium 4.</nobr><br/>
|
||
Спасибо Геннадию Махомеду.
|
||
</para>
|
||
<para lang="en">
|
||
nginx incorrectly detected cache line size on Pentium 4.<br/>
|
||
Thanks to Gena Makhomed.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в проксированных подзапросах и подзапросах к FastCGI-серверу
|
||
вместо метода GET использовался оригинальный метод клиента.
|
||
</para>
|
||
<para lang="en">
|
||
in proxied or FastCGI subrequests a client original method was used
|
||
instead of the GET method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки сокетов в режиме HTTPS при использовании отложенного accept'а.<br/>
|
||
Спасибо Ben Maurer.
|
||
</para>
|
||
<para lang="en">
|
||
socket leak in HTTPS mode if deferred accept was used.<br/>
|
||
Thanks to Ben Maurer.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx выдавал ошибочное сообщение "SSL_shutdown() failed (SSL: )";
|
||
ошибка появилась в 0.6.23.
|
||
</para>
|
||
<para lang="en">
|
||
nginx issued the bogus error message "SSL_shutdown() failed (SSL: )";
|
||
the bug had appeared in 0.6.23.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTPS запросы могли завершаться с ошибкой "bad write retry";
|
||
ошибка появилась в 0.6.23.
|
||
</para>
|
||
<para lang="en">
|
||
in HTTPS mode requests might fail with the "bad write retry" error;
|
||
the bug had appeared in 0.6.23.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.25" date="2008-01-08">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
вместо специального параметра "*" в директиве server_name теперь
|
||
используется директива server_name_in_redirect.
|
||
</para>
|
||
<para lang="en">
|
||
now the "server_name_in_redirect" directive is used instead of
|
||
the "server_name" directive's special "*" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
в качестве основного имени в директиве server_name теперь
|
||
можно использовать имена с масками и регулярными выражениями.
|
||
</para>
|
||
<para lang="en">
|
||
now wildcard and regex names can be used as main name in
|
||
a "server_name" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива satisfy_any заменена директивой satisfy.
|
||
</para>
|
||
<para lang="en">
|
||
the "satisfy_any" directive was replaced by the "satisfy" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
после переконфигурации старые рабочие процесс могли сильно нагружать процессор
|
||
при запуске под Linux OpenVZ.
|
||
</para>
|
||
<para lang="en">
|
||
old worker processes might hog CPU after reconfiguration if they was run
|
||
under Linux OpenVZ.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива min_delete_depth.
|
||
</para>
|
||
<para lang="en">
|
||
the "min_delete_depth" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
методы COPY и MOVE не работали с одиночными файлами.
|
||
</para>
|
||
<para lang="en">
|
||
the COPY and MOVE methods did not work with single files.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_gzip_static_module не позволял работать модулю
|
||
ngx_http_dav_module;
|
||
ошибка появилась в 0.6.23.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_gzip_static_module did not allow the ngx_http_dav_module to work;
|
||
the bug had appeared in 0.6.23.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки сокетов в режиме HTTPS при использовании отложенного accept'а.<br/>
|
||
Спасибо Ben Maurer.
|
||
</para>
|
||
<para lang="en">
|
||
socket leak in HTTPS mode if deferred accept was used.<br/>
|
||
Thanks to Ben Maurer.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался без библиотеки PCRE;
|
||
ошибка появилась в 0.6.23.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built without PCRE library;
|
||
the bug had appeared in 0.6.23.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
<changes ver="0.6.24" date="2007-12-27">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTPS в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 0.6.23.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process if HTTPS was used;
|
||
the bug had appeared in 0.6.23.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.23" date="2007-12-27">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
параметр "off" в директиве ssl_session_cache;
|
||
теперь этот параметр используется по умолчанию.
|
||
</para>
|
||
<para lang="en">
|
||
the "off" parameter in the "ssl_session_cache" directive;
|
||
now this is default parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива open_file_cache_retest переименована в open_file_cache_valid.
|
||
</para>
|
||
<para lang="en">
|
||
the "open_file_cache_retest" directive was renamed
|
||
to the "open_file_cache_valid".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива open_file_cache_min_uses.
|
||
</para>
|
||
<para lang="en">
|
||
the "open_file_cache_min_uses" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_gzip_static_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_gzip_static_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива gzip_disable.
|
||
</para>
|
||
<para lang="en">
|
||
the "gzip_disable" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директиву memcached_pass можно использовать внутри блока if.
|
||
</para>
|
||
<para lang="en">
|
||
the "memcached_pass" directive may be used inside the "if" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если внутри одного location'а использовались директивы "memcached_pass" и "if",
|
||
то в рабочем процессе происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process,
|
||
if the "memcached_pass" and "if" directives were used in the same location.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если при использовании директивы satisfy_any on" были заданы директивы
|
||
не всех модулей доступа, то заданные директивы не проверялись.
|
||
</para>
|
||
<para lang="en">
|
||
if a "satisfy_any on" directive was used and not all access and auth modules
|
||
directives were set, then other given access and auth directives
|
||
were not tested;
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметры, заданные регулярным выражением в директиве valid_referers,
|
||
не наследовалась с предыдущего уровня.
|
||
</para>
|
||
<para lang="en">
|
||
regex parameters in a "valid_referers" directive were not inherited
|
||
from previous level.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива post_action не работала, если запрос завершался с кодом 499.
|
||
</para>
|
||
<para lang="en">
|
||
a "post_action" directive did run if a request was completed
|
||
with 499 status code.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
оптимизация использования 16K буфера для SSL-соединения.<br/>
|
||
Спасибо Ben Maurer.
|
||
</para>
|
||
<para lang="en">
|
||
optimization of 16K buffer usage in a SSL connection.<br/>
|
||
Thanks to Ben Maurer.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
STARTTLS в режиме SMTP не работал.<br/>
|
||
Спасибо Олегу Мотиенко.
|
||
</para>
|
||
<para lang="en">
|
||
the STARTTLS in SMTP mode did not work.<br/>
|
||
Thanks to Oleg Motienko.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании HTTPS запросы могли завершаться с ошибкой "bad write retry";
|
||
ошибка появилась в 0.5.13.
|
||
</para>
|
||
<para lang="en">
|
||
in HTTPS mode requests might fail with the "bad write retry" error;
|
||
the bug had appeared in 0.5.13.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.22" date="2007-12-19">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь все методы модуля ngx_http_perl_module
|
||
возвращают значения, скопированные в память, выделенную perl'ом.
|
||
</para>
|
||
<para lang="en">
|
||
now all ngx_http_perl_module methods return values copied to perl's
|
||
allocated memory.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если nginx был собран с модулем ngx_http_perl_module,
|
||
использовался perl до версии 5.8.6 и perl поддерживал потоки,
|
||
то во время переконфигурации основной процесс аварийно выходил;
|
||
ошибка появилась в 0.5.9.<br/>
|
||
Спасибо Борису Жмурову.
|
||
</para>
|
||
<para lang="en">
|
||
if nginx was built with ngx_http_perl_module,
|
||
the perl before 5.8.6 was used, and perl supported threads,
|
||
then during reconfiguration the master process aborted;
|
||
the bug had appeared in 0.5.9.<br/>
|
||
Thanks to Boris Zhmurov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в методы модуля ngx_http_perl_module
|
||
могли передаваться неверные результаты выделения в регулярных выражениях.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module methods may get invalid values of the regex captures.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если метод $r->has_request_body() вызывался для запроса,
|
||
у которого небольшое тело запроса было уже полностью получено,
|
||
то в рабочем процессе происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process,
|
||
if the $r->has_request_body() method was called for a request
|
||
whose small request body was already received.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
large_client_header_buffers не освобождались перед переходом в состояние
|
||
keep-alive.<br/>
|
||
Спасибо Олександру Штепе.
|
||
</para>
|
||
<para lang="en">
|
||
large_client_header_buffers did not freed before going to keep-alive state.<br/>
|
||
Thanks to Olexander Shtepa.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в переменной $upstream_addr не записывался последний адрес;
|
||
ошибка появилась в 0.6.18.
|
||
</para>
|
||
<para lang="en">
|
||
the last address was missed in the $upstream_addr variable;
|
||
the bug had appeared in 0.6.18.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива fastcgi_catch_stderr не возвращала ошибку;
|
||
теперь она возвращает ошибку 502, которую можно направить на следующий сервер
|
||
с помощью "fastcgi_next_upstream invalid_header".
|
||
</para>
|
||
<para lang="en">
|
||
the "fastcgi_catch_stderr" directive did return error code;
|
||
now it returns 502 code, that can be rerouted to a next server using
|
||
the "fastcgi_next_upstream invalid_header" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы fastcgi_catch_stderr
|
||
в основном процессе происходил segmentation fault;
|
||
ошибка появилась в 0.6.10.<br/>
|
||
Спасибо Manlio Perillo.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in master process
|
||
if the "fastcgi_catch_stderr" directive was used;
|
||
the bug had appeared in 0.6.10.<br/>
|
||
Thanks to Manlio Perillo.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.21" date="2007-12-03">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
если в значениях переменных директивы proxy_pass используются
|
||
только IP-адреса, то указывать resolver не нужно.
|
||
</para>
|
||
<para lang="en">
|
||
if variable values used in a "proxy_pass" directive contain IP-addresses only,
|
||
then a "resolver" directive is not mandatory.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы proxy_pass c URI-частью
|
||
в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 0.6.19.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if a "proxy_pass" directive with URI-part was used;
|
||
the bug had appeared in 0.6.19.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если resolver использовался на платформах, не поддерживающих метод kqueue,
|
||
то nginx выдавал alert "name is out of response".<br/>
|
||
Спасибо Андрею Нигматулину.
|
||
</para>
|
||
<para lang="en">
|
||
if resolver was used on platform that does not support kqueue,
|
||
then nginx issued an alert "name is out of response".<br/>
|
||
Thanks to Andrei Nigmatulin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
При использовании переменной $server_protocol в FastCGI-параметрах
|
||
и запросе, длина которого была близка к значению директивы
|
||
client_header_buffer_size,
|
||
nginx выдавал alert "fastcgi: the request record is too big".
|
||
</para>
|
||
<para lang="en">
|
||
if the $server_protocol was used in FastCGI parameters
|
||
and a request line length was near to the "client_header_buffer_size"
|
||
directive value,
|
||
then nginx issued an alert "fastcgi: the request record is too big".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при обычном запросе версии HTTP/0.9 к HTTPS серверу nginx возвращал
|
||
обычный ответ.
|
||
</para>
|
||
<para lang="en">
|
||
if a plain text HTTP/0.9 version request was made to HTTPS server,
|
||
then nginx returned usual response.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.20" date="2007-11-28">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы proxy_pass c URI-частью
|
||
в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 0.6.19.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if a "proxy_pass" directive with URI-part was used;
|
||
the bug had appeared in 0.6.19.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.19" date="2007-11-27">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
версия 0.6.18 не собиралась.
|
||
</para>
|
||
<para lang="en">
|
||
the 0.6.18 version could not be built.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
<changes ver="0.6.18" date="2007-11-27">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь модуль ngx_http_userid_module в поле куки с номером процесса
|
||
добавляет микросекунды на время старта.
|
||
</para>
|
||
<para lang="en">
|
||
now the ngx_http_userid_module adds start time microseconds
|
||
to the cookie field contains a pid value.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
в error_log теперь записывается полная строка запроса вместо только URI.
|
||
</para>
|
||
<para lang="en">
|
||
now the full request line instead of URI only is written to error_log.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_pass поддерживает переменные.
|
||
</para>
|
||
<para lang="en">
|
||
variables support in the "proxy_pass" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы resolver и resolver_timeout.
|
||
</para>
|
||
<para lang="en">
|
||
the "resolver" and "resolver_timeout" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь директива "add_header last-modified ''" удаляет в заголовке ответа
|
||
строку "Last-Modified".
|
||
</para>
|
||
<para lang="en">
|
||
now the directive "add_header last-modified ''" deletes a "Last-Modified"
|
||
response header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива limit_rate не позволяла передавать на полной скорости,
|
||
даже если был указан очень большой лимит.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_rate" directive did not allow to use full throughput,
|
||
even if limit value was very high.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.17" date="2007-11-15">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка строки "If-Range" в заголовке запроса.<br/>
|
||
Спасибо Александру Инюхину.
|
||
</para>
|
||
<para lang="en">
|
||
the "If-Range" request header line support.<br/>
|
||
Thanks to Alexander V. Inyukhin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы msie_refresh повторно экранировались
|
||
уже экранированные символы;
|
||
ошибка появилась в 0.6.4.
|
||
</para>
|
||
<para lang="en">
|
||
URL double escaping in a redirect of the "msie_refresh" directive;
|
||
the bug had appeared in 0.6.4.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива autoindex не работала при использовании "alias /".
|
||
</para>
|
||
<para lang="en">
|
||
the "autoindex" directive did not work with the "alias /" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании подзапросов
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process if subrequests were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании SSL и gzip большие ответы могли передаваться не полностью.
|
||
</para>
|
||
<para lang="en">
|
||
the big responses may be transferred truncated if SSL and gzip were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если ответ проксированного сервера был версии HTTP/0.9,
|
||
то переменная $status была равна 0.
|
||
</para>
|
||
<para lang="en">
|
||
the $status variable was equal to 0 if a proxied server returned response
|
||
in HTTP/0.9 version.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.16" date="2007-10-29">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь на Linux используется uname(2) вместо procfs.<br/>
|
||
Спасибо Илье Новикову.
|
||
</para>
|
||
<para lang="en">
|
||
now the uname(2) is used on Linux instead of procfs.<br/>
|
||
Thanks to Ilya Novikov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директиве error_page использовался символ "?", то он экранировался
|
||
при проксировании запроса;
|
||
ошибка появилась в 0.6.11.
|
||
</para>
|
||
<para lang="en">
|
||
if the "?" character was in a "error_page" directive, then it was escaped
|
||
in a proxied request;
|
||
the bug had appeared in 0.6.11.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с mget.
|
||
</para>
|
||
<para lang="en">
|
||
compatibility with mget.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.15" date="2007-10-22">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
совместимость с Cygwin.<br/>
|
||
Спасибо Владимиру Кутакову.
|
||
</para>
|
||
<para lang="en">
|
||
Cygwin compatibility.<br/>
|
||
Thanks to Vladimir Kutakov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива merge_slashes.
|
||
</para>
|
||
<para lang="en">
|
||
the "merge_slashes" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива gzip_vary.
|
||
</para>
|
||
<para lang="en">
|
||
the "gzip_vary" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива server_tokens.
|
||
</para>
|
||
<para lang="en">
|
||
the "server_tokens" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не раскодировал URI в команде SSI include.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not unescape URI in the "include" SSI command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании переменной в директивах charset или source_charset
|
||
на старте или во время переконфигурации происходил segmentation fault,
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault was occurred on start or while reconfiguration
|
||
if variable was used in the "charset" or "source_charset" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx возвращал ошибку 400 на запросы вида
|
||
<nobr>"GET http://www.domain.com HTTP/1.0"</nobr>.<br/>
|
||
Спасибо James Oakley.
|
||
</para>
|
||
<para lang="en">
|
||
nginx returned the 400 response on requests like
|
||
<nobr>"GET http://www.domain.com HTTP/1.0"</nobr>.<br/>
|
||
Thanks to James Oakley.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
после перенаправления запроса с телом запроса с помощью директивы
|
||
error_page nginx пытался снова прочитать тело запроса;
|
||
ошибка появилась в 0.6.7.
|
||
</para>
|
||
<para lang="en">
|
||
if request with request body was redirected using the "error_page" directive,
|
||
then nginx tried to read the request body again;
|
||
the bug had appeared in 0.6.7.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе происходил segmentation fault, если у сервера,
|
||
обрабатывающему запрос, не был явно определён server_name;
|
||
ошибка появилась в 0.6.7.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process
|
||
if no server_name was explicitly defined for server processing request;
|
||
the bug had appeared in 0.6.7.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.14" date="2007-10-15">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь по умолчанию команда SSI echo использует кодирование entity.
|
||
</para>
|
||
<para lang="en">
|
||
now by default the "echo" SSI command uses entity encoding.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр encoding в команде SSI echo.
|
||
</para>
|
||
<para lang="en">
|
||
the "encoding" parameter in the "echo" SSI command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директиву access_log можно использовать внутри блока limit_except.
|
||
</para>
|
||
<para lang="en">
|
||
the "access_log" directive may be used inside the "limit_except" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если все сервера апстрима оказывались недоступными,
|
||
то до восстановления работоспособности
|
||
у всех серверов вес становился равным одному;
|
||
ошибка появилась в 0.6.6.
|
||
</para>
|
||
<para lang="en">
|
||
if all upstream servers were failed, then all servers had got weight
|
||
the was equal one until servers became alive;
|
||
the bug had appeared in 0.6.6.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании переменных $date_local и $date_gmt вне модуля
|
||
ngx_http_ssi_filter_module в рабочем процессе происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process
|
||
if $date_local and $date_gmt were used outside the ngx_http_ssi_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании включённом отладочном логе
|
||
в рабочем процессе мог произойти segmentation fault.<br/>
|
||
Спасибо Андрею Нигматулину.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if debug log was enabled.<br/>
|
||
Thanks to Andrei Nigmatulin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ngx_http_memcached_module не устанавливал $upstream_response_time.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
ngx_http_memcached_module did not set $upstream_response_time.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
рабочий процесс мог зациклиться при использовании memcached.
|
||
</para>
|
||
<para lang="en">
|
||
a worker process may got caught in an endless loop, if the memcached was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx распознавал параметры "close" и "keep-alive" в строке "Connection"
|
||
в заголовке запроса только, если они были в нижнем регистре;
|
||
ошибка появилась в 0.6.11.
|
||
</para>
|
||
<para lang="en">
|
||
nginx supported low case only "close" and "keep-alive" values
|
||
in the "Connection" request header line;
|
||
the bug had appeared in 0.6.11.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
sub_filter не работал с пустой строкой замены.
|
||
</para>
|
||
<para lang="en">
|
||
sub_filter did not work with empty substitution.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в парсинге sub_filter.
|
||
</para>
|
||
<para lang="en">
|
||
in sub_filter parsing.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.13" date="2007-09-24">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не закрывал файл каталога для запроса HEAD,
|
||
если использовался autoindex<br/>
|
||
Спасибо Arkadiusz Patyk.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not close directory file on HEAD request if autoindex was used.<br/>
|
||
Thanks to Arkadiusz Patyk.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.12" date="2007-09-21">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
почтовый прокси-сервер разделён на три модуля: pop3, imap и smtp.
|
||
</para>
|
||
<para lang="en">
|
||
mail proxy was split on three modules: pop3, imap and smtp.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметры конфигурации --without-mail_pop3_module,
|
||
--without-mail_imap_module и --without-mail_smtp_module.
|
||
</para>
|
||
<para lang="en">
|
||
the --without-mail_pop3_module, --without-mail_imap_module,
|
||
and --without-mail_smtp_module configuration parameters.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы smtp_greeting_delay и smtp_client_buffer модуля ngx_mail_smtp_module.
|
||
</para>
|
||
<para lang="en">
|
||
the "smtp_greeting_delay" and "smtp_client_buffer" directives
|
||
of the ngx_mail_smtp_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
wildcard в конце имени сервера не работали;
|
||
ошибка появилась в 0.6.9.
|
||
</para>
|
||
<para lang="en">
|
||
the trailing wildcards did not work;
|
||
the bug had appeared in 0.6.9.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании разделяемой библиотеки PCRE,
|
||
расположенной в нестандартном месте, nginx не запускался на Solaris.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not start on Solaris if the shared PCRE library located
|
||
in non-standard place was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы proxy_hide_header и fastcgi_hide_header не скрывали
|
||
строки заголовка ответа с именем больше 32 символов.<br/>
|
||
Спасибо Manlio Perillo.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_hide_header" and "fastcgi_hide_header" directives did not
|
||
hide response header lines whose name was longer than 32 characters.<br/>
|
||
Thanks to Manlio Perillo.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.11" date="2007-09-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
счётчик активных соединений всегда рос при использовании почтового
|
||
прокси-сервера.
|
||
</para>
|
||
<para lang="en">
|
||
active connection counter always increased if mail proxy was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если бэкенд возвращал только заголовок ответа при небуферизированном
|
||
проксировании, то nginx закрывал соединение с бэкендом по таймауту.
|
||
</para>
|
||
<para lang="en">
|
||
if backend returned response header only using non-buffered proxy,
|
||
then nginx closed backend connection on timeout.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не поддерживал несколько строк "Connection" в заголовке запроса.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not support several "Connection" request header lines.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в сервере апстрима был задан max_fails, то после первой же неудачной
|
||
попытки вес сервера навсегда становился равным одному;
|
||
ошибка появилась в 0.6.6.
|
||
</para>
|
||
<para lang="en">
|
||
if the "max_fails" was set for upstream server, then after first
|
||
failure server weight was always one;
|
||
the bug had appeared in 0.6.6.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.10" date="2007-09-03">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы open_file_cache, open_file_cache_retest и open_file_cache_errors.
|
||
</para>
|
||
<para lang="en">
|
||
the "open_file_cache", "open_file_cache_retest", and "open_file_cache_errors"
|
||
directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
утечки сокетов;
|
||
ошибка появилась в 0.6.7.
|
||
</para>
|
||
<para lang="en">
|
||
socket leak;
|
||
the bug had appeared in 0.6.7.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
В строку заголовка ответа "Content-Type", указанную в методе
|
||
$r->send_http_header(), не добавлялась кодировка, указанная в директиве charset.
|
||
</para>
|
||
<para lang="en">
|
||
a charset set by the "charset" directive was not appended
|
||
to the "Content-Type" header set by $r->send_http_header().
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании метода /dev/poll
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if /dev/poll method was used.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.9" date="2007-08-28">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
рабочий процесс мог зациклиться при использовании протокола HTTPS;
|
||
ошибка появилась в 0.6.7.
|
||
</para>
|
||
<para lang="en">
|
||
a worker process may got caught in an endless loop,
|
||
if the HTTPS protocol was used;
|
||
the bug had appeared in 0.6.7.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если сервер слушал на двух адресах или портах, то nginx не запускался
|
||
при использовании wildcard в конце имени сервера.
|
||
</para>
|
||
<para lang="en">
|
||
if server listened on two addresses or ports and trailing wildcard was used,
|
||
then nginx did not run.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива ip_hash могла неверно помечать сервера как нерабочие.
|
||
</para>
|
||
<para lang="en">
|
||
the "ip_hash" directive might incorrectly mark servers as down.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на amd64;
|
||
ошибка появилась в 0.6.8.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on amd64;
|
||
the bug had appeared in 0.6.8.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.8" date="2007-08-20">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx пытается установить директивы worker_priority,
|
||
worker_rlimit_nofile, worker_rlimit_core, worker_rlimit_sigpending
|
||
без привилегий root'а.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx tries to set the "worker_priority", "worker_rlimit_nofile",
|
||
"worker_rlimit_core", and "worker_rlimit_sigpending" without super-user
|
||
privileges.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx экранирует символы пробела и "%" при передаче запроса
|
||
серверу аутентификации почтового прокси-сервера.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx escapes space and "%" in request to a mail proxy authentication
|
||
server.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx экранирует символ "%" в переменной $memcached_key.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx escapes "%" in $memcached_key variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при указании относительного пути к конфигурационному файлу в качестве
|
||
параметра ключа -c nginx определял путь относительно конфигурационного префикса;
|
||
ошибка появилась в 0.6.6.
|
||
</para>
|
||
<para lang="en">
|
||
nginx used path relative to configuration prefix for non-absolute
|
||
configuration file path specified in the "-c" key;
|
||
the bug had appeared in 0.6.6.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не работал на FreeBSD/sparc64.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not work on FreeBSD/sparc64.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.7" date="2007-08-15">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь пути, указанные в директивах include, auth_basic_user_file,
|
||
perl_modules, ssl_certificate, ssl_certificate_key и
|
||
ssl_client_certificate, определяются относительно каталога конфигурационного
|
||
файла nginx.conf, а не относительно префикса.
|
||
</para>
|
||
<para lang="en">
|
||
now the paths specified in the "include", "auth_basic_user_file",
|
||
"perl_modules", "ssl_certificate", "ssl_certificate_key", and
|
||
"ssl_client_certificate" directives are relative to directory of
|
||
nginx configuration file nginx.conf, but not to nginx prefix directory.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
параметр --sysconfdir=PATH в configure упразднён.
|
||
</para>
|
||
<para lang="en">
|
||
the --sysconfdir=PATH option in configure was canceled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
для обновления на лету версий 0.1.x создан специальный сценарий
|
||
<nobr>make upgrade1.</nobr>
|
||
</para>
|
||
<para lang="en">
|
||
the special make target "upgrade1" was defined for online upgrade of
|
||
0.1.x versions.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы server_name и valid_referers поддерживают регулярные выражения.
|
||
</para>
|
||
<para lang="en">
|
||
the "server_name" and "valid_referers" directives support regular expressions.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива server в блоке upstream поддерживает параметр backup.
|
||
</para>
|
||
<para lang="en">
|
||
the "server" directive in the "upstream" context supports
|
||
the "backup" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module поддерживает метод $r->discard_request_body.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module supports the $r->discard_request_body.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива "add_header Last-Modified ..." меняет строку "Last-Modified"
|
||
в заголовке ответа.
|
||
</para>
|
||
<para lang="en">
|
||
the "add_header Last-Modified ..." directive changes the "Last-Modified"
|
||
response header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если на запрос с телом возвращался ответ с кодом HTTP отличным от 200,
|
||
и после этого запроса соединение переходило в состояние keep-alive,
|
||
то на следующий запрос nginx возвращал 400.
|
||
</para>
|
||
<para lang="en">
|
||
if a response different than 200 was returned to a request with body
|
||
and connection went to the keep-alive state after the request, then
|
||
nginx returned 400 for the next request.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директиве auth_http был задан неправильный адрес, то
|
||
в рабочем процессе происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process
|
||
if invalid address was set in the "auth_http" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь по умолчанию nginx использует значение 511 для listen backlog
|
||
на всех платформах, кроме FreeBSD.<br/>
|
||
Спасибо Jiang Hong.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx uses default listen backlog value 511 on all platforms
|
||
except FreeBSD.<br/>
|
||
Thanks to Jiang Hong.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
рабочий процесс мог зациклиться, если server в блоке upstream был помечен
|
||
как down;
|
||
ошибка появилась в 0.6.6.
|
||
</para>
|
||
<para lang="en">
|
||
a worker process may got caught in an endless loop, if a "server" inside
|
||
"upstream" block was marked as "down";
|
||
the bug had appeared in 0.6.6.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
sendfilev() в Solaris теперь не используется при передаче тела запроса
|
||
FastCGI-серверу через unix domain сокет.
|
||
</para>
|
||
<para lang="en">
|
||
now Solaris sendfilev() is not used to transfer the client request body
|
||
to FastCGI-server via the unix domain socket.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.6" date="2007-07-30">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр --sysconfdir=PATH в configure.
|
||
</para>
|
||
<para lang="en">
|
||
the --sysconfdir=PATH option in configure.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
именованные location'ы.
|
||
</para>
|
||
<para lang="en">
|
||
named locations.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменную $args можно устанавливать с помощью set.
|
||
</para>
|
||
<para lang="en">
|
||
the $args variable can be set with the "set" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $is_args.
|
||
</para>
|
||
<para lang="en">
|
||
the $is_args variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
равномерное распределение запросов к апстримам с большими весами.
|
||
</para>
|
||
<para lang="en">
|
||
fair big weight upstream balancer.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если клиент в почтовом прокси-сервере закрывал соединение,
|
||
то nginx мог не закрывать соединение с бэкендом.
|
||
</para>
|
||
<para lang="en">
|
||
if a client has closed connection to mail proxy
|
||
then nginx might not close connection to backend.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании одного хоста в качестве бэкендов для протоколов HTTP и HTTPS
|
||
без явного указания портов, nginx использовал только один порт—80 или 443.
|
||
</para>
|
||
<para lang="en">
|
||
if the same host without specified port was used as backend for HTTP and HTTPS,
|
||
then nginx used only one port—80 or 443.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Solaris/amd64 Sun Studio 11 и более ранними версиями;
|
||
ошибка появилась в 0.6.4.
|
||
</para>
|
||
<para lang="en">
|
||
fix building on Solaris/amd64 by Sun Studio 11 and early versions;
|
||
the bug had appeared in 0.6.4.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.5" date="2007-07-23">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $nginx_version.<br/>
|
||
Спасибо Николаю Гречуху.
|
||
</para>
|
||
<para lang="en">
|
||
$nginx_version variable.<br/>
|
||
Thanks to Nick S. Grechukh.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
почтовый прокси-сервер поддерживает AUTHENTICATE в режиме IMAP.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
the mail proxy supports AUTHENTICATE in IMAP mode.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
почтовый прокси-сервер поддерживает STARTTLS в режиме SMTP.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
the mail proxy supports STARTTLS in SMTP mode.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь nginx экранирует пробел в переменной $memcached_key.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx escapes space in $memcached_key variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx неправильно собирался Sun Studio на Solaris/amd64.<br/>
|
||
Спасибо Jiang Hong.
|
||
</para>
|
||
<para lang="en">
|
||
nginx was incorrectly built by Sun Studio on Solaris/amd64.<br/>
|
||
Thanks to Jiang Hong.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
незначительных потенциальных ошибок.<br/>
|
||
Спасибо Coverity's Scan.
|
||
</para>
|
||
<para lang="en">
|
||
of minor potential bugs.<br/>
|
||
Thanks to Coverity's Scan.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.4" date="2007-07-17">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
при использовании директивы msie_refresh был возможен XSS.<br/>
|
||
Спасибо Максиму Богуку.
|
||
</para>
|
||
<para lang="en">
|
||
the "msie_refresh" directive allowed XSS.<br/>
|
||
Thanks to Maxim Boguk.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директивы proxy_store и fastcgi_store изменены.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_store" and "fastcgi_store" directives were changed.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_store_access и fastcgi_store_access.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_store_access" and "fastcgi_store_access" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не работал на Solaris/sparc64, если был собран Sun Studio.<br/>
|
||
Спасибо Андрею Нигматулину.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not work on Solaris/sparc64 if it was built by Sun Studio.<br/>
|
||
Thanks to Andrei Nigmatulin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
обход ошибки в Sun Studio 12.<br/>
|
||
Спасибо Jiang Hong.
|
||
</para>
|
||
<para lang="en">
|
||
for Sun Studio 12.<br/>
|
||
Thanks to Jiang Hong.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.3" date="2007-07-12">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_store и fastcgi_store.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_store" and "fastcgi_store" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы auth_http_header
|
||
в рабочем процессе мог произойти segmentation fault.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if the "auth_http_header" directive was used.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если использовался метод аутентификации CRAM-MD5, но он не был разрешён,
|
||
то в рабочем процессе происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process
|
||
if the CRAM-MD5 authentication method was used, but it was not enabled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании протокола HTTPS в директиве proxy_pass
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process when
|
||
the HTTPS protocol was used in the "proxy_pass" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в рабочем процессе мог произойти segmentation fault,
|
||
если использовался метод eventport.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if the eventport method was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы proxy_ignore_client_abort и fastcgi_ignore_client_abort не работали;
|
||
ошибка появилась в 0.5.13.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_ignore_client_abort" and "fastcgi_ignore_client_abort" directives
|
||
did not work;
|
||
the bug had appeared in 0.5.13.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.2" date="2007-07-09">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если заголовок ответа был разделён в FastCGI-записях, то nginx передавал
|
||
клиенту мусор в таких заголовках.
|
||
</para>
|
||
<para lang="en">
|
||
if the FastCGI header was split in records,
|
||
then nginx passed garbage in the header to a client.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.1" date="2007-06-17">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в парсинге SSI.
|
||
</para>
|
||
<para lang="en">
|
||
in SSI parsing.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании удалённого подзапроса в SSI последующий
|
||
подзапрос локального файла мог отдаваться клиенту в неверном порядке.
|
||
</para>
|
||
<para lang="en">
|
||
if remote SSI subrequest was used, then posterior local file subrequest
|
||
might transferred to client in wrong order.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
большие включения в SSI, сохранённые во временные файлы,
|
||
передавались не полностью.
|
||
</para>
|
||
<para lang="en">
|
||
large SSI inclusions buffered in temporary files were truncated.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
значение perl'овой переменной $$ модуля ngx_http_perl_module было равно
|
||
номеру главного процесса.
|
||
</para>
|
||
<para lang="en">
|
||
the perl $$ variable value in ngx_http_perl_module was equal to the master
|
||
process identification number.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.6.0" date="2007-06-14">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы "server_name", "map", and "valid_referers" поддерживают
|
||
маски вида "www.example.*".
|
||
</para>
|
||
<para lang="en">
|
||
the "server_name", "map", and "valid_referers" directives support
|
||
the "www.example.*" wildcards.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.25" date="2007-06-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с параметром --without-http_rewrite_module;
|
||
ошибка появилась в 0.5.24.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with the --without-http_rewrite_module parameter;
|
||
the bug had appeared in 0.5.24.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.24" date="2007-06-06">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
директива ssl_verify_client не работала, если запрос выполнялся
|
||
по протоколу HTTP/0.9.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_verify_client" directive did not work if request was made
|
||
using HTTP/0.9.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании сжатия часть ответа могла передаваться несжатой;
|
||
ошибка появилась в 0.5.23.
|
||
</para>
|
||
<para lang="en">
|
||
a part of response body might be passed uncompressed if gzip was used;
|
||
the bug had appeared in 0.5.23.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.23" date="2007-06-04">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssl_module поддерживает расширение TLS Server Name Indication.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssl_module supports Server Name Indication TLS extension.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива fastcgi_catch_stderr.<br/>
|
||
Спасибо Николаю Гречуху, проект OWOX.
|
||
</para>
|
||
<para lang="en">
|
||
the "fastcgi_catch_stderr" directive.<br/>
|
||
Thanks to Nick S. Grechukh, OWOX project.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на Линуксе в основном процессе происходил segmentation fault,
|
||
если два виртуальных сервера должны bind()ится к пересекающимся портам.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in master process if
|
||
two virtual servers should bind() to the overlapping ports.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если nginx был собран с модулем ngx_http_perl_module и perl
|
||
поддерживал потоки, то во время второй переконфигурации
|
||
выдавались ошибки "panic: MUTEX_LOCK" и "perl_parse() failed".
|
||
</para>
|
||
<para lang="en">
|
||
if nginx was built with ngx_http_perl_module and perl supported threads,
|
||
then during second reconfiguration the error messages
|
||
"panic: MUTEX_LOCK" and "perl_parse() failed" were issued.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в использовании протокола HTTPS в директиве proxy_pass.
|
||
</para>
|
||
<para lang="en">
|
||
in the HTTPS protocol in the "proxy_pass" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.22" date="2007-05-29">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
большое тело запроса могло не передаваться бэкенду;
|
||
ошибка появилась в 0.5.21.
|
||
</para>
|
||
<para lang="en">
|
||
a big request body might not be passed to backend;
|
||
the bug had appeared in 0.5.21.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.21" date="2007-05-28">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если внутри сервера описано больше примерно десяти location'ов,
|
||
то location'ы, заданные с помощью регулярного выражения,
|
||
могли выполняться не в том, порядке, в каком они описаны.
|
||
</para>
|
||
<para lang="en">
|
||
if server has more than about ten locations, then regex locations
|
||
might be chosen not in that order as they were specified.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на 64-битной платформе рабочий процесс мог зациклиться, если 33-тий
|
||
по счёту или последующий бэкенд упал.<br/>
|
||
Спасибо Антону Поварову.
|
||
</para>
|
||
<para lang="en">
|
||
a worker process may got caught in an endless loop on 64-bit platform,
|
||
if the 33-rd or next in succession backend has failed.<br/>
|
||
Thanks to Anton Povarov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании библиотеки PCRE на Solaris/sparc64
|
||
мог произойти bus error.<br/>
|
||
Спасибо Андрею Нигматулину.
|
||
</para>
|
||
<para lang="en">
|
||
a bus error might occur on Solaris/sparc64 if the PCRE library was used.<br/>
|
||
Thanks to Andrei Nigmatulin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в использовании протокола HTTPS в директиве proxy_pass.
|
||
</para>
|
||
<para lang="en">
|
||
in the HTTPS protocol in the "proxy_pass" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.20" date="2007-05-07">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива sendfile_max_chunk.
|
||
</para>
|
||
<para lang="en">
|
||
the "sendfile_max_chunk" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные "$http_...", "$sent_http_..." и "$upstream_http_..."
|
||
можно менять директивой set.
|
||
</para>
|
||
<para lang="en">
|
||
the "$http_...", "$sent_http_...", and "$upstream_http_..." variables
|
||
may be changed using the "set" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании SSI-команды 'if expr="$var = /"'
|
||
в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if the SSI command 'if expr="$var = /"' was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
завершающая строка multipart range ответа передавалась неверно.<br/>
|
||
Спасибо Evan Miller.
|
||
</para>
|
||
<para lang="en">
|
||
trailing boundary of multipart range response was transferred incorrectly.<br/>
|
||
Thanks to Evan Miller.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не работал на Solaris/sparc64, если был собран Sun Studio.<br/>
|
||
Спасибо Андрею Нигматулину.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not work on Solaris/sparc64 if it was built by Sun Studio.<br/>
|
||
Thanks to Andrei Nigmatulin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module не собирался make в Solaris.<br/>
|
||
Спасибо Андрею Нигматулину.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module could not be built by Solaris make.<br/>
|
||
Thanks to Andrei Nigmatulin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.19" date="2007-04-24">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
значение переменной $request_time теперь записывается с точностью
|
||
до миллисекунд.
|
||
</para>
|
||
<para lang="en">
|
||
now the $request_time variable has millisecond precision.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
метод $r->rflush в модуле ngx_http_perl_module переименован в $r->flush.
|
||
</para>
|
||
<para lang="en">
|
||
the method $r->rflush of ngx_http_perl_module was renamed to the $r->flush.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $upstream_addr.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_addr variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_headers_hash_max_size и proxy_headers_hash_bucket_size.<br/>
|
||
Спасибо Володымыру Костырко.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_headers_hash_max_size" and "proxy_headers_hash_bucket_size"
|
||
directives.<br/>
|
||
Thanks to Volodymyr Kostyrko.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании sendfile и limit_rate на 64-битных платформах
|
||
нельзя было передавать файлы больше 2G.
|
||
</para>
|
||
<para lang="en">
|
||
the files more than 2G could not be transferred using sendfile and limit_rate
|
||
on 64-bit platforms.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании sendfile на 64-битном Linux нельзя было передавать файлы
|
||
больше 2G.
|
||
</para>
|
||
<para lang="en">
|
||
the files more than 2G could not be transferred using sendfile on 64-bit Linux.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.18" date="2007-04-19">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_sub_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_sub_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные "$upstream_http_...".
|
||
</para>
|
||
<para lang="en">
|
||
the "$upstream_http_..." variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь переменные $upstream_status и $upstream_response_time
|
||
содержат данные о всех обращениях к апстримам, сделанным до X-Accel-Redirect.
|
||
</para>
|
||
<para lang="en">
|
||
now the $upstream_status and $upstream_response_time variables
|
||
keep data about all upstreams before X-Accel-Redirect.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если nginx был собран с модулем ngx_http_perl_module и perl
|
||
не поддерживал multiplicity, то после первой переконфигурации
|
||
и после получения любого сигнала
|
||
в основном процессе происходил segmentation fault;
|
||
ошибка появилась в 0.5.9.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in master process
|
||
after first reconfiguration and receiving any signal
|
||
if nginx was built with ngx_http_perl_module and perl
|
||
did not support multiplicity;
|
||
the bug had appeared in 0.5.9.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если perl не поддерживал multiplicity, то после переконфигурации
|
||
перловый код не работал;
|
||
ошибка появилась в 0.3.38.
|
||
</para>
|
||
<para lang="en">
|
||
if perl did not support multiplicity, then after reconfiguration
|
||
perl code did not work;
|
||
the bug had appeared in 0.3.38.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.17" date="2007-04-02">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx для метода TRACE всегда возвращает код 405.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx always returns the 405 status for the TRACE method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь nginx поддерживает директиву include внутри блока types.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx supports the "include" directive inside the "types" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
использование переменной $document_root в директиве root и alias
|
||
запрещено: оно вызывало рекурсивное переполнение стека.
|
||
</para>
|
||
<para lang="en">
|
||
the $document_root variable usage in the "root" and "alias" directives
|
||
is disabled: this caused recursive stack overflow.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в использовании протокола HTTPS в директиве proxy_pass.
|
||
</para>
|
||
<para lang="en">
|
||
in the HTTPS protocol in the "proxy_pass" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в некоторых случаях некэшируемые переменные (такие, как $uri)
|
||
возвращали старое закэшированное значение.
|
||
</para>
|
||
<para lang="en">
|
||
in some cases non-cacheable variables (such as $uri variable)
|
||
returned old cached value.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.16" date="2007-03-26">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в качестве ключа для хэша в директиве ip_hash не использовалась сеть
|
||
класса С.<br/>
|
||
Спасибо Павлу Ярковому.
|
||
</para>
|
||
<para lang="en">
|
||
the C-class network was not used as hash key in the "ip_hash" directive.<br/>
|
||
Thanks to Pavel Yarkovoy.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в строке "Content-Type" в заголовке ответа бэкенда был указан charset
|
||
и строка завершалась символом ";",
|
||
то в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 0.3.50.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if a charset was set in the "Content-Type" header line and the line
|
||
has trailing ";";
|
||
the bug had appeared in 0.3.50.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки "[alert] zero size buf" при работе с FastCGI-сервером, если
|
||
тело запроса, записанное во временный файл, было кратно 32K.
|
||
</para>
|
||
<para lang="en">
|
||
the "[alert] zero size buf" error when FastCGI server was used and
|
||
a request body written in a temporary file was multiple of 32K.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Solaris без параметра --with-debug;
|
||
ошибка появилась в 0.5.15.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Solaris without the --with-debug option;
|
||
the bug had appeared in 0.5.15.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.15" date="2007-03-19">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
почтовый прокси-сервер поддерживает аутентифицированное SMTP-проксирование и
|
||
директивы smtp_auth, smtp_capabilities и xclient.<br/>
|
||
Спасибо Антону Южанинову и Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
the mail proxy supports authenticated SMTP proxying and
|
||
the "smtp_auth", "smtp_capabilities", and "xclient" directives.<br/>
|
||
Thanks to Anton Yuzhaninov and Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь keep-alive соединения закрываются сразу же по получении сигнала
|
||
переконфигурации.
|
||
</para>
|
||
<para lang="en">
|
||
now the keep-alive connections are closed just after receiving
|
||
the reconfiguration signal.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директивы imap и auth переименованы соответственно в mail и pop3_auth.
|
||
</para>
|
||
<para lang="en">
|
||
the "imap" and "auth" directives were renamed
|
||
to the "mail" and "pop3_auth" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если использовался метод аутентификации CRAM-MD5 и не был разрешён метод APOP,
|
||
то в рабочем процессе происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred in worker process
|
||
if the CRAM-MD5 authentication method was used
|
||
and the APOP method was disabled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы starttls only в протоколе POP3 nginx
|
||
разрешал аутентификацию без перехода в режим SSL.
|
||
</para>
|
||
<para lang="en">
|
||
if the "starttls only" directive was used in POP3 protocol,
|
||
then nginx allowed authentication without switching to the SSL mode.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
рабочие процессы не выходили после переконфигурации и не переоткрывали логи,
|
||
если использовался метод eventport.
|
||
</para>
|
||
<para lang="en">
|
||
worker processes did not exit after reconfiguration and
|
||
did not rotate logs if the eventport method was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы ip_hash рабочий процесс мог зациклиться.
|
||
</para>
|
||
<para lang="en">
|
||
a worker process may got caught in an endless loop,
|
||
if the "ip_hash" directive was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь nginx не пишет в лог некоторые alert'ы,
|
||
если используются методы eventport или /dev/poll.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx does not log some alerts if eventport or /dev/poll methods are used.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.14" date="2007-02-23">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx игнорировал лишние закрывающие скобки "}" в конце
|
||
конфигурационного файла.
|
||
</para>
|
||
<para lang="en">
|
||
nginx ignored superfluous closing "}" in the end of configuration file.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.13" date="2007-02-19">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
методы COPY и MOVE.
|
||
</para>
|
||
<para lang="en">
|
||
the COPY and MOVE methods.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_realip_module устанавливал мусор для запросов,
|
||
переданных по keep-alive соединению.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_realip_module set garbage for requests passed via
|
||
keep-alive connection.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не работал на 64-битном big-endian Linux.<br/>
|
||
Спасибо Андрею Нигматулину.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not work on big-endian 64-bit Linux.<br/>
|
||
Thanks to Andrei Nigmatulin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при получении слишком длинной команды IMAP/POP3-прокси теперь сразу
|
||
закрывает соединение, а не по таймауту.
|
||
</para>
|
||
<para lang="en">
|
||
now when IMAP/POP3 proxy receives too long command it closes the connection
|
||
right away, but not after timeout.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если при использовании метода epoll клиент закрывал преждевременно
|
||
соединение со своей стороны, то nginx закрывал это соединение только
|
||
по истечении таймаута на передачу.
|
||
</para>
|
||
<para lang="en">
|
||
if the "epoll" method was used and a client closed a connection prematurely,
|
||
then nginx closed the connection after a send timeout only.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на платформах, отличных от i386, amd64, sparc и ppc;
|
||
ошибка появилась в 0.5.8.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on platforms different from i386, amd64, sparc,
|
||
and ppc;
|
||
the bug had appeared in 0.5.8.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.12" date="2007-02-12">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на платформах, отличных от i386, amd64, sparc и ppc;
|
||
ошибка появилась в 0.5.8.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on platforms different from i386, amd64, sparc,
|
||
and ppc;
|
||
the bug had appeared in 0.5.8.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании временных файлов в время работы с FastCGI-сервером
|
||
в рабочем процессе мог произойти segmentation fault;
|
||
ошибка появилась в 0.5.8.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if the temporary files were used while working with FastCGI server;
|
||
the bug had appeared in 0.5.8.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если переменная $fastcgi_script_name записывалась в лог,
|
||
то в рабочем процессе мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if the $fastcgi_script_name variable was logged.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ngx_http_perl_module не собирался на Solaris.
|
||
</para>
|
||
<para lang="en">
|
||
ngx_http_perl_module could not be built on Solaris.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.11" date="2007-02-05">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь configure определяет библиотеку PCRE в MacPorts.<br/>
|
||
Спасибо Chris McGrath.
|
||
</para>
|
||
<para lang="en">
|
||
now configure detects system PCRE library in MacPorts.<br/>
|
||
Thanks to Chris McGrath.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответ был неверным, если запрашивалось несколько диапазонов;
|
||
ошибка появилась в 0.5.6.
|
||
</para>
|
||
<para lang="en">
|
||
the response was incorrect if several ranges were requested;
|
||
the bug had appeared in 0.5.6.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива create_full_put_path не могла создавать промежуточные каталоги,
|
||
если не была установлена директива dav_access.<br/>
|
||
Спасибо Evan Miller.
|
||
</para>
|
||
<para lang="en">
|
||
the "create_full_put_path" directive could not create the intermediate
|
||
directories if no "dav_access" directive was set.<br/>
|
||
Thanks to Evan Miller.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
вместо кодов ошибок "400" и "408" в access_log мог записываться код "0".
|
||
</para>
|
||
<para lang="en">
|
||
the "0" response code might be logged in the access_log instead of
|
||
the "400" and "408" error codes.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при сборке с оптимизацией -O2 в рабочем процессе мог произойти
|
||
segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if nginx was built with -O2 optimization.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.10" date="2007-01-26">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
во время обновления исполняемого файла новый процесс не наследовал
|
||
слушающие сокеты;
|
||
ошибка появилась в 0.5.9.
|
||
</para>
|
||
<para lang="en">
|
||
while online executable file upgrade the new master process did not
|
||
inherit the listening sockets;
|
||
the bug had appeared in 0.5.9.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при сборке с оптимизацией -O2 в рабочем процессе мог произойти
|
||
segmentation fault;
|
||
ошибка появилась в 0.5.1.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur in worker process
|
||
if nginx was built with -O2 optimization;
|
||
the bug had appeared in 0.5.1.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.9" date="2007-01-25">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
модуль ngx_http_memcached_module теперь в качестве ключа использует
|
||
значение переменной $memcached_key.
|
||
</para>
|
||
<para lang="en">
|
||
now the ngx_http_memcached_module uses the $memcached_key variable value
|
||
as a key.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $memcached_key.
|
||
</para>
|
||
<para lang="en">
|
||
the $memcached_key variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр clean в директиве client_body_in_file_only.
|
||
</para>
|
||
<para lang="en">
|
||
the "clean" parameter in the "client_body_in_file_only" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива env.
|
||
</para>
|
||
<para lang="en">
|
||
the "env" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива sendfile работает внутри блока if.
|
||
</para>
|
||
<para lang="en">
|
||
the "sendfile" directive is available inside the "if" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь при ошибке записи в access_log nginx записывает сообщение в error_log,
|
||
но не чаще одного раза в минуту.
|
||
</para>
|
||
<para lang="en">
|
||
now on failure of the writing to access nginx logs a message to error_log,
|
||
but not more often than once a minute.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива "access_log off" не всегда запрещала запись в лог.
|
||
</para>
|
||
<para lang="en">
|
||
the "access_log off" directive did not always turn off the logging.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.8" date="2007-01-19">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если использовалась директива <nobr>"client_body_in_file_only on"</nobr>
|
||
и тело запроса было небольшое, то мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur if
|
||
<nobr>"client_body_in_file_only on"</nobr> was used
|
||
and a request body was small.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
происходил segmentation fault, если использовались директивы
|
||
<nobr>"client_body_in_file_only on"</nobr>
|
||
и <nobr>"proxy_pass_request_body off"</nobr>
|
||
или <nobr>"fastcgi_pass_request_body off"</nobr>,
|
||
и делался переход к следующему бэкенду.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred if <nobr>"client_body_in_file_only on"</nobr>
|
||
and <nobr>"proxy_pass_request_body off"</nobr>
|
||
or <nobr>"fastcgi_pass_request_body off"</nobr>
|
||
directives were used, and nginx switched to a next upstream.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если при использовании директивы "proxy_buffering off" соединение с клиентом
|
||
было неактивно, то оно закрывалось по таймауту, заданному директивой
|
||
send_timeout;
|
||
ошибка появилась в 0.4.7.
|
||
</para>
|
||
<para lang="en">
|
||
if the "proxy_buffering off" directive was used and a client connection
|
||
was non-active, then the connection was closed after send timeout;
|
||
the bug had appeared in 0.4.7.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если при использовании метода epoll клиент закрывал преждевременно
|
||
соединение со своей стороны, то nginx закрывал это соединение только
|
||
по истечении таймаута на передачу.
|
||
</para>
|
||
<para lang="en">
|
||
if the "epoll" method was used and a client closed a connection prematurely,
|
||
then nginx closed the connection after a send timeout only.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки "[alert] zero size buf" при работе с FastCGI-сервером.
|
||
</para>
|
||
<para lang="en">
|
||
the "[alert] zero size buf" error when FastCGI server was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Исправление ошибок в директиве limit_zone.
|
||
</para>
|
||
<para lang="en">
|
||
Bugfixes in the "limit_zone" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.7" date="2007-01-15">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
оптимизация использования памяти в ssl_session_cache.
|
||
</para>
|
||
<para lang="en">
|
||
the ssl_session_cache storage optimization.
|
||
</para>
|
||
</change>
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Исправление ошибок в директивах ssl_session_cache и limit_zone.
|
||
</para>
|
||
<para lang="en">
|
||
Bugfixes in the "ssl_session_cache" and "limit_zone" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на старте или во время переконфигурации происходил segmentation fault,
|
||
если директивы ssl_session_cache или limit_zone использовались
|
||
на 64-битных платформах.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault was occurred on start or while reconfiguration
|
||
if the "ssl_session_cache" or "limit_zone" directives were used
|
||
on 64-bit platforms.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директив add_before_body или add_after_body происходил
|
||
segmentation fault, если в заголовке ответа нет строки "Content-Type".
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred if the "add_before_body" or "add_after_body"
|
||
directives were used and there was no "Content-Type" header line in response.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
библиотека OpenSSL всегда собиралась с поддержкой потоков.<br/>
|
||
Спасибо Дену Иванову.
|
||
</para>
|
||
<para lang="en">
|
||
the OpenSSL library was always built with the threads support.<br/>
|
||
Thanks to Den Ivanov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость библиотеки PCRE-6.5+ и компилятора icc.
|
||
</para>
|
||
<para lang="en">
|
||
the PCRE-6.5+ library and the icc compiler compatibility.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.6" date="2007-01-09">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь модуль ngx_http_index_module игнорирует все методы,
|
||
кроме GET, HEAD и POST.
|
||
</para>
|
||
<para lang="en">
|
||
now the ngx_http_index_module ignores all methods except the GET, HEAD, and
|
||
POST methods.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_limit_zone_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_limit_zone_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $binary_remote_addr.
|
||
</para>
|
||
<para lang="en">
|
||
the $binary_remote_addr variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы ssl_session_cache модулей ngx_http_ssl_module и ngx_imap_ssl_module.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_session_cache" directives
|
||
of the ngx_http_ssl_module and ngx_imap_ssl_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
метод DELETE поддерживает рекурсивное удаление.
|
||
</para>
|
||
<para lang="en">
|
||
the DELETE method supports recursive removal.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании $r->sendfile() byte-ranges передавались неверно.
|
||
</para>
|
||
<para lang="en">
|
||
the byte-ranges were transferred incorrectly if the $r->sendfile() was used.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.5" date="2006-12-24">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
ключ -v больше не выводит информацию о компиляторе.
|
||
</para>
|
||
<para lang="en">
|
||
the -v switch does not show compiler information any more.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ключ -V.
|
||
</para>
|
||
<para lang="en">
|
||
the -V switch.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива worker_rlimit_core поддерживает указание размера в K, M и G.
|
||
</para>
|
||
<para lang="en">
|
||
the "worker_rlimit_core" directive supports size in K, M, and G.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль nginx.pm теперь может устанавливаться непривилегированным пользователем.
|
||
</para>
|
||
<para lang="en">
|
||
the nginx.pm module now could be installed by an unprivileged user.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании методов $r->request_body или $r->request_body_file мог
|
||
произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur if the $r->request_body or
|
||
$r->request_body_file methods were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибок, специфичных для платформы ppc.
|
||
</para>
|
||
<para lang="en">
|
||
the ppc platform specific bugs.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.4" date="2006-12-15">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директиву perl можно использовать внутри блока limit_except.
|
||
</para>
|
||
<para lang="en">
|
||
the "perl" directive may be used inside the "limit_except" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_dav_module требовал строку "Date" в заголовке запроса
|
||
для метода DELETE.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_dav_module required the "Date" request header line
|
||
for the DELETE method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании одного параметра в директиве dav_access nginx мог
|
||
сообщить об ошибке в конфигурации.
|
||
</para>
|
||
<para lang="en">
|
||
if one only parameter was used in the "dav_access" directive, then
|
||
nginx might report about configuration error.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании переменной $host мог произойти segmentation fault;
|
||
ошибка появилась в 0.4.14.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur if the $host variable was used;
|
||
the bug had appeared in 0.4.14.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.3" date="2006-12-13">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module поддерживает методы $r->status, $r->log_error
|
||
и $r->sleep.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module supports the $r->status, $r->log_error,
|
||
and $r->sleep methods.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
метод $r->variable поддерживает переменные, неописанные в конфигурации nginx'а.
|
||
</para>
|
||
<para lang="en">
|
||
the $r->variable method supports variables that do not exist in nginx
|
||
configuration.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
метод $r->has_request_body не работал.
|
||
</para>
|
||
<para lang="en">
|
||
the $r->has_request_body method did not work.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.2" date="2006-12-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директивах proxy_pass использовалось имя, указанное в upstream,
|
||
то nginx пытался найти IP-адрес этого имени;
|
||
ошибка появилась в 0.5.1.
|
||
</para>
|
||
<para lang="en">
|
||
if the "proxy_pass" directive used the name of the "upstream" block,
|
||
then nginx tried to resolve the name;
|
||
the bug had appeared in 0.5.1.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.1" date="2006-12-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива post_action могла не работать после неудачного завершения запроса.
|
||
</para>
|
||
<para lang="en">
|
||
the "post_action" directive might not run after a unsuccessful completion
|
||
of a request.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
обход ошибки в Eudora для Mac;
|
||
ошибка появилась в 0.4.11.<br/>
|
||
Спасибо Bron Gondwana.
|
||
</para>
|
||
<para lang="en">
|
||
for Eudora for Mac;
|
||
the bug had appeared in 0.4.11.<br/>
|
||
Thanks to Bron Gondwana.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при указании в директиве fastcgi_pass имени описанного upstream'а выдавалось
|
||
сообщение "no port in upstream";
|
||
ошибка появилась в 0.5.0.
|
||
</para>
|
||
<para lang="en">
|
||
if the "upstream" name was used in the "fastcgi_pass", then the message
|
||
"no port in upstream" was issued;
|
||
the bug had appeared in 0.5.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директивах proxy_pass и fastcgi_pass использовались одинаковых имена
|
||
серверов, но с разными портами, то эти директивы использовали первый
|
||
описанный порт;
|
||
ошибка появилась в 0.5.0.
|
||
</para>
|
||
<para lang="en">
|
||
if the "proxy_pass" and "fastcgi_pass" directives used the same servers but
|
||
different ports, then these directives uses the first described port;
|
||
the bug had appeared in 0.5.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директивах proxy_pass и fastcgi_pass использовались unix domain сокеты,
|
||
то эти директивы использовали первый описанный сокет;
|
||
ошибка появилась в 0.5.0.
|
||
</para>
|
||
<para lang="en">
|
||
if the "proxy_pass" and "fastcgi_pass" directives used the unix domain sockets,
|
||
then these directives used first described socket;
|
||
the bug had appeared in 0.5.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ngx_http_auth_basic_module игнорировал пользователя, если он был указан
|
||
в последней строке файла паролей и после пароля не было перевода строки,
|
||
возврата каретки или символа ":".
|
||
</para>
|
||
<para lang="en">
|
||
ngx_http_auth_basic_module ignored the user if it was in the last line in
|
||
the password file and there was no the carriage return, the line feed,
|
||
or the ":" symbol after the password.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $upstream_response_time могла быть равна "0.000", хотя время
|
||
обработки было больше 1 миллисекунды.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_response_time variable might be equal to "0.000", although
|
||
response time was more than 1 millisecond.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.5.0" date="2006-12-04">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
параметры в виде "%name" в директиве log_format больше не поддерживаются.
|
||
</para>
|
||
<para lang="en">
|
||
the parameters in the "%name" form in the "log_format" directive
|
||
are not supported anymore.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директивы proxy_upstream_max_fails, proxy_upstream_fail_timeout,
|
||
fastcgi_upstream_max_fails, и fastcgi_upstream_fail_timeout,
|
||
memcached_upstream_max_fails и memcached_upstream_fail_timeout
|
||
больше не поддерживаются.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_upstream_max_fails", "proxy_upstream_fail_timeout",
|
||
"fastcgi_upstream_max_fails", "fastcgi_upstream_fail_timeout",
|
||
"memcached_upstream_max_fails", and "memcached_upstream_fail_timeout"
|
||
directives are not supported anymore.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива server в блоке upstream поддерживает параметры
|
||
max_fails, fail_timeout и down.
|
||
</para>
|
||
<para lang="en">
|
||
the "server" directive in the "upstream" context supports
|
||
the "max_fails", "fail_timeout", and "down" parameters.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ip_hash в блоке upstream.
|
||
</para>
|
||
<para lang="en">
|
||
the "ip_hash" directive inside the "upstream" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
статус WAIT в строке "Auth-Status" в заголовке ответа сервера аутентификации
|
||
IMAP/POP3 прокси.
|
||
</para>
|
||
<para lang="en">
|
||
the WAIT status in the "Auth-Status" header line of the IMAP/POP3 proxy
|
||
authentication server response.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на 64-битных платформах;
|
||
ошибка появилась в 0.4.14.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on 64-bit platforms;
|
||
the bug had appeared in 0.4.14.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.14" date="2006-11-27">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_pass_error_message в IMAP/POP3 прокси.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass_error_message" directive in IMAP/POP3 proxy.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь configure определяет библиотеку PCRE на FreeBSD, Linux и NetBSD.
|
||
</para>
|
||
<para lang="en">
|
||
now configure detects system PCRE library on FreeBSD, Linux, and NetBSD.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ngx_http_perl_module не работал с перлом, собранным с поддержкой потоков;
|
||
ошибка появилась в 0.3.38.
|
||
</para>
|
||
<para lang="en">
|
||
ngx_http_perl_module did not work with perl built with the threads support;
|
||
the bug had appeared in 0.3.38.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ngx_http_perl_module не работал корректно, если перл вызывался рекурсивно.
|
||
</para>
|
||
<para lang="en">
|
||
ngx_http_perl_module did not work if perl was called recursively.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx игнорировал имя сервера в строке запроса.
|
||
</para>
|
||
<para lang="en">
|
||
nginx ignored a host name in a request line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если FastCGI сервер передавал много в stderr,
|
||
то рабочий процесс мог зациклиться.
|
||
</para>
|
||
<para lang="en">
|
||
a worker process may got caught in an endless loop,
|
||
if a FastCGI server sent too many data to the stderr.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при изменении системного времени переменная $upstream_response_time
|
||
могла быть отрицательной.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_response_time variable may be negative if the system time
|
||
was changed backward.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании POP3 серверу аутентификации IMAP/POP3 прокси
|
||
не передавался параметр Auth-Login-Attempt.
|
||
</para>
|
||
<para lang="en">
|
||
the "Auth-Login-Attempt" parameter was not sent to
|
||
IMAP/POP3 proxy authentication server when POP3 was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при ошибке соединения с сервером аутентификации IMAP/POP3 прокси
|
||
мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur if connect to IMAP/POP3 proxy
|
||
authentication server failed.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.13" date="2006-11-15">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директиву proxy_pass можно использовать внутри блока limit_except.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass" directive may be used inside the "limit_except" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива limit_except поддерживает все WebDAV методы.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_except" directive supports all WebDAV methods.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы add_before_body без директивы add_after_body
|
||
ответ передавался не полностью.
|
||
</para>
|
||
<para lang="en">
|
||
if the "add_before_body" directive was used without
|
||
the "add_after_body" directive, then a response did not transferred complete.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
большое тело запроса не принималось, если использовались метод epoll
|
||
и deferred accept().
|
||
</para>
|
||
<para lang="en">
|
||
a large request body did not receive if the epoll method
|
||
and the deferred accept() were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
для ответов модуля ngx_http_autoindex_module не выставлялась кодировка;
|
||
ошибка появилась в 0.3.50.
|
||
</para>
|
||
<para lang="en">
|
||
a charset could not be set for ngx_http_autoindex_module responses;
|
||
the bug had appeared in 0.3.50.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки "[alert] zero size buf" при работе с FastCGI-сервером;
|
||
</para>
|
||
<para lang="en">
|
||
the "[alert] zero size buf" error when FastCGI server was used;
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр конфигурации --group= игнорировался.<br/>
|
||
Спасибо Thomas Moschny.
|
||
</para>
|
||
<para lang="en">
|
||
the --group= configuration parameter was ignored.<br/>
|
||
Thanks to Thomas Moschny.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
50-й подзапрос в SSI ответе не работал;
|
||
ошибка появилась в 0.3.50.
|
||
</para>
|
||
<para lang="en">
|
||
the 50th subrequest in SSI response did not work;
|
||
the bug had appeared in 0.3.50.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.12" date="2006-10-31">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module поддерживает метод $r->variable.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module supports the $r->variable method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при включении в ответ большого статического файла с помощью SSI
|
||
ответ мог передаваться не полностью.
|
||
</para>
|
||
<para lang="en">
|
||
if a big static file was included using SSI in a response,
|
||
then the response may be transferred incomplete.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не убирал "#fragment" в URI.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not omit the "#fragment" part in URI.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.11" date="2006-10-25">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
POP3 прокси поддерживает AUTH LOGIN PLAIN и CRAM-MD5.
|
||
</para>
|
||
<para lang="en">
|
||
the POP3 proxy supports the AUTH LOGIN PLAIN and CRAM-MD5.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module поддерживает метод $r->allow_ranges.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module supports the $r->allow_ranges method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при включённой поддержке команды APOP в POP3 прокси могли
|
||
не работать команды USER/PASS;
|
||
ошибка появилась в 0.4.10.
|
||
</para>
|
||
<para lang="en">
|
||
if the APOP was enabled in the POP3 proxy, then the USER/PASS commands
|
||
might not work;
|
||
the bug had appeared in 0.4.10.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.10" date="2006-10-23">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
POP3 прокси поддерживает APOP.
|
||
</para>
|
||
<para lang="en">
|
||
the POP3 proxy supports the APOP command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании методов select, poll и /dev/poll во время ожидания
|
||
ответа от сервера аутентификации IMAP/POP3 прокси нагружал процессор.
|
||
</para>
|
||
<para lang="en">
|
||
if the select, poll or /dev/poll methods were used, then while
|
||
waiting authentication server response the IMAP/POP3 proxy hogged CPU.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании переменной $server_addr в директиве map мог
|
||
произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault might occur if the $server_addr variable was used
|
||
in the "map" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_flv_module не поддерживал byte ranges для полных ответов;
|
||
ошибка появилась в 0.4.7.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_flv_module did not support the byte ranges for full responses;
|
||
the bug had appeared in 0.4.7.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Debian amd64;
|
||
ошибка появилась в 0.4.9.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Debian amd64;
|
||
the bug had appeared in 0.4.9.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.9" date="2006-10-13">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр set в команде SSI include.
|
||
</para>
|
||
<para lang="en">
|
||
the "set" parameter in the "include" SSI command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module теперь проверяет версию модуля nginx.pm.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module now tests the nginx.pm module version.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.8" date="2006-10-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если до команды SSI include с параметром wait выполнялась ещё
|
||
одна команда SSI include, то параметр wait мог не работать.
|
||
</para>
|
||
<para lang="en">
|
||
if an "include" SSI command were before another "include" SSI command
|
||
with a "wait" parameter, then the "wait" parameter might not work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_flv_module добавлял FLV-заголовок для полных ответов.<br/>
|
||
Спасибо Алексею Ковырину.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_flv_module added the FLV header to the full responses.<br/>
|
||
Thanks to Alexey Kovyrin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.7" date="2006-10-10">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_flv_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_flv_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $request_body_file.
|
||
</para>
|
||
<para lang="en">
|
||
the $request_body_file variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы charset и source_charset поддерживают переменные.
|
||
</para>
|
||
<para lang="en">
|
||
the "charset" and "source_charset" directives support the variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если до команды SSI include с параметром wait выполнялась ещё
|
||
одна команда SSI include, то параметр wait мог не работать.
|
||
</para>
|
||
<para lang="en">
|
||
if an "include" SSI command were before another "include" SSI command
|
||
with a "wait" parameter, then the "wait" parameter might not work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании директивы "proxy_buffering off" или при работе
|
||
с memcached соединения могли не закрываться по таймауту.
|
||
</para>
|
||
<para lang="en">
|
||
if the "proxy_buffering off" directive was used or while working with
|
||
memcached the connections might not be closed on timeout.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не запускался на 64-битных платформах, отличных от amd64, sparc64 и ppc64.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not run on 64-bit platforms except amd64, sparc64, and ppc64.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.6" date="2006-10-06">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не запускался на 64-битных платформах, отличных от amd64, sparc64 и ppc64.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not run on 64-bit platforms except amd64, sparc64, and ppc64.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при запросе версии HTTP/1.1 nginx передавал ответ chunk'ами,
|
||
если длина ответа в методе $r->headers_out("Content-Length", ...)
|
||
была задана текстовой строкой.
|
||
</para>
|
||
<para lang="en">
|
||
nginx sent the chunked response for HTTP/1.1 request,<br/>
|
||
if its length was set by text string in
|
||
the $r->headers_out("Content-Length", ...) method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
после перенаправления ошибки с помощью директивы error_page любая директива
|
||
модуля ngx_http_rewrite_module возвращала эту ошибку;
|
||
ошибка появилась в 0.4.4.
|
||
</para>
|
||
<para lang="en">
|
||
after redirecting error by an "error_page" directive
|
||
any ngx_http_rewrite_module directive returned this error code;
|
||
the bug had appeared in 0.4.4.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.5" date="2006-10-02">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Linux и Solaris;
|
||
ошибка появилась в 0.4.4.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Linux and Solaris;
|
||
the bug had appeared in 0.4.4.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.4" date="2006-10-02">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $scheme.
|
||
</para>
|
||
<para lang="en">
|
||
the $scheme variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива expires поддерживает параметр max.
|
||
</para>
|
||
<para lang="en">
|
||
the "expires" directive supports the "max" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива include поддерживает маску "*".<br/>
|
||
Спасибо Jonathan Dance.
|
||
</para>
|
||
<para lang="en">
|
||
the "include" directive supports the "*" mask.<br/>
|
||
Thanks to Jonathan Dance.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива return всегда изменяла код ответа, перенаправленного
|
||
директивой error_page.
|
||
</para>
|
||
<para lang="en">
|
||
the "return" directive always overrode the "error_page" response code
|
||
redirected by the "error_page" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
происходил segmentation fault, если в методе PUT передавалось
|
||
тело нулевой длины.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred if zero-length body was in PUT method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании переменных в директиве proxy_redirect редирект
|
||
изменялся неверно.
|
||
</para>
|
||
<para lang="en">
|
||
the redirect was changed incorrectly if the variables were used
|
||
in the "proxy_redirect" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.3" date="2006-09-26">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
ошибку 499 теперь нельзя перенаправить с помощью директивы error_page.
|
||
</para>
|
||
<para lang="en">
|
||
now the 499 error could not be redirected using an "error_page" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка Solaris 10 event ports.
|
||
</para>
|
||
<para lang="en">
|
||
the Solaris 10 event ports support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_browser_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_browser_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при перенаправлении ошибки 400 проксированному серверу
|
||
помощью директивы error_page мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault may occur while redirecting the 400 error
|
||
to the proxied server using a "proxy_pass" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
происходил segmentation fault, если в директиве proxy_pass использовался
|
||
unix domain сокет;
|
||
ошибка появилась в 0.3.47.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred if an unix domain socket was used in
|
||
a "proxy_pass" directive;
|
||
the bug had appeared in 0.3.47.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
SSI не работал с ответами memcached и небуферизированными проксированными
|
||
ответами.
|
||
</para>
|
||
<para lang="en">
|
||
SSI did work with memcached and nonbuffered responses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
обход ошибки PAUSE hardware capability в Sun Studio.
|
||
</para>
|
||
<para lang="en">
|
||
of the Sun Studio PAUSE hardware capability bug.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.2" date="2006-09-14">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
убрана поддержка флага O_NOATIME на Linux;
|
||
ошибка появилась в 0.4.1.
|
||
</para>
|
||
<para lang="en">
|
||
the O_NOATIME flag support on Linux was canceled;
|
||
the bug had appeared in 0.4.1.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.1" date="2006-09-14">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с DragonFlyBSD.<br/>
|
||
Спасибо Павлу Назарову.
|
||
</para>
|
||
<para lang="en">
|
||
the DragonFlyBSD compatibility.<br/>
|
||
Thanks to Pavel Nazarov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
обход ошибки в sendfile() в 64-битном Linux при передаче файлов больше 2G.
|
||
</para>
|
||
<para lang="en">
|
||
of bug in 64-bit Linux sendfile(), when file is more than 2G.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь на Linux nginx для статических запросов использует флаг O_NOATIME.<br/>
|
||
Спасибо Yusuf Goolamabbas.
|
||
</para>
|
||
<para lang="en">
|
||
now on Linux nginx uses O_NOATIME flag for static requests.<br/>
|
||
Thanks to Yusuf Goolamabbas.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.4.0" date="2006-08-30">
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Изменение во внутреннем API: инициализация модулей HTTP перенесена из фазы
|
||
init module в фазу HTTP postconfiguration.
|
||
</para>
|
||
<para lang="en">
|
||
Change in internal API: the HTTP modules initialization was moved
|
||
from the init module phase to the HTTP postconfiguration phase.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь тело запроса в модуле ngx_http_perl_module не считывается
|
||
заранее: нужно явно инициировать чтение с помощью метода $r->has_request_body.
|
||
</para>
|
||
<para lang="en">
|
||
now the request body is not read beforehand for the ngx_http_perl_module:
|
||
it's required to start the reading using the $r->has_request_body method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module поддерживает код возврата DECLINED.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module supports the DECLINED return code.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_dav_module поддерживает входящую строку заголовка "Date"
|
||
для метода PUT.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_dav_module supports the incoming "Date" header line
|
||
for the PUT method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssi работает внутри блока if.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssi" directive is available inside the "if" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
происходил segmentation fault, если в директиве index использовалась
|
||
переменные и при этом первое имя индексного файла было без переменных;
|
||
ошибка появилась в 0.1.29.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred if there was an "index" directive with
|
||
variables and the first index name was without variables;
|
||
the bug had appeared in 0.1.29.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.61" date="2006-08-28">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива tcp_nodelay теперь по умолчанию включена.
|
||
</para>
|
||
<para lang="en">
|
||
now the "tcp_nodelay" directive is turned on by default.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива msie_refresh.
|
||
</para>
|
||
<para lang="en">
|
||
the "msie_refresh" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива recursive_error_pages.
|
||
</para>
|
||
<para lang="en">
|
||
the "recursive_error_pages" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива rewrite возвращала неправильный редирект, если редирект
|
||
включал в себя выделенные закодированные символы из оригинального URI.
|
||
</para>
|
||
<para lang="en">
|
||
the "rewrite" directive returned incorrect redirect, if the redirect
|
||
had the captured escaped symbols from original URI.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.60" date="2006-08-18">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
во время перенаправления ошибки рабочий процесс мог зациклиться;
|
||
ошибка появилась в 0.3.59.
|
||
</para>
|
||
<para lang="en">
|
||
a worker process may got caught in an endless loop
|
||
while an error redirection;
|
||
the bug had appeared in 0.3.59.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.59" date="2006-08-16">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь можно делать несколько перенаправлений через директиву error_page.
|
||
</para>
|
||
<para lang="en">
|
||
now is possible to do several redirection using the "error_page" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива dav_access не поддерживала три параметра.
|
||
</para>
|
||
<para lang="en">
|
||
the "dav_access" directive did not support three parameters.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива error_page не изменяла строку "Content-Type"
|
||
после перенаправления с помощью "X-Accel-Redirect";
|
||
ошибка появилась в 0.3.58.
|
||
</para>
|
||
<para lang="en">
|
||
the "error_page" directive did not changes the "Content-Type" header line
|
||
after the "X-Accel-Redirect" was used;
|
||
the bug had appeared in 0.3.58.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.58" date="2006-08-14">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива error_page поддерживает переменные.
|
||
</para>
|
||
<para lang="en">
|
||
the "error_page" directive supports the variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь на Linux используется интерфейс procfs вместо sysctl.
|
||
</para>
|
||
<para lang="en">
|
||
now the procfs interface instead of sysctl is used on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь при использовании "X-Accel-Redirect" строка "Content-Type" наследуется
|
||
из первоначального ответа.
|
||
</para>
|
||
<para lang="en">
|
||
now the "Content-Type" header line is inherited from first response
|
||
when the "X-Accel-Redirect" was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива error_page не перенаправляла ошибку 413.
|
||
</para>
|
||
<para lang="en">
|
||
the "error_page" directive did not redirect the 413 error.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
завершающий "?" не удалял старые аргументы, если в переписанном URI
|
||
не было новых аргументов.
|
||
</para>
|
||
<para lang="en">
|
||
the trailing "?" did not remove old arguments if no new arguments
|
||
were added to a rewritten URI.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не запускался на 64-битной FreeBSD 7.0-CURRENT.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not run on 64-bit FreeBSD 7.0-CURRENT.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.57" date="2006-08-09">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $ssl_client_serial.
|
||
</para>
|
||
<para lang="en">
|
||
the $ssl_client_serial variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в операторе "!-e" в директиве if.<br/>
|
||
Спасибо Андриану Буданцову.
|
||
</para>
|
||
<para lang="en">
|
||
in the "!-e" operator of the "if" directive.<br/>
|
||
Thanks to Andrian Budanstov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при проверке клиентского сертификата nginx не передавал клиенту
|
||
информацию о требуемых сертификатах.
|
||
</para>
|
||
<para lang="en">
|
||
while a client certificate verification nginx did not send to a client
|
||
the required certificates information.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $document_root не поддерживала переменные в директиве root.
|
||
</para>
|
||
<para lang="en">
|
||
the $document_root variable did not support the variables in the "root"
|
||
directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.56" date="2006-08-04">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива dav_access.
|
||
</para>
|
||
<para lang="en">
|
||
the "dav_access" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива if поддерживает операторы "-d", "!-d", "-e", "!-e", "-x" и "!-x".
|
||
</para>
|
||
<para lang="en">
|
||
the "if" directive supports the "-d", "!-d", "-e", "!-e", "-x", and "!-x"
|
||
operators.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при записи в access_log некоторых передаваемых клиенту строк заголовков
|
||
происходил segmentation fault, если запрос возвращал редирект.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred if a request returned a redirect and
|
||
some sent to client header lines were logged in the access log.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.55" date="2006-07-28">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр stub в команде SSI include.
|
||
</para>
|
||
<para lang="en">
|
||
the "stub" parameter in the "include" SSI command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
команда SSI block.
|
||
</para>
|
||
<para lang="en">
|
||
the "block" SSI command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
скрипт unicode2nginx добавлен в contrib.
|
||
</para>
|
||
<para lang="en">
|
||
the unicode2nginx script was added to contrib.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если root был задан только переменной, то корень задавался
|
||
относительно префикса сервера.
|
||
</para>
|
||
<para lang="en">
|
||
if a "root" was specified by variable only, then the root was relative
|
||
to a server prefix.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в запросе был "//" или "/.", и после этого закодированные
|
||
символы в виде "%XX", то проксируемый запрос передавался незакодированным.
|
||
</para>
|
||
<para lang="en">
|
||
if the request contained "//" or "/./" and escaped symbols after them,
|
||
then the proxied request was sent unescaped.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
метод $r->header_in("Cookie") модуля ngx_http_perl_module теперь возвращает
|
||
все строки "Cookie" в заголовке запроса.
|
||
</para>
|
||
<para lang="en">
|
||
the $r->header_in("Cookie") of the ngx_http_perl_module now returns
|
||
all "Cookie" header lines.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
происходил segmentation fault, если использовался
|
||
<nobr>"client_body_in_file_only on"</nobr>
|
||
и делался переход к следующему бэкенду.
|
||
</para>
|
||
<para lang="en">
|
||
a segmentation fault occurred if <nobr>"client_body_in_file_only on"</nobr>
|
||
was used and nginx switched to a next upstream.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при некоторых условиях во время переконфигурации коды символов
|
||
внутри директивы charset_map могли считаться неверными;
|
||
ошибка появилась в 0.3.50.
|
||
</para>
|
||
<para lang="en">
|
||
on some condition while reconfiguration character codes
|
||
inside the "charset_map" may be treated invalid;
|
||
the bug had appeared in 0.3.50.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.54" date="2006-07-11">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
nginx теперь записывает в лог информацию о подзапросах.
|
||
</para>
|
||
<para lang="en">
|
||
nginx now logs the subrequest information to the error log.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_next_upstream, fastcgi_next_upstream и memcached_next_upstream
|
||
поддерживают параметр off.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_next_upstream", "fastcgi_next_upstream",
|
||
and "memcached_next_upstream" directives support the "off" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива debug_connection поддерживает запись адресов в формате CIDR.
|
||
</para>
|
||
<para lang="en">
|
||
the "debug_connection" directive supports the CIDR address form.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при перекодировании ответа проксированного сервера или сервера FastCGI
|
||
в UTF-8 или наоборот ответ мог передаваться не полностью.
|
||
</para>
|
||
<para lang="en">
|
||
if a response of proxied server or FastCGI server was converted from UTF-8
|
||
or back, then it may be transferred incomplete.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $upstream_response_time содержала время только первого
|
||
обращения к бэкенду.
|
||
</para>
|
||
<para lang="en">
|
||
the $upstream_response_time variable had the time of the first
|
||
request to a backend only.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на платформе amd64;
|
||
ошибка появилась в 0.3.53.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on amd64 platform;
|
||
the bug had appeared in 0.3.53.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.53" date="2006-07-07">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива add_header добавляет строки в ответы с кодом 204, 301 и 302.
|
||
</para>
|
||
<para lang="en">
|
||
the "add_header" directive adds the string to 204, 301, and 302 responses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива server в блоке upstream поддерживает параметр weight.
|
||
</para>
|
||
<para lang="en">
|
||
the "server" directive in the "upstream" context supports
|
||
the "weight" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива server_name поддерживает маску "*".
|
||
</para>
|
||
<para lang="en">
|
||
the "server_name" directive supports the "*" wildcard.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
nginx поддерживает тело запроса больше 2G.
|
||
</para>
|
||
<para lang="en">
|
||
nginx supports the request body size more than 2G.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если при использовании "satisfy_any on" клиент успешно проходил аутентификацию,
|
||
в лог всё равно записалоcь сообщение "access forbidden by rule".
|
||
</para>
|
||
<para lang="en">
|
||
if a client was successfully authorized using "satisfy_any on", then anyway
|
||
the message "access forbidden by rule" was written in the log.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
метод PUT мог ошибочно не создать файл и вернуть код 409.
|
||
</para>
|
||
<para lang="en">
|
||
the "PUT" method may erroneously not create a file and return the 409 code.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если во время аутентификации IMAP/POP3 бэкенд возвращал ошибку, nginx
|
||
продолжал проксирование.
|
||
</para>
|
||
<para lang="en">
|
||
if the IMAP/POP3 backend returned an error, then nginx continued proxying
|
||
anyway.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.52" date="2006-07-03">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
восстановлено поведение модуля ngx_http_index_module для запросов "POST /":
|
||
как в версии до 0.3.40, модуль теперь не выдаёт ошибку 405.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_index_module behavior for the "POST /" requests is reverted
|
||
to the 0.3.40 version state: the module now does not return the 405 error.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании ограничения скорости рабочий процесс мог зациклиться;
|
||
ошибка появилась в 0.3.37.
|
||
</para>
|
||
<para lang="en">
|
||
the worker process may got caught in an endless loop if the limit rate was used;
|
||
the bug had appeared in 0.3.37.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_charset_module записывал в лог ошибку "unknown charset",
|
||
даже если перекодировка не требовалась;
|
||
ошибка появилась в 0.3.50.
|
||
</para>
|
||
<para lang="en">
|
||
ngx_http_charset_module logged "unknown charset" alert, even if the recoding
|
||
was not needed;
|
||
the bug had appeared in 0.3.50.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в результате запроса PUT возвращался код 409, то временный файл
|
||
не удалялся.
|
||
</para>
|
||
<para lang="en">
|
||
if a code response of the PUT request was 409, then a temporary file
|
||
was not removed.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.51" date="2006-06-30">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при некоторых условиях в SSI мог пропадать символы "<";
|
||
ошибка появилась в 0.3.50.
|
||
</para>
|
||
<para lang="en">
|
||
the "<" symbols might disappeared some conditions in the SSI;
|
||
the bug had appeared in 0.3.50.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.50" date="2006-06-28">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директивы proxy_redirect_errors и fastcgi_redirect_errors
|
||
переименованы соответственно в proxy_intercept_errors и
|
||
fastcgi_intercept_errors.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_redirect_errors" and "fastcgi_redirect_errors" directives
|
||
was renamed to the "proxy_intercept_errors" and
|
||
"fastcgi_intercept_errors" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_charset_module поддерживает перекодирование из
|
||
однобайтных кодировок в UTF-8 и обратно.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_charset_module supports the recoding from the single byte
|
||
encodings to the UTF-8 encoding and back.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
в режиме прокси и FastCGI поддерживается строка заголовка "X-Accel-Charset"
|
||
в ответе бэкенда.
|
||
</para>
|
||
<para lang="en">
|
||
the "X-Accel-Charset" response header line is supported in proxy
|
||
and FastCGI mode.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
символ "\" в парах "\"" и "\'" в SSI командах убирался, только если
|
||
также использовался символ "$".
|
||
</para>
|
||
<para lang="en">
|
||
the "\" escape symbol in the "\"" and "\'" pairs in the SSI command
|
||
was removed only if the command also has the "$" symbol.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при некоторых условиях в SSI после вставки могла быть добавлена
|
||
строка "<!--".
|
||
</para>
|
||
<para lang="en">
|
||
the "<!--" string might be added on some conditions
|
||
in the SSI after inclusion.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в заголовке ответа была строка <nobr>"Content-Length: 0",</nobr>
|
||
то при использовании небуферизированного проксировании не закрывалось соединение
|
||
с клиентом.
|
||
</para>
|
||
<para lang="en">
|
||
if the "Content-Length: 0" header line was in response, then
|
||
in nonbuffered proxying mode the client connection was not closed.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.49" date="2006-05-31">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве set.
|
||
</para>
|
||
<para lang="en">
|
||
in the "set" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при включении в ssi двух и более подзапросов, обрабатываемых через FastCGI,
|
||
вместо вывода второго и остальных подзапросов в ответ включался вывод
|
||
первого подзапроса.
|
||
</para>
|
||
<para lang="en">
|
||
if two or more FastCGI subrequests was in SSI, then first subrequest output
|
||
was included instead of second and following subrequests.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.48" date="2006-05-29">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь модуль ngx_http_charset_module работает для подзапросов,
|
||
в ответах которых нет строки заголовка "Content-Type".
|
||
</para>
|
||
<para lang="en">
|
||
now the ngx_http_charset_module works for subrequests,
|
||
if the response has no "Content-Type" header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директиве proxy_pass не было URI,
|
||
то директива "proxy_redirect default" добавляла в переписанный
|
||
редирект в начало лишний слэш.
|
||
</para>
|
||
<para lang="en">
|
||
if the "proxy_pass" directive has no URI part,
|
||
then the "proxy_redirect default" directive add the unnecessary slash
|
||
in start of the rewritten redirect.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
внутренний редирект всегда превращал любой HTTP-метод в GET,
|
||
теперь это делается только для редиректов, выполняемых с помощью
|
||
X-Accel-Redirect, и у которых метод не равен HEAD;
|
||
ошибка появилась в 0.3.42.
|
||
</para>
|
||
<para lang="en">
|
||
the internal redirect always transform client's HTTP method to GET,
|
||
now the transformation is made for the "X-Accel-Redirect" redirects only
|
||
and if the method is not HEAD;
|
||
the bug had appeared in 0.3.42.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module не собирался, если перл был с поддержкой потоков;
|
||
ошибка появилась в 0.3.46.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module could not be built, if the perl was built
|
||
with the threads support;
|
||
the bug had appeared in 0.3.46.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.47" date="2006-05-23">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива upstream.
|
||
</para>
|
||
<para lang="en">
|
||
the "upstream" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
символ "\" в парах "\"" и "\'" в SSI командах теперь всегда убирается.
|
||
</para>
|
||
<para lang="en">
|
||
now the "\" escape symbol in the "\"" and "\'" pairs in the SSI command
|
||
is always removed.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.46" date="2006-05-11">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_hide_header, proxy_pass_header, fastcgi_hide_header
|
||
и fastcgi_pass_header.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_hide_header", "proxy_pass_header", "fastcgi_hide_header",
|
||
and "fastcgi_pass_header" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директивы proxy_pass_x_powered_by, fastcgi_x_powered_by и proxy_pass_server
|
||
упразднены.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass_x_powered_by", "fastcgi_x_powered_by", and "proxy_pass_server"
|
||
directives were canceled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
в режиме прокси поддерживается строка заголовка "X-Accel-Buffering"
|
||
в ответе бэкенда.
|
||
</para>
|
||
<para lang="en">
|
||
the "X-Accel-Buffering" response header line is supported in proxy mode.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибок и утечек памяти при переконфигурации в модуле ngx_http_perl_module.
|
||
</para>
|
||
<para lang="en">
|
||
the reconfiguration bug and memory leaks in the ngx_http_perl_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.45" date="2006-05-06">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы ssl_verify_client, ssl_verify_depth и ssl_client_certificate.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_verify_client", "ssl_verify_depth", and "ssl_client_certificate"
|
||
directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь переменная $request_method возвращает метод только основного запроса.
|
||
</para>
|
||
<para lang="en">
|
||
the $request_method variable now returns the main request method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
в таблице перекодировки koi-win изменены коды символа &deg;.
|
||
</para>
|
||
<para lang="en">
|
||
the &deg; symbol codes were changed in koi-win conversion table.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
в таблицу перекодировки koi-win добавлены символы евро и номера.
|
||
</para>
|
||
<para lang="en">
|
||
the euro and N symbols were added to koi-win conversion table.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если nginx распределял запросы на несколько машин, то при падении
|
||
одной из них запросы, предназначенные для этой машины, перенаправлялись только
|
||
на одну машину вместо того, чтобы равномерно распределяться между остальными.
|
||
</para>
|
||
<para lang="en">
|
||
if nginx distributed the requests among several backends and some backend
|
||
failed, then requests intended for this backend was directed to one live
|
||
backend only instead of being distributed among the rest.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.44" date="2006-05-04">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр wait в команде SSI include.
|
||
</para>
|
||
<para lang="en">
|
||
the "wait" parameter in the "include" SSI command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
в таблицу перекодировки koi-win добавлены украинские и белорусские символы.
|
||
</para>
|
||
<para lang="en">
|
||
the Ukrainian and Byelorussian characters were added to koi-win conversion
|
||
table.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в SSI.
|
||
</para>
|
||
<para lang="en">
|
||
in the SSI.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.43" date="2006-04-26">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в SSI.
|
||
</para>
|
||
<para lang="en">
|
||
in the SSI.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.42" date="2006-04-26">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр bind в директиве listen в IMAP/POP3 прокси.
|
||
</para>
|
||
<para lang="en">
|
||
the "bind" option of the "listen" directive in IMAP/POP3 proxy.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании в директиве rewrite одного и того же
|
||
выделения более одного раза.
|
||
</para>
|
||
<para lang="en">
|
||
if the same capture in the "rewrite" directive was used more then once.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в лог не записывались переменные
|
||
$sent_http_content_type, $sent_http_content_length, $sent_http_last_modified,
|
||
$sent_http_connection, $sent_http_keep_alive и $sent_http_transfer_encoding.
|
||
</para>
|
||
<para lang="en">
|
||
the $sent_http_content_type, $sent_http_content_length,
|
||
$sent_http_last_modified, $sent_http_connection, $sent_http_keep_alive,
|
||
and $sent_http_transfer_encoding variables were not written to access log.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменная $sent_http_cache_control возвращала содержимое только одной
|
||
строки "Cache-Control" в заголовке ответа.
|
||
</para>
|
||
<para lang="en">
|
||
the $sent_http_cache_control returned value of the single "Cache-Control"
|
||
response header line.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.41" date="2006-04-21">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ключ -v.
|
||
</para>
|
||
<para lang="en">
|
||
the -v switch.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при включении в SSI удалённых подзапросов
|
||
мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault may occurred if the SSI page has remote subrequests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в обработке FastCGI.
|
||
</para>
|
||
<para lang="en">
|
||
in FastCGI handling.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если путь к перловым модулям не был указан с помощью
|
||
--with-perl_modules_path=PATH или директивы perl_modules,
|
||
то на старте происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
if the perl modules path was not set using
|
||
--with-perl_modules_path=PATH or the "perl_modules", then
|
||
the segmentation fault was occurred.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.40" date="2006-04-19">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_dav_module поддерживает метод MKCOL.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_dav_module supports the MKCOL method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива create_full_put_path.
|
||
</para>
|
||
<para lang="en">
|
||
the "create_full_put_path" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $limit_rate.
|
||
</para>
|
||
<para lang="en">
|
||
the "$limit_rate" variable.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.39" date="2006-04-17">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива uninitialized_variable_warn; уровень логгирования сообщения
|
||
о неинициализированной переменной понижен с уровня alert на warn.
|
||
</para>
|
||
<para lang="en">
|
||
the "uninitialized_variable_warn" directive; the logging level of the
|
||
"uninitialized variable" message was lowered from "alert" to "warn".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива override_charset.
|
||
</para>
|
||
<para lang="en">
|
||
the "override_charset" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
при использовании неизвестной переменной в SSI-командах echo и if expr='$name'
|
||
теперь не записывается в лог сообщение о неизвестной переменной.
|
||
</para>
|
||
<para lang="en">
|
||
now if the unknown variable is used in the "echo" and "if expr='$name'"
|
||
SSI-commands, then the "unknown variable" message is not logged.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
счётчик активных соединений рос при превышении лимита соединений,
|
||
заданного директивой worker_connections;
|
||
ошибка появилась в 0.2.0.
|
||
</para>
|
||
<para lang="en">
|
||
the active connection counter increased on the exceeding of the connection
|
||
limit specified by the "worker_connections" directive;
|
||
the bug had appeared in 0.2.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при некоторых условия ограничение скорости соединения могло не работать;
|
||
ошибка появилась в 0.3.38.
|
||
</para>
|
||
<para lang="en">
|
||
the limit rate might not work on some condition;
|
||
the bug had appeared in 0.3.38.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.38" date="2006-04-14">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_dav_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_dav_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
оптимизация модуля ngx_http_perl_module.<br/>
|
||
Спасибо Сергею Скворцову.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module optimizations.<br/>
|
||
Thanks to Sergey Skvortsov.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module поддерживает метод $r->request_body_file.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module supports the $r->request_body_file method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива client_body_in_file_only.
|
||
</para>
|
||
<para lang="en">
|
||
the "client_body_in_file_only" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
теперь при переполнении диска nginx пытается писать access_log'и только
|
||
раз в секунду.<br/>
|
||
Спасибо Антону Южанинову и Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
now on disk overflow nginx tries to write access logs once a second only.<br/>
|
||
Thanks to Anton Yuzhaninov and Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
теперь директива limit_rate точнее ограничивает скорость при значениях
|
||
больше <nobr>100 Kbyte/s.</nobr><br/>
|
||
Спасибо ForJest.
|
||
</para>
|
||
<para lang="en">
|
||
now the "limit_rate" directive more precisely limits rate if rate is more
|
||
than <nobr>100 Kbyte/s.</nobr><br/>
|
||
Thanks to ForJest.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
IMAP/POP3 прокси теперь передаёт серверу авторизации символы "\r" и "\n"
|
||
в логине и пароле в закодированном виде.<br/>
|
||
Спасибо Максиму Дунину.
|
||
</para>
|
||
<para lang="en">
|
||
now the IMAP/POP3 proxy escapes the "\r" and "\n" symbols in login and
|
||
password to pass authorization server.<br/>
|
||
Thanks to Maxim Dounin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.37" date="2006-04-07">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива limit_except.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_except" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива if поддерживает операторы "!~", "!~*", "-f" и "!-f".
|
||
</para>
|
||
<para lang="en">
|
||
the "if" directive supports the "!~", "!~*", "-f", and "!-f" operators.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module поддерживает метод $r->request_body.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module supports the $r->request_body method.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в модуле ngx_http_addition_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_addition_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.36" date="2006-04-05">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_addition_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_addition_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_pass и fastcgi_pass можно использовать внутри блока if.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass" and "fastcgi_pass" directives may be used inside
|
||
the "if" block.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_ignore_client_abort и fastcgi_ignore_client_abort.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_ignore_client_abort" and "fastcgi_ignore_client_abort" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $request_completion.
|
||
</para>
|
||
<para lang="en">
|
||
the "$request_completion" variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module поддерживает методы $r->request_method и
|
||
$r->remote_addr.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module supports the $r->request_method and $r->remote_addr.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssi_module поддерживает команду elif.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssi_module supports the "elif" command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
строка "\/" в начале выражения команды if модуля ngx_http_ssi_module
|
||
воспринималась неверно.
|
||
</para>
|
||
<para lang="en">
|
||
the "\/" string in the expression of the "if" command of the
|
||
ngx_http_ssi_module was treated incorrectly.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в использовании регулярных выражениях в команде if модуля ngx_http_ssi_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the regular expressions in the "if" command of the ngx_http_ssi_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при задании относительного пути в директивах
|
||
client_body_temp_path, proxy_temp_path, fastcgi_temp_path и perl_modules
|
||
использовался каталог относительно текущего каталога, а не относительно
|
||
префикса сервера.
|
||
</para>
|
||
<para lang="en">
|
||
if the relative path was specified in the "client_body_temp_path",
|
||
"proxy_temp_path", "fastcgi_temp_path", and "perl_modules" directives,
|
||
then the directory was used relatively to a current path but not
|
||
to a server prefix.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.35" date="2006-03-22">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
accept-фильтр и TCP_DEFER_ACCEPT устанавливались только для первой
|
||
директивы listen;
|
||
ошибка появилась в 0.3.31.
|
||
</para>
|
||
<para lang="en">
|
||
the accept-filter and the TCP_DEFER_ACCEPT option were set for first "listen"
|
||
directive only;
|
||
the bug had appeared in 0.3.31.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве proxy_pass без URI при использовании в подзапросе.
|
||
</para>
|
||
<para lang="en">
|
||
in the "proxy_pass" directive without the URI part in a subrequest.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.34" date="2006-03-21">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива add_header поддерживает переменные.
|
||
</para>
|
||
<para lang="en">
|
||
the "add_header" directive supports the variables.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.33" date="2006-03-15">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр http_503 в директивах proxy_next_upstream или fastcgi_next_upstream.
|
||
</para>
|
||
<para lang="en">
|
||
the "http_503" parameter of the "proxy_next_upstream" or
|
||
"fastcgi_next_upstream" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ngx_http_perl_module не работал со встроенным в конфигурационный файл кодом,
|
||
если он не начинался сразу же с "sub".
|
||
</para>
|
||
<para lang="en">
|
||
ngx_http_perl_module did not work with inlined in the configuration code,
|
||
if it was not started with the "sub" word.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве post_action.
|
||
</para>
|
||
<para lang="en">
|
||
in the "post_action" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.32" date="2006-03-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
удаление отладочного логгирования на старте и при переконфигурации;
|
||
ошибка появилась в 0.3.31.
|
||
</para>
|
||
<para lang="en">
|
||
the debug logging on startup and reconfiguration time was removed;
|
||
the bug had appeared in 0.3.31.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.31" date="2006-03-10">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь nginx передаёт неверные ответы проксированного бэкенда.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx passes the malformed proxied backend responses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы listen поддерживают адрес в виде "*:порт".
|
||
</para>
|
||
<para lang="en">
|
||
the "listen" directives support the address in the "*:port" form.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка EVFILER_TIMER в MacOSX 10.4.
|
||
</para>
|
||
<para lang="en">
|
||
the EVFILER_TIMER support in MacOSX 10.4.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
обход ошибки обработки миллисекундных таймаутов kqueue в 64-битном ядре
|
||
MacOSX.<br/>
|
||
Спасибо Андрею Нигматулину.
|
||
</para>
|
||
<para lang="en">
|
||
for MacOSX 64-bit kernel kqueue millisecond timeout bug.<br/>
|
||
Thanks to Andrei Nigmatulin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если внутри одного сервера описаны несколько директив listen, слушающих на
|
||
разных адресах, то имена серверов вида "*.domain.tld" работали только
|
||
для первого адреса;
|
||
ошибка появилась в 0.3.18.
|
||
</para>
|
||
<para lang="en">
|
||
if there were several "listen" directives listening one various addresses
|
||
inside one server, then server names like "*.domain.tld" worked for first
|
||
address only;
|
||
the bug had appeared in 0.3.18.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании протокола HTTPS в директиве proxy_pass не передавались
|
||
запросы с телом, записанным во временный файл.
|
||
</para>
|
||
<para lang="en">
|
||
if the HTTPS protocol was used in the "proxy_pass" directive and
|
||
the request body was in temporary file then the request was not transferred.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с perl 5.8.8.
|
||
</para>
|
||
<para lang="en">
|
||
perl 5.8.8 compatibility.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.30" date="2006-02-22">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
уровень записи в лог ошибки ECONNABORTED изменён на error с уровня crit.
|
||
</para>
|
||
<para lang="en">
|
||
the ECONNABORTED error log level was changed to "error" from "crit".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module не собирался без модуля ngx_http_ssi_filter_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module could not be build without
|
||
the ngx_http_ssi_filter_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на i386 платформе, если использовался PIC;
|
||
ошибка появилась в 0.3.27.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on i386 platform, if the PIC was used;
|
||
the bug had appeared in 0.3.27.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.29" date="2006-02-20">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
теперь nginx использует меньше памяти, если PHP в режиме FastCGI передаёт
|
||
большое количество предупреждений перед ответом.
|
||
</para>
|
||
<para lang="en">
|
||
now nginx uses less memory, if PHP in FastCGI mode sends many warnings
|
||
before the response.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в ответах 204 для запросов версии HTTP/1.1 выдавалась строка заголовка
|
||
"Transfer-Encoding: chunked".
|
||
</para>
|
||
<para lang="en">
|
||
the "Transfer-Encoding: chunked" header line was issued in the 204 responses
|
||
for the HTTP/1.1 requests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx возвращал 502 код ответа, если FastCGI сервер передавал полные строки
|
||
заголовка ответа в отдельных FastCGI записях.
|
||
</para>
|
||
<para lang="en">
|
||
nginx returned the 502 response, if the complete response header lines
|
||
were transferred in a separate FastCGI records.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директиве post_action был указан проксируемый URI, то он выполнялся
|
||
только после успешного завершения запроса.
|
||
</para>
|
||
<para lang="en">
|
||
if the proxied URI was specified in the "post_action" directive, then it ran
|
||
only after a successful completion of a request.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.28" date="2006-02-16">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива restrict_host_names упразднена.
|
||
</para>
|
||
<para lang="en">
|
||
the "restrict_host_names" directive was canceled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр конфигурации --with-cpu-opt=ppc64.
|
||
</para>
|
||
<para lang="en">
|
||
the --with-cpu-opt=ppc64 configuration parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при некоторых условиях проксированное соединение с клиентом завершалось
|
||
преждевременно.<br/>
|
||
Спасибо Владимиру Шутову.
|
||
</para>
|
||
<para lang="en">
|
||
on some condition the proxied connection with a client was terminated
|
||
prematurely.<br/>
|
||
Thanks to Vladimir Shutoff.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
строка заголовка "X-Accel-Limit-Rate" не учитывалась для запросов,
|
||
перенаправленных с помощью строки "X-Accel-Redirect".
|
||
</para>
|
||
<para lang="en">
|
||
the "X-Accel-Limit-Rate" header line was not taken into account
|
||
if the request was redirected using the "X-Accel-Redirect" header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива post_action работала только после успешного завершения запроса.
|
||
</para>
|
||
<para lang="en">
|
||
the "post_action" directive ran only after a successful completion of a request.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
тело проксированного ответа, создаваемого директивой post_action,
|
||
передавалось клиенту.
|
||
</para>
|
||
<para lang="en">
|
||
the proxied response body generated by the "post_action" directive
|
||
was transferred to a client.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.27" date="2006-02-08">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директивы variables_hash_max_size и variables_hash_bucket_size.
|
||
</para>
|
||
<para lang="en">
|
||
the "variables_hash_max_size" and "variables_hash_bucket_size" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменная $body_bytes_sent доступна не только в директиве log_format.
|
||
</para>
|
||
<para lang="en">
|
||
the $body_bytes_sent variable can be used not only in the "log_format"
|
||
directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные $ssl_protocol и $ssl_cipher.
|
||
</para>
|
||
<para lang="en">
|
||
the $ssl_protocol and $ssl_cipher variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
определение размера строки кэша распространённых процессоров при старте.
|
||
</para>
|
||
<para lang="en">
|
||
the cache line size detection for widespread CPUs at start time.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива accept_mutex теперь поддерживается посредством fcntl(2)
|
||
на платформах, отличных от i386, amd64, sparc64 и ppc.
|
||
</para>
|
||
<para lang="en">
|
||
now the "accept_mutex" directive is supported using fcntl(2)
|
||
on platforms different from i386, amd64, sparc64, and ppc.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива lock_file и параметр автоконфигурации --with-lock-path=PATH.
|
||
</para>
|
||
<para lang="en">
|
||
the "lock_file" directive and the --with-lock-path=PATH autoconfiguration
|
||
directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании протокола HTTPS в директиве proxy_pass не передавались
|
||
запросы с телом.
|
||
</para>
|
||
<para lang="en">
|
||
if the HTTPS protocol was used in the "proxy_pass" directive then
|
||
the requests with the body was not transferred.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.26" date="2006-02-03">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива optimize_host_names переименована в optimize_server_names.
|
||
</para>
|
||
<para lang="en">
|
||
the "optimize_host_names" directive was renamed to the "optimize_server_names".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при проксировании подзапроса в SSI бэкенду передавался URI основного запроса,
|
||
если в директиве proxy_pass отсутствовал URI.
|
||
</para>
|
||
<para lang="en">
|
||
if in the "proxy_pass" directive was no the URI part, then the main request
|
||
URI was transferred to a backend while proxying the SSI subrequest.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.25" date="2006-02-01">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при неверной конфигурации на старте или во время переконфигурации происходил
|
||
segmentation fault;
|
||
ошибка появилась в 0.3.24.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault was occurred on start or while reconfiguration
|
||
if there was invalid configuration;
|
||
the bug had appeared in 0.3.24.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.24" date="2006-02-01">
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
обход ошибки в kqueue во FreeBSD.
|
||
</para>
|
||
<para lang="en">
|
||
for bug in FreeBSD kqueue.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответ, создаваемый директивой post_action, теперь не передаётся клиенту.
|
||
</para>
|
||
<para lang="en">
|
||
now a response generated by the "post_action" directive is not transferred
|
||
to a client.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании большого количества лог-файлов происходила утечка памяти.
|
||
</para>
|
||
<para lang="en">
|
||
the memory leaks were occurring if many log files were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
внутри одного location работала только первая директива proxy_redirect.
|
||
</para>
|
||
<para lang="en">
|
||
the first "proxy_redirect" directive was working inside one location.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на 64-битных платформах при старте мог произойти segmentation fault,
|
||
если использовалось большое количество имён в директивах server_name;
|
||
ошибка появилась в 0.3.18.
|
||
</para>
|
||
<para lang="en">
|
||
on 64-bit platforms segmentation fault may occurred on start
|
||
if the many names were used in the "server_name" directives;
|
||
the bug had appeared in 0.3.18.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.23" date="2006-01-24">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива optimize_host_names.
|
||
</para>
|
||
<para lang="en">
|
||
the "optimize_host_names" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании переменных в директивах path и alias.
|
||
</para>
|
||
<para lang="en">
|
||
in using of the variables in the "path" and "alias" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module неправильно собирался на Linux и Solaris.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module was incorrectly built on Linux and Solaris.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.22" date="2006-01-17">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module поддерживает методы $r->args и $r->unescape.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module supports the $r->args and $r->unescape methods.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
метод $r->query_string в модуле ngx_http_perl_module упразднён.
|
||
</para>
|
||
<para lang="en">
|
||
the method $r->query_string of ngx_http_perl_module was canceled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директиве valid_referers указаны только none или blocked, то
|
||
происходил segmentation fault;
|
||
ошибка появилась в 0.3.18.
|
||
</para>
|
||
<para lang="en">
|
||
segmentation fault was occurred if the "none" or "blocked" values was
|
||
specified in the "valid_referers" directive;
|
||
the bug had appeared in 0.3.18.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.21" date="2006-01-16">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_perl_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_perl_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива valid_referers разрешает использовать рефереры совсем без URI.
|
||
</para>
|
||
<para lang="en">
|
||
the "valid_referers" directive allows the referrers without URI part.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.20" date="2006-01-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки в обработке SSI.
|
||
</para>
|
||
<para lang="en">
|
||
in SSI handling.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_memcached_module не поддерживал ключи в виде /uri?args.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_memcached_module did not support the keys in the "/usr?args" form.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
<changes ver="0.3.19" date="2005-12-28">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы path и alias поддерживают переменные.
|
||
</para>
|
||
<para lang="en">
|
||
the "path" and "alias" directives support the variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь директива valid_referers опять учитывает URI.
|
||
</para>
|
||
<para lang="en">
|
||
now the "valid_referers" directive again checks the URI part.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки в обработке SSI.
|
||
</para>
|
||
<para lang="en">
|
||
in SSI handling.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.18" date="2005-12-26">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива server_names поддерживает имена вида ".domain.tld".
|
||
</para>
|
||
<para lang="en">
|
||
the "server_names" directive supports the ".domain.tld" names.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива server_names использует хэш для имён вида "*.domain.tld"
|
||
и более эффективный хэш для обычных имён.
|
||
</para>
|
||
<para lang="en">
|
||
the "server_names" directive uses the hash for the "*.domain.tld" names
|
||
and more effective hash for usual names.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директивы server_names_hash_max_size и server_names_hash_bucket_size.
|
||
</para>
|
||
<para lang="en">
|
||
the "server_names_hash_max_size" and "server_names_hash_bucket_size" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директивы server_names_hash и server_names_hash_threshold упразднены.
|
||
</para>
|
||
<para lang="en">
|
||
the "server_names_hash" and "server_names_hash_threshold" directives
|
||
were canceled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива valid_referers использует хэш для имён сайтов.
|
||
</para>
|
||
<para lang="en">
|
||
the "valid_referers" directive uses the hash site names.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
теперь директива valid_referers проверяет только имена сайтов без учёта URI.
|
||
</para>
|
||
<para lang="en">
|
||
now the "valid_referers" directive checks the site names only without
|
||
the URI part.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
некоторые имена вида ".domain.tld" неверно обрабатывались модулем
|
||
ngx_http_map_module.
|
||
</para>
|
||
<para lang="en">
|
||
some ".domain.tld" names incorrectly processed by the ngx_http_map_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если конфигурационного файла не было, то происходил segmentation fault;
|
||
ошибка появилась в 0.3.12.
|
||
</para>
|
||
<para lang="en">
|
||
segmentation fault was occurred if configuration file did not exist;
|
||
the bug had appeared in 0.3.12.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на 64-битных платформах при старте мог произойти segmentation fault;
|
||
ошибка появилась в 0.3.16.
|
||
</para>
|
||
<para lang="en">
|
||
on 64-bit platforms segmentation fault may occurred on start;
|
||
the bug had appeared in 0.3.16.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.17" date="2005-12-18">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
на Linux configure теперь проверяет наличие epoll и sendfile64() в ядре.
|
||
</para>
|
||
<para lang="en">
|
||
now on Linux configure checks the presence of epoll and sendfile64() in kernel.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива map поддерживает доменные имена в формате ".domain.tld".
|
||
</para>
|
||
<para lang="en">
|
||
the "map" directive supports domain names in the ".domain.tld" form.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
во время SSL handshake не иcпользовались таймауты;
|
||
ошибка появилась в 0.2.4.
|
||
</para>
|
||
<para lang="en">
|
||
the timeouts were not used in SSL handshake;
|
||
the bug had appeared in 0.2.4.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в использовании протокола HTTPS в директиве proxy_pass.
|
||
</para>
|
||
<para lang="en">
|
||
in the HTTPS protocol in the "proxy_pass" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании протокола HTTPS в директиве proxy_pass по умолчанию
|
||
использовался порт 80.
|
||
</para>
|
||
<para lang="en">
|
||
when the HTTPS protocol was used in the "proxy_pass" directive the port 80
|
||
was used by default.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.16" date="2005-12-16">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_map_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_map_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы types_hash_max_size и types_hash_bucket_size.
|
||
</para>
|
||
<para lang="en">
|
||
the "types_hash_max_size" and "types_hash_bucket_size" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssi_value_length.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssi_value_length" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива worker_rlimit_core.
|
||
</para>
|
||
<para lang="en">
|
||
the "worker_rlimit_core" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
при сборке компиляторами icc 8.1 и 9.0 с оптимизацией для
|
||
<nobr>Pentium 4</nobr> номер соединения в логах всегда был равен 1.
|
||
</para>
|
||
<para lang="en">
|
||
the connection number in logs was always 1 if nginx was built by the
|
||
icc 8.1 or 9.0 compilers with optimization for <nobr>Pentium 4.</nobr>
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
команда config timefmt в SSI задавала неверный формат времени.
|
||
</para>
|
||
<para lang="en">
|
||
the "config timefmt" SSI command set incorrect time format.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не закрывал соединения с IMAP/POP3 бэкендом при использовании SSL
|
||
соединений;
|
||
ошибка появилась в 0.3.13.<br/>
|
||
Спасибо Rob Mueller.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not close connection to IMAP/POP3 backend for the SSL
|
||
connections;
|
||
the bug had appeared in 0.3.13.<br/>
|
||
Thanks to Rob Mueller.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
segmentation fault мог произойти во время SSL shutdown;
|
||
ошибка появилась в 0.3.13.
|
||
</para>
|
||
<para lang="en">
|
||
segmentation fault may occurred in at SSL shutdown;
|
||
the bug had appeared in 0.3.13.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.15" date="2005-12-07">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
новой код 444 в директиве return для закрытия соединения.
|
||
</para>
|
||
<para lang="en">
|
||
the new 444 code of the "return" directive to close connection.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива so_keepalive в IMAP/POP3 прокси.
|
||
</para>
|
||
<para lang="en">
|
||
the "so_keepalive" directive in IMAP/POP3 proxy.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx теперь вызывает abort() при обнаружении незакрытых соединений
|
||
только при плавном выходе и включённой директиве debug_points.
|
||
</para>
|
||
<para lang="en">
|
||
if there are unclosed connection nginx now calls abort() only on graceful
|
||
quit and active "debug_points" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.14" date="2005-12-05">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в ответе 304 передавалось тело ответа;
|
||
ошибка появилась в 0.3.13.
|
||
</para>
|
||
<para lang="en">
|
||
in the 304 response the body was transferred;
|
||
the bug had appeared in 0.3.13.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.13" date="2005-12-05">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
IMAP/POP3 прокси поддерживает STARTTLS и STLS.
|
||
</para>
|
||
<para lang="en">
|
||
the IMAP/POP3 proxy supports STARTTLS and STLS.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
IMAP/POP3 прокси не работала с методами select, poll и /dev/poll.
|
||
</para>
|
||
<para lang="en">
|
||
the IMAP/POP3 proxy did not work with the select, poll, and /dev/poll methods.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки в обработке SSI.
|
||
</para>
|
||
<para lang="en">
|
||
in SSI handling.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
sendfilev() в Solaris теперь не используется при передаче тела запроса
|
||
FastCGI-серверу через unix domain сокет.
|
||
</para>
|
||
<para lang="en">
|
||
now Solaris sendfilev() is not used to transfer the client request body
|
||
to FastCGI-server via the unix domain socket.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива auth_basic не запрещала аутентификацию;
|
||
ошибка появилась в 0.3.11.
|
||
</para>
|
||
<para lang="en">
|
||
the "auth_basic" directive did not disable the authorization;
|
||
the bug had appeared in 0.3.11.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.12" date="2005-11-26">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
если nginx был собран с модулем ngx_http_realip_module, то при использовании
|
||
директивы "satisfy_any on" директивы доступа и аутентификации не работали.
|
||
Модуль ngx_http_realip_module не собирался и не собирается по умолчанию.
|
||
</para>
|
||
<para lang="en">
|
||
if nginx was built with the ngx_http_realip_module and the "satisfy_any on"
|
||
directive was used, then access and authorization directives did not work.
|
||
The ngx_http_realip_module was not built and is not built by default.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
имя переменной "$time_gmt" изменено на "$time_local".
|
||
</para>
|
||
<para lang="en">
|
||
the "$time_gmt" variable name was changed to "$time_local".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директивы proxy_header_buffer_size и fastcgi_header_buffer_size
|
||
переименованы соответственно в proxy_buffer_size и fastcgi_buffer_size.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_header_buffer_size" and "fastcgi_header_buffer_size" directives
|
||
was renamed to the "proxy_buffer_size" and "fastcgi_buffer_size" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_memcached_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_memcached_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_buffering.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_buffering" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
изменение в работе с accept mutex при использовании метода rtsig;
|
||
ошибка появилась в 0.3.0.
|
||
</para>
|
||
<para lang="en">
|
||
the changes in accept mutex handling when the "rtsig" method was used;
|
||
the bug had appeared in 0.3.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если клиент передал строку "Transfer-Encoding: chunked" в заголовке
|
||
запроса, то nginx теперь выдаёт ошибку 411.
|
||
</para>
|
||
<para lang="en">
|
||
if the client sent the "Transfer-Encoding: chunked" header line, then
|
||
nginx returns the 411 error.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при наследовании директивы auth_basic с уровня http в строке
|
||
"WWW-Authenticate" заголовка ответа выводился realm без текста "Basic realm".
|
||
</para>
|
||
<para lang="en">
|
||
if the "auth_basic" directive was inherited from the http level,
|
||
then the realm in the "WWW-Authenticate" header line was without
|
||
the "Basic realm" text.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директиве access_log был явно указан формат combined, то в лог
|
||
записывались пустые строки;
|
||
ошибка появилась в 0.3.8.
|
||
</para>
|
||
<para lang="en">
|
||
if the "combined" format was explicitly specified in the "access_log" directive,
|
||
then the empty lines was written to the log;
|
||
the bug had appeared in 0.3.8.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не работал на платформе sparc под любыми OS, кроме Solaris.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not run on the sparc platform under any OS except Solaris.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве if теперь не нужно разделять пробелом строку в кавычках и
|
||
закрывающую скобку.
|
||
</para>
|
||
<para lang="en">
|
||
now it is not necessary to place space between the quoted string and closing
|
||
bracket in the "if" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.11" date="2005-11-15">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не передавал при проксировании тело запроса и строки заголовка клиента;
|
||
ошибка появилась в 0.3.10.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not pass the client request headers and body while proxying;
|
||
the bug had appeared in 0.3.10.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.10" date="2005-11-15">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива valid_referers и переменная $invalid_referer перенесены
|
||
из модуля ngx_http_rewrite_module в новый модуль ngx_http_referer_module.
|
||
</para>
|
||
<para lang="en">
|
||
the "valid_referers" directive and the "$invalid_referer" variable
|
||
were moved to the new ngx_http_referer_module from the ngx_http_rewrite_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
имя переменной "$apache_bytes_sent" изменено на "$body_bytes_sent".
|
||
</para>
|
||
<para lang="en">
|
||
the "$apache_bytes_sent" variable name was changed to "$body_bytes_sent".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные "$sent_http_...".
|
||
</para>
|
||
<para lang="en">
|
||
the "$sent_http_..." variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива if поддерживает операции "=" и "!=".
|
||
</para>
|
||
<para lang="en">
|
||
the "if" directive supports the "=" and "!=" operations.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_pass поддерживает протокол HTTPS.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass" directive supports the HTTPS protocol.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_set_body.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_set_body" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива post_action.
|
||
</para>
|
||
<para lang="en">
|
||
the "post_action" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_empty_gif_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_empty_gif_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива worker_cpu_affinity для Linux.
|
||
</para>
|
||
<para lang="en">
|
||
the "worker_cpu_affinity" directive for Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива rewrite не раскодировала символы в редиректах в URI,
|
||
теперь символы раскодируются, кроме символов %00-%25 и %7F-%FF.
|
||
</para>
|
||
<para lang="en">
|
||
the "rewrite" directive did not unescape URI part in redirect,
|
||
now it is unescaped except the %00-%25 and %7F-%FF characters.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался компилятором icc 9.0.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built by the icc 9.0 compiler.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если для статического файла нулевого размера был разрешён SSI,
|
||
то ответ передавался неверно при кодировании chunk'ами.
|
||
</para>
|
||
<para lang="en">
|
||
if the SSI was enabled for zero size static file, then the chunked
|
||
response was encoded incorrectly.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.9" date="2005-11-10">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx считал небезопасными URI, в которых между двумя слэшами
|
||
находилось два любых символа;
|
||
ошибка появилась в 0.3.8.
|
||
</para>
|
||
<para lang="en">
|
||
nginx considered URI as unsafe if two any symbols was between two slashes;
|
||
the bug had appeared in 0.3.8.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.8" date="2005-11-09">
|
||
|
||
<change type="security">
|
||
<para lang="ru">
|
||
nginx теперь проверят URI, полученные от бэкенда в строке "X-Accel-Redirect"
|
||
в заголовке ответа, или в SSI файле на наличие путей "/../" и нулей.
|
||
</para>
|
||
<para lang="en">
|
||
nginx now checks URI got from a backend in "X-Accel-Redirect" header line
|
||
or in SSI file for the "/../" paths and zeroes.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
nginx теперь не воспринимает пустое имя как правильное
|
||
в строке "Authorization" в заголовке запроса.
|
||
</para>
|
||
<para lang="en">
|
||
nginx now does not treat the empty user name in the "Authorization" header
|
||
line as valid one.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssl_session_timeout модулей
|
||
ngx_http_ssl_module и ngx_imap_ssl_module.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_session_timeout" directives
|
||
of the ngx_http_ssl_module and ngx_imap_ssl_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива auth_http_header модуля ngx_imap_auth_http_module.
|
||
</para>
|
||
<para lang="en">
|
||
the "auth_http_header" directive of the ngx_imap_auth_http_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива add_header.
|
||
</para>
|
||
<para lang="en">
|
||
the "add_header" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_realip_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_realip_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
новые переменные для использования в директиве log_format:
|
||
$bytes_sent, $apache_bytes_sent, $status, $time_gmt,
|
||
$uri, $request_time, $request_length,
|
||
$upstream_status, $upstream_response_time,
|
||
$gzip_ratio,
|
||
$uid_got, $uid_set,
|
||
$connection, $pipe и $msec.
|
||
Параметры в виде "%name" скоро будут упразднены.
|
||
</para>
|
||
<para lang="en">
|
||
the new variables to use in the "log_format" directive:
|
||
$bytes_sent, $apache_bytes_sent, $status, $time_gmt,
|
||
$uri, $request_time, $request_length,
|
||
$upstream_status, $upstream_response_time,
|
||
$gzip_ratio,
|
||
$uid_got, $uid_set,
|
||
$connection, $pipe, and $msec.
|
||
The parameters in the "%name" form will be canceled soon.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
в директиве "if" ложными значениями переменных теперь являются
|
||
пустая строка "" и строки, начинающиеся на "0".
|
||
</para>
|
||
<para lang="en">
|
||
now the false variable values in the "if" directive are the empty string ""
|
||
and string starting with "0".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при работает с проксированными или FastCGI-серверами nginx мог оставлять
|
||
открытыми соединения и временные файлы с запросами клиентов.
|
||
</para>
|
||
<para lang="en">
|
||
while using proxied or FastCGI-server nginx may leave connections
|
||
and temporary files with client requests in open state.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
рабочие процессы не сбрасывали буферизированные логи при плавном выходе.
|
||
</para>
|
||
<para lang="en">
|
||
the worker processes did not flush the buffered logs on graceful exit.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если URI запроса изменялось с помощью rewrite, а затем запрос проксировался
|
||
в location, заданном регулярным выражением, то бэкенду передавался
|
||
неверный запрос;
|
||
ошибка появилась в 0.2.6.
|
||
</para>
|
||
<para lang="en">
|
||
if the request URI was changes by the "rewrite" directive and the request
|
||
was proxied in location given by regular expression, then the incorrect
|
||
request was transferred to backend;
|
||
the bug had appeared in 0.2.6.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива expires не удаляла уже установленную строку заголовка "Expires".
|
||
</para>
|
||
<para lang="en">
|
||
the "expires" directive did not remove the previous "Expires" header.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании метода rtsig и нескольких рабочих процессах nginx
|
||
мог перестать принимать запросы.
|
||
</para>
|
||
<para lang="en">
|
||
nginx may stop to accept requests if the "rtsig" method and several worker
|
||
processes were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в SSI командах неверно обрабатывались строки "\"" и "\'".
|
||
</para>
|
||
<para lang="en">
|
||
the "\"" and "\'" escape symbols were incorrectly handled in SSI commands.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если ответ заканчивался сразу же после SSI команды, то при использовании
|
||
сжатия ответ передавался не до конца или не передавался вообще.
|
||
</para>
|
||
<para lang="en">
|
||
if the response was ended just after the SSI command and gzipping was used,
|
||
then the response did not transferred complete or did not transferred at all.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.7" date="2005-10-27">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива access_log поддерживает параметр buffer=.
|
||
</para>
|
||
<para lang="en">
|
||
the "access_log" supports the "buffer=" parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на платформах, отличных от i386, amd64, sparc и ppc;
|
||
ошибка появилась в 0.3.2.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on platforms different from i386, amd64, sparc,
|
||
and ppc;
|
||
the bug had appeared in 0.3.2.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.6" date="2005-10-24">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
IMAP/POP3 прокси теперь не передаёт серверу авторизации пустой логин.
|
||
</para>
|
||
<para lang="en">
|
||
now the IMAP/POP3 proxy do not send the empty login to authorization server.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива log_format поддерживает переменные в виде $name.
|
||
</para>
|
||
<para lang="en">
|
||
the "log_format" supports the variables in the $name form.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если хотя бы в одном сервере не было описано ни одной директивы listen, то
|
||
nginx не слушал на 80 порту;
|
||
ошибка появилась в 0.3.3.
|
||
</para>
|
||
<para lang="en">
|
||
if at least in one server was no the "listen" directive, then nginx did not
|
||
listen on the 80 port;
|
||
the bug had appeared in 0.3.3.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директиве proxy_pass отсутствовал URI, то всегда использовался порт 80.
|
||
</para>
|
||
<para lang="en">
|
||
if the URI part is omitted in "proxy_pass" directive, the 80 port was
|
||
always used.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.5" date="2005-10-21">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если логин IMAP/POP3 менялся сервером авторизации, то мог произойти
|
||
segmentation fault;
|
||
ошибка появилась в 0.2.2.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault may occurred if the IMAP/POP3 login was changed
|
||
by authorization server;
|
||
the bug had appeared in 0.2.2.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
accept mutex не работал, все соединения обрабатывались одним рабочим процессом;
|
||
ошибка появилась в 0.3.3.
|
||
</para>
|
||
<para lang="en">
|
||
the accept mutex did not work and all connections were handled by one process;
|
||
the bug had appeared in 0.3.3.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании метода rtsig и директивы timer_resolution
|
||
не работали таймауты.
|
||
</para>
|
||
<para lang="en">
|
||
the timeout did not work if the "rtsig" method and the "timer_resolution"
|
||
directive were used.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.4" date="2005-10-19">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на Linux 2.4+ и MacOS X;
|
||
ошибка появилась в 0.3.3.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on Linux 2.4+ and MacOS X;
|
||
the bug had appeared in 0.3.3.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.3" date="2005-10-19">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
параметры "bl" и "af" директивы listen переименованы в "backlog"
|
||
и "accept_filter".
|
||
</para>
|
||
<para lang="en">
|
||
the "bl" and "af" parameters of the "listen" directive was renamed to
|
||
the "backlog" and "accept_filter".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметры "rcvbuf" и "sndbuf" в директиве listen.
|
||
</para>
|
||
<para lang="en">
|
||
the "rcvbuf" and "sndbuf" parameters of the "listen" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
параметр лога $msec теперь не требует дополнительного системного
|
||
вызова gettimeofday().
|
||
</para>
|
||
<para lang="en">
|
||
the "$msec" log parameter does not require now the additional
|
||
the gettimeofday() system call.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
ключ -t теперь проверяет директивы listen.
|
||
</para>
|
||
<para lang="en">
|
||
the -t switch now tests the "listen" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в директиве listen был указан неверный адрес, то nginx после
|
||
сигнала -HUP оставлял открытый сокет в состоянии CLOSED.
|
||
</para>
|
||
<para lang="en">
|
||
if the invalid address was specified in the "listen" directive, then
|
||
after the -HUP signal nginx left an open socket in the CLOSED state.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
для индексных файлов, содержащих в имени переменную, мог неверно выставляться
|
||
тип mime по умолчанию;
|
||
ошибка появилась в 0.3.0.
|
||
</para>
|
||
<para lang="en">
|
||
the mime type may be incorrectly set to default value for index file with
|
||
variable in the name;
|
||
the bug had appeared in 0.3.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива timer_resolution.
|
||
</para>
|
||
<para lang="en">
|
||
the "timer_resolution" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр лога $upstream_response_time в миллисекундах.
|
||
</para>
|
||
<para lang="en">
|
||
the millisecond "$upstream_response_time" log parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
временный файл с телом запроса клиента теперь удаляется сразу после того,
|
||
как клиенту передан заголовок ответа.
|
||
</para>
|
||
<para lang="en">
|
||
a temporary file with client request body now is removed just after
|
||
the response header was transferred to a client.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с OpenSSL 0.9.6.
|
||
</para>
|
||
<para lang="en">
|
||
OpenSSL 0.9.6 compatibility.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
пути к файлам с SSL сертификатом и ключом не могли быть относительными.
|
||
</para>
|
||
<para lang="en">
|
||
the SSL certificate and key file paths could not be relative.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива ssl_prefer_server_ciphers не работала для модуля ngx_imap_ssl_module.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_prefer_server_ciphers" directive did not work in
|
||
the ngx_imap_ssl_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива ssl_protocols позволяла задать только один протокол.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_protocols" directive allowed to specify the single protocol only.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.2" date="2005-10-12">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка Sun Studio 10 C compiler.
|
||
</para>
|
||
<para lang="en">
|
||
the Sun Studio 10 C compiler support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_upstream_max_fails, proxy_upstream_fail_timeout,
|
||
fastcgi_upstream_max_fails и fastcgi_upstream_fail_timeout.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_upstream_max_fails", "proxy_upstream_fail_timeout",
|
||
"fastcgi_upstream_max_fails", and "fastcgi_upstream_fail_timeout"
|
||
directives.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.1" date="2005-10-10">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
во время переполнения очереди сигналов при использовании метода rtsig
|
||
происходил segmentation fault;
|
||
ошибка появилась в 0.2.0.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault occurred when the signal queue overflowed
|
||
if the "rtsig" method was used;
|
||
the bug had appeared in 0.2.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
корректная обработка пар "\\", "\"", "\'" и "\$" в SSI.
|
||
</para>
|
||
<para lang="en">
|
||
correct handling of the "\\", "\"", "\'", and "\$" pairs in SSI.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.3.0" date="2005-10-07">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
убрано десятидневное ограничение времени работы рабочего процесса.
|
||
Ограничение было введено из-за переполнения миллисекундных таймеров.
|
||
</para>
|
||
<para lang="en">
|
||
the 10-days live time limit of worker process was eliminated.
|
||
The limit was introduced because of millisecond timers overflow.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.2.6" date="2005-10-05">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
с 60 до 10 секунд уменьшено время повторного обращения к бэкенду
|
||
при использовании распределения нагрузки.
|
||
</para>
|
||
<para lang="en">
|
||
while using load-balancing the time before the failed backend retry
|
||
was decreased from 60 to 10 seconds.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива proxy_pass_unparsed_uri упразднена, оригинальный запрос теперь
|
||
передаётся, если в директиве proxy_pass отсутствует URI.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass_unparsed_uri" was canceled, the original URI now passed,
|
||
if the URI part is omitted in "proxy_pass" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива error_page поддерживает редиректы и позволяет более гибко
|
||
менять код ошибки.
|
||
</para>
|
||
<para lang="en">
|
||
the "error_page" directive supports redirects and allows more flexible
|
||
to change an error code.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
в проксированных подзапросах теперь игнорируется переданный charset.
|
||
</para>
|
||
<para lang="en">
|
||
the charset in the "Content-Type" header line now is ignored
|
||
in proxied subrequests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если после изменения URI в блоке if для запроса не находилась
|
||
новая конфигурация, то правила модуля ngx_http_rewrite_module выполнялись
|
||
снова.
|
||
</para>
|
||
<para lang="en">
|
||
if the URI was changed in the "if" block and request did not found
|
||
new configuration, then the ngx_http_rewrite_module rules ran again.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если директива set устанавливала переменную модуля ngx_http_geo_module
|
||
в какой-либо части конфигурации, то эта переменная не была доступна в
|
||
других частях конфигурации и выдавалась ошибка "using uninitialized variable";
|
||
ошибка появилась в 0.2.2.
|
||
</para>
|
||
<para lang="en">
|
||
if the "set" directive set the ngx_http_geo_module variable in some
|
||
configuration part, the this variable was not available in other
|
||
configuration parts and the "using uninitialized variable" error was occurred;
|
||
the bug had appeared in 0.2.2.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.2.5" date="2005-10-04">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
дублирующее значение переменной модуля ngx_http_geo_module теперь
|
||
выдаёт предупреждение и изменяет старое значение.
|
||
</para>
|
||
<para lang="en">
|
||
the duplicate value of the ngx_http_geo_module variable now causes
|
||
the warning and changes old value.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssi_module поддерживает команду set.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssi_module supports the "set" command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssi_module поддерживает параметр file в команде include.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssi_module supports the "file" parameter in the "include" command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssi_module поддерживает подстановку значений переменных
|
||
в выражениях команды if.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssi_module supports the variable value substitutions in
|
||
expressions of the "if" command.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.2.4" date="2005-10-03">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssi_module поддерживает выражения
|
||
"$var=text", "$var!=text", "$var=/text/" и "$var!=/text/"
|
||
в команде if.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssi_module supports
|
||
"$var=text", "$var!=text", "$var=/text/", and "$var!=/text/" expressions
|
||
in the "if" command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при проксировании location без слэша в конце;
|
||
ошибка появилась в 0.1.44.
|
||
</para>
|
||
<para lang="en">
|
||
in proxying location without trailing slash;
|
||
the bug had appeared in 0.1.44.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании метода rtsig мог произойти segmentation fault;
|
||
ошибка появилась в 0.2.0.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault may occurred if the "rtsig" method was used;
|
||
the bug had appeared in 0.2.0.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.2.3" date="2005-09-30">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался без параметра --with-debug;
|
||
ошибка появилась в 0.2.2.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built without the --with-debug option;
|
||
the bug had appeared in 0.2.2.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.2.2" date="2005-09-30">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
команда config errmsg в модуле ngx_http_ssi_module.
|
||
</para>
|
||
<para lang="en">
|
||
the "config errmsg" command of the ngx_http_ssi_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
переменные модуля ngx_http_geo_module можно переопределять директивой set.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_geo_module variables can be overridden by the "set" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы ssl_protocols и ssl_prefer_server_ciphers модулей
|
||
ngx_http_ssl_module и ngx_imap_ssl_module.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_protocols" and "ssl_prefer_server_ciphers" directives
|
||
of the ngx_http_ssl_module and ngx_imap_ssl_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибка в модуле ngx_http_autoindex_module при показе длинных имён файлов;
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_autoindex_module did not show correctly the long file names;
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_autoindex_module теперь не показывает файлы,
|
||
начинающиеся на точку.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_autoindex_module now do not show the files starting by dot.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если SSL handshake завершался с ошибкой, то это могло привести также
|
||
к закрытию другого соединения.<br/>
|
||
Спасибо Rob Mueller.
|
||
</para>
|
||
<para lang="en">
|
||
if the SSL handshake failed then another connection may be closed too.<br/>
|
||
Thanks to Rob Mueller.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
экспортные версии MSIE 5.x не могли соединиться по HTTPS.
|
||
</para>
|
||
<para lang="en">
|
||
the export versions of MSIE 5.x could not connect via HTTPS.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.2.1" date="2005-09-23">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если все бэкенды, используемые для балансировки нагрузки, оказывались
|
||
в нерабочем состоянии после одной ошибки, то nginx мог зациклится;
|
||
ошибка появилась в 0.2.0.
|
||
</para>
|
||
<para lang="en">
|
||
if all backend using in load-balancing failed after one error, then
|
||
nginx may got caught in an endless loop;
|
||
the bug had appeared in 0.2.0.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.2.0" date="2005-09-23">
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Изменились имена pid-файлов, используемые во время обновления исполняемого
|
||
файла. Ручное переименование теперь не нужно.
|
||
Старый основной процесс добавляет к своему pid-файл суффикс ".oldbin"
|
||
и запускает новый исполняемый файл.
|
||
Новый основной процесс создаёт обычный pid-файл без суффикса ".newbin".
|
||
Если новый основной процесс выходит, то старый процесс переименовывает свой
|
||
pid-файл c суффиксом ".oldbin" в pid-файл без суффикса.
|
||
При обновлении с версии 0.1.х до 0.2.0 нужно учитывать, что оба
|
||
процесса—старый 0.1.x и новый 0.2.0—используют pid-файл
|
||
без суффиксов.
|
||
</para>
|
||
<para lang="en">
|
||
The pid-file names used during online upgrade was changed and now is not
|
||
required a manual rename operation.
|
||
The old master process adds the ".oldbin" suffix to its pid-file and
|
||
executes a new binary file.
|
||
The new master process creates usual pid-file without the ".newbin" suffix.
|
||
If the master process exits, then old master process renames back
|
||
its pid-file with the ".oldbin" suffix to the pid-file without suffix.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива worker_connections, новое название директивы connections;
|
||
директива теперь задаёт максимальное число соединений,
|
||
а не максимально возможный номер дескриптора для сокета.
|
||
</para>
|
||
<para lang="en">
|
||
the "worker_connections" directive, new name of the "connections" directive;
|
||
now the directive specifies maximum number of connections,
|
||
but not maximum socket descriptor number.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
SSL поддерживает кэширование сессий в пределах одного рабочего процесса.
|
||
</para>
|
||
<para lang="en">
|
||
SSL supports the session cache inside one worker process.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива satisfy_any.
|
||
</para>
|
||
<para lang="en">
|
||
the "satisfy_any" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
модули ngx_http_access_module и ngx_http_auth_basic_module не работают
|
||
для подзапросов.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_access_module and ngx_http_auth_basic_module do not run
|
||
for subrequests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы worker_rlimit_nofile и worker_rlimit_sigpending.
|
||
</para>
|
||
<para lang="en">
|
||
the "worker_rlimit_nofile" and "worker_rlimit_sigpending" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если все бэкенды, используемые для балансировки нагрузки, оказывались
|
||
в нерабочем состоянии после одной ошибки, то nginx не обращался к ним
|
||
в течение 60 секунд.
|
||
</para>
|
||
<para lang="en">
|
||
if all backend using in load-balancing failed after one error, then
|
||
nginx did not try do connect to them during 60 seconds.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в парсинге аргументов IMAP/POP3 команд.<br/>
|
||
Спасибо Rob Mueller.
|
||
</para>
|
||
<para lang="en">
|
||
in IMAP/POP3 command argument parsing.<br/>
|
||
Thanks to Rob Mueller.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании SSL в IMAP/POP3 прокси.
|
||
</para>
|
||
<para lang="en">
|
||
errors while using SSL in IMAP/POP3 proxy.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании SSI и сжатия.
|
||
</para>
|
||
<para lang="en">
|
||
errors while using SSI and gzipping.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в ответах 304 не добавлялись строки заголовка ответа "Expires" и
|
||
"Cache-Control".<br/>
|
||
Спасибо Александру Кукушкину.
|
||
</para>
|
||
<para lang="en">
|
||
the "Expires" and "Cache-Control" header lines were omitted
|
||
from the 304 responses.<br/>
|
||
Thanks to Alexandr Kukushkin.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.45" date="2005-09-08">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива ssl_engine упразднена в модуле ngx_http_ssl_module и
|
||
перенесена на глобальный уровень.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssl_engine" directive was canceled in the ngx_http_ssl_module
|
||
and now is introduced at global level.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ответы с подзапросами, включённые с помощью SSI, не передавались
|
||
через SSL соединение.
|
||
</para>
|
||
<para lang="en">
|
||
the responses with SSI subrequests did not transferred via SSL connection.
|
||
</para>
|
||
</change>
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Разные исправления в IMAP/POP3 прокси.
|
||
</para>
|
||
<para lang="en">
|
||
Various bug fixes in the IMAP/POP3 proxy.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.44" date="2005-09-06">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
IMAP/POP3 прокси поддерживает SSL.
|
||
</para>
|
||
<para lang="en">
|
||
the IMAP/POP3 proxy supports SSL.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_timeout модуля ngx_imap_proxy_module.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_timeout" directive of the ngx_imap_proxy_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива userid_mark.
|
||
</para>
|
||
<para lang="en">
|
||
the "userid_mark" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
значение переменной $remote_user определяется независимо от того,
|
||
используется ли авторизация или нет.
|
||
</para>
|
||
<para lang="en">
|
||
the $remote_user variable value is determined independently of
|
||
authorization use.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.43" date="2005-08-30">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
listen(2) backlog в директиве listen можно менять по сигналу -HUP.
|
||
</para>
|
||
<para lang="en">
|
||
the listen(2) backlog in the "listen" directive
|
||
can be changed using the -HUP signal.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
скрипт geo2nginx.pl добавлен в contrib.
|
||
</para>
|
||
<para lang="en">
|
||
the geo2nginx.pl script was added to contrib.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
параметры FastCGI с пустым значениями теперь передаются серверу.
|
||
</para>
|
||
<para lang="en">
|
||
the FastCGI parameters with the empty values now are passed to a server.
|
||
</para>
|
||
</change>
|
||
|
||
<!--
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при ошибках в работе с проксированным сервером или FastCGI сервером
|
||
мог произойти segmentation fault;
|
||
в режиме прокси ошибка появилась в 0.1.29.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault may occurred if there were errors while
|
||
working with proxied or FastCGI server;
|
||
in the proxied mode the bug had appeared in 0.1.29.
|
||
</para>
|
||
</change>
|
||
|
||
-->
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в ответе проксированного сервера или FastCGI сервера была строка
|
||
"Cache-Control", то при использовании директивы expires происходил
|
||
segmentation fault или рабочий процесс мог зациклится;
|
||
в режиме прокси ошибка появилась в 0.1.29.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault occurred or the worker process may got caught
|
||
in an endless loop if the proxied or FastCGI server sent the "Cache-Control"
|
||
header line and the "expires" directive was used;
|
||
in the proxied mode the bug had appeared in 0.1.29.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.42" date="2005-08-23">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если URI запроса получался нулевой длины после обработки модулем
|
||
ngx_http_rewrite_module, то в модуле ngx_http_proxy_module происходил
|
||
segmentation fault или bus error.
|
||
</para>
|
||
<para lang="en">
|
||
if the request URI had a zero length after the processing in
|
||
the ngx_http_proxy_module, then the segmentation fault or bus error occurred
|
||
in the ngx_http_proxy_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива limit_rate не работала внутри блока if;
|
||
ошибка появилась в 0.1.38.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_rate" directive did not work inside the "if" block;
|
||
the bug had appeared in 0.1.38.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.41" date="2005-07-25">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если переменная использовалась в файле конфигурации,
|
||
то она не могла использоваться в SSI.
|
||
</para>
|
||
<para lang="en">
|
||
if the variable was used in the configuration file,
|
||
then it can not be used in SSI.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.40" date="2005-07-22">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если клиент слал очень длинную строку заголовка, то в логе не помещалась
|
||
информация, связанная с этим запросом.
|
||
</para>
|
||
<para lang="en">
|
||
if a client sent too long header line, then the request information
|
||
did not logged in the error log.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании "X-Accel-Redirect" не передавалась строка "Set-Cookie";
|
||
ошибка появилась в 0.1.39.
|
||
</para>
|
||
<para lang="en">
|
||
the "Set-Cookie" header line was not transferred when the "X-Accel-Redirect"
|
||
was used;
|
||
the bug had appeared in 0.1.39.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании "X-Accel-Redirect" не передавалась строка
|
||
"Content-Disposition".
|
||
</para>
|
||
<para lang="en">
|
||
the "Content-Disposition" header line was not transferred when
|
||
the "X-Accel-Redirect" was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
по сигналу SIGQUIT основной процесс не закрывал сокеты, на которых он слушал.
|
||
</para>
|
||
<para lang="en">
|
||
the master process did not close the listen socket on the SIGQUIT signal.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
после обновления исполняемого файла на лету на Linux и Solaris
|
||
название процесса в команде ps становилось короче.
|
||
</para>
|
||
<para lang="en">
|
||
after on-line upgrade on Linux and Solaris the process name
|
||
became shorter in the "ps" command.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.39" date="2005-07-14">
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Изменения в модуле ngx_http_charset_module:
|
||
директива default_charset упразднена;
|
||
директива charset задаёт кодировку ответа;
|
||
директива source_charset задаёт только исходную кодировку.
|
||
</para>
|
||
<para lang="en">
|
||
The changes in the ngx_http_charset_module:
|
||
the "default_charset" directive was canceled;
|
||
the "charset" directive sets the response charset;
|
||
the "source_charset" directive sets the source charset only.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при перенаправлении ошибки 401, полученной от бэкенда, не передавалась
|
||
строка заголовка "WWW-Authenticate".
|
||
</para>
|
||
<para lang="en">
|
||
the backend "WWW-Authenticate" header line did not transferred while
|
||
the 401 response code redirecting.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модули ngx_http_proxy_module и ngx_http_fastcgi_module могли закрыть
|
||
соединение до того, как что-нибудь было передано клиенту;
|
||
ошибка появилась в 0.1.38.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_proxy_module and ngx_http_fastcgi_module may close
|
||
a connection before anything was transferred to a client;
|
||
the bug had appeared in 0.1.38.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
обработка ошибки инициализации в crypt_r() в Linux glibc.
|
||
</para>
|
||
<para lang="en">
|
||
the Linux glibc crypt_r() initialization bug.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssi_module не поддерживал относительные URI в
|
||
команде include virtual.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssi_module did not support the relative URI in
|
||
the "include virtual" command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в строке заголовка ответа бэкенда была строка "Location",
|
||
которую nginx не должен был изменять, то в ответе передавалось тело 500 ошибки;
|
||
ошибка появилась в 0.1.29.
|
||
</para>
|
||
<para lang="en">
|
||
if the backend response had the "Location" header line and nginx
|
||
should not rewrite this line, then the 500 code response body was transferred;
|
||
the bug had appeared in 0.1.29.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
некоторые директивы модулей ngx_http_proxy_module и ngx_http_fastcgi_module
|
||
не наследовались с уровня server на уровень location;
|
||
ошибка появилась в 0.1.29.
|
||
</para>
|
||
<para lang="en">
|
||
some directives of the ngx_http_proxy_module and ngx_http_fastcgi_module
|
||
were not inherited from the server to the location level;
|
||
the bug had appeared in 0.1.29.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssl_module не поддерживал цепочки сертификатов.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssl_module did not support the certificate chain.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибка в модуле ngx_http_autoindex_module при показе длинных имён файлов;
|
||
ошибка появилась в 0.1.38.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_autoindex_module did not show correctly the long file names;
|
||
the bug had appeared in 0.1.38.
|
||
</para>
|
||
</change>
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Исправления в IMAP/POP3 прокси при взаимодействии с бэкендом на стадии login.
|
||
</para>
|
||
<para lang="en">
|
||
Bugfixes in IMAP/POP3 proxy in interaction with a backend at the login state.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.38" date="2005-07-08">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива limit_rate поддерживается в режиме прокси и FastCGI.
|
||
</para>
|
||
<para lang="en">
|
||
the "limit_rate" directive is supported in proxy and FastCGI mode.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
в режиме прокси и FastCGI поддерживается строка заголовка "X-Accel-Limit-Rate"
|
||
в ответе бэкенда.
|
||
</para>
|
||
<para lang="en">
|
||
the "X-Accel-Limit-Rate" response header line is supported in proxy
|
||
and FastCGI mode.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива break.
|
||
</para>
|
||
<para lang="en">
|
||
the "break" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива log_not_found.
|
||
</para>
|
||
<para lang="en">
|
||
the "log_not_found" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при перенаправлении запроса с помощью строки заголовка "X-Accel-Redirect"
|
||
не изменялся код ответа.
|
||
</para>
|
||
<para lang="en">
|
||
the response status code was not changed when request was redirected
|
||
by the ""X-Accel-Redirect" header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменные, установленные директивой set не могли использоваться в SSI.
|
||
</para>
|
||
<para lang="en">
|
||
the variables set by the "set" directive could not be used in SSI.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при включении в SSI более одного удалённого подзапроса
|
||
мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault may occurred if the SSI page has more than one
|
||
remote subrequest.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если статусная строка в ответе бэкенда передавалась в двух пакетах, то
|
||
nginx считал ответ неверным;
|
||
ошибка появилась в 0.1.29.
|
||
</para>
|
||
<para lang="en">
|
||
nginx treated the backend response as invalid if the status line in the
|
||
header was transferred in two packets;
|
||
the bug had appeared in 0.1.29.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssi_types.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssi_types" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива autoindex_exact_size.
|
||
</para>
|
||
<para lang="en">
|
||
the "autoindex_exact_size" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_autoindex_module не поддерживал длинные имена файлов в UTF-8.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_autoindex_module did not support the long file names in UTF-8.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
IMAP/POP3 прокси.
|
||
</para>
|
||
<para lang="en">
|
||
the IMAP/POP3 proxy.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.37" date="2005-06-23">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
в конце файла nginx.pid теперь добавляется "\n".
|
||
</para>
|
||
<para lang="en">
|
||
now the "\n" is added to the end of the "nginx.pid" file.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при включении большого количества вставок или нескольких больших вставок
|
||
с помощью SSI ответ мог передаваться не полностью.
|
||
</para>
|
||
<para lang="en">
|
||
the responses may be transferred not completely,
|
||
if many parts or the big parts were included by SSI.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если все бэкенды возвращали ответ 404, то при использовании параметра http_404
|
||
в директивах proxy_next_upstream или fastcgi_next_upstream, nginx
|
||
начинал запрашивать все бэкенды снова.
|
||
</para>
|
||
<para lang="en">
|
||
if all backends had returned the 404 response and the "http_404" parameter of
|
||
the "proxy_next_upstream" or "fastcgi_next_upstream" directives was used,
|
||
then nginx started to request all backends again.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.36" date="2005-06-15">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
если в заголовке запроса есть дублирующиеся строки "Host", "Connection",
|
||
"Content-Length" и "Authorization", то nginx теперь выдаёт ошибку 400.
|
||
</para>
|
||
<para lang="en">
|
||
if the request header has duplicate the "Host", "Connection", "Content-Length",
|
||
or "Authorization" lines, then nginx now returns the 400 error.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива post_accept_timeout упразднена.
|
||
</para>
|
||
<para lang="en">
|
||
the "post_accept_timeout" directive was canceled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметры default, af=, bl=, deferred и bind в директиве listen.
|
||
</para>
|
||
<para lang="en">
|
||
the "default", "af=", "bl=", "deferred", and "bind" parameters
|
||
of the "listen" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка accept фильтров во FreeBSD.
|
||
</para>
|
||
<para lang="en">
|
||
the FreeBSD accept filters support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка TCP_DEFER_ACCEPT в Linux.
|
||
</para>
|
||
<para lang="en">
|
||
the Linux TCP_DEFER_ACCEPT support.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_autoindex_module не поддерживал имена файлов в UTF-8.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_autoindex_module did not support the file names in UTF-8.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
после добавления новый лог-файл ротация этого лога по сигналу -USR1
|
||
выполнялась, только если переконфигурировать nginx два раза по сигналу -HUP.
|
||
</para>
|
||
<para lang="en">
|
||
the new log file can be rotated by the -USR1 signal only if
|
||
the reconfiguration by the -HUP signal was made twice.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.35" date="2005-06-07">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива working_directory.
|
||
</para>
|
||
<para lang="en">
|
||
the "working_directory" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива port_in_redirect.
|
||
</para>
|
||
<para lang="en">
|
||
the "port_in_redirect" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если заголовок ответа бэкенда не помещался в один пакет, то
|
||
происходил segmentation fault;
|
||
ошибка появилась в 0.1.29.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault was occurred if the backend response header was in
|
||
several packets;
|
||
the bug had appeared in 0.1.29.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если было сконфигурировано более 10 серверов или в сервере не описана
|
||
директива "listen",
|
||
то при запуске мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
if more than 10 servers were configured or some server did not use the
|
||
"listen" directive, then the segmentation fault was occurred on the start.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если ответ не помещался во временный файл,
|
||
то мог произойти segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault might occur if the response was bigger than
|
||
the temporary file.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx возвращал ошибку 400 на запросы вида
|
||
<nobr>"GET http://www.domain.com/uri HTTP/1.0"</nobr>;
|
||
ошибка появилась в 0.1.28.
|
||
</para>
|
||
<para lang="en">
|
||
nginx returned the 400 response on requests like
|
||
<nobr>"GET http://www.domain.com/uri HTTP/1.0"</nobr>;
|
||
the bug had appeared in 0.1.28.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.34" date="2005-05-26">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при включении больших ответов с помощью SSI рабочий процесс мог зациклиться.
|
||
</para>
|
||
<para lang="en">
|
||
the worker process may got caught in an endless loop if the big response
|
||
part were include by SSI.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
переменные, устанавливаемые директивой "set", не были доступны в SSI.
|
||
</para>
|
||
<para lang="en">
|
||
the variables set by the "set" directive were not available in SSI.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива autoindex_localtime.
|
||
</para>
|
||
<para lang="en">
|
||
the "autoindex_localtime" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
пустое значение в директиве proxy_set_header запрещает передачу заголовка.
|
||
</para>
|
||
<para lang="en">
|
||
the empty value of the "proxy_set_header" directive forbids the client
|
||
request header line passing.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.33" date="2005-05-23">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался с параметром --without-pcre;
|
||
ошибка появилась в 0.1.29.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built with the --without-pcre parameter;
|
||
the bug had appeared in 0.1.29.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
3, 5, 7 и 8 директив proxy_set_header на одном уровне вызывали
|
||
bus fault при запуске.
|
||
</para>
|
||
<para lang="en">
|
||
3, 4, 7, and 8 the "proxy_set_header" directives in one level cause
|
||
the bus fault on start up.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в редиректах внутри HTTPS сервера был указан протокол HTTP.
|
||
</para>
|
||
<para lang="en">
|
||
the HTTP protocol was specified in the HTTPS redirects.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если директива rewrite использовала выделения внутри директивы if, то
|
||
возвращалась ошибка 500.
|
||
</para>
|
||
<para lang="en">
|
||
if the "rewrite" directive used the captures inside the "if" directive, then
|
||
the 500 error code was returned.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.32" date="2005-05-19">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в редиректах, выдаваемых с помощью директивы rewrite, не передавались аргументы;
|
||
ошибка появилась в 0.1.29.
|
||
</para>
|
||
<para lang="en">
|
||
the arguments were omitted in the redirects, issued by the "rewrite" directive;
|
||
the bug had appeared in 0.1.29.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива if поддерживает выделения в регулярных выражениях.
|
||
</para>
|
||
<para lang="en">
|
||
the "if" directive supports the captures in regular expressions.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива set поддерживает переменные и выделения из регулярных выражений.
|
||
</para>
|
||
<para lang="en">
|
||
the "set" directive supports the variables and the captures of regular
|
||
expressions.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
в режиме прокси и FastCGI поддерживается строка заголовка "X-Accel-Redirect"
|
||
в ответе бэкенда.
|
||
</para>
|
||
<para lang="en">
|
||
the "X-Accel-Redirect" response header line is supported in proxy and FastCGI
|
||
mode.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.31" date="2005-05-16">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании SSL ответ мог передаваться не до конца.
|
||
</para>
|
||
<para lang="en">
|
||
the response encrypted by SSL may not transferred complete.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при обработке SSI в ответе, полученного от FastCGI-сервера.
|
||
</para>
|
||
<para lang="en">
|
||
errors while processing FastCGI response by SSI.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки при использовании SSI и сжатия.
|
||
</para>
|
||
<para lang="en">
|
||
errors while using SSI and gzipping.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
редирект с кодом 301 передавался без тела ответа;
|
||
ошибка появилась в 0.1.30.
|
||
</para>
|
||
<para lang="en">
|
||
the redirect with the 301 code was transferred without response body;
|
||
the bug had appeared in 0.1.30.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.30" date="2005-05-14">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании SSI рабочий процесс мог зациклиться.
|
||
</para>
|
||
<para lang="en">
|
||
the worker process may got caught in an endless loop if the SSI was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании SSL ответ мог передаваться не до конца.
|
||
</para>
|
||
<para lang="en">
|
||
the response encrypted by SSL may not transferred complete.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если длина части ответа, полученного за один раз от проксируемого или
|
||
FastCGI сервера была равна 500 байт, то nginx возвращал код ответа 500;
|
||
в режиме прокси ошибка появилась только в 0.1.29.
|
||
</para>
|
||
<para lang="en">
|
||
if the length of the response part received at once from proxied
|
||
or FastCGI server was equal to 500, then nginx returns the 500 response code;
|
||
in proxy mode the bug had appeared in 0.1.29 only.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не считал неверными директивы с 8-ю или 9-ю параметрами.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not consider the directives with 8 or 9 parameters as invalid.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива return может возвращать код ответа 204.
|
||
</para>
|
||
<para lang="en">
|
||
the "return" directive can return the 204 response code.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ignore_invalid_headers.
|
||
</para>
|
||
<para lang="en">
|
||
the "ignore_invalid_headers" directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.29" date="2005-05-12">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssi_module поддерживает команду include virtual.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssi_module supports "include virtual" command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssi_module поддерживает условную команду вида
|
||
'if expr="$NAME"' и команды else и endif.
|
||
Допускается только один уровень вложенности.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssi_module supports the condition command like
|
||
'if expr="$NAME"' and "else" and "endif" commands.
|
||
Only one nested level is supported.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssi_module поддерживает две переменные DATE_LOCAL и DATE_GMT
|
||
и команду config timefmt.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssi_module supports the DATE_LOCAL and DATE_GMT variables
|
||
and "config timefmt" command.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива ssi_ignore_recycled_buffers.
|
||
</para>
|
||
<para lang="en">
|
||
the "ssi_ignore_recycled_buffers" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если переменная QUERY_STRING не была определена, то в команде echo
|
||
не ставилось значение по умолчанию.
|
||
</para>
|
||
<para lang="en">
|
||
the "echo" command did not show the default value for the empty QUERY_STRING
|
||
variable.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
модуль ngx_http_proxy_module полностью переписан.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_proxy_module was rewritten.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_redirect, proxy_pass_request_headers,
|
||
proxy_pass_request_body и proxy_method.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_redirect", "proxy_pass_request_headers",
|
||
"proxy_pass_request_body", and "proxy_method" directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_set_header.
|
||
Директива proxy_x_var упразднена и должна быть заменена директивой
|
||
proxy_set_header.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_set_header" directive.
|
||
The "proxy_x_var" was canceled and must be replaced with the proxy_set_header
|
||
directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива proxy_preserve_host упразднена и должна быть заменена директивами
|
||
"proxy_set_header Host $host" и "proxy_redirect off"
|
||
или директивой <nobr>"proxy_set_header Host $host:$proxy_port"</nobr>
|
||
и соответствующими ей директивами proxy_redirect.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_preserve_host" is canceled and must be replaced with
|
||
the "proxy_set_header Host $host" and the "proxy_redirect off" directives,
|
||
the <nobr>"proxy_set_header Host $host:$proxy_port" directive</nobr>
|
||
and the appropriate proxy_redirect directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива proxy_set_x_real_ip упразднена и должна быть заменена директивой
|
||
"proxy_set_header X-Real-IP $remote_addr".
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_set_x_real_ip" is canceled and must be replaced with
|
||
the "proxy_set_header X-Real-IP $remote_addr" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива proxy_add_x_forwarded_for упразднена и должна быть заменена
|
||
директивой
|
||
<nobr>"proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for".</nobr>
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_add_x_forwarded_for" is canceled and must be replaced with
|
||
<nobr>the "proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for"</nobr>
|
||
directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директива proxy_set_x_url упразднена и должна быть заменена директивой
|
||
<nobr>"proxy_set_header X-URL http://$host:$server_port$request_uri".</nobr>
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_set_x_url" is canceled and must be replaced with
|
||
the "proxy_set_header X-URL http://$host:$server_port$request_uri"
|
||
directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива fastcgi_param.
|
||
</para>
|
||
<para lang="en">
|
||
the "fastcgi_param" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
директивы fastcgi_root, fastcgi_set_var и fastcgi_params упразднены
|
||
и должны быть замены директивами fastcgi_param.
|
||
</para>
|
||
<para lang="en">
|
||
the "fastcgi_root", "fastcgi_set_var" and "fastcgi_params" directive
|
||
are canceled and must be replaced with the fastcgi_param directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива index может использовать переменные.
|
||
</para>
|
||
<para lang="en">
|
||
the "index" directive can use the variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива index может быть указана на уровне http и server.
|
||
</para>
|
||
<para lang="en">
|
||
the "index" directive can be used at http and server levels.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
только последний параметр в директиве index может быть абсолютным.
|
||
</para>
|
||
<para lang="en">
|
||
the last index only in the "index" directive can be absolute.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
в директиве rewrite могут использоваться переменные.
|
||
</para>
|
||
<para lang="en">
|
||
the "rewrite" directive can use the variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива internal.
|
||
</para>
|
||
<para lang="en">
|
||
the "internal" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
переменные CONTENT_LENGTH, CONTENT_TYPE, REMOTE_PORT, SERVER_ADDR,
|
||
SERVER_PORT, SERVER_PROTOCOL, DOCUMENT_ROOT, SERVER_NAME,
|
||
REQUEST_METHOD, REQUEST_URI и REMOTE_USER.
|
||
</para>
|
||
<para lang="en">
|
||
the CONTENT_LENGTH, CONTENT_TYPE, REMOTE_PORT, SERVER_ADDR,
|
||
SERVER_PORT, SERVER_PROTOCOL, DOCUMENT_ROOT, SERVER_NAME,
|
||
REQUEST_METHOD, REQUEST_URI, and REMOTE_USER variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
nginx теперь передаёт неверные строки в заголовках запроса клиента и
|
||
ответа бэкенда.
|
||
</para>
|
||
<para lang="en">
|
||
nginx now passes the invalid lines in a client request headers
|
||
or a backend response header.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если бэкенд долго не передавал ответ и send_timeout был меньше, чем
|
||
proxy_read_timeout, то клиенту возвращался ответ 408.
|
||
</para>
|
||
<para lang="en">
|
||
if the backend did not transfer response for a long time and
|
||
the "send_timeout" was less than "proxy_read_timeout", then nginx
|
||
returned the 408 response.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если бэкенд передавал неверную строку в заголовке ответа, то происходил
|
||
segmentation fault;
|
||
ошибка появилась в 0.1.26.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault was occurred if the backend sent an invalid line
|
||
in response header;
|
||
the bug had appeared in 0.1.26.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании отказоустойчивой конфигурации в FastCGI мог
|
||
происходить segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault may occurred in FastCGI fault tolerance configuration.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива expires не удаляла уже установленные строки заголовка
|
||
"Expires" и "Cache-Control".
|
||
</para>
|
||
<para lang="en">
|
||
the "expires" directive did not remove the previous "Expires" and
|
||
"Cache-Control" headers.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не учитывал завершающую точку в строке заголовка запроса "Host".
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not take into account trailing dot in "Host" header line.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_auth_module не работал на Linux.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_auth_module did not work under Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива rewrite неверно работала, если в запросе присутствовали аргументы.
|
||
</para>
|
||
<para lang="en">
|
||
the rewrite directive worked incorrectly, if the arguments were in a request.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на MacOS X.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on MacOS X.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.28" date="2005-04-08">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при проксировании больших файлов nginx сильно нагружал процессор.
|
||
</para>
|
||
<para lang="en">
|
||
nginx hogs CPU while proxying the huge files.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался gcc 4.0 на Linux.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built by gcc 4.0 on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.27" date="2005-03-28">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр blocked в директиве valid_referers.
|
||
</para>
|
||
<para lang="en">
|
||
the "blocked" parameter of the "valid_referers" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
ошибки обработки заголовка запроса теперь записываются на уровне
|
||
info, в лог также записывается имя сервера и строки заголовка
|
||
запроса "Host" и "Referer".
|
||
</para>
|
||
<para lang="en">
|
||
the errors while handling the request header now logged at "info" level.
|
||
The server name and the "Host" and "Referer" header lines also logged.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
при записи ошибок в лог записывается также строка заголовка запроса "Host".
|
||
</para>
|
||
<para lang="en">
|
||
the "Host" header line is also logged in error log.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_pass_unparsed_uri.
|
||
Специальная обработка символов "://" в URI, введённая в версии 0.1.11,
|
||
теперь упразднена.
|
||
</para>
|
||
<para lang="en">
|
||
the proxy_pass_unparsed_uri directive.
|
||
The special handling of the "://" symbols in URI, appeared in 0.1.11 version,
|
||
now is canceled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на FreeBSD и Linux, если был указан параметр конфигурации
|
||
--without-ngx_http_auth_basic_module.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on FreeBSD and Linux, if the
|
||
--without-ngx_http_auth_basic_module configuration parameter was used.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.26" date="2005-03-22">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
неверные строки заголовка, переданные клиентом, теперь игнорируется и
|
||
записываются в error_log на уровне info.
|
||
</para>
|
||
<para lang="en">
|
||
the invalid client header lines are now ignored and logged at the info level.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
при записи ошибок в лог записывается также имя сервера, при обращении
|
||
к которому произошла ошибка.
|
||
</para>
|
||
<para lang="en">
|
||
the server name is also logged in error log.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_auth_basic_module и директивы auth_basic и
|
||
auth_basic_user_file.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_auth_basic_module module and the auth_basic and
|
||
auth_basic_user_file directives.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.25" date="2005-03-19">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не работал на Linux parisc.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did run on Linux parisc.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
nginx теперь не запускается под FreeBSD, если значение
|
||
sysctl kern.ipc.somaxconn слишком большое.
|
||
</para>
|
||
<para lang="en">
|
||
nginx now does not start under FreeBSD if the sysctl kern.ipc.somaxconn
|
||
value is too big.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если модуль ngx_http_index_module делал внутреннее перенаправление запроса
|
||
в модули ngx_http_proxy_module или ngx_http_fastcgi_module, то файл индекса
|
||
не закрывался после обслуживания запроса.
|
||
</para>
|
||
<para lang="en">
|
||
if a request was internally redirected by the ngx_http_index_module
|
||
module to the ngx_http_proxy_module or ngx_http_fastcgi_module modules,
|
||
then the index file was not closed after request completion.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_pass может использоваться в location, заданных регулярным
|
||
выражением.
|
||
</para>
|
||
<para lang="en">
|
||
the "proxy_pass" can be used in location with regular expression.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_rewrite_filter_module поддерживает условия вида
|
||
"if ($HTTP_USER_AGENT ~ MSIE)".
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_rewrite_filter_module module supports the condition like
|
||
"if ($HTTP_USER_AGENT ~ MSIE)".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx очень медленно запускался при большом количестве адресов и
|
||
использовании текстовых значений в директиве geo.
|
||
</para>
|
||
<para lang="en">
|
||
nginx started too slow if the large number of addresses and text values
|
||
were used in the "geo" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
имя переменной в директиве geo нужно указывать, как $name.
|
||
Прежний вариант без "$" пока работает, но вскоре будет убран.
|
||
</para>
|
||
<para lang="en">
|
||
a variable name must be declared as "$name" in the "geo" directive.
|
||
The previous variant without "$" is still supported, but will be removed soon.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр лога "%{VARIABLE}v".
|
||
</para>
|
||
<para lang="en">
|
||
the "%{VARIABLE}v" logging parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива "set $name value".
|
||
</para>
|
||
<para lang="en">
|
||
the "set $name value" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
совместимость с gcc 4.0.
|
||
</para>
|
||
<para lang="en">
|
||
gcc 4.0 compatibility.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр автоконфигурации --with-openssl-opt=OPTIONS.
|
||
</para>
|
||
<para lang="en">
|
||
the --with-openssl-opt=OPTIONS autoconfiguration directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.24" date="2005-03-04">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssi_filter_module поддерживает переменные
|
||
QUERY_STRING и DOCUMENT_URI.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssi_filter_module supports the QUERY_STRING and DOCUMENT_URI
|
||
variables.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_autoindex_module мог выдавать ответ 404
|
||
на существующий каталог, если этот каталог был указан как alias.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_autoindex_module may some times return the 404 response
|
||
for existent directory, if this directory was used in "alias" directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssi_filter_module неправильно работал при больших
|
||
ответах.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssi_filter_module ran incorrectly for large responses.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
отсутствие строки заголовка "Referer" всегда считалось правильным referrer'ом.
|
||
</para>
|
||
<para lang="en">
|
||
the lack of the "Referer" header line was always accounted as valid referrer.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.23" date="2005-03-01">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_ssi_filter_module и
|
||
директивы ssi, ssi_silent_errors и ssi_min_file_chunk.
|
||
Поддерживаются команды 'echo var="HTTP_..." default=""' и
|
||
'echo var="REMOTE_ADDR"'.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_ssi_filter_module and
|
||
the ssi, ssi_silent_errors, and ssi_min_file_chunk directives.
|
||
The 'echo var="HTTP_..." default=""' and 'echo var="REMOTE_ADDR"' commands
|
||
are supported.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр лога %request_time.
|
||
</para>
|
||
<para lang="en">
|
||
the %request_time log parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
если запрос пришёл без строки заголовка "Host", то директива
|
||
proxy_preserve_host устанавливает в качестве этого заголовка первое имя
|
||
сервера из директивы server_name.
|
||
</para>
|
||
<para lang="en">
|
||
if the request has no the "Host" header line, then the "proxy_preserve_host"
|
||
directive set this header line to the first server name of the "server_name"
|
||
directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался на платформах, отличных от i386, amd64, sparc и ppc;
|
||
ошибка появилась в 0.1.22.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on platforms different from i386, amd64, sparc,
|
||
and ppc;
|
||
the bug had appeared in 0.1.22.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_autoindex_module теперь показывает информацию не о
|
||
символическом линке, а о файле или каталоге, на который он указывает.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_autoindex_module now shows the information not about the symlink,
|
||
but about file or directory it points to.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если клиенту ничего не передавалось, то параметр %apache_length
|
||
записывал в лог отрицательную длину заголовка ответа.
|
||
</para>
|
||
<para lang="en">
|
||
the %apache_length parameter logged the negative length
|
||
of the response header if the no response was transferred to a client.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.22" date="2005-02-22">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_stub_status_module показывал неверную статистику
|
||
для обработанных соединений, если использовалось проксирование
|
||
или FastCGI-сервер.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_stub_status_module showed incorrect handled connections
|
||
statistics if the proxying or FastCGI server were used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на Linux и Solaris установочные пути были неверно заключены в кавычки;
|
||
ошибка появилась в 0.1.21.
|
||
</para>
|
||
<para lang="en">
|
||
the installation paths were incorrectly quoted on Linux and Solaris;
|
||
the bug had appeared in 0.1.21.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.21" date="2005-02-22">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль ngx_http_stub_status_module показывал неверную статистику
|
||
при использовании метода rtsig или при использовании нескольких
|
||
рабочих процессов на SMP машине.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_stub_status_module showed incorrect statistics
|
||
if "rtsig" method was used or if several worker process ran on SMP.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался компилятором icc под Линуксом или
|
||
если библиотека zlib-1.2.x собиралась из исходных текстов.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built by the icc compiler on Linux or
|
||
if the zlib-1.2.x library was building from sources.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался под NetBSD 2.0.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on NetBSD 2.0.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.20" date="2005-02-17">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
новые параметры script_filename и remote_port в директиве fastcgi_params.
|
||
</para>
|
||
<para lang="en">
|
||
the new "script_filename" and "remote_port" parameters
|
||
of the fastcgi_params directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
неправильно обрабатывался поток stderr от FastCGI-сервера.
|
||
</para>
|
||
<para lang="en">
|
||
the FastCGI stderr stream was handled incorrectly.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.19" date="2005-02-16">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в запросе есть нуль, то для локальных запросов теперь возвращается
|
||
ошибка 404.
|
||
</para>
|
||
<para lang="en">
|
||
now, if request contains the zero, then the 404 error is returned
|
||
for the local requests.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался под NetBSD 2.0.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on NetBSD 2.0.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
во время чтения тела запроса клиента в SSL соединении мог произойти таймаут.
|
||
</para>
|
||
<para lang="en">
|
||
the timeout may occur while reading of the client request body
|
||
via SSL connections.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.18" date="2005-02-09">
|
||
|
||
<change type="workaround">
|
||
<para lang="ru">
|
||
для совместимости с Solaris 10 в директивах devpoll_events и devpoll_changes
|
||
значения по умолчанию уменьшены с 512 до 32.
|
||
</para>
|
||
<para lang="en">
|
||
the default values of the devpoll_events and the devpoll_changes directives
|
||
changed from 512 to 32 to be compatible with Solaris 10.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директивы proxy_set_x_var и fastcgi_set_var не наследовались.
|
||
</para>
|
||
<para lang="en">
|
||
the proxy_set_x_var and fastcgi_set_var directives were not inherited.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в директиве rewrite, возвращающей редирект, аргументы присоединялись
|
||
к URI через символ "&" вместо "?".
|
||
</para>
|
||
<para lang="en">
|
||
in a redirect rewrite directive arguments were concatenated with URI
|
||
by an "&" rather than a "?".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
строки для модуля ngx_http_geo_module без символа ";" во включённом файле
|
||
игнорировались.
|
||
</para>
|
||
<para lang="en">
|
||
the lines without trailing ";" in the file being included
|
||
by the ngx_http_geo_module were silently ignored.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_stub_status_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_stub_status_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
неизвестный формат лог-файла в директиве access_log вызывал segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
the unknown log format in the access_log directive caused
|
||
the segmentation fault.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
новый параметр document_root в директиве fastcgi_params.
|
||
</para>
|
||
<para lang="en">
|
||
the new "document_root" parameter of the fastcgi_params directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива fastcgi_redirect_errors.
|
||
</para>
|
||
<para lang="en">
|
||
the fastcgi_redirect_errors directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
новый модификатор break в директиве rewrite позволяет прекратить
|
||
цикл rewrite/location и устанавливает текущую конфигурацию для запроса.
|
||
</para>
|
||
<para lang="en">
|
||
the new "break" modifier of the "rewrite" directive allows to stop
|
||
the rewrite/location cycle and sets the current configuration to the request.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.17" date="2005-02-03">
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
модуль ngx_http_rewrite_module полностью переписан.
|
||
Теперь можно делать редиректы, возвращать коды ошибок
|
||
и проверять переменные и рефереры.
|
||
Эти директивы можно использовать внутри location.
|
||
Директива redirect упразднена.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_rewrite_module was rewritten from the scratch.
|
||
Now it is possible to redirect, to return the error codes,
|
||
to check the variables and referrers. The directives can be used
|
||
inside locations.
|
||
The redirect directive was canceled.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_geo_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_geo_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы proxy_set_x_var и fastcgi_set_var.
|
||
</para>
|
||
<para lang="en">
|
||
the proxy_set_x_var and fastcgi_set_var directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
конфигурация location с модификатором "=" могла использоваться
|
||
в другом location.
|
||
</para>
|
||
<para lang="en">
|
||
the location configuration with "=" modifier may be used in another
|
||
location.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
правильный тип ответа выставлялся только для запросов, у которых в расширении
|
||
были только маленькие буквы.
|
||
</para>
|
||
<para lang="en">
|
||
the correct content type was set only for requests that use small caps letters
|
||
in extension.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если для location установлен proxy_pass или fastcgi_pass, и доступ
|
||
к нему запрещался, а ошибка перенаправлялась на статическую страницу,
|
||
то происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
if the proxy_pass or fastcgi_pass directives were set in the location,
|
||
and access was denied, and the error was redirected to a static page,
|
||
then the segmentation fault occurred.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в проксированном ответе в заголовке "Location" передавался
|
||
относительный URL, то к нему добавлялось имя хоста и слэш;
|
||
ошибка появилась в 0.1.14.
|
||
</para>
|
||
<para lang="en">
|
||
if in a proxied "Location" header was a relative URL,
|
||
then a host name and a slash were added to them;
|
||
the bug had appeared in 0.1.14.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на Linux в лог не записывался текст системной ошибки.
|
||
</para>
|
||
<para lang="en">
|
||
the system error message was not logged on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.16" date="2005-01-25">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если ответ передавался chunk'ами, то при запросе HEAD выдавался
|
||
завершающий chunk.
|
||
</para>
|
||
<para lang="en">
|
||
if the response were transferred by chunks, then on the HEAD request
|
||
the final chunk was issued.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
заголовок "Connection: keep-alive" выдавался, даже если директива
|
||
keepalive_timeout запрещала использование keep-alive.
|
||
</para>
|
||
<para lang="en">
|
||
the "Connection: keep-alive" header were issued, even if the
|
||
keepalive_timeout directive forbade the keep-alive use.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки в модуле ngx_http_fastcgi_module вызывали segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
the errors in the ngx_http_fastcgi_module caused the segmentation faults.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании SSL сжатый ответ мог передаваться не до конца.
|
||
</para>
|
||
<para lang="en">
|
||
the compressed response encrypted by SSL may not transferred complete.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
опции TCP_NODELAY, TCP_NOPUSH и TCP_CORK, специфичные для TCP сокетов,
|
||
не используются для unix domain сокетов.
|
||
</para>
|
||
<para lang="en">
|
||
the TCP-specific TCP_NODELAY, TCP_NOPUSH, and TCP_CORK options,
|
||
are not used for the unix domain sockets.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива rewrite поддерживает перезаписывание аргументов.
|
||
</para>
|
||
<para lang="en">
|
||
the rewrite directive supports the arguments rewriting.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на запрос POST с заголовком "Content-Length: 0" возвращался ответ 400;
|
||
ошибка появилась в 0.1.14.
|
||
</para>
|
||
<para lang="en">
|
||
the response code 400 was returned for the POST request with the
|
||
"Content-Length: 0" header;
|
||
the bug had appeared in 0.1.14.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.15" date="2005-01-19">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибка соединения с FastCGI-сервером вызывала segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
the error while the connecting to the FastCGI server caused
|
||
segmentation fault.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
корректная обработка регулярного выражения, в котором число
|
||
выделенных частей не совпадает с числом подстановок.
|
||
</para>
|
||
<para lang="en">
|
||
the correct handling of the regular expression, that
|
||
has different number of the captures and substitutions.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
location, который передаётся FastCGI-серверу, может быть задан
|
||
с помощью регулярного выражения.
|
||
</para>
|
||
<para lang="en">
|
||
the location, that is passed to the FastCGI server, can be
|
||
regular expression.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр FastCGI REQUEST_URI теперь передаётся вместе с аргументами
|
||
и в том виде, в котором был получен от клиента.
|
||
</para>
|
||
<para lang="en">
|
||
the FastCGI's parameter REQUEST_URI is now passed with the arguments
|
||
and in the original state.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
для использования регулярных выражений в location нужно было
|
||
собирать nginx вместе с ngx_http_rewrite_module.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_rewrite_module module was required to be built to use
|
||
the regular expressions in locations.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если бэкенд слушал на 80-ом порту, то при использовании директивы
|
||
<nobr>"proxy_preserve_host on"</nobr> в заголовке "Host" указывался
|
||
также порт 80;
|
||
ошибка появилась в 0.1.14.
|
||
</para>
|
||
<para lang="en">
|
||
the directive <nobr>"proxy_preserve_host on"</nobr> adds port 80
|
||
to the "Host" headers, if upstream listen on port 80;
|
||
the bug had appeared in 0.1.14.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если задать одинаковые пути в параметрах автоконфигурации
|
||
--http-client-body-temp-path=PATH и --http-proxy-temp-path=PATH
|
||
или --http-client-body-temp-path=PATH и --http-fastcgi-temp-path=PATH,
|
||
то происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
the same paths in autoconfiguration parameters
|
||
--http-client-body-temp-path=PATH and --http-proxy-temp-path=PATH,
|
||
or --http-client-body-temp-path=PATH and --http-fastcgi-temp-path=PATH
|
||
caused segmentation fault.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.14" date="2005-01-18">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметры автоконфигурации
|
||
--http-client-body-temp-path=PATH,
|
||
--http-proxy-temp-path=PATH
|
||
и --http-fastcgi-temp-path=PATH
|
||
</para>
|
||
<para lang="en">
|
||
the autoconfiguration directives:
|
||
--http-client-body-temp-path=PATH,
|
||
--http-proxy-temp-path=PATH,
|
||
and --http-fastcgi-temp-path=PATH
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
имя каталога с временными файлами, содержащие тело запроса клиента,
|
||
задаётся директивой client_body_temp_path,
|
||
по умолчанию <prefix>/client_body_temp.
|
||
</para>
|
||
<para lang="en">
|
||
the directory name for the temporary files with the client request body
|
||
is specified by directive client_body_temp_path,
|
||
by default it is <prefix>/client_body_temp.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_fastcgi_module и директивы
|
||
fastcgi_pass,
|
||
fastcgi_root,
|
||
fastcgi_index,
|
||
fastcgi_params,
|
||
fastcgi_connect_timeout,
|
||
fastcgi_send_timeout,
|
||
fastcgi_read_timeout,
|
||
fastcgi_send_lowat,
|
||
fastcgi_header_buffer_size,
|
||
fastcgi_buffers,
|
||
fastcgi_busy_buffers_size,
|
||
fastcgi_temp_path,
|
||
fastcgi_max_temp_file_size,
|
||
fastcgi_temp_file_write_size,
|
||
fastcgi_next_upstream
|
||
и fastcgi_x_powered_by.
|
||
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_fastcgi_module and the directives:
|
||
fastcgi_pass,
|
||
fastcgi_root,
|
||
fastcgi_index,
|
||
fastcgi_params,
|
||
fastcgi_connect_timeout,
|
||
fastcgi_send_timeout,
|
||
fastcgi_read_timeout,
|
||
fastcgi_send_lowat,
|
||
fastcgi_header_buffer_size,
|
||
fastcgi_buffers,
|
||
fastcgi_busy_buffers_size,
|
||
fastcgi_temp_path,
|
||
fastcgi_max_temp_file_size,
|
||
fastcgi_temp_file_write_size,
|
||
fastcgi_next_upstream,
|
||
and fastcgi_x_powered_by.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибка "[alert] zero size buf";
|
||
ошибка появилась в 0.1.3.
|
||
</para>
|
||
<para lang="en">
|
||
the "[alert] zero size buf" error;
|
||
the bug had appeared in 0.1.3.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
в директиве proxy_pass нужно обязательно указывать URI после имени хоста.
|
||
</para>
|
||
<para lang="en">
|
||
the URI must be specified after the host name in the proxy_pass directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
если в URI встречался символ %3F, то он считался началом строки аргументов.
|
||
</para>
|
||
<para lang="en">
|
||
the %3F symbol in the URI was considered as the argument string start.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
поддержка unix domain сокетов в модуле ngx_http_proxy_module.
|
||
</para>
|
||
<para lang="en">
|
||
the unix domain sockets support in the ngx_http_proxy_module.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы ssl_engine и ssl_ciphers.<br/>
|
||
Спасибо Сергею Скворцову за SSL-акселератор.
|
||
</para>
|
||
<para lang="en">
|
||
the ssl_engine and ssl_ciphers directives.<br/>
|
||
Thanks to Sergey Skvortsov for SSL-accelerator.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.13" date="2004-12-21">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директивы server_names_hash и server_names_hash_threshold.
|
||
</para>
|
||
<para lang="en">
|
||
the server_names_hash and server_names_hash_threshold directives.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
имена *.domain.tld в директиве server_name не работали.
|
||
</para>
|
||
<para lang="en">
|
||
the *.domain.tld names in the "server_name" directive did not work.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
параметр лога %request_length записывал неверную длину.
|
||
</para>
|
||
<para lang="en">
|
||
the %request_length log parameter logged the incorrect length.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.12" date="2004-12-06">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметр лога %request_length.
|
||
</para>
|
||
<para lang="en">
|
||
the %request_length log parameter.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании /dev/poll, select и poll на платформах, где возможны
|
||
ложные срабатывания указанных методов, могли быть длительные задержки
|
||
при обработке запроса по keep-alive соединению.
|
||
Наблюдалось по крайней мере на Solaris с использованием /dev/poll.
|
||
</para>
|
||
<para lang="en">
|
||
when using the /dev/poll, select and poll on the platforms, where
|
||
these methods may do the false reports, there may be the long delay when
|
||
the request was passed via the keep-alive connection.
|
||
It may be at least on Solaris when using the /dev/poll.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива send_lowat игнорируется на Linux, так как Linux не поддерживает
|
||
опцию SO_SNDLOWAT.
|
||
</para>
|
||
<para lang="en">
|
||
the send_lowat directive is ignored on Linux because Linux does not support
|
||
the SO_SNDLOWAT option.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.11" date="2004-12-02">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива worker_priority.
|
||
</para>
|
||
<para lang="en">
|
||
the worker_priority directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
под FreeBSD директивы tcp_nopush и tcp_nodelay вместе влияют на передачу
|
||
ответа.
|
||
</para>
|
||
<para lang="en">
|
||
both tcp_nopush and tcp_nodelay directives affect the transferred response.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не вызывал initgroups().<br/>
|
||
Спасибо Андрею Ситникову и Андрею Нигматулину.
|
||
</para>
|
||
<para lang="en">
|
||
nginx did not call initgroups().<br/>
|
||
Thanks to Andrew Sitnikov and Andrei Nigmatulin.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
ngx_http_auto_index_module теперь выдаёт размер файлов в байтах.
|
||
</para>
|
||
<para lang="en">
|
||
now the ngx_http_autoindex_module shows the file size in the bytes.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ngx_http_auto_index_module возвращал ошибку 500, если в каталоге есть
|
||
битый symlink.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_autoindex_module returned the 500 error if the broken symlink
|
||
was in a directory.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
файлы больше 4G не передавались с использованием sendfile.
|
||
</para>
|
||
<para lang="en">
|
||
the files bigger than 4G could not be transferred using sendfile.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если бэкенд резолвился в несколько адресов и при ожидании от него ответа
|
||
происходила ошибка, то процесс зацикливался.
|
||
</para>
|
||
<para lang="en">
|
||
if the backend was resolved to several backends and there was an error while
|
||
the response waiting then process may got caught in an endless loop.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании метода /dev/poll рабочий процесс мог завершиться
|
||
с сообщением "unknown cycle".
|
||
</para>
|
||
<para lang="en">
|
||
the worker process may exit with the "unknown cycle" message when the /dev/poll
|
||
method was used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки "close() channel failed".
|
||
</para>
|
||
<para lang="en">
|
||
"close() channel failed" errors.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
автоматическое определение групп nobody и nogroup.
|
||
</para>
|
||
<para lang="en">
|
||
the autodetection of the "nobody" and "nogroup" groups.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
директива send_lowat не работала на Linux.
|
||
</para>
|
||
<para lang="en">
|
||
the send_lowat directive did not work on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в конфигурации не было раздела events, то происходил segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
the segmentation fault occurred if there was no events section
|
||
in configuration.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
nginx не собирался под OpenBSD.
|
||
</para>
|
||
<para lang="en">
|
||
nginx could not be built on OpenBSD.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
двойные слэшы в "://" в URI превращались в ":/".
|
||
</para>
|
||
<para lang="en">
|
||
the double slashes in "://" in the URI were converted to ":/".
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.10" date="2004-11-26">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в запросе без аргументов есть "//", "/./", "/../" или "%XX",
|
||
то терялся последний символ в строке запроса;
|
||
ошибка появилась в 0.1.9.
|
||
</para>
|
||
<para lang="en">
|
||
if the request without arguments contains "//", "/./", "/../" or "%XX"
|
||
then the last character in the request line was lost;
|
||
the bug had appeared in 0.1.9.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
исправление в версии 0.1.9 для файлов больше 2G на Linux не работало.
|
||
</para>
|
||
<para lang="en">
|
||
the fix in 0.1.9 for the files bigger than 2G on Linux did not work.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.9" date="2004-11-25">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
если в запросе есть "//", "/./", "/../" или "%XX", то проксируемый
|
||
запрос передавался без аргументов.
|
||
</para>
|
||
<para lang="en">
|
||
the proxied request was sent without arguments if the request contains
|
||
"//", "/./", "/../" or "%XX".
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при сжатии больших ответов иногда они передавались не полностью.
|
||
</para>
|
||
<para lang="en">
|
||
the large compressed responses may be transferred not completely.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
не передавались файлы больше 2G на Linux, неподдерживающем sendfile64().
|
||
</para>
|
||
<para lang="en">
|
||
the files bigger than 2G was not transferred on Linux that does not support
|
||
sendfile64().
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на Linux при конфигурации сборки нужно было обязательно использовать
|
||
параметр --with-poll_module;
|
||
ошибка появилась в 0.1.8.
|
||
</para>
|
||
<para lang="en">
|
||
while the build configuration on Linux the --with-poll_module parameter
|
||
was required;
|
||
the bug had appeared in 0.1.8.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.8" date="2004-11-20">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибка в модуле ngx_http_autoindex_module при показе длинных имён файлов.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_autoindex_module if the long file names were in the listing.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модификатор "^~" в директиве location.
|
||
</para>
|
||
<para lang="en">
|
||
the "^~" modifier in the location directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_max_temp_file_size.
|
||
</para>
|
||
<para lang="en">
|
||
the proxy_max_temp_file_size directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.7" date="2004-11-12">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании sendfile, если передаваемый файл менялся, то мог
|
||
произойти segmentation fault на FreeBSD;
|
||
ошибка появилась в 0.1.5.
|
||
</para>
|
||
<para lang="en">
|
||
on FreeBSD the segmentation fault may occur if the size of the transferred
|
||
file was changed;
|
||
the bug had appeared in 0.1.5.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.6" date="2004-11-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при некоторых комбинациях директив location c регулярными выражениями
|
||
использовалась конфигурация не из того location.
|
||
</para>
|
||
<para lang="en">
|
||
some location directive combinations with the regular expressions caused
|
||
the wrong configuration choose.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.5" date="2004-11-11">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на Solaris и Linux могло быть очень много сообщений "recvmsg() returned
|
||
not enough data".
|
||
</para>
|
||
<para lang="en">
|
||
on Solaris and Linux there may be too many "recvmsg() returned not enough data"
|
||
alerts.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в режиме прокси без использования sendfile на Solaris возникала
|
||
ошибка "writev() failed <nobr>(22: Invalid argument)".</nobr>
|
||
На других платформах, не поддерживающих sendfile, процесс зацикливался.
|
||
</para>
|
||
<para lang="en">
|
||
there were the "writev() failed <nobr>(22: Invalid argument)"</nobr> errors on
|
||
Solaris in proxy mode without sendfile. On other platforms that do not
|
||
support sendfile at all the process got caught in an endless loop.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании sendfile в режиме прокси на Solaris возникал
|
||
segmentation fault.
|
||
</para>
|
||
<para lang="en">
|
||
segmentation fault on Solaris in proxy mode and using sendfile.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
segmentation fault на Solaris.
|
||
</para>
|
||
<para lang="en">
|
||
segmentation fault on Solaris.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
обновление исполняемого файла на лету не работало на Linux.
|
||
</para>
|
||
<para lang="en">
|
||
on-line upgrade did not work on Linux.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
в списке файлов, выдаваемом модулем ngx_http_autoindex_module,
|
||
не перекодировались пробелы, кавычки и знаки процента.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_autoindex_module module did not escape the spaces,
|
||
the quotes, and the percent signs in the directory listing.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="change">
|
||
<para lang="ru">
|
||
уменьшение операций копирования.
|
||
</para>
|
||
<para lang="en">
|
||
the decrease of the copy operations.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива userid_p3p.
|
||
</para>
|
||
<para lang="en">
|
||
the userid_p3p directive.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.4" date="2004-10-26">
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибка в модуле ngx_http_autoindex_module.
|
||
</para>
|
||
<para lang="en">
|
||
in the ngx_http_autoindex_module.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.3" date="2004-10-25">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
модуль ngx_http_autoindex_module и директива autoindex.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_autoindex_module and the autoindex directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива proxy_set_x_url.
|
||
</para>
|
||
<para lang="en">
|
||
the proxy_set_x_url directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль проксировании мог привести к зацикливанию, если не использовался
|
||
sendfile.
|
||
</para>
|
||
<para lang="en">
|
||
proxy module may get caught in an endless loop when sendfile is not used.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.2" date="2004-10-21">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
параметры --user=USER, --group=GROUP и --with-ld-opt=OPTIONS в configure.
|
||
</para>
|
||
<para lang="en">
|
||
the --user=USER, --group=GROUP, and --with-ld-opt=OPTIONS options in configure.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива server_name поддерживает *.domain.tld.
|
||
</para>
|
||
<para lang="en">
|
||
the server_name directive supports *.domain.tld.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
улучшена переносимость на неизвестные платформы.
|
||
</para>
|
||
<para lang="en">
|
||
the portability improvements.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
нельзя переконфигурировать nginx, если конфигурационный файл указан
|
||
в командной строке;
|
||
ошибка появилась в 0.1.1.
|
||
</para>
|
||
<para lang="en">
|
||
if configuration file was set in command line, the reconfiguration
|
||
was impossible;
|
||
the bug had appeared in 0.1.1.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль проксировании мог привести к зацикливанию, если не использовался
|
||
sendfile.
|
||
</para>
|
||
<para lang="en">
|
||
proxy module may get caught in an endless loop when sendfile is not used.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при использовании sendfile текст ответа не перекодировался
|
||
согласно директивам модуля charset;
|
||
ошибка появилась в 0.1.1.
|
||
</para>
|
||
<para lang="en">
|
||
with sendfile the response was not recoded according to the charset
|
||
module directives;
|
||
the bug had appeared in 0.1.1.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
очень редкая ошибка при обработке kqueue.
|
||
</para>
|
||
<para lang="en">
|
||
very seldom bug in the kqueue processing.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
модуль сжатия сжимал уже сжатые ответы, полученные при проксировании.
|
||
</para>
|
||
<para lang="en">
|
||
the gzip module compressed the proxied responses that was already compressed.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.1" date="2004-10-11">
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива gzip_types.
|
||
</para>
|
||
<para lang="en">
|
||
the gzip_types directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива tcp_nodelay.
|
||
</para>
|
||
<para lang="en">
|
||
the tcp_nodelay directive.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
директива send_lowat работает не только на платформах, поддерживающих
|
||
kqueue NOTE_LOWAT, но и на всех, поддерживающих SO_SNDLOWAT.
|
||
</para>
|
||
<para lang="en">
|
||
the send_lowat directive is working not only on OSes that support
|
||
kqueue NOTE_LOWAT, but also on OSes that support SO_SNDLOWAT.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="feature">
|
||
<para lang="ru">
|
||
эмуляция setproctitle() для Linux и Solaris.
|
||
</para>
|
||
<para lang="en">
|
||
the setproctitle() emulation for Linux and Solaris.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибка при переписывании заголовка "Location" при проксировании.
|
||
</para>
|
||
<para lang="en">
|
||
the "Location" header rewrite bug fixed while the proxying.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибка в модуле ngx_http_chunked_module, приводившая к зацикливанию.
|
||
</para>
|
||
<para lang="en">
|
||
the ngx_http_chunked_module module may get caught in an endless loop.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
ошибки в модуле /dev/poll.
|
||
</para>
|
||
<para lang="en">
|
||
the /dev/poll module bugs fixed.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
при проксировании и использовании временных файлов ответы портились.
|
||
</para>
|
||
<para lang="en">
|
||
the responses were corrupted when the temporary files were used
|
||
while the proxying.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
бэкенду передавались запросы с неперекодированными символами.
|
||
</para>
|
||
<para lang="en">
|
||
the unescaped requests were passed to the backend.
|
||
</para>
|
||
</change>
|
||
|
||
<change type="bugfix">
|
||
<para lang="ru">
|
||
на Linux 2.4 при конфигурации сборки нужно было обязательно использовать
|
||
параметр --with-poll_module.
|
||
</para>
|
||
<para lang="en">
|
||
while the build configuration on Linux 2.4 the --with-poll_module parameter
|
||
was required.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
<changes ver="0.1.0" date="2004-10-04">
|
||
|
||
<change>
|
||
<para lang="ru">
|
||
Первая публично доступная версия.
|
||
</para>
|
||
<para lang="en">
|
||
The first public version.
|
||
</para>
|
||
</change>
|
||
|
||
</changes>
|
||
|
||
|
||
</change_log>
|