Back to home page

Nginx displayed by LXR

Source navigation ]
Diff markup ]
Identifier search ]
general search ]
 
 
Version: nginx-1.15.12 ]​[ nginx-1.16.0 ]​

0001 
0002 Изменения в nginx 1.16.0                                          23.04.2019
0003 
0004     *) Стабильная ветка 1.16.x.
0005 
0006 
0007 Изменения в nginx 1.15.12                                         16.04.2019
0008 
0009     *) Исправление: в рабочем процессе мог произойти segmentation fault,
0010        если в директивах ssl_certificate или ssl_certificate_key
0011        использовались переменные и был включён OCSP stapling.
0012 
0013 
0014 Изменения в nginx 1.15.11                                         09.04.2019
0015 
0016     *) Исправление: в директиве ssl_stapling_file на Windows.
0017 
0018 
0019 Изменения в nginx 1.15.10                                         26.03.2019
0020 
0021     *) Изменение: теперь при использовании имени хоста в директиве listen
0022        nginx создаёт listen-сокеты для всех адресов, соответствующих этому
0023        имени (ранее использовался только первый адрес).
0024 
0025     *) Добавление: диапазоны портов в директиве listen.
0026 
0027     *) Добавление: возможность загрузки SSL-сертификатов и секретных ключей
0028        из переменных.
0029 
0030     *) Изменение: переменная $ssl_server_name могла быть пустой при
0031        использовании OpenSSL 1.1.1.
0032 
0033     *) Исправление: nginx/Windows не собирался с Visual Studio 2015 и новее;
0034        ошибка появилась в 1.15.9.
0035 
0036 
0037 Изменения в nginx 1.15.9                                          26.02.2019
0038 
0039     *) Добавление: директивы ssl_certificate и ssl_certificate_key
0040        поддерживают переменные.
0041 
0042     *) Добавление: метод poll теперь доступен на Windows при использовании
0043        Windows Vista и новее.
0044 
0045     *) Исправление: если при использовании метода select на Windows
0046        происходила ошибка при установлении соединения с бэкендом, nginx
0047        ожидал истечения таймаута на установление соединения.
0048 
0049     *) Исправление: директивы proxy_upload_rate и proxy_download_rate в
0050        модуле stream работали некорректно при проксировании UDP-пакетов.
0051 
0052 
0053 Изменения в nginx 1.15.8                                          25.12.2018
0054 
0055     *) Добавление: переменная $upstream_bytes_sent.
0056        Спасибо Piotr Sikora.
0057 
0058     *) Добавление: новые директивы в скриптах подсветки синтаксиса для vim.
0059        Спасибо Геннадию Махомеду.
0060 
0061     *) Исправление: в директиве proxy_cache_background_update.
0062 
0063     *) Исправление: в директиве geo при использовании unix domain
0064        listen-сокетов.
0065 
0066     *) Изменение: при использовании директивы ssl_early_data с OpenSSL в
0067        логах могли появляться сообщения "ignoring stale global SSL error ...
0068        bad length".
0069 
0070     *) Исправление: в nginx/Windows.
0071 
0072     *) Исправление: в модуле ngx_http_autoindex_module на 32-битных
0073        платформах.
0074 
0075 
0076 Изменения в nginx 1.15.7                                          27.11.2018
0077 
0078     *) Добавление: директива proxy_requests в модуле stream.
0079 
0080     *) Добавление: параметр "delay" директивы "limit_req".
0081        Спасибо Владиславу Шабанову и Петру Щучкину.
0082 
0083     *) Исправление: утечки памяти в случае ошибок при переконфигурации.
0084 
0085     *) Исправление: в переменных $upstream_response_time,
0086        $upstream_connect_time и $upstream_header_time.
0087 
0088     *) Исправление: в рабочем процессе мог произойти segmentation fault,
0089        если использовался модуль ngx_http_mp4_module на 32-битных
0090        платформах.
0091 
0092 
0093 Изменения в nginx 1.15.6                                          06.11.2018
0094 
0095     *) Безопасность: при использовании HTTP/2 клиент мог вызвать чрезмерное
0096        потреблению памяти (CVE-2018-16843) и ресурсов процессора
0097        (CVE-2018-16844).
0098 
0099     *) Безопасность: при обработке специально созданного mp4-файла модулем
0100        ngx_http_mp4_module содержимое памяти рабочего процесса могло быть
0101        отправлено клиенту (CVE-2018-16845).
0102 
0103     *) Добавление: директивы proxy_socket_keepalive,
0104        fastcgi_socket_keepalive, grpc_socket_keepalive,
0105        memcached_socket_keepalive, scgi_socket_keepalive и
0106        uwsgi_socket_keepalive.
0107 
0108     *) Исправление: если nginx был собран с OpenSSL 1.1.0, а использовался с
0109        OpenSSL 1.1.1, протокол TLS 1.3 всегда был разрешён.
0110 
0111     *) Исправление: при работе с gRPC-бэкендами могло расходоваться большое
0112        количество памяти.
0113 
0114 
0115 Изменения в nginx 1.15.5                                          02.10.2018
0116 
0117     *) Исправление: при использовании OpenSSL 1.1.0h и новее в рабочем
0118        процессе мог произойти segmentation fault; ошибка появилась в 1.15.4.
0119 
0120     *) Исправление: незначительных потенциальных ошибок.
0121 
0122 
0123 Изменения в nginx 1.15.4                                          25.09.2018
0124 
0125     *) Добавление: теперь директиву ssl_early_data можно использовать с
0126        OpenSSL.
0127 
0128     *) Исправление: в модуле ngx_http_uwsgi_module.
0129        Спасибо Chris Caputo.
0130 
0131     *) Исправление: соединения к некоторым gRPC-бэкендам могли не
0132        кэшироваться при использовании директивы keepalive.
0133 
0134     *) Исправление: при использовании директивы error_page для
0135        перенаправления ошибок, возникающих на ранних этапах обработки
0136        запроса, в частности ошибок с кодом 400, могла происходить утечка
0137        сокетов.
0138 
0139     *) Исправление: директива return при возврате ошибок не изменяла код
0140        ответа, если запрос был перенаправлен с помощью директивы error_page.
0141 
0142     *) Исправление: стандартные сообщения об ошибках и ответы модуля
0143        ngx_http_autoindex_module содержали атрибут bgcolor, что могло
0144        приводить к их некорректному отображению при использовании
0145        пользовательских настроек цветов в браузерах.
0146        Спасибо Nova DasSarma.
0147 
0148     *) Изменение: уровень логгирования ошибок SSL "no suitable key share" и
0149        "no suitable signature algorithm" понижен с уровня crit до info.
0150 
0151 
0152 Изменения в nginx 1.15.3                                          28.08.2018
0153 
0154     *) Добавление: теперь TLSv1.3 можно использовать с BoringSSL.
0155 
0156     *) Добавление: директива ssl_early_data, сейчас доступна при
0157        использовании BoringSSL.
0158 
0159     *) Добавление: директивы keepalive_timeout и keepalive_requests в блоке
0160        upstream.
0161 
0162     *) Исправление: модуль ngx_http_dav_module при копировании файла поверх
0163        существующего файла с помощью метода COPY не обнулял целевой файл.
0164 
0165     *) Исправление: модуль ngx_http_dav_module при перемещении файла между
0166        файловыми системами с помощью метода MOVE устанавливал нулевые права
0167        доступа на результирующий файл и не сохранял время изменения файла.
0168 
0169     *) Исправление: модуль ngx_http_dav_module при копировании файла с
0170        помощью метода COPY для результирующего файла использовал права
0171        доступа по умолчанию.
0172 
0173     *) Изменение: некоторые клиенты могли не работать при использовании
0174        HTTP/2; ошибка появилась в 1.13.5.
0175 
0176     *) Исправление: nginx не собирался с LibreSSL 2.8.0.
0177 
0178 
0179 Изменения в nginx 1.15.2                                          24.07.2018
0180 
0181     *) Добавление: переменная $ssl_preread_protocol в модуле
0182        ngx_stream_ssl_preread_module.
0183 
0184     *) Добавление: теперь при использовании директивы
0185        reset_timedout_connection nginx сбрасывает соединения, закрываемые с
0186        кодом 444.
0187 
0188     *) Изменение: уровень логгирования ошибок SSL "http request", "https
0189        proxy request", "unsupported protocol" и "version too low" понижен с
0190        уровня crit до info.
0191 
0192     *) Исправление: запросы к DNS-серверу не отправлялись повторно, если при
0193        первой попытке отправки происходила ошибка.
0194 
0195     *) Исправление: параметр reuseport директивы listen игнорировался, если
0196        количество рабочих процессов было задано после директивы listen.
0197 
0198     *) Исправление: при использовании OpenSSL 1.1.0 и новее директиву
0199        ssl_prefer_server_ciphers нельзя было выключить в виртуальном
0200        сервере, если она была включена в сервере по умолчанию.
0201 
0202     *) Исправление: повторное использование SSL-сессий к бэкендам не
0203        работало с протоколом TLS 1.3.
0204 
0205 
0206 Изменения в nginx 1.15.1                                          03.07.2018
0207 
0208     *) Добавление: директива random в блоке upstream.
0209 
0210     *) Добавление: улучшена производительность при использовании директив
0211        hash и ip_hash совместно с директивой zone.
0212 
0213     *) Добавление: параметр reuseport директивы listen теперь использует
0214        SO_REUSEPORT_LB на FreeBSD 12.
0215 
0216     *) Исправление: HTTP/2 server push не работал, если SSL терминировался
0217        прокси-сервером перед nginx'ом.
0218 
0219     *) Исправление: директива tcp_nopush всегда использовалась для
0220        соединений к бэкендам.
0221 
0222     *) Исправление: при отправке сохранённого на диск тела запроса на
0223        gRPC-бэкенд могли возникать ошибки.
0224 
0225 
0226 Изменения в nginx 1.15.0                                          05.06.2018
0227 
0228     *) Изменение: директива "ssl" теперь считается устаревшей; вместо неё
0229        следует использовать параметр ssl директивы listen.
0230 
0231     *) Изменение: теперь при использовании директивы listen с параметром ssl
0232        nginx определяет отсутствие SSL-сертификатов при тестировании
0233        конфигурации.
0234 
0235     *) Добавление: теперь модуль stream умеет обрабатывать несколько
0236        входящих UDP-пакетов от клиента в рамках одной сессии.
0237 
0238     *) Исправление: в директиве proxy_cache_valid можно было указать
0239        некорректный код ответа.
0240 
0241     *) Исправление: nginx не собирался gcc 8.1.
0242 
0243     *) Исправление: логгирование в syslog останавливалось при изменении
0244        локального IP-адреса.
0245 
0246     *) Исправление: nginx не собирался компилятором clang, если был
0247        установлен CUDA SDK; ошибка появилась в 1.13.8.
0248 
0249     *) Исправление: при использовании unix domain listen-сокетов на FreeBSD
0250        в процессе обновления исполняемого файла в логе могли появляться
0251        сообщения "getsockopt(TCP_FASTOPEN) ... failed".
0252 
0253     *) Исправление: nginx не собирался на Fedora 28 Linux.
0254 
0255     *) Исправление: при использовании директивы limit_req заданная скорость
0256        обработки запросов могла не соблюдаться.
0257 
0258     *) Исправление: в обработке адресов клиентов при использовании unix
0259        domain listen-сокетов для работы с датаграммами на Linux.
0260 
0261     *) Исправление: в обработке ошибок выделения памяти.
0262 
0263 
0264 Изменения в nginx 1.13.12                                         10.04.2018
0265 
0266     *) Исправление: при возврате большого ответа соединения с gRPC-бэкендами
0267        могли неожиданно закрываться.
0268 
0269 
0270 Изменения в nginx 1.13.11                                         03.04.2018
0271 
0272     *) Добавление: параметр proxy_protocol директивы listen теперь
0273        поддерживает протокол PROXY версии 2.
0274 
0275     *) Исправление: nginx не собирался с OpenSSL 1.1.1 статически на Linux.
0276 
0277     *) Исправление: в параметрах http_404, http_500 и им подобных директивы
0278        proxy_next_upstream.
0279 
0280 
0281 Изменения в nginx 1.13.10                                         20.03.2018
0282 
0283     *) Добавление: теперь параметр set в SSI-директиве include позволяет
0284        сохранять в переменную любые ответы; максимальный размер ответа
0285        задаётся директивой subrequest_output_buffer_size.
0286 
0287     *) Добавление: теперь nginx использует вызов
0288        clock_gettime(CLOCK_MONOTONIC), если он доступен, что позволяет
0289        избежать некорректного срабатывания таймаутов при изменениях
0290        системного времени.
0291 
0292     *) Добавление: параметр "escape=none" директивы log_format.
0293        Спасибо Johannes Baiter и Calin Don.
0294 
0295     *) Добавление: переменная $ssl_preread_alpn_protocols в модуле
0296        ngx_stream_ssl_preread_module.
0297 
0298     *) Добавление: модуль ngx_http_grpc_module.
0299 
0300     *) Исправление: в обработке ошибок выделения памяти в директиве geo.
0301 
0302     *) Исправление: при использовании переменных в директиве
0303        auth_basic_user_file в лог мог выводиться символ '\0'.
0304        Спасибо Вадиму Филимонову.
0305 
0306 
0307 Изменения в nginx 1.13.9                                          20.02.2018
0308 
0309     *) Добавление: поддержка HTTP/2 server push; директивы http2_push и
0310        http2_push_preload.
0311 
0312     *) Исправление: при использовании кэша в логах могли появляться
0313        сообщения "header already sent"; ошибка появилась в 1.9.13.
0314 
0315     *) Исправление: при использовании директивы ssl_verify_client в рабочем
0316        процессе мог произойти segmentation fault, если в виртуальном сервере
0317        не был указан SSL-сертификат.
0318 
0319     *) Исправление: в модуле ngx_http_v2_module.
0320 
0321     *) Исправление: в модуле ngx_http_dav_module.
0322 
0323 
0324 Изменения в nginx 1.13.8                                          26.12.2017
0325 
0326     *) Добавление: теперь при использовании параметра transparent директив
0327        proxy_bind, fastcgi_bind, memcached_bind, scgi_bind и uwsgi_bind
0328        nginx автоматически сохраняет capability CAP_NET_RAW в рабочих
0329        процессах.
0330 
0331     *) Добавление: улучшения в определении размера строки кэша процессора.
0332        Спасибо Debayan Ghosh.
0333 
0334     *) Добавление: новые директивы в скриптах подсветки синтаксиса для vim.
0335        Спасибо Геннадию Махомеду.
0336 
0337     *) Исправление: процедура обновления исполняемого файла не работала,
0338        если после завершения родительского процесса новым родительским
0339        процессом nginx'а становился процесс с PID, отличным от 1.
0340 
0341     *) Исправление: модуль ngx_http_autoindex_module неправильно обрабатывал
0342        запросы с телом.
0343 
0344     *) Исправление: в директиве proxy_limit_rate при использовании с
0345        директивой keepalive.
0346 
0347     *) Исправление: при использовании "proxy_buffering off" часть ответа
0348        могла буферизироваться, если клиентское соединение использовало SSL.
0349        Спасибо Patryk Lesiewicz.
0350 
0351     *) Исправление: в директиве proxy_cache_background_update.
0352 
0353     *) Исправление: переменную вида "${name}" с именем в фигурных скобках
0354        нельзя было использовать в начале параметра не заключив весь параметр
0355        в кавычки.
0356 
0357 
0358 Изменения в nginx 1.13.7                                          21.11.2017
0359 
0360     *) Исправление: в переменной $upstream_status.
0361 
0362     *) Исправление: в рабочем процессе мог произойти segmentation fault,
0363        если бэкенд возвращал ответ "101 Switching Protocols" на подзапрос.
0364 
0365     *) Исправление: если при переконфигурации изменялся размер зоны
0366        разделяемой памяти и переконфигурация завершалась неудачно, то в
0367        главном процессе происходил segmentation fault.
0368 
0369     *) Исправление: в модуле ngx_http_fastcgi_module.
0370 
0371     *) Исправление: nginx возвращал ошибку 500, если в директиве
0372        xslt_stylesheet были заданы параметры без использования переменных.
0373 
0374     *) Изменение: при использовании варианта библиотеки zlib от Intel в лог
0375        писались сообщения "gzip filter failed to use preallocated memory".
0376 
0377     *) Исправление: директива worker_shutdown_timeout не работала при
0378        использовании почтового прокси-сервера и при проксировании
0379        WebSocket-соединений.
0380 
0381 
0382 Изменения в nginx 1.13.6                                          10.10.2017
0383 
0384     *) Исправление: при использовании директивы ssl_preread в модуле stream
0385        не работало переключение на следующий бэкенд.
0386 
0387     *) Исправление: в модуле ngx_http_v2_module.
0388        Спасибо Piotr Sikora.
0389 
0390     *) Исправление: nginx не поддерживал даты после 2038 года на 32-битных
0391        платформах с 64-битным time_t.
0392 
0393     *) Исправление: в обработке дат до 1970 года и после 10000 года.
0394 
0395     *) Исправление: в модуле stream таймауты ожидания UDP-пакетов от
0396        бэкендов не логгировались или логгировались на уровне info вместо
0397        error.
0398 
0399     *) Исправление: при использовании HTTP/2 nginx мог вернуть ошибку 400,
0400        не указав в логе причину.
0401 
0402     *) Исправление: в обработке повреждённых файлов кэша.
0403 
0404     *) Исправление: при кэшировании ошибок, перехваченных error_page, не
0405        учитывались заголовки управления кэшированием.
0406 
0407     *) Исправление: при использовании HTTP/2 тело запроса могло быть
0408        повреждено.
0409 
0410     *) Исправление: в обработке адресов клиентов при использовании unix
0411        domain сокетов.
0412 
0413     *) Исправление: при использовании директивы "hash ... consistent" в
0414        блоке upstream nginx нагружал процессор, если использовались большие
0415        веса и все или почти все бэкенды были недоступны.
0416 
0417 
0418 Изменения в nginx 1.13.5                                          05.09.2017
0419 
0420     *) Добавление: переменная $ssl_client_escaped_cert.
0421 
0422     *) Исправление: директива ssl_session_ticket_key и параметр include
0423        директивы geo не работали на Windows.
0424 
0425     *) Исправление: на 32-битных платформах при запросе более 4 гигабайт с
0426        помощью нескольких диапазонов возвращалась некорректная длина ответа.
0427 
0428     *) Исправление: директива "expires modified" и обработка строки If-Range
0429        заголовка запроса не учитывали время последнего изменения ответа,
0430        если использовалось проксирование без кэширования.
0431 
0432 
0433 Изменения в nginx 1.13.4                                          08.08.2017
0434 
0435     *) Добавление: модуль ngx_http_mirror_module.
0436 
0437     *) Исправление: клиентские соединения могли сбрасываться при
0438        тестировании конфигурации, если использовался параметр reuseport
0439        директивы listen на Linux.
0440 
0441     *) Исправление: тело запроса могло быть недоступно в подзапросах, если
0442        оно было сохранено в файл и использовалось проксирование.
0443 
0444     *) Исправление: очистка кэша по max_size не работала на Windows.
0445 
0446     *) Исправление: любое выделение разделяемой памяти на Windows требовало
0447        4096 байт памяти.
0448 
0449     *) Исправление: при использовании директивы zone в блоке upstream на
0450        Windows рабочий процесс мог завершаться аварийно.
0451 
0452 
0453 Изменения в nginx 1.13.3                                          11.07.2017
0454 
0455     *) Безопасность: специально созданный запрос мог вызвать целочисленное
0456        переполнение в range-фильтре и последующую некорректную обработку
0457        запрошенных диапазонов, что потенциально могло привести к утечке
0458        конфиденциальной информации (CVE-2017-7529).
0459 
0460 
0461 Изменения в nginx 1.13.2                                          27.06.2017
0462 
0463     *) Изменение: теперь при запросе диапазона, начинающегося с 0, из
0464        пустого файла nginx возвращает ответ 200 вместо 416.
0465 
0466     *) Добавление: директива add_trailer.
0467        Спасибо Piotr Sikora.
0468 
0469     *) Исправление: nginx не собирался под Cygwin и NetBSD; ошибка появилась
0470        в 1.13.0.
0471 
0472     *) Исправление: nginx не собирался под MSYS2 / MinGW 64-bit.
0473        Спасибо Orgad Shaneh.
0474 
0475     *) Исправление: при использовании SSI с большим количеством подзапросов
0476        и proxy_pass с переменными в рабочем процессе мог произойти
0477        segmentation fault.
0478 
0479     *) Исправление: в модуле ngx_http_v2_module.
0480        Спасибо Piotr Sikora.
0481 
0482 
0483 Изменения в nginx 1.13.1                                          30.05.2017
0484 
0485     *) Добавление: теперь в качестве параметра директивы set_real_ip_from
0486        можно указывать имя хоста.
0487 
0488     *) Добавление: улучшения в скриптах подсветки синтаксиса для vim.
0489 
0490     *) Добавление: директива worker_cpu_affinity теперь работает на
0491        DragonFly BSD.
0492        Спасибо Sepherosa Ziehau.
0493 
0494     *) Исправление: SSL renegotiation в соединениях к бэкендам не работал
0495        при использовании OpenSSL до 1.1.0.
0496 
0497     *) Изменение: nginx не собирался с Oracle Developer Studio 12.5.
0498 
0499     *) Изменение: теперь cache manager пропускает заблокированные записи при
0500        очистке кэша по max_size.
0501 
0502     *) Исправление: клиентские SSL-соединения сразу закрывались, если
0503        использовался отложенный accept и параметр proxy_protocol директивы
0504        listen.
0505 
0506     *) Исправление: в директиве proxy_cache_background_update.
0507 
0508     *) Изменение: теперь директива tcp_nodelay устанавливает опцию
0509        TCP_NODELAY перед SSL handshake.
0510 
0511 
0512 Изменения в nginx 1.13.0                                          25.04.2017
0513 
0514     *) Изменение: теперь SSL renegotiation допускается в соединениях к
0515        бэкендам.
0516 
0517     *) Добавление: параметры rcvbuf и sndbuf директив listen в почтовом
0518        прокси-сервере и модуле stream.
0519 
0520     *) Добавление: директивы return и error_page теперь могут использоваться
0521        для возврата перенаправлений с кодом 308.
0522        Спасибо Simon Leblanc.
0523 
0524     *) Добавление: параметр TLSv1.3 в директиве ssl_protocols.
0525 
0526     *) Добавление: при логгировании сигналов теперь указывается PID
0527        отправившего сигнал процесса.
0528 
0529     *) Исправление: в обработке ошибок выделения памяти.
0530 
0531     *) Исправление: если сервер в модуле stream слушал на wildcard-адресе,
0532        исходящий адрес ответного UDP-пакета мог отличаться от адреса
0533        назначения исходного пакета.
0534 
0535 
0536 Изменения в nginx 1.11.13                                         04.04.2017
0537 
0538     *) Добавление: параметр http_429 в директивах proxy_next_upstream,
0539        fastcgi_next_upstream, scgi_next_upstream и uwsgi_next_upstream.
0540        Спасибо Piotr Sikora.
0541 
0542     *) Исправление: в обработке ошибок выделения памяти.
0543 
0544     *) Исправление: при использовании директив sendfile и timer_resolution
0545        на Linux запросы могли зависать.
0546 
0547     *) Исправление: при использовании с подзапросами директив sendfile и
0548        aio_write запросы могли зависать.
0549 
0550     *) Исправление: в модуле ngx_http_v2_module.
0551        Спасибо Piotr Sikora.
0552 
0553     *) Исправление: при использовании HTTP/2 в рабочем процессе мог
0554        произойти segmentation fault.
0555 
0556     *) Исправление: запросы могли зависать при использовании с подзапросами
0557        директив limit_rate, sendfile_max_chunk, limit_req или метода
0558        $r->sleep() встроенного перла.
0559 
0560     *) Исправление: в модуле ngx_http_slice_module.
0561 
0562 
0563 Изменения в nginx 1.11.12                                         24.03.2017
0564 
0565     *) Исправление: nginx мог нагружать процессор; ошибка появилась в
0566        1.11.11.
0567 
0568 
0569 Изменения в nginx 1.11.11                                         21.03.2017
0570 
0571     *) Добавление: директива worker_shutdown_timeout.
0572 
0573     *) Добавление: улучшения в скриптах подсветки синтаксиса для vim.
0574        Спасибо Wei-Ko Kao.
0575 
0576     *) Исправление: при попытке установить переменную $limit_rate в пустую
0577        строку в рабочем процессе мог произойти segmentation fault.
0578 
0579     *) Исправление: директивы proxy_cache_background_update,
0580        fastcgi_cache_background_update, scgi_cache_background_update и
0581        uwsgi_cache_background_update могли работать некорректно, если
0582        использовалась директива if.
0583 
0584     *) Исправление: в рабочем процессе мог произойти segmentation fault,
0585        если количество large_client_header_buffers в виртуальном сервере
0586        отличалось от такового в сервере по умолчанию.
0587 
0588     *) Исправление: в почтовом прокси-сервере.
0589 
0590 
0591 Изменения в nginx 1.11.10                                         14.02.2017
0592 
0593     *) Изменение: формат заголовка кэша был изменен, ранее закэшированные
0594        ответы будут загружены заново.
0595 
0596     *) Добавление: поддержка расширений stale-while-revalidate и
0597        stale-if-error в строке "Cache-Control" в заголовке ответа бэкенда.
0598 
0599     *) Добавление: директивы proxy_cache_background_update,
0600        fastcgi_cache_background_update, scgi_cache_background_update и
0601        uwsgi_cache_background_update.
0602 
0603     *) Добавление: теперь nginx может кэшировать ответы со строкой Vary
0604        заголовка длиной до 128 символов (вместо 42 символов в предыдущих
0605        версиях).
0606 
0607     *) Добавление: параметр build директивы server_tokens.
0608        Спасибо Tom Thorogood.
0609 
0610     *) Исправление: при обработке запросов со строкой "Expect: 100-continue"
0611        в заголовке запроса в логах могли появляться сообщения "[crit]
0612        SSL_write() failed".
0613 
0614     *) Исправление: модуль ngx_http_slice_module не работал в именованных
0615        location'ах.
0616 
0617     *) Исправление: при использовании AIO после перенаправления запроса с
0618        помощью X-Accel-Redirect в рабочем процессе мог произойти
0619        segmentation fault.
0620 
0621     *) Исправление: уменьшено потребление памяти для долгоживущих запросов,
0622        использующих сжатие.
0623 
0624 
0625 Изменения в nginx 1.11.9                                          24.01.2017
0626 
0627     *) Исправление: при использовании модуля stream nginx мог нагружать
0628        процессор; ошибка появилась в 1.11.5.
0629 
0630     *) Исправление: метод аутентификации EXTERNAL в почтовом прокси-сервере
0631        можно было использовать, даже если он не был разрешён в конфигурации.
0632 
0633     *) Исправление: при использовании директивы ssl_verify_client модуля
0634        stream в рабочем процессе мог произойти segmentation fault.
0635 
0636     *) Исправление: директива ssl_verify_client модуля stream могла не
0637        работать.
0638 
0639     *) Исправление: при исчерпании рабочим процессом свободных соединений
0640        keepalive-соединения могли закрываться излишне агрессивно.
0641        Спасибо Joel Cunningham.
0642 
0643     *) Исправление: при использовании директивы sendfile на FreeBSD и macOS
0644        мог возвращаться некорректный ответ; ошибка появилась в 1.7.8.
0645 
0646     *) Исправление: при использовании директивы aio_write ответ мог
0647        сохраняться в кэш не полностью.
0648 
0649     *) Исправление: при использовании директивы aio_write могла происходить
0650        утечка сокетов.
0651 
0652 
0653 Изменения в nginx 1.11.8                                          27.12.2016
0654 
0655     *) Добавление: директива absolute_redirect.
0656 
0657     *) Добавление: параметр escape директивы log_format.
0658 
0659     *) Добавление: проверка клиентских SSL-сертификатов в модуле stream.
0660 
0661     *) Добавление: директива ssl_session_ticket_key поддерживает шифрование
0662        TLS session tickets с помощью AES256 при использовании с 80-байтными
0663        ключами.
0664 
0665     *) Добавление: поддержка vim-commentary в скриптах для vim.
0666        Спасибо Armin Grodon.
0667 
0668     *) Исправление: рекурсия при получении значений переменных не
0669        ограничивалась.
0670 
0671     *) Исправление: в модуле ngx_stream_ssl_preread_module.
0672 
0673     *) Исправление: если сервер, описанный в блоке upstream в модуле stream,
0674        был признан неработающим, то после истечения fail_timeout он
0675        признавался работающим только после завершения тестового соединения;
0676        теперь достаточно, чтобы соединение было успешно установлено.
0677 
0678     *) Исправление: nginx/Windows не собирался с 64-битным Visual Studio.
0679 
0680     *) Исправление: nginx/Windows не собирался с OpenSSL 1.1.0.
0681 
0682 
0683 Изменения в nginx 1.11.7                                          13.12.2016
0684 
0685     *) Изменение: переменная $ssl_client_verify теперь в случае ошибки
0686        проверки клиентского сертификата содержит строку с описанием ошибки,
0687        например, "FAILED:certificate has expired".
0688 
0689     *) Добавление: переменные $ssl_ciphers, $ssl_curves,
0690        $ssl_client_v_start, $ssl_client_v_end и $ssl_client_v_remain.
0691 
0692     *) Добавление: параметр volatile директивы map.
0693 
0694     *) Исправление: при сборке динамических модулей не учитывались заданные
0695        для модуля зависимости.
0696 
0697     *) Исправление: при использовании HTTP/2 и директив limit_req или
0698        auth_request тело запроса могло быть повреждено; ошибка появилась в
0699        1.11.0.
0700 
0701     *) Исправление: при использовании HTTP/2 в рабочем процессе мог
0702        произойти segmentation fault; ошибка появилась в 1.11.3.
0703 
0704     *) Исправление: в модуле ngx_http_mp4_module.
0705        Спасибо Congcong Hu.
0706 
0707     *) Исправление: в модуле ngx_http_perl_module.
0708 
0709 
0710 Изменения в nginx 1.11.6                                          15.11.2016
0711 
0712     *) Изменение: формат переменных $ssl_client_s_dn и $ssl_client_i_dn
0713        изменён на соответствующий RFC 2253 (RFC 4514); значения в старом
0714        формате доступны через переменные $ssl_client_s_dn_legacy и
0715        $ssl_client_i_dn_legacy.
0716 
0717     *) Изменение: при сохранении временных файлов в каталоге кэша они теперь
0718        располагаются не в отдельном подкаталоге для временных файлов, а в
0719        том же подкаталоге, что и соответствующие файлы в кэше.
0720 
0721     *) Добавление: поддержка метода аутентификации EXTERNAL в почтовом
0722        прокси-сервере.
0723        Спасибо Robert Norris.
0724 
0725     *) Добавление: поддержка WebP в модуле ngx_http_image_filter_module.
0726 
0727     *) Добавление: директива proxy_method поддерживает переменные.
0728        Спасибо Дмитрию Лазуркину.
0729 
0730     *) Добавление: директива http2_max_requests в модуле ngx_http_v2_module.
0731 
0732     *) Добавление: директивы proxy_cache_max_range_offset,
0733        fastcgi_cache_max_range_offset, scgi_cache_max_range_offset и
0734        uwsgi_cache_max_range_offset.
0735 
0736     *) Исправление: плавное завершение старых рабочих процессов могло
0737        занимать бесконечное время при использовании HTTP/2.
0738 
0739     *) Исправление: в модуле ngx_http_mp4_module.
0740 
0741     *) Исправление: при проксировании WebSocket-соединений и включённом
0742        кэшировании в логах могли появляться сообщения "ignore long locked
0743        inactive cache entry".
0744 
0745     *) Исправление: если во время SSL handshake с бэкендом происходил
0746        таймаут, nginx ничего не писал в лог и возвращал ответ с кодом 502
0747        вместо 504.
0748 
0749 
0750 Изменения в nginx 1.11.5                                          11.10.2016
0751 
0752     *) Изменение: параметр configure --with-ipv6 упразднён, поддержка IPv6
0753        теперь собирается автоматически.
0754 
0755     *) Изменение: теперь, если в блоке upstream не оказалось доступных
0756        серверов, nginx не сбрасывает статистику ошибок всех серверов, как
0757        делал ранее, а ожидает истечения fail_timeout.
0758 
0759     *) Добавление: модуль ngx_stream_ssl_preread_module.
0760 
0761     *) Добавление: директива server в блоке upstream поддерживает параметр
0762        max_conns.
0763 
0764     *) Добавление: параметр configure --with-compat.
0765 
0766     *) Добавление: параметры manager_files, manager_threshold и
0767        manager_sleep директив proxy_cache_path, fastcgi_cache_path,
0768        scgi_cache_path и uwsgi_cache_path.
0769 
0770     *) Исправление: при сборке perl-модуля не использовались флаги, заданные
0771        с помощью параметра configure --with-ld-opt.
0772 
0773     *) Исправление: в директиве add_after_body при использовании совместно с
0774        директивой sub_filter.
0775 
0776     *) Исправление: в переменной $realip_remote_addr.
0777 
0778     *) Исправление: директивы dav_access, proxy_store_access,
0779        fastcgi_store_access, scgi_store_access и uwsgi_store_access
0780        игнорировали права, заданные для пользователя.
0781 
0782     *) Исправление: unix domain listen-сокеты могли не наследоваться при
0783        обновлении исполняемого файла на Linux.
0784 
0785     *) Исправление: nginx возвращал ошибку 400 на запросы с символом "-" в
0786        HTTP-методе.
0787 
0788 
0789 Изменения в nginx 1.11.4                                          13.09.2016
0790 
0791     *) Добавление: переменная $upstream_bytes_received.
0792 
0793     *) Добавление: переменные $bytes_received, $session_time, $protocol,
0794        $status, $upstream_addr, $upstream_bytes_sent,
0795        $upstream_bytes_received, $upstream_connect_time,
0796        $upstream_first_byte_time и $upstream_session_time в модуле stream.
0797 
0798     *) Добавление: модуль ngx_stream_log_module.
0799 
0800     *) Добавление: параметр proxy_protocol в директиве listen, переменные
0801        $proxy_protocol_addr и $proxy_protocol_port в модуле stream.
0802 
0803     *) Добавление: модуль ngx_stream_realip_module.
0804 
0805     *) Исправление: nginx не собирался с модулем stream и модулем
0806        ngx_http_ssl_module, но без модуля ngx_stream_ssl_module; ошибка
0807        появилась в 1.11.3.
0808 
0809     *) Добавление: опция сокета IP_BIND_ADDRESS_NO_PORT не использовалась;
0810        ошибка появилась в 1.11.2.
0811 
0812     *) Исправление: в параметре ranges директивы geo.
0813 
0814     *) Исправление: при использовании директив "aio threads" и sendfile мог
0815        возвращаться некорректный ответ; ошибка появилась в 1.9.13.
0816 
0817 
0818 Изменения в nginx 1.11.3                                          26.07.2016
0819 
0820     *) Изменение: теперь accept_mutex по умолчанию выключен.
0821 
0822     *) Добавление: теперь nginx использует EPOLLEXCLUSIVE на Linux.
0823 
0824     *) Добавление: модуль ngx_stream_geo_module.
0825 
0826     *) Добавление: модуль ngx_stream_geoip_module.
0827 
0828     *) Добавление: модуль ngx_stream_split_clients_module.
0829 
0830     *) Добавление: директивы proxy_pass и proxy_ssl_name в модуле stream
0831        поддерживают переменные.
0832 
0833     *) Исправление: утечки сокетов при использовании HTTP/2.
0834 
0835     *) Исправление: в configure.
0836        Спасибо Piotr Sikora.
0837 
0838 
0839 Изменения в nginx 1.11.2                                          05.07.2016
0840 
0841     *) Изменение: теперь nginx всегда использует внутренние реализации MD5 и
0842        SHA1; параметры configure --with-md5 и --with-sha1 упразднены.
0843 
0844     *) Добавление: поддержка переменных в модуле stream.
0845 
0846     *) Добавление: модуль ngx_stream_map_module.
0847 
0848     *) Добавление: модуль ngx_stream_return_module.
0849 
0850     *) Добавление: в директивах proxy_bind, fastcgi_bind, memcached_bind,
0851        scgi_bind и uwsgi_bind теперь можно указывать порт.
0852 
0853     *) Добавление: теперь nginx использует опцию сокета
0854        IP_BIND_ADDRESS_NO_PORT, если она доступна.
0855 
0856     *) Исправление: при использовании HTTP/2 и директивы
0857        proxy_request_buffering в рабочем процессе мог произойти segmentation
0858        fault.
0859 
0860     *) Исправление: при использовании HTTP/2 к запросам, передаваемым на
0861        бэкенд, всегда добавлялась строка заголовка "Content-Length", даже
0862        если у запроса не было тела.
0863 
0864     *) Исправление: при использовании HTTP/2 в логах могли появляться
0865        сообщения "http request count is zero".
0866 
0867     *) Исправление: при использовании директивы sub_filter могло
0868        буферизироваться больше данных, чем это необходимо; проблема
0869        появилась в 1.9.4.
0870 
0871 
0872 Изменения в nginx 1.11.1                                          31.05.2016
0873 
0874     *) Безопасность: при записи тела специально созданного запроса во
0875        временный файл в рабочем процессе мог происходить segmentation fault
0876        (CVE-2016-4450); ошибка появилась в 1.3.9.
0877 
0878 
0879 Изменения в nginx 1.11.0                                          24.05.2016
0880 
0881     *) Добавление: параметр transparent директив proxy_bind, fastcgi_bind,
0882        memcached_bind, scgi_bind и uwsgi_bind.
0883 
0884     *) Добавление: переменная $request_id.
0885 
0886     *) Добавление: директива map поддерживает комбинации нескольких
0887        переменных в качестве результирующих значений.
0888 
0889     *) Добавление: теперь при использовании метода epoll nginx проверяет,
0890        поддерживает ли ядро события EPOLLRDHUP, и соответственно
0891        оптимизирует обработку соединений.
0892 
0893     *) Добавление: директивы ssl_certificate и ssl_certificate_key теперь
0894        можно указывать несколько раз для загрузки сертификатов разных типов
0895        (например, RSA и ECDSA).
0896 
0897     *) Добавление: при использовании OpenSSL 1.0.2 и новее с помощью
0898        директивы ssl_ecdh_curve теперь можно задать список кривых; по
0899        умолчанию используется встроенный в OpenSSL список кривых.
0900 
0901     *) Изменение: для использования DHE-шифров теперь надо явно задавать
0902        файл параметров с помощью директивы ssl_dhparam.
0903 
0904     *) Добавление: переменная $proxy_protocol_port.
0905 
0906     *) Добавление: переменная $realip_remote_port в модуле
0907        ngx_http_realip_module.
0908 
0909     *) Добавление: модуль ngx_http_realip_module теперь позволяет
0910        устанавливать не только адрес, но и порт клиента.
0911 
0912     *) Изменение: при попытке запросить виртуальный сервер, отличающийся от
0913        согласованного в процессе SSL handshake, теперь возвращается ответ
0914        "421 Misdirected Request"; это улучшает совместимость с некоторыми
0915        HTTP/2-клиентами в случае использования клиентских сертификатов.
0916 
0917     *) Изменение: HTTP/2-клиенты теперь могут сразу присылать тело запроса;
0918        директива http2_body_preread_size позволяет указать размер буфера,
0919        который будет использоваться до того, как nginx начнёт читать тело.
0920 
0921     *) Исправление: при использовании директивы proxy_cache_bypass не
0922        обновлялись закэшированные ошибочные ответы.
0923 
0924 
0925 Изменения в nginx 1.9.15                                          19.04.2016
0926 
0927     *) Исправление: при использовании HHVM в качестве FastCGI-сервера могли
0928        возникать ошибки "recv() failed".
0929 
0930     *) Исправление: при использовании HTTP/2 и директив limit_req или
0931        auth_request при чтении тела запроса мог произойти таймаут или ошибка
0932        "client violated flow control"; ошибка появилась в 1.9.14.
0933 
0934     *) Изменение: при использовании HTTP/2 ответ мог не показываться
0935        некоторыми браузерами, если тело запроса было прочитано не целиком;
0936        ошибка появилась в 1.9.14.
0937 
0938     *) Исправление: при использовании директивы "aio threads" соединения
0939        могли зависать.
0940        Спасибо Mindaugas Rasiukevicius.
0941 
0942 
0943 Изменения в nginx 1.9.14                                          05.04.2016
0944 
0945     *) Добавление: совместимость с OpenSSL 1.1.0.
0946 
0947     *) Добавление: директивы proxy_request_buffering,
0948        fastcgi_request_buffering, scgi_request_buffering и
0949        uwsgi_request_buffering теперь работают при использовании HTTP/2.
0950 
0951     *) Исправление: при использовании HTTP/2 в логах могли появляться
0952        сообщения "zero size buf in output".
0953 
0954     *) Исправление: при использовании HTTP/2 директива client_max_body_size
0955        могла работать неверно.
0956 
0957     *) Исправление: незначительных ошибок логгирования.
0958 
0959 
0960 Изменения в nginx 1.9.13                                          29.03.2016
0961 
0962     *) Изменение: неидемпотентные запросы (POST, LOCK, PATCH) теперь по
0963        умолчанию не передаются на другой сервер, если запрос уже был
0964        отправлен на бэкенд; параметр non_idempotent директивы
0965        proxy_next_upstream явно разрешает повторять такие запросы.
0966 
0967     *) Добавление: модуль ngx_http_perl_module теперь можно собрать
0968        динамически.
0969 
0970     *) Добавление: поддержка UDP в модуле stream.
0971 
0972     *) Добавление: директива aio_write.
0973 
0974     *) Добавление: теперь cache manager следит за количеством элементов в
0975        кэше и старается не допускать переполнений зоны разделяемой памяти.
0976 
0977     *) Исправление: при использовании директив sendfile и aio с подзапросами
0978        в логах могли появляться сообщения "task already active" и "second
0979        aio post".
0980 
0981     *) Исправление: при использовании кэширования в логах могли появляться
0982        сообщения "zero size buf in output", если клиент закрывал соединение
0983        преждевременно.
0984 
0985     *) Исправление: при использовании кэширования соединения с клиентами
0986        могли закрываться без необходимости.
0987        Спасибо Justin Li.
0988 
0989     *) Исправление: nginx мог нагружать процессор при использовании
0990        директивы sendfile на Linux и Solaris, если отправляемый файл был
0991        изменён в процессе отправки.
0992 
0993     *) Исправление: при использовании директив sendfile и "aio threads"
0994        соединения могли зависать.
0995 
0996     *) Исправление: в директивах proxy_pass, fastcgi_pass, scgi_pass и
0997        uwsgi_pass при использовании переменных.
0998        Спасибо Piotr Sikora.
0999 
1000     *) Исправление: в модуле ngx_http_sub_filter_module.
1001 
1002     *) Исправление: если в закэшированном соединении к бэкенду происходила
1003        ошибка, запрос передавался на другой сервер без учёта директивы
1004        proxy_next_upstream.
1005 
1006     *) Исправление: ошибки "CreateFile() failed" при создании временных
1007        файлов на Windows.
1008 
1009 
1010 Изменения в nginx 1.9.12                                          24.02.2016
1011 
1012     *) Добавление: кодирование Хаффмана заголовков ответов в HTTP/2.
1013        Спасибо Владу Краснову.
1014 
1015     *) Добавление: директива worker_cpu_affinity теперь поддерживает более
1016        64 процессоров.
1017 
1018     *) Исправление: совместимость со сторонними модулями на C++; ошибка
1019        появилась в 1.9.11.
1020        Спасибо Piotr Sikora.
1021 
1022     *) Исправление: nginx не собирался статически с OpenSSL на Linux; ошибка
1023        появилась в 1.9.11.
1024 
1025     *) Исправление: директива "add_header ... always" с пустым значением не
1026        удаляла из заголовков ошибочных ответов строки Last-Modified и ETag.
1027 
1028     *) Изменение: при использовании OpenSSL 1.0.2f в логах могли появляться
1029        сообщения "called a function you should not call" и "shutdown while
1030        in init".
1031 
1032     *) Исправление: ошибочные заголовки могли логгироваться некорректно.
1033 
1034     *) Исправление: утечки сокетов при использовании HTTP/2.
1035 
1036     *) Исправление: в модуле ngx_http_v2_module.
1037 
1038 
1039 Изменения в nginx 1.9.11                                          09.02.2016
1040 
1041     *) Добавление: теперь resolver поддерживает TCP.
1042 
1043     *) Добавление: динамические модули.
1044 
1045     *) Исправление: при использовании HTTP/2 переменная $request_length не
1046        учитывала размер заголовков запроса.
1047 
1048     *) Исправление: в модуле ngx_http_v2_module.
1049 
1050 
1051 Изменения в nginx 1.9.10                                          26.01.2016
1052 
1053     *) Безопасность: при использовании директивы resolver во время обработки
1054        ответов DNS-сервера могло происходить разыменование некорректного
1055        адреса, что позволяло атакующему, имеющему возможность подделывать
1056        UDP-пакеты от DNS-сервера, вызвать segmentation fault в рабочем
1057        процессе (CVE-2016-0742).
1058 
1059     *) Безопасность: при использовании директивы resolver во время обработки
1060        CNAME-записей могло произойти обращение к ранее освобождённой памяти,
1061        что позволяло атакующему, имеющему возможность инициировать
1062        преобразование произвольных имён в адреса, вызвать segmentation fault
1063        в рабочем процессе, а также потенциально могло иметь другие
1064        последствия (CVE-2016-0746).
1065 
1066     *) Безопасность: при использовании директивы resolver во время обработки
1067        CNAME-записей не во всех случаях проверялось ограничение на
1068        максимальное количество записей в цепочке, что позволяло атакующему,
1069        имеющему возможность инициировать преобразование произвольных имён в
1070        адреса, вызвать чрезмерное потребление ресурсов рабочими процессами
1071        (CVE-2016-0747).
1072 
1073     *) Добавление: параметр auto директивы worker_cpu_affinity.
1074 
1075     *) Исправление: параметр proxy_protocol директивы listen не работал с
1076        IPv6 listen-сокетами.
1077 
1078     *) Исправление: при использовании директивы keepalive соединения к
1079        бэкендам могли кэшироваться некорректно.
1080 
1081     *) Исправление: после перенаправления запроса с помощью X-Accel-Redirect
1082        при проксировании использовался HTTP-метод оригинального запроса.
1083 
1084 
1085 Изменения в nginx 1.9.9                                           09.12.2015
1086 
1087     *) Исправление: проксирование в unix domain сокеты не работало при
1088        использовании переменных; ошибка появилась в 1.9.8.
1089 
1090 
1091 Изменения в nginx 1.9.8                                           08.12.2015
1092 
1093     *) Добавление: поддержка pwritev().
1094 
1095     *) Добавление: директива include в блоке upstream.
1096 
1097     *) Добавление: модуль ngx_http_slice_module.
1098 
1099     *) Исправление: при использовании LibreSSL в рабочем процессе мог
1100        произойти segmentation fault; ошибка появилась в 1.9.6.
1101 
1102     *) Исправление: nginx мог не собираться на OS X.
1103 
1104 
1105 Изменения в nginx 1.9.7                                           17.11.2015
1106 
1107     *) Добавление: параметр nohostname логгирования в syslog.
1108 
1109     *) Добавление: директива proxy_cache_convert_head.
1110 
1111     *) Добавление: переменная $realip_remote_addr в модуле
1112        ngx_http_realip_module.
1113 
1114     *) Исправление: директива expires могла не срабатывать при использовании
1115        переменных.
1116 
1117     *) Исправление: при использовании HTTP/2 в рабочем процессе мог
1118        произойти segmentation fault; ошибка появилась в 1.9.6.
1119 
1120     *) Исправление: если nginx был собран с модулем ngx_http_v2_module,
1121        протокол HTTP/2 мог быть использован клиентом, даже если не был
1122        указан параметр http2 директивы listen.
1123 
1124     *) Исправление: в модуле ngx_http_v2_module.
1125 
1126 
1127 Изменения в nginx 1.9.6                                           27.10.2015
1128 
1129     *) Исправление: при использовании HTTP/2 в рабочем процессе мог
1130        произойти segmentation fault.
1131        Спасибо Piotr Sikora и Denis Andzakovic.
1132 
1133     *) Исправление: при использовании HTTP/2 переменная $server_protocol
1134        была пустой.
1135 
1136     *) Исправление: SSL-соединения к бэкендам в модуле stream могли
1137        неожиданно завершаться по таймауту.
1138 
1139     *) Исправление: при использовании различных настроек ssl_session_cache в
1140        разных виртуальных серверах в рабочем процессе мог произойти
1141        segmentation fault.
1142 
1143     *) Исправление: nginx/Windows не собирался с MinGW gcc; ошибка появилась
1144        в 1.9.4.
1145        Спасибо Kouhei Sutou.
1146 
1147     *) Исправление: при использовании директивы timer_resolution на Windows
1148        время не обновлялось.
1149 
1150     *) Незначительные исправления и улучшения.
1151        Спасибо Markus Linnala, Kurtis Nusbaum и Piotr Sikora.
1152 
1153 
1154 Изменения в nginx 1.9.5                                           22.09.2015
1155 
1156     *) Добавление: модуль ngx_http_v2_module (заменяет модуль
1157        ngx_http_spdy_module).
1158        Спасибо Dropbox и Automattic за спонсирование разработки.
1159 
1160     *) Изменение: теперь по умолчанию директива output_buffers использует
1161        два буфера.
1162 
1163     *) Изменение: теперь nginx ограничивает максимальную вложенность
1164        подзапросов, а не количество одновременных подзапросов.
1165 
1166     *) Изменение: теперь при возврате ответов из кэша nginx проверяет ключ
1167        полностью.
1168        Спасибо Геннадию Махомеду и Сергею Брестеру.
1169 
1170     *) Исправление: при использовании кэша в логах могли появляться
1171        сообщения "header already sent"; ошибка появилась в 1.7.5.
1172 
1173     *) Исправление: при использовании CephFS и директивы timer_resolution на
1174        Linux в логах могли появляться сообщения "writev() failed (4:
1175        Interrupted system call)".
1176 
1177     *) Исправление: в обработке ошибок конфигурации.
1178        Спасибо Markus Linnala.
1179 
1180     *) Исправление: при использовании директивы sub_filter на уровне http в
1181        рабочем процессе происходил segmentation fault; ошибка появилась в
1182        1.9.4.
1183 
1184 
1185 Изменения в nginx 1.9.4                                           18.08.2015
1186 
1187     *) Изменение: директивы proxy_downstream_buffer и proxy_upstream_buffer
1188        в модуле stream заменены директивой proxy_buffer_size.
1189 
1190     *) Добавление: директива tcp_nodelay в модуле stream.
1191 
1192     *) Добавление: теперь можно указать несколько директив sub_filter
1193        одновременно.
1194 
1195     *) Добавление: директива sub_filter поддерживает переменные в строке
1196        поиска.
1197 
1198     *) Изменение: тестирование конфигурации могло не работать под Linux
1199        OpenVZ.
1200        Спасибо Геннадию Махомеду.
1201 
1202     *) Исправление: после переконфигурации старые рабочие процессы могли
1203        сильно нагружать процессор при больших значениях worker_connections.
1204 
1205     *) Исправление: при совместном использовании директив try_files и alias
1206        внутри location'а, заданного регулярным выражением, в рабочем
1207        процессе мог произойти segmentation fault; ошибка появилась в 1.7.1.
1208 
1209     *) Исправление: директива try_files внутри вложенного location'а,
1210        заданного регулярным выражением, работала неправильно, если во
1211        внешнем location'е использовалась директива alias.
1212 
1213     *) Исправление: в обработке ошибок при построении хэш-таблиц.
1214 
1215     *) Исправление: nginx не собирался с Visual Studio 2015.
1216 
1217 
1218 Изменения в nginx 1.9.3                                           14.07.2015
1219 
1220     *) Изменение: дублирующиеся блоки http, mail и stream теперь запрещены.
1221 
1222     *) Добавление: ограничение количества соединений в модуле stream.
1223 
1224     *) Добавление: ограничение скорости в модуле stream.
1225 
1226     *) Исправление: директива zone в блоке upstream не работала на Windows.
1227 
1228     *) Исправление: совместимость с LibreSSL в модуле stream.
1229        Спасибо Piotr Sikora.
1230 
1231     *) Исправление: в параметре --builddir в configure.
1232        Спасибо Piotr Sikora.
1233 
1234     *) Исправление: директива ssl_stapling_file не работала; ошибка
1235        появилась в 1.9.2.
1236        Спасибо Faidon Liambotis и Brandon Black.
1237 
1238     *) Исправление: при использовании директивы ssl_stapling в рабочем
1239        процессе мог произойти segmentation fault; ошибка появилась в 1.9.2.
1240        Спасибо Matthew Baldwin.
1241 
1242 
1243 Изменения в nginx 1.9.2                                           16.06.2015
1244 
1245     *) Добавление: параметр backlog директивы listen в почтовом
1246        прокси-сервере и модуле stream.
1247 
1248     *) Добавление: директивы allow и deny в модуле stream.
1249 
1250     *) Добавление: директива proxy_bind в модуле stream.
1251 
1252     *) Добавление: директива proxy_protocol в модуле stream.
1253 
1254     *) Добавление: ключ -T.
1255 
1256     *) Добавление: параметр REQUEST_SCHEME добавлен в стандартные
1257        конфигурационные файлы fastcgi.conf, fastcgi_params, scgi_params и
1258        uwsgi_params.
1259 
1260     *) Исправление: параметр reuseport директивы listen в модуле stream не
1261        работал.
1262 
1263     *) Исправление: OCSP stapling в некоторых случаях мог вернуть устаревший
1264        OCSP-ответ.
1265 
1266 
1267 Изменения в nginx 1.9.1                                           26.05.2015
1268 
1269     *) Изменение: теперь протокол SSLv3 по умолчанию запрещён.
1270 
1271     *) Изменение: некоторые давно устаревшие директивы больше не
1272        поддерживаются.
1273 
1274     *) Добавление: параметр reuseport директивы listen.
1275        Спасибо Yingqi Lu из Intel и Sepherosa Ziehau.
1276 
1277     *) Добавление: переменная $upstream_connect_time.
1278 
1279     *) Исправление: в директиве hash на big-endian платформах.
1280 
1281     *) Исправление: nginx мог не запускаться на некоторых старых версиях
1282        Linux; ошибка появилась в 1.7.11.
1283 
1284     *) Исправление: в парсинге IP-адресов.
1285        Спасибо Сергею Половко.
1286 
1287 
1288 Изменения в nginx 1.9.0                                           28.04.2015
1289 
1290     *) Изменение: устаревшие методы обработки соединений aio и rtsig больше
1291        не поддерживаются.
1292 
1293     *) Добавление: директива zone в блоке upstream.
1294 
1295     *) Добавление: модуль stream.
1296 
1297     *) Добавление: поддержка byte ranges для ответов модуля
1298        ngx_http_memcached_module.
1299        Спасибо Martin Mlynář.
1300 
1301     *) Добавление: разделяемую память теперь можно использовать на версиях
1302        Windows с рандомизацией адресного пространства.
1303        Спасибо Сергею Брестеру.
1304 
1305     *) Добавление: директиву error_log теперь можно использовать на уровнях
1306        mail и server в почтовом прокси-сервере.
1307 
1308     *) Исправление: параметр proxy_protocol директивы listen не работал,
1309        если не был указан в первой директиве listen для данного
1310        listen-сокета.
1311 
1312 
1313 Изменения в nginx 1.7.12                                          07.04.2015
1314 
1315     *) Добавление: теперь директива tcp_nodelay работает для SSL-соединений
1316        с бэкендами.
1317 
1318     *) Добавление: теперь потоки могут использоваться для чтения заголовков
1319        файлов в кэше.
1320 
1321     *) Исправление: в директиве proxy_request_buffering.
1322 
1323     *) Исправление: при использовании потоков на Linux в рабочем процессе
1324        мог произойти segmentation fault.
1325 
1326     *) Исправление: в обработке ошибок при использовании директивы
1327        ssl_stapling.
1328        Спасибо Filipe da Silva.
1329 
1330     *) Исправление: в модуле ngx_http_spdy_module.
1331 
1332 
1333 Изменения в nginx 1.7.11                                          24.03.2015
1334 
1335     *) Изменение: параметр sendfile директивы aio более не нужен; теперь
1336        nginx автоматически использует AIO для подгрузки данных для sendfile,
1337        если одновременно используются директивы aio и sendfile.
1338 
1339     *) Добавление: экспериментальная поддержка потоков.
1340 
1341     *) Добавление: директивы proxy_request_buffering,
1342        fastcgi_request_buffering, scgi_request_buffering и
1343        uwsgi_request_buffering.
1344 
1345     *) Добавление: экспериментальное API для обработки тела запроса.
1346 
1347     *) Добавление: проверка клиентских SSL-сертификатов в почтовом
1348        прокси-сервере.
1349        Спасибо Sven Peter, Franck Levionnois и Filipe Da Silva.
1350 
1351     *) Добавление: уменьшение времени запуска при использовании директивы
1352        "hash ... consistent" в блоке upstream.
1353        Спасибо Wai Keen Woon.
1354 
1355     *) Добавление: отладочное логгирование в кольцевой буфер в памяти.
1356 
1357     *) Исправление: в обработке хэш-таблиц.
1358        Спасибо Chris West.
1359 
1360     *) Исправление: в директиве proxy_cache_revalidate.
1361 
1362     *) Исправление: SSL-соединения могли зависать, если использовался
1363        отложенный accept или параметр proxy_protocol директивы listen.
1364        Спасибо James Hamlin.
1365 
1366     *) Исправление: переменная $upstream_response_time могла содержать
1367        неверное значение при использовании директивы image_filter.
1368 
1369     *) Исправление: в обработке целочисленных переполнений.
1370        Спасибо Régis Leroy.
1371 
1372     *) Исправление: при использовании LibreSSL было невозможно включить
1373        поддержку SSLv3.
1374 
1375     *) Исправление: при использовании LibreSSL в логах появлялись сообщения
1376        "ignoring stale global SSL error ... called a function you should not
1377        call".
1378 
1379     *) Исправление: сертификаты, указанные в директивах
1380        ssl_client_certificate и ssl_trusted_certificate, использовались для
1381        автоматического построения цепочек сертификатов.
1382 
1383 
1384 Изменения в nginx 1.7.10                                          10.02.2015
1385 
1386     *) Добавление: параметр use_temp_path директив proxy_cache_path,
1387        fastcgi_cache_path, scgi_cache_path и uwsgi_cache_path.
1388 
1389     *) Добавление: переменная $upstream_header_time.
1390 
1391     *) Изменение: теперь при переполнении диска nginx пытается писать
1392        error_log'и только раз в секунду.
1393 
1394     *) Исправление: директива try_files при тестировании каталогов не
1395        игнорировала обычные файлы.
1396        Спасибо Damien Tournoud.
1397 
1398     *) Исправление: при использовании директивы sendfile на OS X возникали
1399        ошибки "sendfile() failed"; ошибка появилась в nginx 1.7.8.
1400 
1401     *) Исправление: в лог могли писаться сообщения "sem_post() failed".
1402 
1403     *) Исправление: nginx не собирался с musl libc.
1404        Спасибо James Taylor.
1405 
1406     *) Исправление: nginx не собирался на Tru64 UNIX.
1407        Спасибо Goetz T. Fischer.
1408 
1409 
1410 Изменения в nginx 1.7.9                                           23.12.2014
1411 
1412     *) Добавление: директивы proxy_cache, fastcgi_cache, scgi_cache и
1413        uwsgi_cache поддерживают переменные.
1414 
1415     *) Добавление: директива expires поддерживает переменные.
1416 
1417     *) Добавление: возможность загрузки секретных ключей с аппаратных
1418        устройств с помощью OpenSSL engines.
1419        Спасибо Дмитрию Пичулину.
1420 
1421     *) Добавление: директива autoindex_format.
1422 
1423     *) Исправление: ревалидация элементов кэша теперь используется только
1424        для ответов с кодами 200 и 206.
1425        Спасибо Piotr Sikora.
1426 
1427     *) Исправление: строка "TE" заголовка запроса клиента передавалась на
1428        бэкенд при проксировании.
1429 
1430     *) Исправление: директивы proxy_pass, fastcgi_pass, scgi_pass и
1431        uwsgi_pass могли неправильно работать внутри блоков if и
1432        limit_except.
1433 
1434     *) Исправление: директива proxy_store с параметром "on" игнорировалась,
1435        если на предыдущем уровне использовалась директива proxy_store с явно
1436        заданным путём к файлам.
1437 
1438     *) Исправление: nginx не собирался с BoringSSL.
1439        Спасибо Lukas Tribus.
1440 
1441 
1442 Изменения в nginx 1.7.8                                           02.12.2014
1443 
1444     *) Изменение: теперь строки "If-Modified-Since", "If-Range" и им
1445        подобные в заголовке запроса клиента передаются бэкенду при
1446        включённом кэшировании, если nginx заранее знает, что не будет
1447        кэшировать ответ (например, при использовании proxy_cache_min_uses).
1448 
1449     *) Изменение: теперь после истечения proxy_cache_lock_timeout nginx
1450        отправляет запрос на бэкенд без кэширования; новые директивы
1451        proxy_cache_lock_age, fastcgi_cache_lock_age, scgi_cache_lock_age и
1452        uwsgi_cache_lock_age позволяют указать, через какое время блокировка
1453        будет принудительно снята и будет сделана ещё одна попытка
1454        закэшировать ответ.
1455 
1456     *) Изменение: директива log_format теперь может использоваться только на
1457        уровне http.
1458 
1459     *) Добавление: директивы proxy_ssl_certificate,
1460        proxy_ssl_certificate_key, proxy_ssl_password_file,
1461        uwsgi_ssl_certificate, uwsgi_ssl_certificate_key и
1462        uwsgi_ssl_password_file.
1463        Спасибо Piotr Sikora.
1464 
1465     *) Добавление: теперь с помощью X-Accel-Redirect можно перейти в
1466        именованный location.
1467        Спасибо Toshikuni Fukaya.
1468 
1469     *) Добавление: теперь директива tcp_nodelay работает для
1470        SPDY-соединений.
1471 
1472     *) Добавление: новые директивы в скриптах подсветки синтаксиса для vim.
1473        Спасибо Peter Wu.
1474 
1475     *) Исправление: nginx игнорировал значение "s-maxage" в строке
1476        "Cache-Control" в заголовке ответа бэкенда.
1477        Спасибо Piotr Sikora.
1478 
1479     *) Исправление: в модуле ngx_http_spdy_module.
1480        Спасибо Piotr Sikora.
1481 
1482     *) Исправление: в директиве ssl_password_file при использовании OpenSSL
1483        0.9.8zc, 1.0.0o, 1.0.1j.
1484 
1485     *) Исправление: при использовании директивы post_action в лог писались
1486        сообщения "header already sent"; ошибка появилась в nginx 1.5.4.
1487 
1488     *) Исправление: при использовании директивы "postpone_output 0" с
1489        SSI-подзапросами в лог могли писаться сообщения "the http output
1490        chain is empty".
1491 
1492     *) Исправление: в директиве proxy_cache_lock при использовании
1493        SSI-подзапросов.
1494        Спасибо Yichun Zhang.
1495 
1496 
1497 Изменения в nginx 1.7.7                                           28.10.2014
1498 
1499     *) Изменение: теперь nginx учитывает при кэшировании строку "Vary" в
1500        заголовке ответа бэкенда.
1501 
1502     *) Добавление: директивы proxy_force_ranges, fastcgi_force_ranges,
1503        scgi_force_ranges и uwsgi_force_ranges.
1504 
1505     *) Добавление: директивы proxy_limit_rate, fastcgi_limit_rate,
1506        scgi_limit_rate и uwsgi_limit_rate.
1507 
1508     *) Добавление: параметр Vary директив proxy_ignore_headers,
1509        fastcgi_ignore_headers, scgi_ignore_headers и uwsgi_ignore_headers.
1510 
1511     *) Исправление: последняя часть ответа, полученного от бэкенда при
1512        небуферизированном проксировании, могла не отправляться клиенту, если
1513        использовались директивы gzip или gunzip.
1514 
1515     *) Исправление: в директиве proxy_cache_revalidate.
1516        Спасибо Piotr Sikora.
1517 
1518     *) Исправление: в обработке ошибок.
1519        Спасибо Yichun Zhang и Даниилу Бондареву.
1520 
1521     *) Исправление: в директивах proxy_next_upstream_tries и
1522        proxy_next_upstream_timeout.
1523        Спасибо Feng Gu.
1524 
1525     *) Исправление: nginx/Windows не собирался с MinGW-w64 gcc.
1526        Спасибо Kouhei Sutou.
1527 
1528 
1529 Изменения в nginx 1.7.6                                           30.09.2014
1530 
1531     *) Изменение: устаревшая директива limit_zone больше не поддерживается.
1532 
1533     *) Добавление: в директивах limit_conn_zone и limit_req_zone теперь
1534        можно использовать комбинации нескольких переменных.
1535 
1536     *) Исправление: при повторной отправке FastCGI-запроса на бэкенд тело
1537        запроса могло передаваться неправильно.
1538 
1539     *) Исправление: в логгировании в syslog.
1540 
1541 
1542 Изменения в nginx 1.7.5                                           16.09.2014
1543 
1544     *) Безопасность: при использовании общего для нескольких блоков server
1545        разделяемого кэша SSL-сессий или общего ключа для шифрования TLS
1546        session tickets было возможно повторно использовать SSL-сессию в
1547        контексте другого блока server (CVE-2014-3616).
1548        Спасибо Antoine Delignat-Lavaud.
1549 
1550     *) Изменение: директиву stub_status теперь можно указывать без
1551        параметров.
1552 
1553     *) Добавление: параметр always директивы add_header.
1554 
1555     *) Добавление: директивы proxy_next_upstream_tries,
1556        proxy_next_upstream_timeout, fastcgi_next_upstream_tries,
1557        fastcgi_next_upstream_timeout, memcached_next_upstream_tries,
1558        memcached_next_upstream_timeout, scgi_next_upstream_tries,
1559        scgi_next_upstream_timeout, uwsgi_next_upstream_tries и
1560        uwsgi_next_upstream_timeout.
1561 
1562     *) Исправление: в параметре if директивы access_log.
1563 
1564     *) Исправление: в модуле ngx_http_perl_module.
1565        Спасибо Piotr Sikora.
1566 
1567     *) Исправление: директива listen почтового прокси-сервера не позволяла
1568        указать более двух параметров.
1569 
1570     *) Исправление: директива sub_filter не работала с заменяемой строкой из
1571        одного символа.
1572 
1573     *) Исправление: запросы могли зависать, если использовался resolver и в
1574        процессе обращения к DNS-серверу происходил таймаут.
1575 
1576     *) Исправление: в модуле ngx_http_spdy_module при использовании
1577        совместно с AIO.
1578 
1579     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1580        если с помощью директивы set изменялись переменные "$http_...",
1581        "$sent_http_..." или "$upstream_http_...".
1582 
1583     *) Исправление: в обработке ошибок выделения памяти.
1584        Спасибо Markus Linnala и Feng Gu.
1585 
1586 
1587 Изменения в nginx 1.7.4                                           05.08.2014
1588 
1589     *) Безопасность: pipelined-команды не отбрасывались после команды
1590        STARTTLS в SMTP прокси-сервере (CVE-2014-3556); ошибка появилась в
1591        1.5.6.
1592        Спасибо Chris Boulton.
1593 
1594     *) Изменение: экранирование символов в URI теперь использует
1595        шестнадцатеричные цифры в верхнем регистре.
1596        Спасибо Piotr Sikora.
1597 
1598     *) Добавление: теперь nginx можно собрать с BoringSSL и LibreSSL.
1599        Спасибо Piotr Sikora.
1600 
1601     *) Исправление: запросы могли зависать, если использовался resolver и
1602        DNS-сервер возвращал некорректный ответ; ошибка появилась в 1.5.8.
1603 
1604     *) Исправление: в модуле ngx_http_spdy_module.
1605        Спасибо Piotr Sikora.
1606 
1607     *) Исправление: переменная $uri могла содержать мусор при возврате
1608        ошибок с кодом 400.
1609        Спасибо Сергею Боброву.
1610 
1611     *) Исправление: в обработке ошибок в директиве proxy_store и в модуле
1612        ngx_http_dav_module.
1613        Спасибо Feng Gu.
1614 
1615     *) Исправление: при логгировании ошибок в syslog мог происходить
1616        segmentation fault; ошибка появилась в 1.7.1.
1617 
1618     *) Исправление: переменные $geoip_latitude, $geoip_longitude,
1619        $geoip_dma_code и $geoip_area_code могли не работать.
1620        Спасибо Yichun Zhang.
1621 
1622     *) Исправление: в обработке ошибок выделения памяти.
1623        Спасибо Tatsuhiko Kubo и Piotr Sikora.
1624 
1625 
1626 Изменения в nginx 1.7.3                                           08.07.2014
1627 
1628     *) Добавление: weak entity tags теперь не удаляются при изменениях
1629        ответа, а strong entity tags преобразуются в weak.
1630 
1631     *) Добавление: ревалидация элементов кэша теперь, если это возможно,
1632        использует заголовок If-None-Match.
1633 
1634     *) Добавление: директива ssl_password_file.
1635 
1636     *) Исправление: при возврате ответа из кэша заголовок запроса
1637        If-None-Match игнорировался, если в ответе не было заголовка
1638        Last-Modified.
1639 
1640     *) Исправление: сообщения "peer closed connection in SSL handshake" при
1641        соединении с бэкендами логгировались на уровне info вместо error.
1642 
1643     *) Исправление: в модуле ngx_http_dav_module в nginx/Windows.
1644 
1645     *) Исправление: SPDY-соединения могли неожиданно закрываться, если
1646        использовалось кэширование.
1647 
1648 
1649 Изменения в nginx 1.7.2                                           17.06.2014
1650 
1651     *) Добавление: директива hash в блоке upstream.
1652 
1653     *) Добавление: дефрагментация свободных блоков разделяемой памяти.
1654        Спасибо Wandenberg Peixoto и Yichun Zhang.
1655 
1656     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1657        если использовалось значение access_log по умолчанию; ошибка
1658        появилась в 1.7.0.
1659        Спасибо Piotr Sikora.
1660 
1661     *) Исправление: завершающий слэш ошибочно удалялся из последнего
1662        параметра директивы try_files.
1663 
1664     *) Исправление: nginx мог не собираться на OS X.
1665 
1666     *) Исправление: в модуле ngx_http_spdy_module.
1667 
1668 
1669 Изменения в nginx 1.7.1                                           27.05.2014
1670 
1671     *) Добавление: переменные "$upstream_cookie_...".
1672 
1673     *) Добавление: переменная $ssl_client_fingerprint.
1674 
1675     *) Добавление: директивы error_log и access_log теперь поддерживают
1676        логгирование в syslog.
1677 
1678     *) Добавление: почтовый прокси-сервер теперь логгирует порт клиента при
1679        соединении.
1680 
1681     *) Исправление: утечки памяти при использовании директивы
1682        "ssl_stapling".
1683        Спасибо Filipe da Silva.
1684 
1685     *) Исправление: директива alias внутри location'а, заданного регулярным
1686        выражением, работала неправильно, если использовались директивы if
1687        или limit_except.
1688 
1689     *) Исправление: директива charset не ставила кодировку для сжатых
1690        ответов бэкендов.
1691 
1692     *) Исправление: директива proxy_pass без URI могла использовать
1693        оригинальный запрос после установки переменной $args.
1694        Спасибо Yichun Zhang.
1695 
1696     *) Исправление: в работе параметра none директивы smtp_auth; ошибка
1697        появилась в 1.5.6.
1698        Спасибо Святославу Никольскому.
1699 
1700     *) Исправление: при совместном использовании sub_filter и SSI ответы
1701        могли передаваться неверно.
1702 
1703     *) Исправление: nginx не собирался с параметром --with-file-aio на
1704        Linux/aarch64.
1705 
1706 
1707 Изменения в nginx 1.7.0                                           24.04.2014
1708 
1709     *) Добавление: проверка SSL-сертификатов бэкендов.
1710 
1711     *) Добавление: поддержка SNI при работе с бэкендами по SSL.
1712 
1713     *) Добавление: переменная $ssl_server_name.
1714 
1715     *) Добавление: параметр if директивы access_log.
1716 
1717 
1718 Изменения в nginx 1.5.13                                          08.04.2014
1719 
1720     *) Изменение: улучшена обработка хэш-таблиц; в директивах
1721        variables_hash_max_size и types_hash_bucket_size значения по
1722        умолчанию изменены на 1024 и 64 соответственно.
1723 
1724     *) Добавление: модуль ngx_http_mp4_module теперь понимает аргумент end.
1725 
1726     *) Добавление: поддержка byte ranges модулем ngx_http_mp4_module и при
1727        сохранении ответов в кэш.
1728 
1729     *) Исправление: теперь nginx не пишет в лог сообщения "ngx_slab_alloc()
1730        failed: no memory" при использовании разделяемой памяти в
1731        ssl_session_cache и в модуле ngx_http_limit_req_module.
1732 
1733     *) Исправление: директива underscores_in_headers не разрешала
1734        подчёркивание в первом символе заголовка.
1735        Спасибо Piotr Sikora.
1736 
1737     *) Исправление: cache manager мог нагружать процессор при выходе в
1738        nginx/Windows.
1739 
1740     *) Исправление: при использовании ssl_session_cache с параметром shared
1741        рабочий процесс nginx/Windows завершался аварийно.
1742 
1743     *) Исправление: в модуле ngx_http_spdy_module.
1744 
1745 
1746 Изменения в nginx 1.5.12                                          18.03.2014
1747 
1748     *) Безопасность: при обработке специально созданного запроса модулем
1749        ngx_http_spdy_module могло происходить переполнение буфера в рабочем
1750        процессе, что потенциально могло приводить к выполнению произвольного
1751        кода (CVE-2014-0133).
1752        Спасибо Lucas Molas из Programa STIC, Fundación Dr. Manuel Sadosky,
1753        Buenos Aires, Argentina.
1754 
1755     *) Добавление: параметр proxy_protocol в директивах listen и
1756        real_ip_header, переменная $proxy_protocol_addr.
1757 
1758     *) Исправление: в директиве fastcgi_next_upstream.
1759        Спасибо Lucas Molas.
1760 
1761 
1762 Изменения в nginx 1.5.11                                          04.03.2014
1763 
1764     *) Безопасность: при обработке специально созданного запроса модулем
1765        ngx_http_spdy_module на 32-битных платформах могла повреждаться
1766        память рабочего процесса, что потенциально могло приводить к
1767        выполнению произвольного кода (CVE-2014-0088); ошибка появилась в
1768        1.5.10.
1769        Спасибо Lucas Molas из Programa STIC, Fundación Dr. Manuel Sadosky,
1770        Buenos Aires, Argentina.
1771 
1772     *) Добавление: переменная $ssl_session_reused.
1773 
1774     *) Исправление: директива client_max_body_size могла не работать при
1775        чтении тела запроса с использованием chunked transfer encoding;
1776        ошибка появилась в 1.3.9.
1777        Спасибо Lucas Molas.
1778 
1779     *) Исправление: при проксировании WebSocket-соединений в рабочем
1780        процессе мог произойти segmentation fault.
1781 
1782     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1783        если использовался модуль ngx_http_spdy_module на 32-битных
1784        платформах; ошибка появилась в 1.5.10.
1785 
1786     *) Исправление: значение переменной $upstream_status могло быть
1787        неверным, если использовались директивы proxy_cache_use_stale или
1788        proxy_cache_revalidate.
1789        Спасибо Piotr Sikora.
1790 
1791     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1792        если ошибки с кодом 400 с помощью директивы error_page
1793        перенаправлялись в именованный location.
1794 
1795     *) Исправление: nginx/Windows не собирался с Visual Studio 2013.
1796 
1797 
1798 Изменения в nginx 1.5.10                                          04.02.2014
1799 
1800     *) Добавление: модуль ngx_http_spdy_module теперь использует протокол
1801        SPDY 3.1.
1802        Спасибо Automattic и MaxCDN за спонсирование разработки.
1803 
1804     *) Добавление: модуль ngx_http_mp4_module теперь пропускает дорожки,
1805        имеющие меньшую длину, чем запрошенная перемотка.
1806 
1807     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1808        если переменная $ssl_session_id использовалась при логгировании;
1809        ошибка появилась в 1.5.9.
1810 
1811     *) Исправление: переменные $date_local и $date_gmt использовали неверный
1812        формат вне модуля ngx_http_ssi_filter_module.
1813 
1814     *) Исправление: клиентские соединения могли сразу закрываться, если
1815        использовался отложенный accept; ошибка появилась в 1.3.15.
1816 
1817     *) Исправление: сообщения "getsockopt(TCP_FASTOPEN) ... failed"
1818        записывались в лог в процессе обновления исполняемого файла на Linux;
1819        ошибка появилась в 1.5.8.
1820        Спасибо Piotr Sikora.
1821 
1822 
1823 Изменения в nginx 1.5.9                                           22.01.2014
1824 
1825     *) Изменение: теперь в заголовке X-Accel-Redirect nginx ожидает
1826        закодированный URI.
1827 
1828     *) Добавление: директива ssl_buffer_size.
1829 
1830     *) Добавление: директиву limit_rate теперь можно использовать для
1831        ограничения скорости передачи ответов клиенту в SPDY-соединениях.
1832 
1833     *) Добавление: директива spdy_chunk_size.
1834 
1835     *) Добавление: директива ssl_session_tickets.
1836        Спасибо Dirkjan Bussink.
1837 
1838     *) Исправление: переменная $ssl_session_id содержала всю сессию в
1839        сериализованном виде вместо её идентификатора.
1840        Спасибо Ivan Ristić.
1841 
1842     *) Исправление: nginx неправильно обрабатывал закодированный символ "?"
1843        в команде SSI include.
1844 
1845     *) Исправление: модуль ngx_http_dav_module не раскодировал целевой URI
1846        при обработке методов COPY и MOVE.
1847 
1848     *) Исправление: resolver не понимал доменные имена с точкой в конце.
1849        Спасибо Yichun Zhang.
1850 
1851     *) Исправление: при проксировании в логах могли появляться сообщения
1852        "zero size buf in output"; ошибка появилась в 1.3.9.
1853 
1854     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1855        если использовался модуль ngx_http_spdy_module.
1856 
1857     *) Исправление: при использовании методов обработки соединений select,
1858        poll и /dev/poll проксируемые WebSocket-соединения могли зависать
1859        сразу после открытия.
1860 
1861     *) Исправление: директива xclient почтового прокси-сервера некорректно
1862        передавала IPv6-адреса.
1863 
1864 
1865 Изменения в nginx 1.5.8                                           17.12.2013
1866 
1867     *) Добавление: теперь resolver поддерживает IPv6.
1868 
1869     *) Добавление: директива listen поддерживает параметр fastopen.
1870        Спасибо Mathew Rodley.
1871 
1872     *) Добавление: поддержка SSL в модуле ngx_http_uwsgi_module.
1873        Спасибо Roberto De Ioris.
1874 
1875     *) Добавление: скрипты подсветки синтаксиса для vim добавлены в contrib.
1876        Спасибо Evan Miller.
1877 
1878     *) Исправление: при чтении тела запроса с использованием chunked
1879        transfer encoding по SSL-соединению мог произойти таймаут.
1880 
1881     *) Исправление: директива master_process работала неправильно в
1882        nginx/Windows.
1883 
1884     *) Исправление: параметр setfib директивы listen мог не работать.
1885 
1886     *) Исправление: в модуле ngx_http_spdy_module.
1887 
1888 
1889 Изменения в nginx 1.5.7                                           19.11.2013
1890 
1891     *) Безопасность: символ, следующий за незакодированным пробелом в строке
1892        запроса, обрабатывался неправильно (CVE-2013-4547); ошибка появилась
1893        в 0.8.41.
1894        Спасибо Ivan Fratric из Google Security Team.
1895 
1896     *) Изменение: уровень логгирования ошибок auth_basic об отсутствии
1897        пароля понижен с уровня error до info.
1898 
1899     *) Добавление: директивы proxy_cache_revalidate,
1900        fastcgi_cache_revalidate, scgi_cache_revalidate и
1901        uwsgi_cache_revalidate.
1902 
1903     *) Добавление: директива ssl_session_ticket_key.
1904        Спасибо Piotr Sikora.
1905 
1906     *) Исправление: директива "add_header Cache-Control ''" добавляла строку
1907        заголовка ответа "Cache-Control" с пустым значением.
1908 
1909     *) Исправление: директива "satisfy any" могла вернуть ошибку 403 вместо
1910        401 при использовании директив auth_request и auth_basic.
1911        Спасибо Jan Marc Hoffmann.
1912 
1913     *) Исправление: параметры accept_filter и deferred директивы listen
1914        игнорировались для listen-сокетов, создаваемых в процессе обновления
1915        исполняемого файла.
1916        Спасибо Piotr Sikora.
1917 
1918     *) Исправление: часть данных, полученных от бэкенда при
1919        небуферизированном проксировании, могла не отправляться клиенту
1920        сразу, если использовались директивы gzip или gunzip.
1921        Спасибо Yichun Zhang.
1922 
1923     *) Исправление: в обработке ошибок в модуле
1924        ngx_http_gunzip_filter_module.
1925 
1926     *) Исправление: ответы могли зависать, если использовался модуль
1927        ngx_http_spdy_module и директива auth_request.
1928 
1929     *) Исправление: утечки памяти в nginx/Windows.
1930 
1931 
1932 Изменения в nginx 1.5.6                                           01.10.2013
1933 
1934     *) Добавление: директива fastcgi_buffering.
1935 
1936     *) Добавление: директивы proxy_ssl_protocols и proxy_ssl_ciphers.
1937        Спасибо Piotr Sikora.
1938 
1939     *) Добавление: оптимизация SSL handshake при использовании длинных
1940        цепочек сертификатов.
1941 
1942     *) Добавление: почтовый прокси-сервер поддерживает SMTP pipelining.
1943 
1944     *) Исправление: в модуле ngx_http_auth_basic_module при использовании
1945        метода шифрования паролей "$apr1$".
1946        Спасибо Markus Linnala.
1947 
1948     *) Исправление: на MacOSX, Cygwin и nginx/Windows для обработки запроса
1949        мог использоваться неверный location, если для задания location'ов
1950        использовались символы разных регистров.
1951 
1952     *) Исправление: автоматическое перенаправление с добавлением
1953        завершающего слэша для проксированных location'ов могло не работать.
1954 
1955     *) Исправление: в почтовом прокси-сервере.
1956 
1957     *) Исправление: в модуле ngx_http_spdy_module.
1958 
1959 
1960 Изменения в nginx 1.5.5                                           17.09.2013
1961 
1962     *) Изменение: теперь nginx по умолчанию использует HTTP/1.0, если точно
1963        определить протокол не удалось.
1964 
1965     *) Добавление: директива disable_symlinks теперь использует O_PATH на
1966        Linux.
1967 
1968     *) Добавление: для определения того, что клиент закрыл соединение, при
1969        использовании метода epoll теперь используются события EPOLLRDHUP.
1970 
1971     *) Исправление: в директиве valid_referers при использовании параметра
1972        server_names.
1973 
1974     *) Исправление: переменная $request_time не работала в nginx/Windows.
1975 
1976     *) Исправление: в директиве image_filter.
1977        Спасибо Lanshun Zhou.
1978 
1979     *) Исправление: совместимость с OpenSSL 1.0.1f.
1980        Спасибо Piotr Sikora.
1981 
1982 
1983 Изменения в nginx 1.5.4                                           27.08.2013
1984 
1985     *) Изменение: MIME-тип для расширения js изменён на
1986        "application/javascript"; значение по умолчанию директивы
1987        charset_types изменено соответственно.
1988 
1989     *) Изменение: теперь директива image_filter с параметром size возвращает
1990        ответ с MIME-типом "application/json".
1991 
1992     *) Добавление: модуль ngx_http_auth_request_module.
1993 
1994     *) Исправление: на старте или во время переконфигурации мог произойти
1995        segmentation fault, если использовалась директива try_files с пустым
1996        параметром.
1997 
1998     *) Исправление: утечки памяти при использовании в директивах root и
1999        auth_basic_user_file относительных путей, заданных с помощью
2000        переменных.
2001 
2002     *) Исправление: директива valid_referers неправильно выполняла
2003        регулярные выражения, если заголовок Referer начинался с "https://".
2004        Спасибо Liangbin Li.
2005 
2006     *) Исправление: ответы могли зависать, если использовались подзапросы и
2007        при обработке подзапроса происходила ошибка во время SSL handshake с
2008        бэкендом.
2009        Спасибо Aviram Cohen.
2010 
2011     *) Исправление: в модуле ngx_http_autoindex_module.
2012 
2013     *) Исправление: в модуле ngx_http_spdy_module.
2014 
2015 
2016 Изменения в nginx 1.5.3                                           30.07.2013
2017 
2018     *) Изменение во внутреннем API: теперь при небуферизированной работе с
2019        бэкендами u->length по умолчанию устанавливается в -1.
2020 
2021     *) Изменение: теперь при получении неполного ответа от бэкенда nginx
2022        отправляет полученную часть ответа, после чего закрывает соединение с
2023        клиентом.
2024 
2025     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2026        если использовался модуль ngx_http_spdy_module и директива
2027        client_body_in_file_only.
2028 
2029     *) Исправление: параметр so_keepalive директивы listen мог работать
2030        некорректно на DragonFlyBSD.
2031        Спасибо Sepherosa Ziehau.
2032 
2033     *) Исправление: в модуле ngx_http_xslt_filter_module.
2034 
2035     *) Исправление: в модуле ngx_http_sub_filter_module.
2036 
2037 
2038 Изменения в nginx 1.5.2                                           02.07.2013
2039 
2040     *) Добавление: теперь можно использовать несколько директив error_log.
2041 
2042     *) Исправление: метод $r->header_in() встроенного перла не возвращал
2043        значения строк "Cookie" и "X-Forwarded-For" из заголовка запроса;
2044        ошибка появилась в 1.3.14.
2045 
2046     *) Исправление: в модуле ngx_http_spdy_module.
2047        Спасибо Jim Radford.
2048 
2049     *) Исправление: nginx не собирался на Linux при использовании x32 ABI.
2050        Спасибо Сергею Иванцову.
2051 
2052 
2053 Изменения в nginx 1.5.1                                           04.06.2013
2054 
2055     *) Добавление: директивы ssi_last_modified, sub_filter_last_modified и
2056        xslt_last_modified.
2057        Спасибо Алексею Колпакову.
2058 
2059     *) Добавление: параметр http_403 в директивах proxy_next_upstream,
2060        fastcgi_next_upstream, scgi_next_upstream и uwsgi_next_upstream.
2061 
2062     *) Добавление: директивы allow и deny теперь поддерживают unix domain
2063        сокеты.
2064 
2065     *) Исправление: nginx не собирался с модулем ngx_mail_ssl_module, но без
2066        модуля ngx_http_ssl_module; ошибка появилась в 1.3.14.
2067 
2068     *) Исправление: в директиве proxy_set_body.
2069        Спасибо Lanshun Zhou.
2070 
2071     *) Исправление: в директиве lingering_time.
2072        Спасибо Lanshun Zhou.
2073 
2074     *) Исправление: параметр fail_timeout директивы server в блоке upstream
2075        мог не работать, если использовался параметр max_fails; ошибка
2076        появилась в 1.3.0.
2077 
2078     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2079        если использовалась директива ssl_stapling.
2080        Спасибо Piotr Sikora.
2081 
2082     *) Исправление: в почтовом прокси-сервере.
2083        Спасибо Filipe Da Silva.
2084 
2085     *) Исправление: nginx/Windows мог перестать принимать соединения, если
2086        использовалось несколько рабочих процессов.
2087 
2088 
2089 Изменения в nginx 1.5.0                                           07.05.2013
2090 
2091     *) Безопасность: при обработке специально созданного запроса мог
2092        перезаписываться стек рабочего процесса, что могло приводить к
2093        выполнению произвольного кода (CVE-2013-2028); ошибка появилась в
2094        1.3.9.
2095        Спасибо Greg MacManus, iSIGHT Partners Labs.
2096 
2097 
2098 Изменения в nginx 1.4.0                                           24.04.2013
2099 
2100     *) Исправление: nginx не собирался с модулем ngx_http_perl_module, если
2101        использовался параметр --with-openssl; ошибка появилась в 1.3.16.
2102 
2103     *) Исправление: в работе с телом запроса из модуля ngx_http_perl_module;
2104        ошибка появилась в 1.3.9.
2105 
2106 
2107 Изменения в nginx 1.3.16                                          16.04.2013
2108 
2109     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2110        если использовались подзапросы; ошибка появилась в 1.3.9.
2111 
2112     *) Исправление: директива tcp_nodelay вызывала ошибку при проксировании
2113        WebSocket-соединений в unix domain сокет.
2114 
2115     *) Исправление: переменная $upstream_response_length возвращала значение
2116        "0", если не использовалась буферизация.
2117        Спасибо Piotr Sikora.
2118 
2119     *) Исправление: в методах обработки соединений eventport и /dev/poll.
2120 
2121 
2122 Изменения в nginx 1.3.15                                          26.03.2013
2123 
2124     *) Изменение: открытие и закрытие соединения без отправки в нём
2125        каких-либо данных больше не записывается в access_log с кодом ошибки
2126        400.
2127 
2128     *) Добавление: модуль ngx_http_spdy_module.
2129        Спасибо Automattic за спонсирование разработки.
2130 
2131     *) Добавление: директивы limit_req_status и limit_conn_status.
2132        Спасибо Nick Marden.
2133 
2134     *) Добавление: директива image_filter_interlace.
2135        Спасибо Ивану Боброву.
2136 
2137     *) Добавление: переменная $connections_waiting в модуле
2138        ngx_http_stub_status_module.
2139 
2140     *) Добавление: теперь почтовый прокси-сервер поддерживает IPv6-бэкенды.
2141 
2142     *) Исправление: при повторной отправке запроса на бэкенд тело запроса
2143        могло передаваться неправильно; ошибка появилась в 1.3.9.
2144        Спасибо Piotr Sikora.
2145 
2146     *) Исправление: в директиве client_body_in_file_only; ошибка появилась в
2147        1.3.9.
2148 
2149     *) Исправление: ответы могли зависать, если использовались подзапросы и
2150        при обработке подзапроса происходила DNS-ошибка.
2151        Спасибо Lanshun Zhou.
2152 
2153     *) Исправление: в процедуре учёта использования бэкендов.
2154 
2155 
2156 Изменения в nginx 1.3.14                                          05.03.2013
2157 
2158     *) Добавление: переменные $connections_active, $connections_reading и
2159        $connections_writing в модуле ngx_http_stub_status_module.
2160 
2161     *) Добавление: поддержка WebSocket-соединений в модулях
2162        ngx_http_uwsgi_module и ngx_http_scgi_module.
2163 
2164     *) Исправление: в обработке виртуальных серверов при использовании SNI.
2165 
2166     *) Исправление: при использовании директивы "ssl_session_cache shared"
2167        новые сессии могли не сохраняться, если заканчивалось место в
2168        разделяемой памяти.
2169        Спасибо Piotr Sikora.
2170 
2171     *) Исправление: несколько заголовков X-Forwarded-For обрабатывались
2172        неправильно.
2173        Спасибо Neal Poole за спонсирование разработки.
2174 
2175     *) Исправление: в модуле ngx_http_mp4_module.
2176        Спасибо Gernot Vormayr.
2177 
2178 
2179 Изменения в nginx 1.3.13                                          19.02.2013
2180 
2181     *) Изменение: теперь для сборки по умолчанию используется компилятор с
2182        именем "cc".
2183 
2184     *) Добавление: поддержка проксирования WebSocket-соединений.
2185        Спасибо Apcera и CloudBees за спонсирование разработки.
2186 
2187     *) Добавление: директива auth_basic_user_file поддерживает шифрование
2188        паролей методом "{SHA}".
2189        Спасибо Louis Opter.
2190 
2191 
2192 Изменения в nginx 1.3.12                                          05.02.2013
2193 
2194     *) Добавление: директивы proxy_bind, fastcgi_bind, memcached_bind,
2195        scgi_bind и uwsgi_bind поддерживают переменные.
2196 
2197     *) Добавление: переменные $pipe, $request_length, $time_iso8601 и
2198        $time_local теперь можно использовать не только в директиве
2199        log_format.
2200        Спасибо Kiril Kalchev.
2201 
2202     *) Добавление: поддержка IPv6 в модуле ngx_http_geoip_module.
2203        Спасибо Gregor Kališnik.
2204 
2205     *) Исправление: директива proxy_method работала неверно, если была
2206        указана на уровне http.
2207 
2208     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2209        если использовался resolver и метод poll.
2210 
2211     *) Исправление: nginx мог нагружать процессор во время SSL handshake с
2212        бэкендом при использовании методов обработки соединений select, poll
2213        и /dev/poll.
2214 
2215     *) Исправление: ошибка "[crit] SSL_write() failed (SSL:)".
2216 
2217     *) Исправление: в директиве client_body_in_file_only; ошибка появилась в
2218        1.3.9.
2219 
2220     *) Исправление: в директиве fastcgi_keep_conn.
2221 
2222 
2223 Изменения в nginx 1.3.11                                          10.01.2013
2224 
2225     *) Исправление: при записи в лог мог происходить segmentation fault;
2226        ошибка появилась в 1.3.10.
2227 
2228     *) Исправление: директива proxy_pass не работала с IP-адресами без
2229        явного указания порта; ошибка появилась в 1.3.10.
2230 
2231     *) Исправление: на старте или во время переконфигурации происходил
2232        segmentation fault, если директива keepalive была указана несколько
2233        раз в одном блоке upstream.
2234 
2235     *) Исправление: параметр default директивы geo не определял значение по
2236        умолчанию для IPv6-адресов.
2237 
2238 
2239 Изменения в nginx 1.3.10                                          25.12.2012
2240 
2241     *) Изменение: для указанных в конфигурационном файле доменных имён
2242        теперь используются не только IPv4, но и IPv6 адреса.
2243 
2244     *) Изменение: теперь при использовании директивы include с маской на
2245        Unix-системах включаемые файлы сортируются в алфавитном порядке.
2246 
2247     *) Изменение: директива add_header добавляет строки в ответы с кодом
2248        201.
2249 
2250     *) Добавление: директива geo теперь поддерживает IPv6 адреса в формате
2251        CIDR.
2252 
2253     *) Добавление: параметры flush и gzip в директиве access_log.
2254 
2255     *) Добавление: директива auth_basic поддерживает переменные.
2256 
2257     *) Исправление: nginx в некоторых случаях не собирался с модулем
2258        ngx_http_perl_module.
2259 
2260     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2261        если использовался модуль ngx_http_xslt_module.
2262 
2263     *) Исправление: nginx мог не собираться на MacOSX.
2264        Спасибо Piotr Sikora.
2265 
2266     *) Исправление: при использовании директивы limit_rate с большими
2267        значениями скорости на 32-битных системах ответ мог возвращаться не
2268        целиком.
2269        Спасибо Алексею Антропову.
2270 
2271     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2272        если использовалась директива if.
2273        Спасибо Piotr Sikora.
2274 
2275     *) Исправление: ответ "100 Continue" выдавался вместе с ответом "413
2276        Request Entity Too Large".
2277 
2278     *) Исправление: директивы image_filter, image_filter_jpeg_quality и
2279        image_filter_sharpen могли наследоваться некорректно.
2280        Спасибо Ивану Боброву.
2281 
2282     *) Исправление: при использовании директивы auth_basic под Linux могли
2283        возникать ошибки "crypt_r() failed".
2284 
2285     *) Исправление: в обработке backup-серверов.
2286        Спасибо Thomas Chen.
2287 
2288     *) Исправление: при проксировании HEAD-запросов мог возвращаться
2289        некорректный ответ, если использовалась директива gzip.
2290 
2291 
2292 Изменения в nginx 1.3.9                                           27.11.2012
2293 
2294     *) Добавление: поддержка chunked transfer encoding при получении тела
2295        запроса.
2296 
2297     *) Добавление: переменные $request_time и $msec теперь можно
2298        использовать не только в директиве log_format.
2299 
2300     *) Исправление: cache manager и cache loader могли не запускаться, если
2301        использовалось более 512 listen-сокетов.
2302 
2303     *) Исправление: в модуле ngx_http_dav_module.
2304 
2305 
2306 Изменения в nginx 1.3.8                                           30.10.2012
2307 
2308     *) Добавление: параметр optional_no_ca директивы ssl_verify_client.
2309        Спасибо Михаилу Казанцеву и Eric O'Connor.
2310 
2311     *) Добавление: переменные $bytes_sent, $connection и
2312        $connection_requests теперь можно использовать не только в директиве
2313        log_format.
2314        Спасибо Benjamin Grössing.
2315 
2316     *) Добавление: параметр auto директивы worker_processes.
2317 
2318     *) Исправление: сообщения "cache file ... has md5 collision".
2319 
2320     *) Исправление: в модуле ngx_http_gunzip_filter_module.
2321 
2322     *) Исправление: в директиве ssl_stapling.
2323 
2324 
2325 Изменения в nginx 1.3.7                                           02.10.2012
2326 
2327     *) Добавление: поддержка OCSP stapling.
2328        Спасибо Comodo, DigiCert и GlobalSign за спонсирование разработки.
2329 
2330     *) Добавление: директива ssl_trusted_certificate.
2331 
2332     *) Добавление: теперь resolver случайным образом меняет порядок
2333        возвращаемых закэшированных адресов.
2334        Спасибо Антону Жулину.
2335 
2336     *) Исправление: совместимость с OpenSSL 0.9.7.
2337 
2338 
2339 Изменения в nginx 1.3.6                                           12.09.2012
2340 
2341     *) Добавление: модуль ngx_http_gunzip_filter_module.
2342 
2343     *) Добавление: директива memcached_gzip_flag.
2344 
2345     *) Добавление: параметр always директивы gzip_static.
2346 
2347     *) Исправление: в директиве "limit_req"; ошибка появилась в 1.1.14.
2348        Спасибо Charles Chen.
2349 
2350     *) Исправление: nginx не собирался gcc 4.7 с оптимизацией -O2 если
2351        использовался параметр --with-ipv6.
2352 
2353 
2354 Изменения в nginx 1.3.5                                           21.08.2012
2355 
2356     *) Изменение: модуль ngx_http_mp4_module больше не отфильтровывает
2357        дорожки в форматах, отличных от H.264 и AAC.
2358 
2359     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2360        если в директиве map в качестве значений использовались переменные.
2361 
2362     *) Исправление: в рабочем процессе мог произойти segmentation fault при
2363        использовании директивы geo с параметром ranges, но без параметра
2364        default; ошибка появилась в 0.8.43.
2365        Спасибо Zhen Chen и Weibin Yao.
2366 
2367     *) Исправление: в обработке параметра командной строки -p.
2368 
2369     *) Исправление: в почтовом прокси-сервере.
2370 
2371     *) Исправление: незначительных потенциальных ошибок.
2372        Спасибо Coverity.
2373 
2374     *) Исправление: nginx/Windows не собирался с Visual Studio 2005 Express.
2375        Спасибо HAYASHI Kentaro.
2376 
2377 
2378 Изменения в nginx 1.3.4                                           31.07.2012
2379 
2380     *) Изменение: теперь на слушающих IPv6-сокетах параметр ipv6only включён
2381        по умолчанию.
2382 
2383     *) Добавление: поддержка компилятора Clang.
2384 
2385     *) Исправление: могли создаваться лишние слушающие сокеты.
2386        Спасибо Роману Одайскому.
2387 
2388     *) Исправление: nginx/Windows мог нагружать процессор, если при запуске
2389        рабочего процесса происходила ошибка.
2390        Спасибо Ricardo Villalobos Guevara.
2391 
2392     *) Исправление: директивы proxy_pass_header, fastcgi_pass_header,
2393        scgi_pass_header, uwsgi_pass_header, proxy_hide_header,
2394        fastcgi_hide_header, scgi_hide_header и uwsgi_hide_header могли
2395        наследоваться некорректно.
2396 
2397 
2398 Изменения в nginx 1.3.3                                           10.07.2012
2399 
2400     *) Добавление: поддержка entity tags и директива etag.
2401 
2402     *) Исправление: при использовании директивы map с параметром hostnames
2403        не игнорировалась конечная точка в исходном значении.
2404 
2405     *) Исправление: для обработки запроса мог использоваться неверный
2406        location, если переход в именованный location происходил после
2407        изменения URI с помощью директивы rewrite.
2408 
2409 
2410 Изменения в nginx 1.3.2                                           26.06.2012
2411 
2412     *) Изменение: параметр single директивы keepalive теперь игнорируется.
2413 
2414     *) Изменение: сжатие SSL теперь отключено в том числе при использовании
2415        OpenSSL старее 1.0.0.
2416 
2417     *) Добавление: директиву "ip_hash" теперь можно использовать для
2418        балансировки IPv6 клиентов.
2419 
2420     *) Добавление: переменную $status теперь можно использовать не только в
2421        директиве log_format.
2422 
2423     *) Исправление: при завершении рабочего процесса мог произойти
2424        segmentation fault, если использовалась директива resolver.
2425 
2426     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2427        если использовался модуль ngx_http_mp4_module.
2428 
2429     *) Исправление: в модуле ngx_http_mp4_module.
2430 
2431     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2432        если использовались конфликтующие имена серверов с масками.
2433 
2434     *) Исправление: на платформе ARM nginx мог аварийно завершаться по
2435        сигналу SIGBUS.
2436 
2437     *) Исправление: во время переконфигурации на HP-UX в лог записывался
2438        alert "sendmsg() failed (9: Bad file number)".
2439 
2440 
2441 Изменения в nginx 1.3.1                                           05.06.2012
2442 
2443     *) Безопасность: теперь nginx/Windows игнорирует точку в конце
2444        компонента URI и не разрешает URI, содержащие последовательность
2445        ":$".
2446        Спасибо Владимиру Кочеткову, Positive Research Center.
2447 
2448     *) Добавление: директивы proxy_pass, fastcgi_pass, scgi_pass, uwsgi_pass
2449        и директива server в блоке upstream теперь поддерживают IPv6-адреса.
2450 
2451     *) Добавление: в директиве resolver теперь можно указывать порт и
2452        задавать IPv6-адреса DNS-серверов.
2453 
2454     *) Добавление: директива least_conn в блоке upstream.
2455 
2456     *) Добавление: при использовании директивы ip_hash теперь можно задавать
2457        веса серверов.
2458 
2459     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2460        если использовалась директива image_filter; ошибка появилась в 1.3.0.
2461 
2462     *) Исправление: nginx не собирался с модулем ngx_cpp_test_module; ошибка
2463        появилась в 1.1.12.
2464 
2465     *) Исправление: доступ к переменным из SSI и встроенного перла мог не
2466        работать после переконфигурации.
2467        Спасибо Yichun Zhang.
2468 
2469     *) Исправление: в модуле ngx_http_xslt_filter_module.
2470        Спасибо Kuramoto Eiji.
2471 
2472     *) Исправление: утечки памяти при использовании переменной $geoip_org.
2473        Спасибо Денису Латыпову.
2474 
2475     *) Исправление: в директивах proxy_cookie_domain и proxy_cookie_path.
2476 
2477 
2478 Изменения в nginx 1.3.0                                           15.05.2012
2479 
2480     *) Добавление: директива debug_connection теперь поддерживает
2481        IPv6-адреса и параметр "unix:".
2482 
2483     *) Добавление: директива set_real_ip_from и параметр proxy директивы geo
2484        теперь поддерживают IPv6-адреса.
2485 
2486     *) Добавление: директивы real_ip_recursive, geoip_proxy и
2487        geoip_proxy_recursive.
2488 
2489     *) Добавление: параметр proxy_recursive директивы geo.
2490 
2491     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2492        если использовалась директива resolver.
2493 
2494     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2495        если использовались директивы fastcgi_pass, scgi_pass или uwsgi_pass
2496        и бэкенд возвращал некорректный ответ.
2497 
2498     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2499        если использовалась директива rewrite и в новых аргументах запроса в
2500        строке замены использовались переменные.
2501 
2502     *) Исправление: nginx мог нагружать процессор, если было достигнуто
2503        ограничение на количество открытых файлов.
2504 
2505     *) Исправление: при использовании директивы proxy_next_upstream с
2506        параметром http_404 nginx мог бесконечно перебирать бэкенды, если в
2507        блоке upstream был хотя бы один сервер с флагом backup.
2508 
2509     *) Исправление: при использовании директивы ip_hash установка параметра
2510        down директивы server могла приводить к ненужному перераспределению
2511        клиентов между бэкендами.
2512 
2513     *) Исправление: утечки сокетов.
2514        Спасибо Yichun Zhang.
2515 
2516     *) Исправление: в модуле ngx_http_fastcgi_module.
2517 
2518 
2519 Изменения в nginx 1.2.0                                           23.04.2012
2520 
2521     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2522        если использовалась директива try_files; ошибка появилась в 1.1.19.
2523 
2524     *) Исправление: ответ мог быть передан не полностью, если использовалось
2525        больше IOV_MAX буферов.
2526 
2527     *) Исправление: в работе параметра crop директивы image_filter.
2528        Спасибо Maxim Bublis.
2529 
2530 
2531 Изменения в nginx 1.1.19                                          12.04.2012
2532 
2533     *) Безопасность: при обработке специально созданного mp4 файла модулем
2534        ngx_http_mp4_module могли перезаписываться области памяти рабочего
2535        процесса, что могло приводить к выполнению произвольного кода
2536        (CVE-2012-2089).
2537        Спасибо Matthew Daley.
2538 
2539     *) Исправление: nginx/Windows мог завершаться аварийно.
2540        Спасибо Vincent Lee.
2541 
2542     *) Исправление: nginx нагружал процессор, если все серверы в upstream'е
2543        были помечены флагом backup.
2544 
2545     *) Исправление: директивы allow и deny могли наследоваться некорректно,
2546        если в них использовались IPv6 адреса.
2547 
2548     *) Исправление: директивы modern_browser и ancient_browser могли
2549        наследоваться некорректно.
2550 
2551     *) Исправление: таймауты могли работать некорректно на Solaris/SPARC.
2552 
2553     *) Исправление: в модуле ngx_http_mp4_module.
2554 
2555 
2556 Изменения в nginx 1.1.18                                          28.03.2012
2557 
2558     *) Изменение: теперь keepalive соединения не запрещены для Safari по
2559        умолчанию.
2560 
2561     *) Добавление: переменная $connection_requests.
2562 
2563     *) Добавление: переменные $tcpinfo_rtt, $tcpinfo_rttvar,
2564        $tcpinfo_snd_cwnd и $tcpinfo_rcv_space.
2565 
2566     *) Добавление: директива worker_cpu_affinity теперь работает на FreeBSD.
2567 
2568     *) Добавление: директивы xslt_param и xslt_string_param.
2569        Спасибо Samuel Behan.
2570 
2571     *) Исправление: в configure.
2572        Спасибо Piotr Sikora.
2573 
2574     *) Исправление: в модуле ngx_http_xslt_filter_module.
2575 
2576     *) Исправление: nginx не собирался на Debian GNU/Hurd.
2577 
2578 
2579 Изменения в nginx 1.1.17                                          15.03.2012
2580 
2581     *) Безопасность: содержимое ранее освобождённой памяти могло быть
2582        отправлено клиенту, если бэкенд возвращал специально созданный ответ.
2583        Спасибо Matthew Daley.
2584 
2585     *) Исправление: при использовании встроенного перла из SSI.
2586        Спасибо Matthew Daley.
2587 
2588     *) Исправление: в модуле ngx_http_uwsgi_module.
2589 
2590 
2591 Изменения в nginx 1.1.16                                          29.02.2012
2592 
2593     *) Изменение: ограничение на количество одновременных подзапросов
2594        поднято до 200.
2595 
2596     *) Добавление: параметр from в директиве disable_symlinks.
2597 
2598     *) Добавление: директивы return и error_page теперь могут использоваться
2599        для возврата перенаправлений с кодом 307.
2600 
2601     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2602        если использовалась директива resolver и на глобальном уровне не была
2603        задана директива error_log.
2604        Спасибо Роману Арутюняну.
2605 
2606     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2607        если использовались директивы "proxy_http_version 1.1" или
2608        "fastcgi_keep_conn on".
2609 
2610     *) Исправление: утечек памяти.
2611        Спасибо Lanshun Zhou.
2612 
2613     *) Исправление: в директиве disable_symlinks.
2614 
2615     *) Исправление: при использовании ZFS размер кэша на диске мог считаться
2616        некорректно; ошибка появилась в 1.0.1.
2617 
2618     *) Исправление: nginx не собирался компилятором icc 12.1.
2619 
2620     *) Исправление: nginx не собирался gcc на Solaris; ошибка появилась в
2621        1.1.15.
2622 
2623 
2624 Изменения в nginx 1.1.15                                          15.02.2012
2625 
2626     *) Добавление: директива disable_symlinks.
2627 
2628     *) Добавление: директивы proxy_cookie_domain и proxy_cookie_path.
2629 
2630     *) Исправление: nginx мог некорректно сообщать об ошибке "upstream
2631        prematurely closed connection" вместо "upstream sent too big header".
2632        Спасибо Feibo Li.
2633 
2634     *) Исправление: nginx не собирался с модулем ngx_http_perl_module, если
2635        использовался параметр --with-openssl.
2636 
2637     *) Исправление: количество внутренних перенаправлений в именованные
2638        location'ы не ограничивалось.
2639 
2640     *) Исправление: вызов $r->flush() несколько раз подряд мог приводить к
2641        ошибкам в модуле ngx_http_gzip_filter_module.
2642 
2643     *) Исправление: при использовании директивы proxy_store с
2644        SSI-подзапросами временные файлы могли не удаляться.
2645 
2646     *) Исправление: в некоторых случаях некэшируемые переменные (такие, как
2647        $args) возвращали старое пустое закэшированное значение.
2648 
2649     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2650        если одновременно создавалось слишком много SSI-подзапросов; ошибка
2651        появилась в 0.7.25.
2652 
2653 
2654 Изменения в nginx 1.1.14                                          30.01.2012
2655 
2656     *) Добавление: теперь можно указать несколько ограничений limit_req
2657        одновременно.
2658 
2659     *) Исправление: в обработке ошибок при соединении с бэкендом.
2660        Спасибо Piotr Sikora.
2661 
2662     *) Исправление: в обработке ошибок при использовании AIO на FreeBSD.
2663 
2664     *) Исправление: в инициализации библиотеки OpenSSL.
2665 
2666     *) Исправление: директивы proxy_redirect могли наследоваться
2667        некорректно.
2668 
2669     *) Исправление: утечки памяти при переконфигурации, если использовалась
2670        директива pcre_jit.
2671 
2672 
2673 Изменения в nginx 1.1.13                                          16.01.2012
2674 
2675     *) Добавление: параметры TLSv1.1 и TLSv1.2 в директиве ssl_protocols.
2676 
2677     *) Исправление: параметры директивы limit_req наследовались некорректно;
2678        ошибка появилась в 1.1.12.
2679 
2680     *) Исправление: директива proxy_redirect некорректно обрабатывала
2681        заголовок Refresh при использовании регулярных выражений.
2682 
2683     *) Исправление: директива proxy_cache_use_stale с параметром error не
2684        возвращала ответ из кэша, если все бэкенды были признаны
2685        неработающими.
2686 
2687     *) Исправление: директива worker_cpu_affinity могла не работать.
2688 
2689     *) Исправление: nginx не собирался на Solaris; ошибка появилась в
2690        1.1.12.
2691 
2692     *) Исправление: в модуле ngx_http_mp4_module.
2693 
2694 
2695 Изменения в nginx 1.1.12                                          26.12.2011
2696 
2697     *) Изменение: после перенаправления запроса с помощью директивы
2698        error_page директива proxy_pass без URI теперь использует изменённый
2699        URI.
2700        Спасибо Lanshun Zhou.
2701 
2702     *) Добавление: директивы proxy/fastcgi/scgi/uwsgi_cache_lock,
2703        proxy/fastcgi/scgi/uwsgi_cache_lock_timeout.
2704 
2705     *) Добавление: директива pcre_jit.
2706 
2707     *) Добавление: SSI команда if поддерживает выделения в регулярных
2708        выражениях.
2709 
2710     *) Исправление: SSI команда if не работала внутри команды block.
2711 
2712     *) Исправление: директивы limit_conn_log_level и limit_req_log_level
2713        могли не работать.
2714 
2715     *) Исправление: директива limit_rate не позволяла передавать на полной
2716        скорости, даже если был указан очень большой лимит.
2717 
2718     *) Исправление: директива sendfile_max_chunk не работала, если
2719        использовалась директива limit_rate.
2720 
2721     *) Исправление: если в директиве proxy_pass использовались переменные и
2722        не был указан URI, всегда использовался URI исходного запроса.
2723 
2724     *) Исправление: после перенаправления запроса с помощью директивы
2725        try_files директива proxy_pass без URI могла использовать URI
2726        исходного запроса.
2727        Спасибо Lanshun Zhou.
2728 
2729     *) Исправление: в модуле ngx_http_scgi_module.
2730 
2731     *) Исправление: в модуле ngx_http_mp4_module.
2732 
2733     *) Исправление: nginx не собирался на Solaris; ошибка появилась в 1.1.9.
2734 
2735 
2736 Изменения в nginx 1.1.11                                          12.12.2011
2737 
2738     *) Добавление: параметр so_keepalive в директиве listen.
2739        Спасибо Всеволоду Стахову.
2740 
2741     *) Добавление: параметр if_not_empty в директивах
2742        fastcgi/scgi/uwsgi_param.
2743 
2744     *) Добавление: переменная $https.
2745 
2746     *) Добавление: директива proxy_redirect поддерживает переменные в первом
2747        параметре.
2748 
2749     *) Добавление: директива proxy_redirect поддерживает регулярные
2750        выражения.
2751 
2752     *) Исправление: переменная $sent_http_cache_control могла содержать
2753        неверное значение при использовании директивы expires.
2754        Спасибо Yichun Zhang.
2755 
2756     *) Исправление: директива read_ahead могла не работать при использовании
2757        совместно с try_files и open_file_cache.
2758 
2759     *) Исправление: если в параметре inactive директивы proxy_cache_path
2760        было указано малое время, в рабочем процессе мог произойти
2761        segmentation fault.
2762 
2763     *) Исправление: ответы из кэша могли зависать.
2764 
2765 
2766 Изменения в nginx 1.1.10                                          30.11.2011
2767 
2768     *) Исправление: при использовании AIO на Linux в рабочем процессе
2769        происходил segmentation fault; ошибка появилась в 1.1.9.
2770 
2771 
2772 Изменения в nginx 1.1.9                                           28.11.2011
2773 
2774     *) Изменение: теперь двойные кавычки экранируется при выводе
2775        SSI-командой echo.
2776        Спасибо Зауру Абасмирзоеву.
2777 
2778     *) Добавление: параметр valid в директиве resolver. По умолчанию теперь
2779        используется TTL, возвращённый DNS-сервером.
2780        Спасибо Кириллу Коринскому.
2781 
2782     *) Исправление: nginx мог перестать отвечать, если рабочий процесс
2783        завершался аварийно.
2784 
2785     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2786        если использовалось SNI; ошибка появилась в 1.1.2.
2787 
2788     *) Исправление: в директиве keepalive_disable; ошибка появилась в 1.1.8.
2789        Спасибо Александру Усову.
2790 
2791     *) Исправление: сигнал SIGWINCH переставал работать после первого
2792        обновления исполняемого файла; ошибка появилась в 1.1.1.
2793 
2794     *) Исправление: теперь ответы бэкендов, длина которых не соответствует
2795        заголовку Content-Length, не кэширутся.
2796 
2797     *) Исправление: в директиве scgi_param при использовании составных
2798        параметров.
2799 
2800     *) Исправление: в методе epoll.
2801        Спасибо Yichun Zhang.
2802 
2803     *) Исправление: в модуле ngx_http_flv_module.
2804        Спасибо Piotr Sikora.
2805 
2806     *) Исправление: в модуле ngx_http_mp4_module.
2807 
2808     *) Исправление: теперь nginx понимает IPv6-адреса в строке запроса и в
2809        заголовке Host.
2810 
2811     *) Исправление: директивы add_header и expires не работали для ответов с
2812        кодом 206, если запрос проксировался.
2813 
2814     *) Исправление: nginx не собирался на FreeBSD 10.
2815 
2816     *) Исправление: nginx не собирался на AIX.
2817 
2818 
2819 Изменения в nginx 1.1.8                                           14.11.2011
2820 
2821     *) Изменение: модуль ngx_http_limit_zone_module переименован в
2822        ngx_http_limit_conn_module.
2823 
2824     *) Изменение: директива limit_zone заменена директивой limit_conn_zone с
2825        новым синтаксисом.
2826 
2827     *) Добавление: поддержка ограничения по нескольким limit_conn на одном
2828        уровне.
2829 
2830     *) Добавление: директива image_filter_sharpen.
2831 
2832     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2833        если resolver получил большой DNS-ответ.
2834        Спасибо Ben Hawkes.
2835 
2836     *) Исправление: в вычислении ключа для кэширования, если использовалась
2837        внутренняя реализация MD5; ошибка появилась в 1.0.4.
2838 
2839     *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в
2840        заголовке запроса клиента могли передаваться бэкенду при кэшировании;
2841        или не передаваться при выключенном кэшировании, если кэширование
2842        было включено в другой части конфигурации.
2843 
2844     *) Исправление: модуль ngx_http_mp4_module выдавал неверную строку
2845        "Content-Length" в заголовке ответа, использовался аргумент start.
2846        Спасибо Piotr Sikora.
2847 
2848 
2849 Изменения в nginx 1.1.7                                           31.10.2011
2850 
2851     *) Добавление: поддержка нескольких DNS серверов в директиве "resolver".
2852        Спасибо Кириллу Коринскому.
2853 
2854     *) Исправление: на старте или во время переконфигурации происходил
2855        segmentation fault, если директива ssl использовалась на уровне http
2856        и не был указан ssl_certificate.
2857 
2858     *) Исправление: уменьшено потребление памяти при проксировании больших
2859        файлов, если они буферизировались на диск.
2860 
2861     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2862        если использовалась директива "proxy_http_version 1.1".
2863 
2864     *) Исправление: в директиве "expires @time".
2865 
2866 
2867 Изменения в nginx 1.1.6                                           17.10.2011
2868 
2869     *) Изменение во внутреннем API: теперь при внутреннем редиректе в
2870        именованный location контексты модулей очищаются.
2871        По запросу Yichun Zhang.
2872 
2873     *) Изменение: теперь если сервер, описанный в блоке upstream, был
2874        признан неработающим, то после истечения fail_timeout на него будет
2875        отправлен только один запрос; сервер будет считаться работающим, если
2876        успешно ответит на этот запрос.
2877 
2878     *) Изменение: теперь символы 0x7F-0xFF в access_log записываются в виде
2879        \xXX.
2880 
2881     *) Добавление: директивы "proxy/fastcgi/scgi/uwsgi_ignore_headers"
2882        теперь поддерживают значения X-Accel-Limit-Rate, X-Accel-Buffering и
2883        X-Accel-Charset.
2884 
2885     *) Добавление: уменьшение потребления памяти при использовании SSL.
2886 
2887     *) Исправление: некоторые UTF-8 символы обрабатывались неправильно.
2888        Спасибо Алексею Куцу.
2889 
2890     *) Исправление: директивы модуля ngx_http_rewrite_module, заданные на
2891        уровне server, применялись повторно, если для запроса не находилось
2892        ни одного location'а.
2893 
2894     *) Исправление: при использовании "aio sendfile" могла происходить
2895        утечка сокетов.
2896 
2897     *) Исправление: при использовании файлового AIO соединения с быстрыми
2898        клиентами могли быть закрыты по истечению send_timeout.
2899 
2900     *) Исправление: в модуле ngx_http_autoindex_module.
2901 
2902     *) Исправление: модуль ngx_http_mp4_module не поддерживал перемотку на
2903        32-битных платформах.
2904 
2905 
2906 Изменения в nginx 1.1.5                                           05.10.2011
2907 
2908     *) Добавление: директивы uwsgi_buffering и scgi_buffering.
2909        Спасибо Peter Smit.
2910 
2911     *) Исправление: при использовании proxy_cache_bypass могли быть
2912        закэшированы некэшируемые ответы.
2913        Спасибо John Ferlito.
2914 
2915     *) Исправление: в модуле ngx_http_proxy_module при работе с бэкендами по
2916        HTTP/1.1.
2917 
2918     *) Исправление: закэшированные ответы с пустым телом возвращались
2919        некорректно; ошибка появилась в 0.8.31.
2920 
2921     *) Исправление: ответы с кодом 201 модуля ngx_http_dav_module были
2922        некорректны; ошибка появилась в 0.8.32.
2923 
2924     *) Исправление: в директиве return.
2925 
2926     *) Исправление: при использовании директивы "ssl_session_cache builtin"
2927        происходил segmentation fault; ошибка появилась в 1.1.1.
2928 
2929 
2930 Изменения в nginx 1.1.4                                           20.09.2011
2931 
2932     *) Добавление: модуль ngx_http_upstream_keepalive.
2933 
2934     *) Добавление: директива proxy_http_version.
2935 
2936     *) Добавление: директива fastcgi_keep_conn.
2937 
2938     *) Добавление: директива worker_aio_requests.
2939 
2940     *) Исправление: если nginx был собран с файловым AIO, он не мог
2941        запускаться на Linux без поддержки AIO.
2942 
2943     *) Исправление: в обработке ошибок при работе с Linux AIO.
2944        Спасибо Hagai Avrahami.
2945 
2946     *) Исправление: уменьшено потребление памяти для долгоживущих запросов.
2947 
2948     *) Исправление: модуль ngx_http_mp4_module не поддерживал 64-битный
2949        MP4-атом co64.
2950 
2951 
2952 Изменения в nginx 1.1.3                                           14.09.2011
2953 
2954     *) Добавление: модуль ngx_http_mp4_module.
2955 
2956     *) Исправление: в Linux AIO, используемым совместно с open_file_cache.
2957 
2958     *) Исправление: open_file_cache не обновлял информацию о файле, если
2959        файл был изменён не атомарно.
2960 
2961     *) Исправление: nginx не собирался на MacOSX 10.7.
2962 
2963 
2964 Изменения в nginx 1.1.2                                           05.09.2011
2965 
2966     *) Изменение: теперь, если суммарный размер всех диапазонов больше
2967        размера исходного ответа, то nginx возвращает только исходный ответ,
2968        не обрабатывая диапазоны.
2969 
2970     *) Добавление: директива max_ranges.
2971 
2972     *) Исправление: директивы ssl_verify_client, ssl_verify_depth и
2973        ssl_prefer_server_cipher могли работать некорректно, если
2974        использовался SNI.
2975 
2976     *) Исправление: в директивах proxy/fastcgi/scgi/
2977        uwsgi_ignore_client_abort.
2978 
2979 
2980 Изменения в nginx 1.1.1                                           22.08.2011
2981 
2982     *) Изменение: теперь загрузчик кэша за каждую итерацию либо обрабатывает
2983        число файлов, указанное в параметре load_files, либо работает не
2984        дольше времени, указанного в параметре loader_threshold.
2985 
2986     *) Изменение: SIGWINCH сигнал теперь работает только в режиме демона.
2987 
2988     *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX
2989        на Solaris.
2990        Спасибо Денису Иванову.
2991 
2992     *) Добавление: теперь на NetBSD поддерживаются accept фильтры.
2993 
2994     *) Исправление: nginx не собирался на Linux 3.0.
2995 
2996     *) Исправление: в некоторых случаях nginx не использовал сжатие; ошибка
2997        появилась в 1.1.0.
2998 
2999     *) Исправление: обработка тела запроса могла быть неверной, если клиент
3000        использовал pipelining.
3001 
3002     *) Исправление: в директиве request_body_in_single_buf.
3003 
3004     *) Исправление: в директивах proxy_set_body и proxy_pass_request_body
3005        при использовании SSL-соединения с бэкендом.
3006 
3007     *) Исправление: nginx нагружал процессор, если все серверы в upstream'е
3008        были помечены флагом down.
3009 
3010     *) Исправление: при переконфигурации мог произойти segmentation fault,
3011        если в предыдущей конфигурации был определён, но не использовался
3012        ssl_session_cache.
3013 
3014     *) Исправление: при использовании большого количества backup-серверов в
3015        рабочем процессе мог произойти segmentation fault.
3016 
3017     *) Исправление: при использовании директив fastcgi/scgi/uwsgi_param со
3018        значениями, начинающимися со строки "HTTP_", в рабочем процессе мог
3019        произойти segmentation fault; ошибка появилась в 0.8.40.
3020 
3021 
3022 Изменения в nginx 1.1.0                                           01.08.2011
3023 
3024     *) Добавление: уменьшение времени работы загрузчика кэша.
3025 
3026     *) Добавление: параметры loader_files, loader_sleep и loader_threshold
3027        директив proxy/fastcgi/scgi/uwsgi_cache_path.
3028 
3029     *) Добавление: уменьшение времени загрузки конфигураций с большим
3030        количеством HTTPS серверов.
3031 
3032     *) Добавление: теперь nginx поддерживает шифры с обменом ECDHE-ключами.
3033        Спасибо Adrian Kotelba.
3034 
3035     *) Добавление: директива lingering_close.
3036        Спасибо Максиму Дунину.
3037 
3038     *) Исправление: закрытия соединения для pipelined-запросов.
3039        Спасибо Максиму Дунину.
3040 
3041     *) Исправление: nginx не запрещал сжатие при получении значения
3042        "gzip;q=0" в строке "Accept-Encoding" в заголовке запроса клиента.
3043 
3044     *) Исправление: таймаута при небуферизированном проксировании.
3045        Спасибо Максиму Дунину.
3046 
3047     *) Исправление: утечки памяти при использовании переменных в директиве
3048        proxy_pass при работе с бэкендом по HTTPS.
3049        Спасибо Максиму Дунину.
3050 
3051     *) Исправление: в проверке параметра директивы proxy_pass, заданного
3052        переменными.
3053        Спасибо Lanshun Zhou.
3054 
3055     *) Исправление: SSL не работал на QNX.
3056        Спасибо Максиму Дунину.
3057 
3058     *) Исправление: SSL модули не собирались gcc 4.6 без параметра
3059        --with-debug.
3060 
3061 
3062 Изменения в nginx 1.0.5                                           19.07.2011
3063 
3064     *) Изменение: теперь по умолчанию используются следующие шифры SSL:
3065        "HIGH:!aNULL:!MD5".
3066        Спасибо Rob Stradling.
3067 
3068     *) Добавление: директивы referer_hash_max_size и
3069        referer_hash_bucket_size.
3070        Спасибо Witold Filipczyk.
3071 
3072     *) Добавление: переменная $uid_reset.
3073 
3074     *) Исправление: при использовании кэширования в рабочем процессе мог
3075        произойти segmentation fault.
3076        Спасибо Lanshun Zhou.
3077 
3078     *) Исправление: при использовании кэширования рабочие процессы могли
3079        зациклиться во время переконфигурации; ошибка появилась в 0.8.48.
3080        Спасибо Максиму Дунину.
3081 
3082     *) Исправление: сообщения "stalled cache updating".
3083        Спасибо Максиму Дунину.
3084 
3085 
3086 Изменения в nginx 1.0.4                                           01.06.2011
3087 
3088     *) Изменение: теперь в регулярных выражениях в директиве map можно
3089        задать чувствительность к регистру с помощью префиксов "~" и "~*".
3090 
3091     *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX
3092        на Linux.
3093        Спасибо Денису Латыпову.
3094 
3095     *) Исправление: сообщения "stalled cache updating".
3096 
3097     *) Исправление: nginx не собирался с параметром
3098        --without-http_auth_basic_module; ошибка появилась в 1.0.3.
3099 
3100 
3101 Изменения в nginx 1.0.3                                           25.05.2011
3102 
3103     *) Добавление: директива auth_basic_user_file поддерживает шифрование
3104        пароля методами "$apr1", "{PLAIN}" и "{SSHA}".
3105        Спасибо Максиму Дунину.
3106 
3107     *) Добавление: директива geoip_org и переменная $geoip_org.
3108        Спасибо Александру Ускову, Arnaud Granal и Денису Латыпову.
3109 
3110     *) Добавление: модули ngx_http_geo_module и ngx_http_geoip_module
3111        поддерживают адреса IPv4, отображённые на IPv6 адреса.
3112 
3113     *) Исправление: при проверке адреса IPv4, отображённого на адрес IPv6, в
3114        рабочем процессе происходил segmentation fault, если директивы access
3115        или deny были определены только для адресов IPv6; ошибка появилась в
3116        0.8.22.
3117 
3118     *) Исправление: закэшированный ответ мог быть испорчен, если значения
3119        директив proxy/fastcgi/scgi/uwsgi_cache_bypass и proxy/fastcgi/scgi/
3120        uwsgi_no_cache были разными; ошибка появилась в 0.8.46.
3121 
3122 
3123 Изменения в nginx 1.0.2                                           10.05.2011
3124 
3125     *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX.
3126 
3127     *) Исправление: в работе параметра rotate директивы image_filter.
3128        Спасибо Adam Bocim.
3129 
3130     *) Исправление: nginx не собирался на Solaris; ошибка появилась в 1.0.1.
3131 
3132 
3133 Изменения в nginx 1.0.1                                           03.05.2011
3134 
3135     *) Изменение: теперь директива split_clients использует алгоритм
3136        MurmurHash2 из-за лучшего распределения.
3137        Спасибо Олегу Мамонтову.
3138 
3139     *) Изменение: теперь длинные строки, начинающиеся с нуля, не считаются
3140        ложными значениями.
3141        Спасибо Максиму Дунину.
3142 
3143     *) Изменение: теперь по умолчанию nginx использует значение 511 для
3144        listen backlog на Linux.
3145 
3146     *) Добавление: переменные $upstream_... можно использовать в SSI и
3147        перловом модулях.
3148 
3149     *) Исправление: теперь nginx лучше ограничивает размер кэша на диске.
3150        Спасибо Олегу Мамонтову.
3151 
3152     *) Исправление: при парсинге неправильного IPv4 адреса мог произойти
3153        segmentation fault; ошибка появилась в 0.8.22.
3154        Спасибо Максиму Дунину.
3155 
3156     *) Исправление: nginx не собирался gcc 4.6 без параметра --with-debug.
3157 
3158     *) Исправление: nginx не собирался на Solaris 9 и более ранних; ошибка
3159        появилась в 0.9.3.
3160        Спасибо Dagobert Michelsen.
3161 
3162     *) Исправление: переменная $request_time имела неверные значения, если
3163        использовались подзапросы; ошибка появилась в 0.8.47.
3164        Спасибо Игорю А. Валькову.
3165 
3166 
3167 Изменения в nginx 1.0.0                                           12.04.2011
3168 
3169     *) Исправление: cache manager мог нагружать процессор после
3170        переконфигурации.
3171        Спасибо Максиму Дунину.
3172 
3173     *) Исправление: директива "image_filter crop" неправильно работала в
3174        сочетании с "image_filter rotate 180".
3175 
3176     *) Исправление: директива "satisfy any" запрещала выдачу
3177        пользовательской страницы для 401 кода.
3178 
3179 
3180 Изменения в nginx 0.9.7                                           04.04.2011
3181 
3182     *) Добавление: теперь соединения в состоянии keepalive могут быть
3183        закрыты преждевременно, если у воркера нет свободных соединений.
3184        Спасибо Максиму Дунину.
3185 
3186     *) Добавление: параметр rotate директивы image_filter.
3187        Спасибо Adam Bocim.
3188 
3189     *) Исправление: ситуации, когда бэкенд в директивах fastcgi_pass,
3190        scgi_pass или uwsgi_pass задан выражением и ссылается на описанный
3191        upstream.
3192 
3193 
3194 Изменения в nginx 0.9.6                                           21.03.2011
3195 
3196     *) Добавление: директива map поддерживает регулярные выражения в
3197        качестве значения первого параметра.
3198 
3199     *) Добавление: переменная $time_iso8601 для access_log.
3200        Спасибо Michael Lustfield.
3201 
3202 
3203 Изменения в nginx 0.9.5                                           21.02.2011
3204 
3205     *) Изменение: теперь по умолчанию nginx использует значение -1 для
3206        listen backlog на Linux.
3207        Спасибо Андрею Нигматулину.
3208 
3209     *) Добавление: параметр utf8 в директивах geoip_country и geoip_city.
3210        Спасибо Денису Латыпову.
3211 
3212     *) Исправление: исправление в умолчательной директиве proxy_redirect,
3213        если в директиве proxy_pass не был описан URI.
3214        Спасибо Максиму Дунину.
3215 
3216     *) Исправление: директива error_page не работала с нестандартными кодами
3217        ошибок; ошибка появилась в 0.8.53.
3218        Спасибо Максиму Дунину.
3219 
3220 
3221 Изменения в nginx 0.9.4                                           21.01.2011
3222 
3223     *) Добавление: директива server_name поддерживает переменную $hostname.
3224 
3225     *) Добавление: 494 код для ошибки "Request Header Too Large".
3226 
3227 
3228 Изменения в nginx 0.9.3                                           13.12.2010
3229 
3230     *) Исправление: если для пары IPv6-адрес:порт описан только один сервер,
3231        то выделения в регулярных выражениях в директиве server_name не
3232        работали.
3233 
3234     *) Исправление: nginx не собирался под Solaris; ошибка появилась в
3235        0.9.0.
3236 
3237 
3238 Изменения в nginx 0.9.2                                           06.12.2010
3239 
3240     *) Добавление: поддержка строки "If-Unmodified-Since" в заголовке
3241        запроса клиента.
3242 
3243     *) Изменение: использование accept(), если accept4() не реализован;
3244        ошибка появилась в 0.9.0.
3245 
3246     *) Исправление: nginx не собирался под Cygwin; ошибка появилась в 0.9.0.
3247 
3248     *) Исправление: уязвимости в OpenSSL CVE-2010-4180.
3249        Спасибо Максиму Дунину.
3250 
3251 
3252 Изменения в nginx 0.9.1                                           30.11.2010
3253 
3254     *) Исправление: директивы вида "return CODE message" не работали; ошибка
3255        появилась в 0.9.0.
3256 
3257 
3258 Изменения в nginx 0.9.0                                           29.11.2010
3259 
3260     *) Добавление: директива keepalive_disable.
3261 
3262     *) Добавление: директива map поддерживает переменные в качестве значения
3263        определяемой переменной.
3264 
3265     *) Добавление: директива map поддерживает пустые строки в качестве
3266        значения первого параметра.
3267 
3268     *) Добавление: директива map поддерживает выражения в первом параметре.
3269 
3270     *) Добавление: страница руководства nginx(8).
3271        Спасибо Сергею Осокину.
3272 
3273     *) Добавление: поддержка accept4() в Linux.
3274        Спасибо Simon Liu.
3275 
3276     *) Изменение: устранение предупреждения линкера о "sys_errlist" и
3277        "sys_nerr" под Linux; предупреждение появилось в 0.8.35.
3278 
3279     *) Исправление: при использовании директивы auth_basic в рабочем
3280        процессе мог произойти segmentation fault.
3281        Спасибо Михаилу Лалетину.
3282 
3283     *) Исправление: совместимость с модулем ngx_http_eval_module; ошибка
3284        появилась в 0.8.42.
3285 
3286 
3287 Изменения в nginx 0.8.53                                          18.10.2010
3288 
3289     *) Добавление: теперь директива error_page позволяет менять код статуса
3290        у редиректа.
3291 
3292     *) Добавление: директива gzip_disable поддерживает специальную маску
3293        degradation.
3294 
3295     *) Исправление: при использовании файлового AIO могла происходить утечка
3296        сокетов.
3297        Спасибо Максиму Дунину.
3298 
3299     *) Исправление: если в первом сервере не была описана директива listen и
3300        нигде явно не описан сервер по умолчанию, то сервером по умолчанию
3301        становился следующий сервер с директивой listen; ошибка появилась в
3302        0.8.21.
3303 
3304 
3305 Изменения в nginx 0.8.52                                          28.09.2010
3306 
3307     *) Исправление: nginx использовал режим SSL для listen сокета, если для
3308        него был установлен любой listen-параметр; ошибка появилась в 0.8.51.
3309 
3310 
3311 Изменения в nginx 0.8.51                                          27.09.2010
3312 
3313     *) Изменение: директива secure_link_expires упразднена.
3314 
3315     *) Изменение: уровень логгирования ошибок resolver'а понижен с уровня
3316        alert на error.
3317 
3318     *) Добавление: теперь параметр "ssl" listen-сокета можно устанавливать
3319        несколько раз.
3320 
3321 
3322 Изменения в nginx 0.8.50                                          02.09.2010
3323 
3324     *) Добавление: директивы secure_link, secure_link_md5 и
3325        secure_link_expires модуля ngx_http_secure_link_module.
3326 
3327     *) Добавление: ключ -q.
3328        Спасибо Геннадию Махомеду.
3329 
3330     *) Исправление: при использовании кэширования рабочие процессы и могли
3331        зациклиться во время переконфигурации; ошибка появилась в 0.8.48.
3332 
3333     *) Исправление: в директиве gzip_disable.
3334        Спасибо Derrick Petzold.
3335 
3336     *) Исправление: nginx/Windows не мог посылать сигналы stop, quit,
3337        reopen, reload процессу, запущенному в другой сессии.
3338 
3339 
3340 Изменения в nginx 0.8.49                                          09.08.2010
3341 
3342     *) Добавление: директива image_filter_jpeg_quality поддерживает
3343        переменные.
3344 
3345     *) Исправление: при использовании переменной $geoip_region_name в
3346        рабочем процессе мог произойти segmentation fault; ошибка появилась в
3347        0.8.48.
3348 
3349     *) Исправление: ошибки, перехваченные error_page, кэшировались только до
3350        следующего запроса; ошибка появилась в 0.8.48.
3351 
3352 
3353 Изменения в nginx 0.8.48                                          03.08.2010
3354 
3355     *) Изменение: теперь по умолчанию директива server_name имеет значение
3356        пустое имя "".
3357        Спасибо Геннадию Махомеду.
3358 
3359     *) Изменение: теперь по умолчанию директива server_name_in_redirect
3360        имеет значение off.
3361 
3362     *) Добавление: переменные $geoip_dma_code, $geoip_area_code и
3363        $geoip_region_name.
3364        Спасибо Christine McGonagle.
3365 
3366     *) Исправление: директивы proxy_pass, fastcgi_pass, uwsgi_pass и
3367        scgi_pass не наследовались в блоки limit_except.
3368 
3369     *) Исправление: директивы proxy_cache_min_uses, fastcgi_cache_min_uses
3370        uwsgi_cache_min_uses и scgi_cache_min_uses не работали; ошибка
3371        появилась в 0.8.46.
3372 
3373     *) Исправление: директива fastcgi_split_path_info неверно использовала
3374        выделения, если в выделения попадала только часть URI.
3375        Спасибо Юрию Тарадаю и Frank Enderle.
3376 
3377     *) Исправление: директива rewrite не экранировала символ ";" при
3378        копировании из URI в аргументы.
3379        Спасибо Daisuke Murase.
3380 
3381     *) Исправление: модуль ngx_http_image_filter_module закрывал соединение,
3382        если изображение было больше размера image_filter_buffer.
3383 
3384 
3385 Изменения в nginx 0.8.47                                          28.07.2010
3386 
3387     *) Исправление: переменная $request_time имела неверные значения для
3388        подзапросов.
3389 
3390     *) Исправление: ошибки, перехваченные error_page, не кэшировались.
3391 
3392     *) Исправление: если использовался параметр max_size, то cache manager
3393        мог зациклиться; ошибка появилась в 0.8.46.
3394 
3395 
3396 Изменения в nginx 0.8.46                                          19.07.2010
3397 
3398     *) Изменение: директивы proxy_no_cache, fastcgi_no_cache, uwsgi_no_cache
3399        и scgi_no_cache теперь влияют только на сохранение закэшированного
3400        ответа.
3401 
3402     *) Добавление: директивы proxy_cache_bypass, fastcgi_cache_bypass,
3403        uwsgi_cache_bypass и scgi_cache_bypass.
3404 
3405     *) Исправление: nginx не освобождал память в keys_zone кэшей в случае
3406        ошибки работы с бэкендом: память освобождалась только по истечении
3407        времени неактивности или при недостатке памяти.
3408 
3409 
3410 Изменения в nginx 0.8.45                                          13.07.2010
3411 
3412     *) Добавление: улучшения в модуле ngx_http_xslt_filter.
3413        Спасибо Laurence Rowe.
3414 
3415     *) Исправление: ответ SSI модуля мог передаваться не полностью после
3416        команды include с параметром wait="yes"; ошибка появилась в 0.7.25.
3417        Спасибо Максиму Дунину.
3418 
3419     *) Исправление: директива listen не поддерживала параметр setfib=0.
3420 
3421 
3422 Изменения в nginx 0.8.44                                          05.07.2010
3423 
3424     *) Изменение: теперь nginx по умолчанию не кэширует ответы бэкендов, в
3425        заголовке которых есть строка "Set-Cookie".
3426 
3427     *) Добавление: директива listen поддерживает параметр setfib.
3428        Спасибо Андрею Филонову.
3429 
3430     *) Исправление: директива sub_filter могла изменять регистр букв при
3431        частичном совпадении.
3432 
3433     *) Исправление: совместимость с HP/UX.
3434 
3435     *) Исправление: совместимость с компилятором AIX xlC_r.
3436 
3437     *) Исправление: nginx считал большие пакеты SSLv2 как обычные текстовые
3438        запросы.
3439        Спасибо Miroslaw Jaworski.
3440 
3441 
3442 Изменения в nginx 0.8.43                                          30.06.2010
3443 
3444     *) Добавление: ускорение загрузки больших баз geo-диапазонов.
3445 
3446     *) Исправление: перенаправление ошибки в "location /zero {return 204;}"
3447        без изменения кода ответа оставляло тело ошибки; ошибка появилась в
3448        0.8.42.
3449 
3450     *) Исправление: nginx мог закрывать IPv6 listen сокет во время
3451        переконфигурации.
3452        Спасибо Максиму Дунину.
3453 
3454     *) Исправление: переменную $uid_set можно использовать на любой стадии
3455        обработки запроса.
3456 
3457 
3458 Изменения в nginx 0.8.42                                          21.06.2010
3459 
3460     *) Изменение: теперь nginx проверяет location'ы, заданные регулярными
3461        выражениями, если запрос полностью совпал с location'ом, заданным
3462        строкой префикса. Предыдущее поведение появилось в 0.7.1.
3463 
3464     *) Добавление: модуль ngx_http_scgi_module.
3465        Спасибо Manlio Perillo.
3466 
3467     *) Добавление: в директиве return можно добавлять текст ответа.
3468 
3469 
3470 Изменения в nginx 0.8.41                                          15.06.2010
3471 
3472     *) Безопасность: рабочий процесс nginx/Windows мог завершаться аварийно
3473        при запросе файла с неверной кодировкой UTF-8.
3474 
3475     *) Изменение: теперь nginx разрешает использовать пробелы в строке
3476        запроса.
3477 
3478     *) Исправление: директива proxy_redirect неправильно изменяла строку
3479        "Refresh" в заголовке ответа бэкенда.
3480        Спасибо Андрею Андрееву и Максиму Согину.
3481 
3482     *) Исправление: nginx не поддерживал путь без имени хоста в строке
3483        "Destination" в заголовке запроса.
3484 
3485 
3486 Изменения в nginx 0.8.40                                          07.06.2010
3487 
3488     *) Безопасность: теперь nginx/Windows игнорирует имя потока файла по
3489        умолчанию.
3490        Спасибо Jose Antonio Vazquez Gonzalez.
3491 
3492     *) Добавление: модуль ngx_http_uwsgi_module.
3493        Спасибо Roberto De Ioris.
3494 
3495     *) Добавление: директива fastcgi_param со значением, начинающимся со
3496        строки "HTTP_", изменяет строку заголовка в запросе клиента.
3497 
3498     *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в
3499        заголовке запроса клиента передавались FastCGI-серверу при
3500        кэшировании.
3501 
3502     *) Исправление: listen unix domain сокет нельзя было изменить во время
3503        переконфигурации.
3504        Спасибо Максиму Дунину.
3505 
3506 
3507 Изменения в nginx 0.8.39                                          31.05.2010
3508 
3509     *) Исправление: наследуемая директива alias неправильно работала во
3510        вложенном location'е.
3511 
3512     *) Исправление: в комбинации директив alias с переменными и try_files;
3513 
3514     *) Исправление: listen unix domain и IPv6 сокеты не наследовались во
3515        время обновления без перерыва.
3516        Спасибо Максиму Дунину.
3517 
3518 
3519 Изменения в nginx 0.8.38                                          24.05.2010
3520 
3521     *) Добавление: директивы proxy_no_cache и fastcgi_no_cache.
3522 
3523     *) Добавление: теперь при использовании переменной $scheme в директиве
3524        rewrite автоматически делается редирект.
3525        Спасибо Piotr Sikora.
3526 
3527     *) Исправление: теперь задержки в директиве limit_req соответствует
3528        описанному алгоритму.
3529        Спасибо Максиму Дунину.
3530 
3531     *) Исправление: переменную $uid_got нельзя было использовать в SSI и
3532        перловом модулях.
3533 
3534 
3535 Изменения в nginx 0.8.37                                          17.05.2010
3536 
3537     *) Добавление: модуль ngx_http_split_clients_module.
3538 
3539     *) Добавление: директива map поддерживает ключи больше 255 символов.
3540 
3541     *) Исправление: nginx игнорировал значения "private" и "no-store" в
3542        строке "Cache-Control" в заголовке ответа бэкенда.
3543 
3544     *) Исправление: параметр stub в SSI-директиве include не использовался,
3545        если пустой ответ имел код 200.
3546 
3547     *) Исправление: если проксированный или FastCGI запрос внутренне
3548        перенаправлялся в другой проксированный или FastCGI location, то в
3549        рабочем процессе мог произойти segmentation fault; ошибка появилась в
3550        0.8.33.
3551        Спасибо Yichun Zhang.
3552 
3553     *) Исправление: соединения IMAP к серверу Zimbra могло зависнуть до
3554        таймаута.
3555        Спасибо Alan Batie.
3556 
3557 
3558 Изменения в nginx 0.8.36                                          22.04.2010
3559 
3560     *) Исправление: модуль ngx_http_dav_module неправильно обрабатывал
3561        методы DELETE, COPY и MOVE для симлинков.
3562 
3563     *) Исправление: модуль SSI в подзапросах использовал закэшированные в
3564        основном запросе значения переменных $query_string, $arg_... и им
3565        подобных.
3566 
3567     *) Исправление: значение переменной повторно экранировалось после
3568        каждого вывода SSI-команды echo; ошибка появилась в 0.6.14.
3569 
3570     *) Исправление: рабочий процесс зависал при запросе файла FIFO.
3571        Спасибо Vicente Aguilar и Максиму Дунину.
3572 
3573     *) Исправление: совместимость с OpenSSL-1.0.0 на 64-битном Linux.
3574        Спасибо Максиму Дунину.
3575 
3576     *) Исправление: nginx не собирался с параметром --without-http-cache;
3577        ошибка появилась в 0.8.35.
3578 
3579 
3580 Изменения в nginx 0.8.35                                          01.04.2010
3581 
3582     *) Изменение: теперь charset-фильтр работает до SSI-фильтра.
3583 
3584     *) Добавление: директива chunked_transfer_encoding.
3585 
3586     *) Исправление: символ "&" при копировании в аргументы в правилах
3587        rewrite не экранировался.
3588 
3589     *) Исправление: nginx мог завершаться аварийно во время обработки
3590        сигнала или при использовании директивы timer_resolution на
3591        платформах, не поддерживающих методы kqueue или eventport.
3592        Спасибо George Xie и Максиму Дунину.
3593 
3594     *) Исправление: если временные файлы и постоянное место хранения
3595        располагались на разных файловых системах, то у постоянных файлов
3596        время изменения было неверным.
3597        Спасибо Максиму Дунину.
3598 
3599     *) Исправление: модуль ngx_http_memcached_module мог выдавать ошибку
3600        "memcached sent invalid trailer".
3601        Спасибо Максиму Дунину.
3602 
3603     *) Исправление: nginx не мог собрать библиотеку zlib-1.2.4 из исходных
3604        текстов.
3605        Спасибо Максиму Дунину.
3606 
3607     *) Исправление: в рабочем процессе происходил segmentation fault, если
3608        перед ответом FastCGI-сервера было много вывода в stderr; ошибка
3609        появилась в 0.8.34.
3610        Спасибо Максиму Дунину.
3611 
3612 
3613 Изменения в nginx 0.8.34                                          03.03.2010
3614 
3615     *) Исправление: nginx не поддерживал все шифры, используемые в
3616        клиентских сертификатах.
3617        Спасибо Иннокентию Еникееву.
3618 
3619     *) Исправление: nginx неправильно кэшировал FastCGI-ответы, если перед
3620        ответом было много вывода в stderr.
3621 
3622     *) Исправление: nginx не поддерживал HTTPS-рефереры.
3623 
3624     *) Исправление: nginx/Windows мог не находить файлы, если путь в
3625        конфигурации был задан в другом регистре; ошибка появилась в 0.8.33.
3626 
3627     *) Исправление: переменная $date_local выдавала неверное время, если
3628        использовался формат "%s".
3629        Спасибо Максиму Дунину.
3630 
3631     *) Исправление: если ssl_session_cache не был установлен или установлен
3632        в none, то при проверке клиентского сертификаты могла происходить
3633        ошибка "session id context uninitialized"; ошибка появилась в 0.7.1.
3634 
3635     *) Исправление: geo-диапазон возвращал значение по умолчанию, если
3636        диапазон включал в себя одну и более сетей размером /16 и не
3637        начинался на границе сети размером /16.
3638 
3639     *) Исправление: блок, используемый в параметре stub в SSI-директиве
3640        include, выводился с MIME-типом "text/plain".
3641 
3642     *) Исправление: $r->sleep() не работал; ошибка появилась в 0.8.11.
3643 
3644 
3645 Изменения в nginx 0.8.33                                          01.02.2010
3646 
3647     *) Безопасность: теперь nginx/Windows игнорирует пробелы в конце URI.
3648        Спасибо Dan Crowley, Core Security Technologies.
3649 
3650     *) Безопасность: теперь nginx/Windows игнорирует короткие имена файлов.
3651        Спасибо Dan Crowley, Core Security Technologies.
3652 
3653     *) Изменение: теперь keepalive соединения после запросов POST не
3654        запрещаются для MSIE 7.0+.
3655        Спасибо Adam Lounds.
3656 
3657     *) Изменение: теперь keepalive соединения запрещены для Safari.
3658        Спасибо Joshua Sierles.
3659 
3660     *) Исправление: если проксированный или FastCGI запрос внутренне
3661        перенаправлялся в другой проксированный или FastCGI location, то
3662        переменная $upstream_response_time могла иметь ненормально большое
3663        значение; ошибка появилась в 0.8.7.
3664 
3665     *) Исправление: в рабочем процессе мог произойти segmentation fault при
3666        отбрасывания тела запроса; ошибка появилась в 0.8.11.
3667 
3668 
3669 Изменения в nginx 0.8.32                                          11.01.2010
3670 
3671     *) Исправление: ошибки при использовании кодировки UTF-8 в
3672        ngx_http_autoindex_module.
3673        Спасибо Максиму Дунину.
3674 
3675     *) Исправление: именованные выделения в регулярных выражениях работали
3676        только для двух переменных.
3677        Спасибо Максиму Дунину.
3678 
3679     *) Исправление: теперь в строке заголовка запроса "Host" используется
3680        имя "localhost", если в директиве auth_http указан unix domain сокет.
3681        Спасибо Максиму Дунину.
3682 
3683     *) Исправление: nginx не поддерживал передачу chunk'ами для 201-ых
3684        ответов.
3685        Спасибо Julian Reich.
3686 
3687     *) Исправление: если директива "expires modified" выставляла дату в
3688        прошлом, то в строке заголовка ответа "Cache-Control" выдавалось
3689        отрицательное число.
3690        Спасибо Алексею Капранову.
3691 
3692 
3693 Изменения в nginx 0.8.31                                          23.12.2009
3694 
3695     *) Добавление: теперь директива error_page может перенаправлять ответы
3696        со статусом 301 и 302.
3697 
3698     *) Добавление: переменные $geoip_city_continent_code, $geoip_latitude и
3699        $geoip_longitude.
3700        Спасибо Arvind Sundararajan.
3701 
3702     *) Добавление: модуль ngx_http_image_filter_module теперь всегда удаляет
3703        EXIF и другие данные, если они занимают больше 5% в JPEG-файле.
3704 
3705     *) Исправление: nginx закрывал соединение при запросе закэшированного
3706        ответа с пустым телом.
3707        Спасибо Piotr Sikora.
3708 
3709     *) Исправление: nginx мог не собираться gcc 4.x при использовании
3710        оптимизации -O2 и выше.
3711        Спасибо Максиму Дунину и Денису Латыпову.
3712 
3713     *) Исправление: регулярные выражения в location всегда тестировались с
3714        учётом регистра; ошибка появилась в 0.8.25.
3715 
3716     *) Исправление: nginx кэшировал 304 ответ, если в заголовке
3717        проксируемого запроса была строка "If-None-Match".
3718        Спасибо Tim Dettrick и David Kostal.
3719 
3720     *) Исправление: nginx/Windows пытался дважды удалить временный файл при
3721        перезаписи уже существующего файла.
3722 
3723 
3724 Изменения в nginx 0.8.30                                          15.12.2009
3725 
3726     *) Изменение: теперь по умолчанию размер буфера директивы
3727        large_client_header_buffers равен 8K.
3728        Спасибо Andrew Cholakian.
3729 
3730     *) Добавление: файл conf/fastcgi.conf для простых конфигураций FastCGI.
3731 
3732     *) Исправление: nginx/Windows пытался дважды переименовать временный
3733        файл при перезаписи уже существующего файла.
3734 
3735     *) Исправление: ошибки double free or corruption, возникающей, если имя
3736        хоста не было найдено; ошибка появилась в 0.8.22.
3737        Спасибо Константину Свисту.
3738 
3739     *) Исправление: в использовании libatomic на некоторых платформах.
3740        Спасибо W-Mark Kubacki.
3741 
3742 
3743 Изменения в nginx 0.8.29                                          30.11.2009
3744 
3745     *) Изменение: теперь для проксируемых ответов HTTP/0.9 в лог пишется код
3746        ответа "009".
3747 
3748     *) Добавление: директивы addition_types, charset_types, gzip_types,
3749        ssi_types, sub_filter_types и xslt_types поддерживают параметр "*".
3750 
3751     *) Добавление: использование встроенных атомарных операций GCC 4.1+.
3752        Спасибо W-Mark Kubacki.
3753 
3754     *) Добавление: параметр --with-libatomic[=DIR] в configure.
3755        Спасибо W-Mark Kubacki.
3756 
3757     *) Исправление: listen unix domain сокет имели ограниченные права
3758        доступа.
3759 
3760     *) Исправление: закэшированные ответы ответов HTTP/0.9 неправильно
3761        обрабатывались.
3762 
3763     *) Исправление: именованные выделения в регулярных выражениях, заданные
3764        как "?P<...>", не работали в директиве server_name.
3765        Спасибо Максиму Дунину.
3766 
3767 
3768 Изменения в nginx 0.8.28                                          23.11.2009
3769 
3770     *) Исправление: nginx не собирался с параметром --without-pcre; ошибка
3771        появилась в 0.8.25.
3772 
3773 
3774 Изменения в nginx 0.8.27                                          17.11.2009
3775 
3776     *) Исправление: регулярные выражения не работали в nginx/Windows; ошибка
3777        появилась в 0.8.25.
3778 
3779 
3780 Изменения в nginx 0.8.26                                          16.11.2009
3781 
3782     *) Исправление: ошибки при использовании выделений в директиве rewrite;
3783        ошибка появилась в 0.8.25.
3784 
3785     *) Исправление: nginx не собирался без параметра --with-debug; ошибка
3786        появилась в 0.8.25.
3787 
3788 
3789 Изменения в nginx 0.8.25                                          16.11.2009
3790 
3791     *) Изменение: теперь в лог ошибок не пишется сообщение, если переменная
3792        не найдена с помощью метода $r->variable().
3793 
3794     *) Добавление: модуль ngx_http_degradation_module.
3795 
3796     *) Добавление: именованные выделения в регулярных выражениях.
3797 
3798     *) Добавление: теперь при использовании переменных в директиве
3799        proxy_pass не требуется задавать URI.
3800 
3801     *) Добавление: теперь директива msie_padding работает и для Chrome.
3802 
3803     *) Исправление: в рабочем процессе происходил segmentation fault при
3804        недостатке памяти; ошибка появилась в 0.8.18.
3805 
3806     *) Исправление: nginx передавал сжатые ответы клиентам, не
3807        поддерживающим сжатие, при настройках gzip_static on и gzip_vary off;
3808        ошибка появилась в 0.8.16.
3809 
3810 
3811 Изменения в nginx 0.8.24                                          11.11.2009
3812 
3813     *) Исправление: nginx всегда добавлял строку "Content-Encoding: gzip" в
3814        заголовок 304-ых ответов модуля ngx_http_gzip_static_module.
3815 
3816     *) Исправление: nginx не собирался без параметра --with-debug; ошибка
3817        появилась в 0.8.23.
3818 
3819     *) Исправление: параметр "unix:" в директиве set_real_ip_from
3820        неправильно наследовался с предыдущего уровня.
3821 
3822     *) Исправление: в resolver'е при определении пустого имени.
3823 
3824 
3825 Изменения в nginx 0.8.23                                          11.11.2009
3826 
3827     *) Безопасность: теперь SSL/TLS renegotiation запрещён.
3828        Спасибо Максиму Дунину.
3829 
3830     *) Исправление: listen unix domain сокет не наследовался во время
3831        обновления без перерыва.
3832 
3833     *) Исправление: параметр "unix:" в директиве set_real_ip_from не работал
3834        без ещё одной директивы с любым IP-адресом.
3835 
3836     *) Исправление: segmentation fault и зацикливания в resolver'е.
3837 
3838     *) Исправление: в resolver'е.
3839        Спасибо Артёму Бохану.
3840 
3841 
3842 Изменения в nginx 0.8.22                                          03.11.2009
3843 
3844     *) Добавление: директивы proxy_bind, fastcgi_bind и memcached_bind.
3845 
3846     *) Добавление: директивы access и deny поддерживают IPv6.
3847 
3848     *) Добавление: директива set_real_ip_from поддерживает IPv6 адреса в
3849        заголовках запроса.
3850 
3851     *) Добавление: параметр "unix:" в директиве set_real_ip_from.
3852 
3853     *) Исправление: nginx не удалял unix domain сокет после тестирования
3854        конфигурации.
3855 
3856     *) Исправление: nginx удалял unix domain сокет во время обновления без
3857        перерыва.
3858 
3859     *) Исправление: оператор "!-x" не работал.
3860        Спасибо Максиму Дунину.
3861 
3862     *) Исправление: в рабочем процессе мог произойти segmentation fault при
3863        использовании limit_rate в HTTPS сервере.
3864        Спасибо Максиму Дунину.
3865 
3866     *) Исправление: при записи в лог переменной $limit_rate в рабочем
3867        процессе происходил segmentation fault.
3868        Спасибо Максиму Дунину.
3869 
3870     *) Исправление: в рабочем процессе мог произойти segmentation fault,
3871        если внутри блока server не было директивы listen; ошибка появилась в
3872        0.8.21.
3873 
3874 
3875 Изменения в nginx 0.8.21                                          26.10.2009
3876 
3877     *) Добавление: теперь ключ -V показывает статус поддержки TLS SNI.
3878 
3879     *) Добавление: директива listen модуля HTTP поддерживает unix domain
3880        сокеты.
3881        Спасибо Hongli Lai.
3882 
3883     *) Добавление: параметр "default_server" в директиве listen.
3884 
3885     *) Добавление: теперь параметр "default" не обязателен для установки
3886        параметров listen-сокета.
3887 
3888     *) Исправление: nginx не поддерживал даты в 2038 году на 32-битных
3889        платформах;
3890 
3891     *) Исправление: утечки сокетов; ошибка появилась в 0.8.11.
3892 
3893 
3894 Изменения в nginx 0.8.20                                          14.10.2009
3895 
3896     *) Изменение: теперь по умолчанию используются следующие шифры SSL:
3897        "HIGH:!ADH:!MD5".
3898 
3899     *) Исправление: модуль ngx_http_autoindex_module не показывал последний
3900        слэш для линков на каталоги; ошибка появилась в 0.7.15.
3901 
3902     *) Исправление: nginx не закрывал лог, заданный параметром конфигурации
3903        --error-log-path; ошибка появилась в 0.7.53.
3904 
3905     *) Исправление: nginx не считал запятую разделителем в строке
3906        "Cache-Control" в заголовке ответа бэкенда.
3907 
3908     *) Исправление: nginx/Windows мог не создать временный файл, файл в кэше
3909        или файл с помощью директив proxy/fastcgi_store, если рабочий процесс
3910        не имел достаточно прав для работы с каталогами верхнего уровня.
3911 
3912     *) Исправление: строки "Set-Cookie" и "P3P" в заголовке ответа
3913        FastCGI-сервера не скрывались при кэшировании, если не использовались
3914        директивы fastcgi_hide_header с любыми параметрами.
3915 
3916     *) Исправление: nginx неверно считал размер кэша на диске.
3917 
3918 
3919 Изменения в nginx 0.8.19                                          06.10.2009
3920 
3921     *) Изменение: теперь протокол SSLv2 по умолчанию запрещён.
3922 
3923     *) Изменение: теперь по умолчанию используются следующие шифры SSL:
3924        "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM".
3925 
3926     *) Исправление: директива limit_req не работала; ошибка появилась в
3927        0.8.18.
3928 
3929 
3930 Изменения в nginx 0.8.18                                          06.10.2009
3931 
3932     *) Добавление: директива read_ahead.
3933 
3934     *) Добавление: теперь можно использовать несколько директив
3935        perl_modules.
3936 
3937     *) Добавление: директивы limit_req_log_level и limit_conn_log_level.
3938 
3939     *) Исправление: теперь директива limit_req соответствует алгоритму leaky
3940        bucket.
3941        Спасибо Максиму Дунину.
3942 
3943     *) Исправление: nginx не работал на Linux/sparc.
3944        Спасибо Marcus Ramberg.
3945 
3946     *) Исправление: nginx слал символ '\0' в строке "Location" в заголовке в
3947        ответе на запрос MKCOL.
3948        Спасибо Xie Zhenye.
3949 
3950     *) Исправление: вместо кода ответа 499 в лог записывался код 0; ошибка
3951        появилась в 0.8.11.
3952 
3953     *) Исправление: утечки сокетов; ошибка появилась в 0.8.11.
3954 
3955 
3956 Изменения в nginx 0.8.17                                          28.09.2009
3957 
3958     *) Безопасность: теперь символы "/../" запрещены в строке "Destination"
3959        в заголовке запроса.
3960 
3961     *) Изменение: теперь значение переменной $host всегда в нижнем регистре.
3962 
3963     *) Добавление: переменная $ssl_session_id.
3964 
3965     *) Исправление: утечки сокетов; ошибка появилась в 0.8.11.
3966 
3967 
3968 Изменения в nginx 0.8.16                                          22.09.2009
3969 
3970     *) Добавление: директива image_filter_transparency.
3971 
3972     *) Исправление: директива "addition_types" была неверно названа
3973        "addtion_types".
3974 
3975     *) Исправление: порчи кэша resolver'а.
3976        Спасибо Matthew Dempsky.
3977 
3978     *) Исправление: утечки памяти в resolver'е.
3979        Спасибо Matthew Dempsky.
3980 
3981     *) Исправление: неверная строка запроса в переменной $request
3982        записывалась в access_log только при использовании error_log на
3983        уровне info или debug.
3984 
3985     *) Исправление: в поддержке альфа-канала PNG в модуле
3986        ngx_http_image_filter_module.
3987 
3988     *) Исправление: nginx всегда добавлял строку "Vary: Accept-Encoding" в
3989        заголовок ответа, если обе директивы gzip_static и gzip_vary были
3990        включены.
3991 
3992     *) Исправление: в поддержке кодировки UTF-8 директивой try_files в
3993        nginx/Windows.
3994 
3995     *) Исправление: ошибки при использовании post_action; ошибка появилась в
3996        0.8.11.
3997        Спасибо Игорю Артемьеву.
3998 
3999 
4000 Изменения в nginx 0.8.15                                          14.09.2009
4001 
4002     *) Безопасность: при обработке специально созданного запроса в рабочем
4003        процессе мог произойти segmentation fault.
4004        Спасибо Chris Ries.
4005 
4006     *) Исправление: если были описаны имена .domain.tld, .sub.domain.tld и
4007        .domain-some.tld, то имя .sub.domain.tld попадало под маску
4008        .domain.tld.
4009 
4010     *) Исправление: в поддержке прозрачности в модуле
4011        ngx_http_image_filter_module.
4012 
4013     *) Исправление: в файловом AIO.
4014 
4015     *) Исправление: ошибки при использовании X-Accel-Redirect; ошибка
4016        появилась в 0.8.11.
4017 
4018     *) Исправление: ошибки при использовании встроенного перла; ошибка
4019        появилась в 0.8.11.
4020 
4021 
4022 Изменения в nginx 0.8.14                                          07.09.2009
4023 
4024     *) Исправление: устаревший закэшированный запрос мог залипнуть в
4025        состоянии "UPDATING".
4026 
4027     *) Исправление: при использовании error_log на уровне info или debug в
4028        рабочем процессе мог произойти segmentation fault.
4029        Спасибо Сергею Боченкову.
4030 
4031     *) Исправление: ошибки при использовании встроенного перла; ошибка
4032        появилась в 0.8.11.
4033 
4034     *) Исправление: директива error_page не перенаправляла ошибку 413;
4035        ошибка появилась в 0.6.10.
4036 
4037 
4038 Изменения в nginx 0.8.13                                          31.08.2009
4039 
4040     *) Исправление: в директиве "aio sendfile"; ошибка появилась в 0.8.12.
4041 
4042     *) Исправление: nginx не собирался без параметра --with-file-aio на
4043        FreeBSD; ошибка появилась в 0.8.12.
4044 
4045 
4046 Изменения в nginx 0.8.12                                          31.08.2009
4047 
4048     *) Добавление: параметр sendfile в директиве aio во FreeBSD.
4049 
4050     *) Исправление: ошибки при использовании try_files; ошибка появилась в
4051        0.8.11.
4052 
4053     *) Исправление: ошибки при использовании memcached; ошибка появилась в
4054        0.8.11.
4055 
4056 
4057 Изменения в nginx 0.8.11                                          28.08.2009
4058 
4059     *) Изменение: теперь директива "gzip_disable msie6" не запрещает сжатие
4060        для MSIE 6.0 SV1.
4061 
4062     *) Добавление: поддержка файлового AIO во FreeBSD и Linux.
4063 
4064     *) Добавление: директива directio_alignment.
4065 
4066 
4067 Изменения в nginx 0.8.10                                          24.08.2009
4068 
4069     *) Исправление: утечек памяти при использовании базы GeoIP City.
4070 
4071     *) Исправление: ошибки при копировании временных файлов в постоянное
4072        место хранения; ошибка появилась в 0.8.9.
4073 
4074 
4075 Изменения в nginx 0.8.9                                           17.08.2009
4076 
4077     *) Добавление: теперь стартовый загрузчик кэша работает в отдельном
4078        процесс; это должно улучшить обработку больших кэшей.
4079 
4080     *) Добавление: теперь временные файлы и постоянное место хранения могут
4081        располагаться на разных файловых системах.
4082 
4083 
4084 Изменения в nginx 0.8.8                                           10.08.2009
4085 
4086     *) Исправление: в обработке заголовков ответа, разделённых в
4087        FastCGI-записях.
4088 
4089     *) Исправление: если запрос обрабатывался в двух проксированных или
4090        FastCGI location'ах и в первом из них использовалось кэширование, то
4091        в рабочем процессе происходил segmentation fault; ошибка появилась в
4092        0.8.7.
4093 
4094 
4095 Изменения в nginx 0.8.7                                           27.07.2009
4096 
4097     *) Изменение: минимальная поддерживаемая версия OpenSSL - 0.9.7.
4098 
4099     *) Изменение: параметр ask директивы ssl_verify_client изменён на
4100        параметр optional и теперь он проверяет клиентский сертификат, если
4101        он был предложен.
4102        Спасибо Brice Figureau.
4103 
4104     *) Добавление: переменная $ssl_client_verify.
4105        Спасибо Brice Figureau.
4106 
4107     *) Добавление: директива ssl_crl.
4108        Спасибо Brice Figureau.
4109 
4110     *) Добавление: параметр proxy директивы geo.
4111 
4112     *) Добавление: директива image_filter поддерживает переменные для
4113        задания размеров.
4114 
4115     *) Исправление: использование переменной $ssl_client_cert портило
4116        память; ошибка появилась в 0.7.7.
4117        Спасибо Сергею Журавлёву.
4118 
4119     *) Исправление: директивы proxy_pass_header и fastcgi_pass_header" не
4120        передавали клиенту строки "X-Accel-Redirect", "X-Accel-Limit-Rate",
4121        "X-Accel-Buffering" и "X-Accel-Charset" из заголовка ответа бэкенда.
4122        Спасибо Максиму Дунину.
4123 
4124     *) Исправление: в обработке строк "Last-Modified" и "Accept-Ranges" в
4125        заголовке ответа бэкенда; ошибка появилась в 0.7.44.
4126        Спасибо Максиму Дунину.
4127 
4128     *) Исправление: ошибки "[alert] zero size buf" при получении пустых
4129        ответы в подзапросах; ошибка появилась в 0.8.5.
4130 
4131 
4132 Изменения в nginx 0.8.6                                           20.07.2009
4133 
4134     *) Добавление: модуль ngx_http_geoip_module.
4135 
4136     *) Исправление: XSLT-фильтр мог выдавать ошибку "not well formed XML
4137        document" для правильного документа.
4138        Спасибо Kuramoto Eiji.
4139 
4140     *) Исправление: в MacOSX, Cygwin и nginx/Windows при проверке
4141        location'ов, заданных регулярным выражением, теперь всегда делается
4142        сравнение без учёта регистра символов.
4143 
4144     *) Исправление: теперь nginx/Windows игнорирует точки в конце URI.
4145        Спасибо Hugo Leisink.
4146 
4147     *) Исправление: имя файла указанного в --conf-path игнорировалось при
4148        установке; ошибка появилась в 0.6.6.
4149        Спасибо Максиму Дунину.
4150 
4151 
4152 Изменения в nginx 0.8.5                                           13.07.2009
4153 
4154     *) Исправление: теперь nginx разрешает подчёркивания в методе запроса.
4155 
4156     *) Исправление: при использовании HTTP Basic-аутентификации на Windows
4157        для неверных имени/пароля возвращалась 500-ая ошибка.
4158 
4159     *) Исправление: ответы модуля ngx_http_perl_module не работали в
4160        подзапросах.
4161 
4162     *) Исправление: в модуле ngx_http_limit_req_module.
4163        Спасибо Максиму Дунину.
4164 
4165 
4166 Изменения в nginx 0.8.4                                           22.06.2009
4167 
4168     *) Исправление: nginx не собирался с параметром --without-http-cache;
4169        ошибка появилась в 0.8.3.
4170 
4171 
4172 Изменения в nginx 0.8.3                                           19.06.2009
4173 
4174     *) Добавление: переменная $upstream_cache_status.
4175 
4176     *) Исправление: nginx не собирался на MacOSX 10.6.
4177 
4178     *) Исправление: nginx не собирался с параметром --without-http-cache;
4179        ошибка появилась в 0.8.2.
4180 
4181     *) Исправление: если использовался перехват 401 ошибки от бэкенда и
4182        бэкенд не возвращал строку "WWW-Authenticate" в заголовке ответа, то
4183        в рабочем процессе происходил segmentation fault.
4184        Спасибо Евгению Мычло.
4185 
4186 
4187 Изменения в nginx 0.8.2                                           15.06.2009
4188 
4189     *) Исправление: во взаимодействии open_file_cache и proxy/fastcgi кэша
4190        на старте.
4191 
4192     *) Исправление: open_file_cache мог кэшировать открытые файлы очень
4193        долго; ошибка появилась в 0.7.4.
4194 
4195 
4196 Изменения в nginx 0.8.1                                           08.06.2009
4197 
4198     *) Добавление: параметр updating в директивах proxy_cache_use_stale и
4199        fastcgi_cache_use_stale.
4200 
4201     *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в
4202        заголовке запроса клиента передавались бэкенду при кэшировании, если
4203        не использовалась директива proxy_set_header с любыми параметрами.
4204 
4205     *) Исправление: строки "Set-Cookie" и "P3P" в заголовке ответа бэкенда
4206        не скрывались при кэшировании, если не использовались директивы
4207        proxy_hide_header/fastcgi_hide_header с любыми параметрами.
4208 
4209     *) Исправление: модуль ngx_http_image_filter_module не понимал формат
4210        GIF87a.
4211        Спасибо Денису Ильиных.
4212 
4213     *) Исправление: nginx не собирался на Solaris 10 и более ранних; ошибка
4214        появилась в 0.7.56.
4215 
4216 
4217 Изменения в nginx 0.8.0                                           02.06.2009
4218 
4219     *) Добавление: директива keepalive_requests.
4220 
4221     *) Добавление: директива limit_rate_after.
4222        Спасибо Ivan Debnar.
4223 
4224     *) Исправление: XSLT-фильтр не работал в подзапросах.
4225 
4226     *) Исправление: обработке относительных путей в nginx/Windows.
4227 
4228     *) Исправление: в proxy_store, fastcgi_store, proxy_cache и
4229        fastcgi_cache в nginx/Windows.
4230 
4231     *) Исправление: в обработке ошибок выделения памяти.
4232        Спасибо Максиму Дунину и Кириллу Коринскому.
4233 
4234 
4235 Изменения в nginx 0.7.59                                          25.05.2009
4236 
4237     *) Добавление: директивы proxy_cache_methods и fastcgi_cache_methods.
4238 
4239     *) Исправление: утечки сокетов; ошибка появилась в 0.7.25.
4240        Спасибо Максиму Дунину.
4241 
4242     *) Исправление: при использовании переменной $request_body в рабочем
4243        процессе происходил segmentation fault, если в запросе не было тела;
4244        ошибка появилась в 0.7.58.
4245 
4246     *) Исправление: SSL-модули могли не собираться на Solaris и Linux;
4247        ошибка появилась в 0.7.56.
4248 
4249     *) Исправление: ответы модуля ngx_http_xslt_filter_module не
4250        обрабатывались SSI-, charset- и gzip-фильтрами.
4251 
4252     *) Исправление: директива charset не ставила кодировку для ответов
4253        модуля ngx_http_gzip_static_module.
4254 
4255 
4256 Изменения в nginx 0.7.58                                          18.05.2009
4257 
4258     *) Добавление: директива listen почтового прокси-сервера поддерживает
4259        IPv6.
4260 
4261     *) Добавление: директива image_filter_jpeg_quality.
4262 
4263     *) Добавление: директива client_body_in_single_buffer.
4264 
4265     *) Добавление: переменная $request_body.
4266 
4267     *) Исправление: в модуле ngx_http_autoindex_module в ссылках на имена
4268        файлов, содержащих символ ":".
4269 
4270     *) Исправление: процедура "make upgrade" не работала; ошибка появилась в
4271        0.7.53.
4272        Спасибо Денису Латыпову.
4273 
4274 
4275 Изменения в nginx 0.7.57                                          12.05.2009
4276 
4277     *) Исправление: при перенаправлении ошибок модуля
4278        ngx_http_image_filter_module в именованный location в рабочем
4279        процессе происходил floating-point fault; ошибка появилась в 0.7.56.
4280 
4281 
4282 Изменения в nginx 0.7.56                                          11.05.2009
4283 
4284     *) Добавление: nginx/Windows поддерживает IPv6 в директиве listen модуля
4285        HTTP.
4286 
4287     *) Исправление: в модуле ngx_http_image_filter_module.
4288 
4289 
4290 Изменения в nginx 0.7.55                                          06.05.2009
4291 
4292     *) Исправление: параметры http_XXX в директивах proxy_cache_use_stale и
4293        fastcgi_cache_use_stale не работали.
4294 
4295     *) Исправление: fastcgi кэш не кэшировал ответы, состоящие только из
4296        заголовка.
4297 
4298     *) Исправление: ошибки "select() failed (9: Bad file descriptor)" в
4299        nginx/Unix и "select() failed (10038: ...)" в nginx/Windows.
4300 
4301     *) Исправление: при использовании директивы debug_connection в рабочем
4302        процессе мог произойти segmentation fault; ошибка появилась в 0.7.54.
4303 
4304     *) Исправление: в сборке модуля ngx_http_image_filter_module.
4305 
4306     *) Исправление: файлы больше 2G не передавались с использованием
4307        $r->sendfile.
4308        Спасибо Максиму Дунину.
4309 
4310 
4311 Изменения в nginx 0.7.54                                          01.05.2009
4312 
4313     *) Добавление: модуль ngx_http_image_filter_module.
4314 
4315     *) Добавление: директивы proxy_ignore_headers и fastcgi_ignore_headers.
4316 
4317     *) Исправление: при использовании переменных "open_file_cache_errors on"
4318        в рабочем процессе мог произойти segmentation fault; ошибка появилась
4319        в 0.7.53.
4320 
4321     *) Исправление: директива "port_in_redirect off" не работала; ошибка
4322        появилась в 0.7.39.
4323 
4324     *) Исправление: улучшение обработки ошибок метода select.
4325 
4326     *) Исправление: ошибки "select() failed (10022: ...)" в nginx/Windows.
4327 
4328     *) Исправление: в текстовых сообщениях об ошибках в nginx/Windows;
4329        ошибка появилась в 0.7.53.
4330 
4331 
4332 Изменения в nginx 0.7.53                                          27.04.2009
4333 
4334     *) Изменение: теперь лог, указанный в --error-log-path, создаётся с
4335        самого начала работы.
4336 
4337     *) Добавление: теперь ошибки и предупреждения при старте записываются в
4338        error_log и выводятся на stderr.
4339 
4340     *) Добавление: при сборке с пустым параметром --prefix= nginx использует
4341        как префикс каталог, в котором он был запущен.
4342 
4343     *) Добавление: ключ -p.
4344 
4345     *) Добавление: ключ -s на Unix-платформах.
4346 
4347     *) Добавление: ключи -? и -h.
4348        Спасибо Jerome Loyet.
4349 
4350     *) Добавление: теперь ключи можно задавать в сжатой форме.
4351 
4352     *) Исправление: nginx/Windows не работал, если файл конфигурации был
4353        задан ключом -c.
4354 
4355     *) Исправление: при использовании директив proxy_store, fastcgi_store,
4356        proxy_cache или fastcgi_cache временные файлы могли не удаляться.
4357        Спасибо Максиму Дунину.
4358 
4359     *) Исправление: в заголовке Auth-Method запроса серверу аутентификации
4360        почтового прокси-сервера передавалось неверное значение; ошибка
4361        появилась в 0.7.34.
4362        Спасибо Simon Lecaille.
4363 
4364     *) Исправление: при логгировании на Linux не писались текстовые описания
4365        системных ошибок; ошибка появилась в 0.7.45.
4366 
4367     *) Исправление: директива fastcgi_cache_min_uses не работала.
4368        Спасибо Андрею Воробьёву.
4369 
4370 
4371 Изменения в nginx 0.7.52                                          20.04.2009
4372 
4373     *) Добавление: первая бинарная версия под Windows.
4374 
4375     *) Исправление: корректная обработка метода HEAD при кэшировании.
4376 
4377     *) Исправление: корректная обработка строк "If-Modified-Since",
4378        "If-Range" и им подобных в заголовке запроса клиента при кэшировании.
4379 
4380     *) Исправление: теперь строки "Set-Cookie" и "P3P" скрываются в
4381        заголовке ответа для закэшированных ответов.
4382 
4383     *) Исправление: если nginx был собран с модулем ngx_http_perl_module и
4384        perl поддерживал потоки, то при выходе основного процесса могла
4385        выдаваться ошибка "panic: MUTEX_LOCK".
4386 
4387     *) Исправление: nginx не собирался с параметром --without-http-cache;
4388        ошибка появилась в 0.7.48.
4389 
4390     *) Исправление: nginx не собирался на платформах, отличных от i386,
4391        amd64, sparc и ppc; ошибка появилась в 0.7.42.
4392 
4393 
4394 Изменения в nginx 0.7.51                                          12.04.2009
4395 
4396     *) Добавление: директива try_files поддерживает код ответа в последнем
4397        параметре.
4398 
4399     *) Добавление: теперь в директиве return можно использовать любой код
4400        ответа.
4401 
4402     *) Исправление: директива error_page делала внешний редирект без строки
4403        запроса; ошибка появилась в 0.7.44.
4404 
4405     *) Исправление: если сервера слушали на нескольких явно описанных
4406        адресах, то виртуальные сервера могли не работать; ошибка появилась в
4407        0.7.39.
4408 
4409 
4410 Изменения в nginx 0.7.50                                          06.04.2009
4411 
4412     *) Исправление: переменные $arg_... не работали; ошибка появилась в
4413        0.7.49.
4414 
4415 
4416 Изменения в nginx 0.7.49                                          06.04.2009
4417 
4418     *) Исправление: при использовании переменных $arg_... в рабочем процессе
4419        мог произойти segmentation fault; ошибка появилась в 0.7.48.
4420 
4421 
4422 Изменения в nginx 0.7.48                                          06.04.2009
4423 
4424     *) Добавление: директива proxy_cache_key.
4425 
4426     *) Исправление: теперь nginx учитывает при кэшировании строки
4427        "X-Accel-Expires", "Expires" и "Cache-Control" в заголовке ответа
4428        бэкенда.
4429 
4430     *) Исправление: теперь nginx кэширует только ответы на запросы GET.
4431 
4432     *) Исправление: директива fastcgi_cache_key не наследовалась.
4433 
4434     *) Исправление: переменные $arg_... не работали с SSI-подзапросами.
4435        Спасибо Максиму Дунину.
4436 
4437     *) Исправление: nginx не собирался с библиотекой uclibc.
4438        Спасибо Timothy Redaelli.
4439 
4440     *) Исправление: nginx не собирался на OpenBSD; ошибка появилась
4441        в 0.7.46.
4442 
4443 
4444 Изменения в nginx 0.7.47                                          01.04.2009
4445 
4446     *) Исправление: nginx не собирался на FreeBSD 6 и более ранних версиях;
4447        ошибка появилась в 0.7.46.
4448 
4449     *) Исправление: nginx не собирался на MacOSX; ошибка появилась в 0.7.46.
4450 
4451     *) Исправление: если использовался параметр max_size, то cache manager
4452        мог удалить весь кэш; ошибка появилась в 0.7.46.
4453 
4454     *) Изменение: в рабочем процессе мог произойти segmentation fault, если
4455        директивы proxy_cache/fastcgi_cache и proxy_cache_valid/
4456        fastcgi_cache_valid не были заданы на одном уровне; ошибка появилась
4457        в 0.7.46.
4458 
4459     *) Исправление: в рабочем процессе мог произойти segmentation fault при
4460        перенаправлении запроса проксированному или FastCGI-серверу с помощью
4461        error_page или try_files; ошибка появилась в 0.7.44.
4462 
4463 
4464 Изменения в nginx 0.7.46                                          30.03.2009
4465 
4466     *) Исправление: архив предыдущего релиза был неверным.
4467 
4468 
4469 Изменения в nginx 0.7.45                                          30.03.2009
4470 
4471     *) Изменение: теперь директивы proxy_cache и proxy_cache_valid можно
4472        задавать на разных уровнях.
4473 
4474     *) Изменение: параметр clean_time в директиве proxy_cache_path удалён.
4475 
4476     *) Добавление: параметр max_size в директиве proxy_cache_path.
4477 
4478     *) Добавление: предварительная поддержка кэширования в модуле
4479        ngx_http_fastcgi_module.
4480 
4481     *) Добавление: теперь при ошибках выделения в разделяемой памяти в логе
4482        указываются названия директивы и зоны.
4483 
4484     *) Исправление: директива "add_header last-modified ''" не удаляла в
4485        заголовке ответа строку "Last-Modified"; ошибка появилась в 0.7.44.
4486 
4487     *) Исправление: в директиве auth_basic_user_file не работал
4488        относительный путь, заданный строкой без переменных; ошибка появилась
4489        в 0.7.44.
4490        Спасибо Jerome Loyet.
4491 
4492     *) Исправление: в директиве alias, заданной переменными без ссылок на
4493        выделения в регулярных выражениях; ошибка появилась в 0.7.42.
4494 
4495 
4496 Изменения в nginx 0.7.44                                          23.03.2009
4497 
4498     *) Добавление: предварительная поддержка кэширования в модуле
4499        ngx_http_proxy_module.
4500 
4501     *) Добавление: параметр --with-pcre в configure.
4502 
4503     *) Добавление: теперь директива try_files может быть использована на
4504        уровне server.
4505 
4506     *) Исправление: директива try_files неправильно обрабатывала строку
4507        запроса в последнем параметре.
4508 
4509     *) Исправление: директива try_files могла неверно тестировать каталоги.
4510 
4511     *) Исправление: если для пары адрес:порт описан только один сервер, то
4512        выделения в регулярных выражениях в директиве server_name не
4513        работали.
4514 
4515 
4516 Изменения в nginx 0.7.43                                          18.03.2009
4517 
4518     *) Исправление: запрос обрабатывался неверно, если директива root
4519        использовала переменные; ошибка появилась в 0.7.42.
4520 
4521     *) Исправление: если сервер слушал на адресах типа "*", то значение
4522        переменной $server_addr было "0.0.0.0"; ошибка появилась в 0.7.36.
4523 
4524 
4525 Изменения в nginx 0.7.42                                          16.03.2009
4526 
4527     *) Изменение: ошибка "Invalid argument", возвращаемая
4528        setsockopt(TCP_NODELAY) на Solaris, теперь игнорируется.
4529 
4530     *) Изменение: при отсутствии файла, указанного в директиве
4531        auth_basic_user_file, теперь возвращается ошибка 403 вместо 500.
4532 
4533     *) Добавление: директива auth_basic_user_file поддерживает переменные.
4534        Спасибо Кириллу Коринскому.
4535 
4536     *) Добавление: директива listen поддерживает параметр ipv6only.
4537        Спасибо Zhang Hua.
4538 
4539     *) Исправление: в директиве alias со ссылками на выделения в регулярных
4540        выражениях; ошибка появилась в 0.7.40.
4541 
4542     *) Исправление: совместимость с Tru64 UNIX.
4543        Спасибо Dustin Marquess.
4544 
4545     *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась
4546        в 0.7.41.
4547 
4548 
4549 Изменения в nginx 0.7.41                                          11.03.2009
4550 
4551     *) Исправление: в рабочем процессе мог произойти segmentation fault,
4552        если в server_name или location были выделения в регулярных
4553        выражениях; ошибка появилась в 0.7.40.
4554        Спасибо Владимиру Сопоту.
4555 
4556 
4557 Изменения в nginx 0.7.40                                          09.03.2009
4558 
4559     *) Добавление: директива location поддерживает выделения в регулярных
4560        выражениях.
4561 
4562     *) Добавление: директиву alias с ссылками на выделения в регулярных
4563        выражениях можно использовать внутри location'а, заданного регулярным
4564        выражением с выделениями.
4565 
4566     *) Добавление: директива server_name поддерживает выделения в регулярных
4567        выражениях.
4568 
4569     *) Изменение: модуль ngx_http_autoindex_module не показывал последний
4570        слэш для каталогов на файловой системе XFS; ошибка появилась в
4571        0.7.15.
4572        Спасибо Дмитрию Кузьменко.
4573 
4574 
4575 Изменения в nginx 0.7.39                                          02.03.2009
4576 
4577     *) Исправление: при включённом сжатии большие ответы с использованием
4578        SSI могли зависать; ошибка появилась в 0.7.28.
4579        Спасибо Артёму Бохану.
4580 
4581     *) Исправление: при использовании коротких статических вариантов в
4582        директиве try_files в рабочем процессе мог произойти segmentation
4583        fault.
4584 
4585 
4586 Изменения в nginx 0.7.38                                          23.02.2009
4587 
4588     *) Добавление: логгирование ошибок аутентификации.
4589 
4590     *) Исправление: имя/пароль, заданные в auth_basic_user_file,
4591        игнорировались после нечётного числа пустых строк.
4592        Спасибо Александру Загребину.
4593 
4594     *) Исправление: при использовании длинного пути в unix domain сокете в
4595        главном процессе происходил segmentation fault; ошибка появилась в
4596        0.7.36.
4597 
4598 
4599 Изменения в nginx 0.7.37                                          21.02.2009
4600 
4601     *) Исправление: директивы, использующие upstream'ы, не работали; ошибка
4602        появилась в 0.7.36.
4603 
4604 
4605 Изменения в nginx 0.7.36                                          21.02.2009
4606 
4607     *) Добавление: предварительная поддержка IPv6; директива listen модуля
4608        HTTP поддерживает IPv6.
4609 
4610     *) Исправление: переменная $ancient_browser не работала для браузеров,
4611        заданных директивами modern_browser.
4612 
4613 
4614 Изменения в nginx 0.7.35                                          16.02.2009
4615 
4616     *) Исправление: директива ssl_engine не использовала SSL-акселератор для
4617        асимметричных шифров.
4618        Спасибо Marcin Gozdalik.
4619 
4620     *) Исправление: директива try_files выставляла MIME-type, исходя из
4621        расширения первоначального запроса.
4622 
4623     *) Исправление: в директивах server_name, valid_referers и map
4624        неправильно обрабатывались имена вида "*domain.tld", если
4625        использовались маски вида ".domain.tld" и ".subdomain.domain.tld";
4626        ошибка появилась в 0.7.9.
4627 
4628 
4629 Изменения в nginx 0.7.34                                          10.02.2009
4630 
4631     *) Добавление: параметр off в директиве if_modified_since.
4632 
4633     *) Добавление: теперь после команды XCLIENT nginx посылает команду
4634        HELO/EHLO.
4635        Спасибо Максиму Дунину.
4636 
4637     *) Добавление: поддержка Microsoft-специфичного режима
4638        "AUTH LOGIN with User Name" в почтовом прокси-сервере.
4639        Спасибо Максиму Дунину.
4640 
4641     *) Исправление: в директиве rewrite, возвращающей редирект, старые
4642        аргументы присоединялись к новым через символ "?" вместо "&";
4643        ошибка появилась в 0.1.18.
4644        Спасибо Максиму Дунину.
4645 
4646     *) Исправление: nginx не собирался на AIX.
4647 
4648 
4649 Изменения в nginx 0.7.33                                          02.02.2009
4650 
4651     *) Исправление: если на запрос с телом возвращался редирект, то ответ
4652        мог быть двойным при использовании методов epoll или rtsig.
4653        Спасибо Eden Li.
4654 
4655     *) Исправление: для некоторых типов редиректов в переменной
4656        $sent_http_location было пустое значение.
4657 
4658     *) Исправление: при использовании директивы resolver в SMTP
4659        прокси-сервере в рабочем процессе мог произойти segmentation fault.
4660 
4661 
4662 Изменения в nginx 0.7.32                                          26.01.2009
4663 
4664     *) Добавление: теперь в директиве try_files можно явно указать проверку
4665        каталога.
4666 
4667     *) Исправление: fastcgi_store не всегда сохранял файлы.
4668 
4669     *) Исправление: в гео-диапазонах.
4670 
4671     *) Исправление: ошибки выделения больших блоков в разделяемой памяти,
4672        если nginx был собран без отладки.
4673        Спасибо Андрею Квасову.
4674 
4675 
4676 Изменения в nginx 0.7.31                                          19.01.2009
4677 
4678     *) Изменение: теперь директива try_files проверяет только файлы,
4679        игнорируя каталоги.
4680 
4681     *) Добавление: директива fastcgi_split_path_info.
4682 
4683     *) Исправления в поддержке строки "Expect" в заголовке запроса.
4684 
4685     *) Исправления в гео-диапазонах.
4686 
4687     *) Исправление: при отсутствии ответа ngx_http_memcached_module
4688        возвращал в теле ответа строку "END" вместо 404-ой страницы по
4689        умолчанию; ошибка появилась в 0.7.18.
4690        Спасибо Максиму Дунину.
4691 
4692     *) Исправление: при проксировании SMTP nginx выдавал сообщение
4693        "250 2.0.0 OK" вместо "235 2.0.0 OK"; ошибка появилась в 0.7.22.
4694        Спасибо Максиму Дунину.
4695 
4696 
4697 Изменения в nginx 0.7.30                                          24.12.2008
4698 
4699     *) Исправление: в рабочем процессе происходил segmentation fault, если в
4700        директивах fastcgi_pass или proxy_pass использовались переменные и
4701        имя хоста должно было резолвиться; ошибка появилась в 0.7.29.
4702 
4703 
4704 Изменения в nginx 0.7.29                                          24.12.2008
4705 
4706     *) Исправление: директивы fastcgi_pass и proxy_pass не поддерживали
4707        переменные при использовании unix domain сокетов.
4708 
4709     *) Исправления в обработке подзапросов; ошибки появились в 0.7.25.
4710 
4711     *) Исправление: ответ "100 Continue" выдавался для запросов версии
4712        HTTP/1.0;
4713        Спасибо Максиму Дунину.
4714 
4715     *) Исправление: в выделении памяти в модуле ngx_http_gzip_filter_module
4716        под Cygwin.
4717 
4718 
4719 Изменения в nginx 0.7.28                                          22.12.2008
4720 
4721     *) Изменение: в выделении памяти в модуле ngx_http_gzip_filter_module.
4722 
4723     *) Изменение: значения по умолчанию для директивы gzip_buffers изменены
4724        с 4 4k/8k на 32 4k или 16 8k.
4725 
4726 
4727 Изменения в nginx 0.7.27                                          15.12.2008
4728 
4729     *) Добавление: директива try_files.
4730 
4731     *) Добавление: директива fastcgi_pass поддерживает переменные.
4732 
4733     *) Добавление: теперь директива geo может брать адрес из переменной.
4734        Спасибо Андрею Нигматулину.
4735 
4736     *) Добавление: теперь модификатор location'а можно указывать без пробела
4737        перед названием.
4738 
4739     *) Добавление: переменная $upstream_response_length.
4740 
4741     *) Исправление: теперь директива add_header не добавляет пустое
4742        значение.
4743 
4744     *) Исправление: при запросе файла нулевой длины nginx закрывал
4745        соединение, ничего не передав; ошибка появилась в 0.7.25.
4746 
4747     *) Исправление: метод MOVE не мог перемещать файл в несуществующий
4748        каталог.
4749 
4750     *) Исправление: если в сервере не был описан ни один именованный
4751        location, но такой location использовался в директиве error_page, то
4752        в рабочем процессе происходил segmentation fault.
4753        Спасибо Сергею Боченкову.
4754 
4755 
4756 Изменения в nginx 0.7.26                                          08.12.2008
4757 
4758     *) Исправление: в обработке подзапросов; ошибка появилась в 0.7.25.
4759 
4760 
4761 Изменения в nginx 0.7.25                                          08.12.2008
4762 
4763     *) Изменение: в обработке подзапросов.
4764 
4765     *) Изменение: теперь разрешаются POST'ы без строки "Content-Length" в
4766        заголовке запроса.
4767 
4768     *) Исправление: теперь директивы limit_req и limit_conn указывают
4769        причину запрета запроса.
4770 
4771     *) Исправление: в параметре delete директивы geo.
4772 
4773 
4774 Изменения в nginx 0.7.24                                          01.12.2008
4775 
4776     *) Добавление: директива if_modified_since.
4777 
4778     *) Исправление: nginx не обрабатывал ответ FastCGI-сервера, если перед
4779        ответом сервер передавал много сообщений в stderr.
4780 
4781     *) Исправление: переменные "$cookie_..." не работали в SSI and в
4782        перловом модуле.
4783 
4784 
4785 Изменения в nginx 0.7.23                                          27.11.2008
4786 
4787     *) Добавление: параметры delete и ranges в директиве geo.
4788 
4789     *) Добавление: ускорение загрузки geo-базы с большим числом значений.
4790 
4791     *) Добавление: уменьшение памяти, необходимой для загрузки geo-базы.
4792 
4793 
4794 Изменения в nginx 0.7.22                                          20.11.2008
4795 
4796     *) Добавление: параметр none в директиве smtp_auth.
4797        Спасибо Максиму Дунину.
4798 
4799     *) Добавление: переменные "$cookie_...".
4800 
4801     *) Исправление: директива directio не работала с файловой системой XFS.
4802 
4803     *) Исправление: resolver не понимал большие DNS-ответы.
4804        Спасибо Zyb.
4805 
4806 
4807 Изменения в nginx 0.7.21                                          11.11.2008
4808 
4809     *) Изменения в модуле ngx_http_limit_req_module.
4810 
4811     *) Добавление: поддержка EXSLT в модуле ngx_http_xslt_module.
4812        Спасибо Денису Латыпову.
4813 
4814     *) Изменение: совместимость с glibc 2.3.
4815        Спасибо Eric Benson и Максиму Дунину.
4816 
4817     *) Исправление: nginx не запускался на MacOSX 10.4 и более ранних;
4818        ошибка появилась в 0.7.6.
4819 
4820 
4821 Изменения в nginx 0.7.20                                          10.11.2008
4822 
4823     *) Изменения в модуле ngx_http_gzip_filter_module.
4824 
4825     *) Добавление: модуль ngx_http_limit_req_module.
4826 
4827     *) Исправление: на платформах sparc и ppc рабочие процессы могли
4828        выходить по сигналу SIGBUS; ошибка появилась в 0.7.3.
4829        Спасибо Максиму Дунину.
4830 
4831     *) Исправление: директивы вида "proxy_pass http://host/some:uri" не
4832        работали; ошибка появилась в 0.7.12.
4833 
4834     *) Исправление: при использовании HTTPS запросы могли завершаться с
4835        ошибкой "bad write retry".
4836 
4837     *) Исправление: модуль ngx_http_secure_link_module не работал внутри
4838        location'ов с именами меньше 3 символов.
4839 
4840     *) Исправление: переменная $server_addr могла не иметь значения.
4841 
4842 
4843 Изменения в nginx 0.7.19                                          13.10.2008
4844 
4845     *) Исправление: обновление номера версии.
4846 
4847 
4848 Изменения в nginx 0.7.18                                          13.10.2008
4849 
4850     *) Изменение: директива underscores_in_headers; теперь nginx по
4851        умолчанию не разрешает подчёркивания в именах строк в заголовке
4852        запроса клиента.
4853 
4854     *) Добавление: модуль ngx_http_secure_link_module.
4855 
4856     *) Добавление: директива real_ip_header поддерживает любой заголовок.
4857 
4858     *) Добавление: директива log_subrequest.
4859 
4860     *) Добавление: переменная $realpath_root.
4861 
4862     *) Добавление: параметры http_502 и http_504 в директиве
4863        proxy_next_upstream.
4864 
4865     *) Исправление: параметр http_503 в директивах proxy_next_upstream или
4866        fastcgi_next_upstream не работал.
4867 
4868     *) Исправление: nginx мог выдавать строку "Transfer-Encoding: chunked"
4869        для запросов HEAD.
4870 
4871     *) Исправление: теперь accept-лимит зависит от числа worker_connections.
4872 
4873 
4874 Изменения в nginx 0.7.17                                          15.09.2008
4875 
4876     *) Добавление: директива directio теперь работает на Linux.
4877 
4878     *) Добавление: переменная $pid.
4879 
4880     *) Исправление: оптимизация directio, появившаяся в 0.7.15, не работала
4881        при использовании open_file_cache.
4882 
4883     *) Исправление: access_log с переменными не работал на Linux; ошибка
4884        появилась в 0.7.7.
4885 
4886     *) Исправление: модуль ngx_http_charset_module не понимал название
4887        кодировки в кавычках, полученное от бэкенда.
4888 
4889 
4890 Изменения в nginx 0.7.16                                          08.09.2008
4891 
4892     *) Исправление: nginx не собирался на 64-битных платформах; ошибка
4893        появилась в 0.7.15.
4894 
4895 
4896 Изменения в nginx 0.7.15                                          08.09.2008
4897 
4898     *) Добавление: модуль ngx_http_random_index_module.
4899 
4900     *) Добавление: директива directio оптимизирована для запросов файлов,
4901        начинающихся с произвольной позиции.
4902 
4903     *) Добавление: директива directio при необходимости запрещает
4904        использование sendfile.
4905 
4906     *) Добавление: теперь nginx разрешает подчёркивания в именах строк в
4907        заголовке запроса клиента.
4908 
4909 
4910 Изменения в nginx 0.7.14                                          01.09.2008
4911 
4912     *) Изменение: теперь директивы ssl_certificate и ssl_certificate_key не
4913        имеют значений по умолчанию.
4914 
4915     *) Добавление: директива listen поддерживает параметр ssl.
4916 
4917     *) Добавление: теперь при переконфигурации nginx учитывает изменение
4918        временной зоны на FreeBSD и Linux.
4919 
4920     *) Исправление: параметры директивы listen, такие как backlog, rcvbuf и
4921        прочие, не устанавливались, если сервером по умолчанию был не первый
4922        сервер.
4923 
4924     *) Исправление: при использовании в качестве аргументов части URI,
4925        выделенного с помощью директивы rewrite, эти аргументы не
4926        экранировались.
4927 
4928     *) Исправление: улучшения тестирования правильности конфигурационного
4929        файла.
4930 
4931 
4932 Изменения в nginx 0.7.13                                          26.08.2008
4933 
4934     *) Исправление: nginx не собирался на Linux и Solaris; ошибка появилась
4935        в 0.7.12.
4936 
4937 
4938 Изменения в nginx 0.7.12                                          26.08.2008
4939 
4940     *) Добавление: директива server_name поддерживает пустое имя "".
4941 
4942     *) Добавление: директива gzip_disable поддерживает специальную маску
4943        msie6.
4944 
4945     *) Исправление: при использовании параметра max_fails=0 в upstream'е с
4946        несколькими серверами рабочий процесс выходил по сигналу SIGFPE.
4947        Спасибо Максиму Дунину.
4948 
4949     *) Исправление: при перенаправлении запроса с помощью директивы
4950        error_page терялось тело запроса.
4951 
4952     *) Исправление: при перенаправлении запроса с методом HEAD с помощью
4953        директивы error_page возвращался полный ответ.
4954 
4955     *) Исправление: метод $r->header_in() не возвращал значения строк
4956        "Host", "User-Agent", и "Connection" из заголовка запроса; ошибка
4957        появилась в 0.7.0.
4958 
4959 
4960 Изменения в nginx 0.7.11                                          18.08.2008
4961 
4962     *) Изменение: теперь ngx_http_charset_module по умолчанию не работает
4963        MIME-типом text/css.
4964 
4965     *) Добавление: теперь nginx возвращает код 405 для метода POST при
4966        запросе статического файла, только если файл существует.
4967 
4968     *) Добавление: директива proxy_ssl_session_reuse.
4969 
4970     *) Исправление: после перенаправления запроса с помощью
4971        "X-Accel-Redirect" директива proxy_pass без URI могла использовать
4972        оригинальный запрос.
4973 
4974     *) Исправление: если у каталога были права доступа только на поиск
4975        файлов и первый индексный файл отсутствовал, то nginx возвращал
4976        ошибку 500.
4977 
4978     *) Исправление: ошибок во вложенных location'ах; ошибки появились в
4979        0.7.1.
4980 
4981 
4982 Изменения в nginx 0.7.10                                          13.08.2008
4983 
4984     *) Исправление: ошибок в директивах addition_types, charset_types,
4985        gzip_types, ssi_types, sub_filter_types и xslt_types; ошибки
4986        появились в 0.7.9.
4987 
4988     *) Исправление: рекурсивной error_page для 500 ошибки.
4989 
4990     *) Исправление: теперь модуль ngx_http_realip_module устанавливает адрес
4991        не для всего keepalive соединения, а для каждого запроса по этому
4992        соединению.
4993 
4994 
4995 Изменения в nginx 0.7.9                                           12.08.2008
4996 
4997     *) Изменение: теперь ngx_http_charset_module по умолчанию работает со
4998        следующими MIME-типами: text/html, text/css, text/xml, text/plain,
4999        text/vnd.wap.wml, application/x-javascript и application/rss+xml.
5000 
5001     *) Добавление: директивы charset_types и addition_types.
5002 
5003     *) Добавление: теперь директивы gzip_types, ssi_types и sub_filter_types
5004        используют хэш.
5005 
5006     *) Добавление: модуль ngx_cpp_test_module.
5007 
5008     *) Добавление: директива expires поддерживает суточное время.
5009 
5010     *) Добавление: улучшения и исправления в модуле ngx_http_xslt_module.
5011        Спасибо Денису Латыпову и Максиму Дунину.
5012 
5013     *) Исправление: директива log_not_found не работала при поиске индексных
5014        файлов.
5015 
5016     *) Исправление: HTTPS-соединения могли зависнуть, если использовались
5017        методы kqueue, epoll, rtsig или eventport; ошибка появилась в 0.7.7.
5018 
5019     *) Исправление: если в директивах server_name, valid_referers и map
5020        использовалась маска вида "*.domain.tld" и при этом полное имя вида
5021        "domain.tld" не было описано, то это имя попадало под маску; ошибка
5022        появилась в 0.3.18.
5023 
5024 
5025 Изменения в nginx 0.7.8                                           04.08.2008
5026 
5027     *) Добавление: модуль ngx_http_xslt_module.
5028 
5029     *) Добавление: переменные "$arg_...".
5030 
5031     *) Добавление: поддержка directio в Solaris.
5032        Спасибо Ivan Debnar.
5033 
5034     *) Исправление: теперь, если FastCGI-сервер присылает строку "Location"
5035        в заголовке ответа без строки статуса, то nginx использует код
5036        статуса 302.
5037        Спасибо Максиму Дунину.
5038 
5039 
5040 Изменения в nginx 0.7.7                                           30.07.2008
5041 
5042     *) Изменение: теперь ошибка EAGAIN при вызове connect() не считается
5043        временной.
5044 
5045     *) Изменение: значением переменной $ssl_client_cert теперь является
5046        сертификат, перед каждой строкой которого, кроме первой, вставляется
5047        символ табуляции; неизменённый сертификат доступен через переменную
5048        $ssl_client_raw_cert.
5049 
5050     *) Добавление: параметр ask директивы ssl_verify_client.
5051 
5052     *) Добавление: улучшения в обработке byte-range.
5053        Спасибо Максиму Дунину.
5054 
5055     *) Добавление: директива directio.
5056        Спасибо Jiang Hong.
5057 
5058     *) Добавление: поддержка sendfile() в MacOSX 10.5.
5059 
5060     *) Исправление: в MacOSX и Cygwin при проверке location'ов теперь
5061        делается сравнение без учёта регистра символов; однако, сравнение
5062        ограничено только однобайтными locale'ями.
5063 
5064     *) Исправление: соединения почтового прокси-сервера зависали в режиме
5065        SSL, если использовались методы select, poll или /dev/poll.
5066 
5067     *) Исправление: ошибки при использовании кодировки UTF-8 в
5068        ngx_http_autoindex_module.
5069 
5070 
5071 Изменения в nginx 0.7.6                                           07.07.2008
5072 
5073     *) Исправление: теперь при использовании переменных в директиве
5074        access_log всегда проверяется существовании root'а для запроса.
5075 
5076     *) Исправление: модуль ngx_http_flv_module не поддерживал несколько
5077        значений в аргументах запроса.
5078 
5079 
5080 Изменения в nginx 0.7.5                                           01.07.2008
5081 
5082     *) Исправления в поддержке переменных в директиве access_log; ошибки
5083        появились в 0.7.4.
5084 
5085     *) Исправление: nginx не собирался с параметром
5086        --without-http_gzip_module; ошибка появилась в 0.7.3.
5087        Спасибо Кириллу Коринскому.
5088 
5089     *) Исправление: при совместном использовании sub_filter и SSI ответы
5090        могли передаваться неверно.
5091 
5092 
5093 Изменения в nginx 0.7.4                                           30.06.2008
5094 
5095     *) Добавление: директива access_log поддерживает переменные.
5096 
5097     *) Добавление: директива open_log_file_cache.
5098 
5099     *) Добавление: ключ -g.
5100 
5101     *) Добавление: поддержка строки "Expect" в заголовке запроса.
5102 
5103     *) Исправление: большие включения в SSI могли передавались не полностью.
5104 
5105 
5106 Изменения в nginx 0.7.3                                           23.06.2008
5107 
5108     *) Изменение: MIME-тип для расширения rss изменён на
5109        "application/rss+xml".
5110 
5111     *) Изменение: теперь директива "gzip_vary on" выдаёт строку
5112        "Vary: Accept-Encoding" в заголовке ответа и для несжатых ответов.
5113 
5114     *) Добавление: теперь при использовании протокола "https://" в директиве
5115        rewrite автоматически делается редирект.
5116 
5117     *) Исправление: директива proxy_pass не работала с протоколом HTTPS;
5118        ошибка появилась в 0.6.9.
5119 
5120 
5121 Изменения в nginx 0.7.2                                           16.06.2008
5122 
5123     *) Добавление: теперь nginx поддерживает шифры с обменом EDH-ключами.
5124 
5125     *) Добавление: директива ssl_dhparam.
5126 
5127     *) Добавление: переменная $ssl_client_cert.
5128        Спасибо Manlio Perillo.
5129 
5130     *) Исправление: после изменения URI с помощью директивы rewrite nginx не
5131        искал новый location; ошибка появилась в 0.7.1.
5132        Спасибо Максиму Дунину.
5133 
5134     *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась
5135        в 0.7.1.
5136 
5137     *) Исправление: при редиректе запроса к каталогу с добавлением слэша
5138        nginx не добавлял аргументы из оригинального запроса.
5139 
5140 
5141 Изменения в nginx 0.7.1                                           26.05.2008
5142 
5143     *) Изменение: теперь поиск location'а делается с помощью дерева.
5144 
5145     *) Изменение: директива optimize_server_names упразднена в связи с
5146        появлением директивы server_name_in_redirect.
5147 
5148     *) Изменение: некоторые давно устаревшие директивы больше не
5149        поддерживаются.
5150 
5151     *) Изменение: параметр "none" в директиве ssl_session_cache; теперь этот
5152        параметр используется по умолчанию.
5153        Спасибо Rob Mueller.
5154 
5155     *) Исправление: рабочие процессы могли не реагировать на сигналы
5156        переконфигурации и ротации логов.
5157 
5158     *) Исправление: nginx не собирался на последних Fedora 9 Linux.
5159        Спасибо Roxis.
5160 
5161 
5162 Изменения в nginx 0.7.0                                           19.05.2008
5163 
5164     *) Изменение: теперь символы 0x00-0x1F, '"' и '\' в access_log
5165        записываются в виде \xXX.
5166        Спасибо Максиму Дунину.
5167 
5168     *) Изменение: теперь nginx разрешает несколько строк "Host" в заголовке
5169        запроса.
5170 
5171     *) Добавление: директива expires поддерживает флаг modified.
5172 
5173     *) Добавление: переменные $uid_got и $uid_set можно использовать на
5174        любой стадии обработки запроса.
5175 
5176     *) Добавление: переменная $hostname.
5177        Спасибо Андрею Нигматулину.
5178 
5179     *) Добавление: поддержка DESTDIR.
5180        Спасибо Todd A. Fisher и Andras Voroskoi.
5181 
5182     *) Исправление: при использовании keepalive на Linux в рабочем процессе
5183        мог произойти segmentation fault.
5184 
5185 
5186 Изменения в nginx 0.6.31                                          12.05.2008
5187 
5188     *) Исправление: nginx не обрабатывал ответ FastCGI-сервера, если строка
5189        заголовка ответа была в конце записи FastCGI; ошибка появилась в
5190        0.6.2.
5191        Спасибо Сергею Серову.
5192 
5193     *) Исправление: при удалении файла и использовании директивы
5194        open_file_cache_errors off в рабочем процессе мог произойти
5195        segmentation fault.
5196 
5197 
5198 Изменения в nginx 0.6.30                                          29.04.2008
5199 
5200     *) Изменение: теперь, если маске, заданной в директиве include, не
5201        соответствует ни один файл, то nginx не выдаёт ошибку.
5202 
5203     *) Добавление: теперь время в директивах можно задавать без пробела,
5204        например, "1h50m".
5205 
5206     *) Исправление: утечек памяти, если директива ssl_verify_client имела
5207        значение on.
5208        Спасибо Chavelle Vincent.
5209 
5210     *) Исправление: директива sub_filter могла вставлять заменяемый текст в
5211        вывод.
5212 
5213     *) Исправление: директива error_page не воспринимала параметры в
5214        перенаправляемом URI.
5215 
5216     *) Исправление: теперь при сборке с Cygwin nginx всегда открывает файлы
5217        в бинарном режиме.
5218 
5219     *) Исправление: nginx не собирался под OpenBSD; ошибка появилась в
5220        0.6.15.
5221 
5222 
5223 Изменения в nginx 0.6.29                                          18.03.2008
5224 
5225     *) Добавление: модуль ngx_google_perftools_module.
5226 
5227     *) Исправление: модуль ngx_http_perl_module не собирался на 64-битных
5228        платформах; ошибка появилась в 0.6.27.
5229 
5230 
5231 Изменения в nginx 0.6.28                                          13.03.2008
5232 
5233     *) Исправление: метод rtsig не собирался; ошибка появилась в 0.6.27.
5234 
5235 
5236 Изменения в nginx 0.6.27                                          12.03.2008
5237 
5238     *) Изменение: теперь на Linux 2.6.18+ по умолчанию не собирается метод
5239        rtsig.
5240 
5241     *) Изменение: теперь при перенаправлении запроса в именованный location
5242        с помощью директивы error_page метод запроса не изменяется.
5243 
5244     *) Добавление: директивы resolver и resolver_timeout в SMTP
5245        прокси-сервере.
5246 
5247     *) Добавление: директива post_action поддерживает именованные
5248        location'ы.
5249 
5250     *) Исправление: при перенаправлении запроса из location'а c обработчиком
5251        proxy, FastCGI или memcached в именованный location со статическим
5252        обработчиком в рабочем процессе происходил segmentation fault.
5253 
5254     *) Исправление: браузеры не повторяли SSL handshake, если при первом
5255        handshake не оказалось правильного клиентского сертификата.
5256        Спасибо Александру Инюхину.
5257 
5258     *) Исправление: при перенаправлении ошибок 495-497 с помощью директивы
5259        error_page без изменения кода ошибки nginx пытался выделить очень
5260        много памяти.
5261 
5262     *) Исправление: утечки памяти в долгоживущих небуфферизированных
5263        соединениях.
5264 
5265     *) Исправление: утечки памяти в resolver'е.
5266 
5267     *) Исправление: при перенаправлении запроса из location'а c обработчиком
5268        proxy в другой location с обработчиком proxy в рабочем процессе
5269        происходил segmentation fault.
5270 
5271     *) Исправление: ошибки в кэшировании переменных $proxy_host и
5272        $proxy_port.
5273        Спасибо Сергею Боченкову.
5274 
5275     *) Исправление: директива proxy_pass с переменными использовала порт,
5276        описанной в другой директиве proxy_pass без переменных, но с таким же
5277        именем хоста.
5278        Спасибо Сергею Боченкову.
5279 
5280     *) Исправление: во время переконфигурации на некоторых 64-битном
5281        платформах в лог записывался alert "sendmsg() failed (9: Bad file
5282        descriptor)".
5283 
5284     *) Исправление: при повторном использовании в SSI пустого block'а в
5285        качестве заглушки в рабочем процессе происходил segmentation fault.
5286 
5287     *) Исправление: ошибки при копировании части URI, содержащего
5288        экранированные символы, в аргументы.
5289 
5290 
5291 Изменения в nginx 0.6.26                                          11.02.2008
5292 
5293     *) Исправление: директивы proxy_store и fastcgi_store не проверяли длину
5294        ответа.
5295 
5296     *) Исправление: при использовании большого значения в директиве expires
5297        в рабочем процессе происходил segmentation fault.
5298        Спасибо Joaquin Cuenca Abela.
5299 
5300     *) Исправление: nginx неверно определял длину строки кэша на Pentium 4.
5301        Спасибо Геннадию Махомеду.
5302 
5303     *) Исправление: в проксированных подзапросах и подзапросах к
5304        FastCGI-серверу вместо метода GET использовался оригинальный метод
5305        клиента.
5306 
5307     *) Исправление: утечки сокетов в режиме HTTPS при использовании
5308        отложенного accept'а.
5309        Спасибо Ben Maurer.
5310 
5311     *) Исправление: nginx выдавал ошибочное сообщение "SSL_shutdown() failed
5312        (SSL: )"; ошибка появилась в 0.6.23.
5313 
5314     *) Исправление: при использовании HTTPS запросы могли завершаться с
5315        ошибкой "bad write retry"; ошибка появилась в 0.6.23.
5316 
5317 
5318 Изменения в nginx 0.6.25                                          08.01.2008
5319 
5320     *) Изменение: вместо специального параметра "*" в директиве server_name
5321        теперь используется директива server_name_in_redirect.
5322 
5323     *) Изменение: в качестве основного имени в директиве server_name теперь
5324        можно использовать имена с масками и регулярными выражениями.
5325 
5326     *) Изменение: директива satisfy_any заменена директивой satisfy.
5327 
5328     *) Изменение: после переконфигурации старые рабочие процесс могли сильно
5329        нагружать процессор при запуске под Linux OpenVZ.
5330 
5331     *) Добавление: директива min_delete_depth.
5332 
5333     *) Исправление: методы COPY и MOVE не работали с одиночными файлами.
5334 
5335     *) Исправление: модуль ngx_http_gzip_static_module не позволял работать
5336        модулю ngx_http_dav_module; ошибка появилась в 0.6.23.
5337 
5338     *) Исправление: утечки сокетов в режиме HTTPS при использовании
5339        отложенного accept'а.
5340        Спасибо Ben Maurer.
5341 
5342     *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась
5343        в 0.6.23.
5344 
5345 
5346 Изменения в nginx 0.6.24                                          27.12.2007
5347 
5348     *) Исправление: при использовании HTTPS в рабочем процессе мог произойти
5349        segmentation fault; ошибка появилась в 0.6.23.
5350 
5351 
5352 Изменения в nginx 0.6.23                                          27.12.2007
5353 
5354     *) Изменение: параметр "off" в директиве ssl_session_cache; теперь этот
5355        параметр используется по умолчанию.
5356 
5357     *) Изменение: директива open_file_cache_retest переименована в
5358        open_file_cache_valid.
5359 
5360     *) Добавление: директива open_file_cache_min_uses.
5361 
5362     *) Добавление: модуль ngx_http_gzip_static_module.
5363 
5364     *) Добавление: директива gzip_disable.
5365 
5366     *) Добавление: директиву memcached_pass можно использовать внутри блока
5367        if.
5368 
5369     *) Исправление: если внутри одного location'а использовались директивы
5370        "memcached_pass" и "if", то в рабочем процессе происходил
5371        segmentation fault.
5372 
5373     *) Исправление: если при использовании директивы satisfy_any on" были
5374        заданы директивы не всех модулей доступа, то заданные директивы не
5375        проверялись.
5376 
5377     *) Исправление: параметры, заданные регулярным выражением в директиве
5378        valid_referers, не наследовалась с предыдущего уровня.
5379 
5380     *) Исправление: директива post_action не работала, если запрос
5381        завершался с кодом 499.
5382 
5383     *) Исправление: оптимизация использования 16K буфера для SSL-соединения.
5384        Спасибо Ben Maurer.
5385 
5386     *) Исправление: STARTTLS в режиме SMTP не работал.
5387        Спасибо Олегу Мотиенко.
5388 
5389     *) Исправление: при использовании HTTPS запросы могли завершаться с
5390        ошибкой "bad write retry"; ошибка появилась в 0.5.13.
5391 
5392 
5393 Изменения в nginx 0.6.22                                          19.12.2007
5394 
5395     *) Изменение: теперь все методы модуля ngx_http_perl_module возвращают
5396        значения, скопированные в память, выделенную perl'ом.
5397 
5398     *) Исправление: если nginx был собран с модулем ngx_http_perl_module,
5399        использовался perl до версии 5.8.6 и perl поддерживал потоки, то во
5400        время переконфигурации основной процесс аварийно выходил; ошибка
5401        появилась в 0.5.9.
5402        Спасибо Борису Жмурову.
5403 
5404     *) Исправление: в методы модуля ngx_http_perl_module могли передаваться
5405        неверные результаты выделения в регулярных выражениях.
5406 
5407     *) Исправление: если метод $r->has_request_body() вызывался для запроса,
5408        у которого небольшое тело запроса было уже полностью получено, то в
5409        рабочем процессе происходил segmentation fault.
5410 
5411     *) Исправление: large_client_header_buffers не освобождались перед
5412        переходом в состояние keep-alive.
5413        Спасибо Олександру Штепе.
5414 
5415     *) Исправление: в переменной $upstream_addr не записывался последний
5416        адрес; ошибка появилась в 0.6.18.
5417 
5418     *) Исправление: директива fastcgi_catch_stderr не возвращала ошибку;
5419        теперь она возвращает ошибку 502, которую можно направить на
5420        следующий сервер с помощью "fastcgi_next_upstream invalid_header".
5421 
5422     *) Исправление: при использовании директивы fastcgi_catch_stderr в
5423        основном процессе происходил segmentation fault; ошибка появилась в
5424        0.6.10.
5425        Спасибо Manlio Perillo.
5426 
5427 
5428 Изменения в nginx 0.6.21                                          03.12.2007
5429 
5430     *) Изменение: если в значениях переменных директивы proxy_pass
5431        используются только IP-адреса, то указывать resolver не нужно.
5432 
5433     *) Исправление: при использовании директивы proxy_pass c URI-частью в
5434        рабочем процессе мог произойти segmentation fault; ошибка появилась в
5435        0.6.19.
5436 
5437     *) Исправление: если resolver использовался на платформах, не
5438        поддерживающих метод kqueue, то nginx выдавал alert "name is out of
5439        response".
5440        Спасибо Андрею Нигматулину.
5441 
5442     *) Исправление: При использовании переменной $server_protocol в
5443        FastCGI-параметрах и запросе, длина которого была близка к значению
5444        директивы client_header_buffer_size, nginx выдавал alert "fastcgi:
5445        the request record is too big".
5446 
5447     *) Исправление: при обычном запросе версии HTTP/0.9 к HTTPS серверу
5448        nginx возвращал обычный ответ.
5449 
5450 
5451 Изменения в nginx 0.6.20                                          28.11.2007
5452 
5453     *) Исправление: при использовании директивы proxy_pass c URI-частью в
5454        рабочем процессе мог произойти segmentation fault; ошибка появилась в
5455        0.6.19.
5456 
5457 
5458 Изменения в nginx 0.6.19                                          27.11.2007
5459 
5460     *) Исправление: версия 0.6.18 не собиралась.
5461 
5462 
5463 Изменения в nginx 0.6.18                                          27.11.2007
5464 
5465     *) Изменение: теперь модуль ngx_http_userid_module в поле куки с номером
5466        процесса добавляет микросекунды на время старта.
5467 
5468     *) Изменение: в error_log теперь записывается полная строка запроса
5469        вместо только URI.
5470 
5471     *) Добавление: директива proxy_pass поддерживает переменные.
5472 
5473     *) Добавление: директивы resolver и resolver_timeout.
5474 
5475     *) Добавление: теперь директива "add_header last-modified ''" удаляет в
5476        заголовке ответа строку "Last-Modified".
5477 
5478     *) Исправление: директива limit_rate не позволяла передавать на полной
5479        скорости, даже если был указан очень большой лимит.
5480 
5481 
5482 Изменения в nginx 0.6.17                                          15.11.2007
5483 
5484     *) Добавление: поддержка строки "If-Range" в заголовке запроса.
5485        Спасибо Александру Инюхину.
5486 
5487     *) Исправление: при использовании директивы msie_refresh повторно
5488        экранировались уже экранированные символы; ошибка появилась в 0.6.4.
5489 
5490     *) Исправление: директива autoindex не работала при использовании "alias
5491        /".
5492 
5493     *) Исправление: при использовании подзапросов в рабочем процессе мог
5494        произойти segmentation fault.
5495 
5496     *) Исправление: при использовании SSL и gzip большие ответы могли
5497        передаваться не полностью.
5498 
5499     *) Исправление: если ответ проксированного сервера был версии HTTP/0.9,
5500        то переменная $status была равна 0.
5501 
5502 
5503 Изменения в nginx 0.6.16                                          29.10.2007
5504 
5505     *) Изменение: теперь на Linux используется uname(2) вместо procfs.
5506        Спасибо Илье Новикову.
5507 
5508     *) Исправление: если в директиве error_page использовался символ "?", то
5509        он экранировался при проксировании запроса; ошибка появилась в
5510        0.6.11.
5511 
5512     *) Исправление: совместимость с mget.
5513 
5514 
5515 Изменения в nginx 0.6.15                                          22.10.2007
5516 
5517     *) Добавление: совместимость с Cygwin.
5518        Спасибо Владимиру Кутакову.
5519 
5520     *) Добавление: директива merge_slashes.
5521 
5522     *) Добавление: директива gzip_vary.
5523 
5524     *) Добавление: директива server_tokens.
5525 
5526     *) Исправление: nginx не раскодировал URI в команде SSI include.
5527 
5528     *) Исправление: при использовании переменной в директивах charset или
5529        source_charset на старте или во время переконфигурации происходил
5530        segmentation fault,
5531 
5532     *) Исправление: nginx возвращал ошибку 400 на запросы вида
5533        "GET http://www.domain.com HTTP/1.0".
5534        Спасибо James Oakley.
5535 
5536     *) Исправление: после перенаправления запроса с телом запроса с помощью
5537        директивы error_page nginx пытался снова прочитать тело запроса;
5538        ошибка появилась в 0.6.7.
5539 
5540     *) Исправление: в рабочем процессе происходил segmentation fault, если у
5541        сервера, обрабатывающему запрос, не был явно определён server_name;
5542        ошибка появилась в 0.6.7.
5543 
5544 
5545 Изменения в nginx 0.6.14                                          15.10.2007
5546 
5547     *) Изменение: теперь по умолчанию команда SSI echo использует
5548        кодирование entity.
5549 
5550     *) Добавление: параметр encoding в команде SSI echo.
5551 
5552     *) Добавление: директиву access_log можно использовать внутри блока
5553        limit_except.
5554 
5555     *) Исправление: если все сервера апстрима оказывались недоступными, то
5556        до восстановления работоспособности у всех серверов вес становился
5557        равным одному; ошибка появилась в 0.6.6.
5558 
5559     *) Исправление: при использовании переменных $date_local и $date_gmt вне
5560        модуля ngx_http_ssi_filter_module в рабочем процессе происходил
5561        segmentation fault.
5562 
5563     *) Исправление: при использовании включённом отладочном логе в рабочем
5564        процессе мог произойти segmentation fault.
5565        Спасибо Андрею Нигматулину.
5566 
5567     *) Исправление: ngx_http_memcached_module не устанавливал
5568        $upstream_response_time.
5569        Спасибо Максиму Дунину.
5570 
5571     *) Исправление: рабочий процесс мог зациклиться при использовании
5572        memcached.
5573 
5574     *) Исправление: nginx распознавал параметры "close" и "keep-alive" в
5575        строке "Connection" в заголовке запроса только, если они были в
5576        нижнем регистре; ошибка появилась в 0.6.11.
5577 
5578     *) Исправление: sub_filter не работал с пустой строкой замены.
5579 
5580     *) Исправление: в парсинге sub_filter.
5581 
5582 
5583 Изменения в nginx 0.6.13                                          24.09.2007
5584 
5585     *) Исправление: nginx не закрывал файл каталога для запроса HEAD, если
5586        использовался autoindex
5587        Спасибо Arkadiusz Patyk.
5588 
5589 
5590 Изменения в nginx 0.6.12                                          21.09.2007
5591 
5592     *) Изменение: почтовый прокси-сервер разделён на три модуля: pop3, imap
5593        и smtp.
5594 
5595     *) Добавление: параметры конфигурации --without-mail_pop3_module,
5596        --without-mail_imap_module и --without-mail_smtp_module.
5597 
5598     *) Добавление: директивы smtp_greeting_delay и smtp_client_buffer модуля
5599        ngx_mail_smtp_module.
5600 
5601     *) Исправление: wildcard в конце имени сервера не работали; ошибка
5602        появилась в 0.6.9.
5603 
5604     *) Исправление: при использовании разделяемой библиотеки PCRE,
5605        расположенной в нестандартном месте, nginx не запускался на Solaris.
5606 
5607     *) Исправление: директивы proxy_hide_header и fastcgi_hide_header не
5608        скрывали строки заголовка ответа с именем больше 32 символов.
5609        Спасибо Manlio Perillo.
5610 
5611 
5612 Изменения в nginx 0.6.11                                          11.09.2007
5613 
5614     *) Исправление: счётчик активных соединений всегда рос при использовании
5615        почтового прокси-сервера.
5616 
5617     *) Исправление: если бэкенд возвращал только заголовок ответа при
5618        небуферизированном проксировании, то nginx закрывал соединение с
5619        бэкендом по таймауту.
5620 
5621     *) Исправление: nginx не поддерживал несколько строк "Connection" в
5622        заголовке запроса.
5623 
5624     *) Исправление: если в сервере апстрима был задан max_fails, то после
5625        первой же неудачной попытки вес сервера навсегда становился равным
5626        одному; ошибка появилась в 0.6.6.
5627 
5628 
5629 Изменения в nginx 0.6.10                                          03.09.2007
5630 
5631     *) Добавление: директивы open_file_cache, open_file_cache_retest и
5632        open_file_cache_errors.
5633 
5634     *) Исправление: утечки сокетов; ошибка появилась в 0.6.7.
5635 
5636     *) Исправление: В строку заголовка ответа "Content-Type", указанную в
5637        методе $r->send_http_header(), не добавлялась кодировка, указанная в
5638        директиве charset.
5639 
5640     *) Исправление: при использовании метода /dev/poll в рабочем процессе
5641        мог произойти segmentation fault.
5642 
5643 
5644 Изменения в nginx 0.6.9                                           28.08.2007
5645 
5646     *) Исправление: рабочий процесс мог зациклиться при использовании
5647        протокола HTTPS; ошибка появилась в 0.6.7.
5648 
5649     *) Исправление: если сервер слушал на двух адресах или портах, то nginx
5650        не запускался при использовании wildcard в конце имени сервера.
5651 
5652     *) Исправление: директива ip_hash могла неверно помечать сервера как
5653        нерабочие.
5654 
5655     *) Исправление: nginx не собирался на amd64; ошибка появилась в 0.6.8.
5656 
5657 
5658 Изменения в nginx 0.6.8                                           20.08.2007
5659 
5660     *) Изменение: теперь nginx пытается установить директивы
5661        worker_priority, worker_rlimit_nofile, worker_rlimit_core,
5662        worker_rlimit_sigpending без привилегий root'а.
5663 
5664     *) Изменение: теперь nginx экранирует символы пробела и "%" при передаче
5665        запроса серверу аутентификации почтового прокси-сервера.
5666 
5667     *) Изменение: теперь nginx экранирует символ "%" в переменной
5668        $memcached_key.
5669 
5670     *) Исправление: при указании относительного пути к конфигурационному
5671        файлу в качестве параметра ключа -c nginx определял путь относительно
5672        конфигурационного префикса; ошибка появилась в 0.6.6.
5673 
5674     *) Исправление: nginx не работал на FreeBSD/sparc64.
5675 
5676 
5677 Изменения в nginx 0.6.7                                           15.08.2007
5678 
5679     *) Изменение: теперь пути, указанные в директивах include,
5680        auth_basic_user_file, perl_modules, ssl_certificate,
5681        ssl_certificate_key и ssl_client_certificate, определяются
5682        относительно каталога конфигурационного файла nginx.conf, а не
5683        относительно префикса.
5684 
5685     *) Изменение: параметр --sysconfdir=PATH в configure упразднён.
5686 
5687     *) Изменение: для обновления на лету версий 0.1.x создан специальный
5688        сценарий make upgrade1.
5689 
5690     *) Добавление: директивы server_name и valid_referers поддерживают
5691        регулярные выражения.
5692 
5693     *) Добавление: директива server в блоке upstream поддерживает параметр
5694        backup.
5695 
5696     *) Добавление: модуль ngx_http_perl_module поддерживает метод
5697        $r->discard_request_body.
5698 
5699     *) Добавление: директива "add_header Last-Modified ..." меняет строку
5700        "Last-Modified" в заголовке ответа.
5701 
5702     *) Исправление: если на запрос с телом возвращался ответ с кодом HTTP
5703        отличным от 200, и после этого запроса соединение переходило в
5704        состояние keep-alive, то на следующий запрос nginx возвращал 400.
5705 
5706     *) Исправление: если в директиве auth_http был задан неправильный адрес,
5707        то в рабочем процессе происходил segmentation fault.
5708 
5709     *) Исправление: теперь по умолчанию nginx использует значение 511 для
5710        listen backlog на всех платформах, кроме FreeBSD.
5711        Спасибо Jiang Hong.
5712 
5713     *) Исправление: рабочий процесс мог зациклиться, если server в блоке
5714        upstream был помечен как down; ошибка появилась в 0.6.6.
5715 
5716     *) Исправление: sendfilev() в Solaris теперь не используется при
5717        передаче тела запроса FastCGI-серверу через unix domain сокет.
5718 
5719 
5720 Изменения в nginx 0.6.6                                           30.07.2007
5721 
5722     *) Добавление: параметр --sysconfdir=PATH в configure.
5723 
5724     *) Добавление: именованные location'ы.
5725 
5726     *) Добавление: переменную $args можно устанавливать с помощью set.
5727 
5728     *) Добавление: переменная $is_args.
5729 
5730     *) Исправление: равномерное распределение запросов к апстримам с
5731        большими весами.
5732 
5733     *) Исправление: если клиент в почтовом прокси-сервере закрывал
5734        соединение, то nginx мог не закрывать соединение с бэкендом.
5735 
5736     *) Исправление: при использовании одного хоста в качестве бэкендов для
5737        протоколов HTTP и HTTPS без явного указания портов, nginx использовал
5738        только один порт - 80 или 443.
5739 
5740     *) Исправление: nginx не собирался на Solaris/amd64 Sun Studio 11 и
5741        более ранними версиями; ошибка появилась в 0.6.4.
5742 
5743 
5744 Изменения в nginx 0.6.5                                           23.07.2007
5745 
5746     *) Добавление: переменная $nginx_version.
5747        Спасибо Николаю Гречуху.
5748 
5749     *) Добавление: почтовый прокси-сервер поддерживает AUTHENTICATE в режиме
5750        IMAP.
5751        Спасибо Максиму Дунину.
5752 
5753     *) Добавление: почтовый прокси-сервер поддерживает STARTTLS в режиме
5754        SMTP.
5755        Спасибо Максиму Дунину.
5756 
5757     *) Исправление: теперь nginx экранирует пробел в переменной
5758        $memcached_key.
5759 
5760     *) Исправление: nginx неправильно собирался Sun Studio на Solaris/amd64.
5761        Спасибо Jiang Hong.
5762 
5763     *) Исправление: незначительных потенциальных ошибок.
5764        Спасибо Coverity's Scan.
5765 
5766 
5767 Изменения в nginx 0.6.4                                           17.07.2007
5768 
5769     *) Безопасность: при использовании директивы msie_refresh был возможен
5770        XSS.
5771        Спасибо Максиму Богуку.
5772 
5773     *) Изменение: директивы proxy_store и fastcgi_store изменены.
5774 
5775     *) Добавление: директивы proxy_store_access и fastcgi_store_access.
5776 
5777     *) Исправление: nginx не работал на Solaris/sparc64, если был собран Sun
5778        Studio.
5779        Спасибо Андрею Нигматулину.
5780 
5781     *) Изменение: обход ошибки в Sun Studio 12.
5782        Спасибо Jiang Hong.
5783 
5784 
5785 Изменения в nginx 0.6.3                                           12.07.2007
5786 
5787     *) Добавление: директивы proxy_store и fastcgi_store.
5788 
5789     *) Исправление: при использовании директивы auth_http_header в рабочем
5790        процессе мог произойти segmentation fault.
5791        Спасибо Максиму Дунину.
5792 
5793     *) Исправление: если использовался метод аутентификации CRAM-MD5, но он
5794        не был разрешён, то в рабочем процессе происходил segmentation fault.
5795 
5796     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
5797        в рабочем процессе мог произойти segmentation fault.
5798 
5799     *) Исправление: в рабочем процессе мог произойти segmentation fault,
5800        если использовался метод eventport.
5801 
5802     *) Исправление: директивы proxy_ignore_client_abort и
5803        fastcgi_ignore_client_abort не работали; ошибка появилась в 0.5.13.
5804 
5805 
5806 Изменения в nginx 0.6.2                                           09.07.2007
5807 
5808     *) Исправление: если заголовок ответа был разделён в FastCGI-записях, то
5809        nginx передавал клиенту мусор в таких заголовках.
5810 
5811 
5812 Изменения в nginx 0.6.1                                           17.06.2007
5813 
5814     *) Исправление: в парсинге SSI.
5815 
5816     *) Исправление: при использовании удалённого подзапроса в SSI
5817        последующий подзапрос локального файла мог отдаваться клиенту в
5818        неверном порядке.
5819 
5820     *) Исправление: большие включения в SSI, сохранённые во временные файлы,
5821        передавались не полностью.
5822 
5823     *) Исправление: значение perl'овой переменной $$ модуля
5824        ngx_http_perl_module было равно номеру главного процесса.
5825 
5826 
5827 Изменения в nginx 0.6.0                                           14.06.2007
5828 
5829     *) Добавление: директивы "server_name", "map", and "valid_referers"
5830        поддерживают маски вида "www.example.*".
5831 
5832 
5833 Изменения в nginx 0.5.25                                          11.06.2007
5834 
5835     *) Исправление: nginx не собирался с параметром
5836        --without-http_rewrite_module; ошибка появилась в 0.5.24.
5837 
5838 
5839 Изменения в nginx 0.5.24                                          06.06.2007
5840 
5841     *) Безопасность: директива ssl_verify_client не работала, если запрос
5842        выполнялся по протоколу HTTP/0.9.
5843 
5844     *) Исправление: при использовании сжатия часть ответа могла передаваться
5845        несжатой; ошибка появилась в 0.5.23.
5846 
5847 
5848 Изменения в nginx 0.5.23                                          04.06.2007
5849 
5850     *) Добавление: модуль ngx_http_ssl_module поддерживает расширение TLS
5851        Server Name Indication.
5852 
5853     *) Добавление: директива fastcgi_catch_stderr.
5854        Спасибо Николаю Гречуху, проект OWOX.
5855 
5856     *) Исправление: на Линуксе в основном процессе происходил segmentation
5857        fault, если два виртуальных сервера должны bind()ится к
5858        пересекающимся портам.
5859 
5860     *) Исправление: если nginx был собран с модулем ngx_http_perl_module и
5861        perl поддерживал потоки, то во время второй переконфигурации
5862        выдавались ошибки "panic: MUTEX_LOCK" и "perl_parse() failed".
5863 
5864     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
5865 
5866 
5867 Изменения в nginx 0.5.22                                          29.05.2007
5868 
5869     *) Исправление: большое тело запроса могло не передаваться бэкенду;
5870        ошибка появилась в 0.5.21.
5871 
5872 
5873 Изменения в nginx 0.5.21                                          28.05.2007
5874 
5875     *) Исправление: если внутри сервера описано больше примерно десяти
5876        location'ов, то location'ы, заданные с помощью регулярного выражения,
5877        могли выполняться не в том, порядке, в каком они описаны.
5878 
5879     *) Исправление: на 64-битной платформе рабочий процесс мог зациклиться,
5880        если 33-тий по счёту или последующий бэкенд упал.
5881        Спасибо Антону Поварову.
5882 
5883     *) Исправление: при использовании библиотеки PCRE на Solaris/sparc64 мог
5884        произойти bus error.
5885        Спасибо Андрею Нигматулину.
5886 
5887     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
5888 
5889 
5890 Изменения в nginx 0.5.20                                          07.05.2007
5891 
5892     *) Добавление: директива sendfile_max_chunk.
5893 
5894     *) Добавление: переменные "$http_...", "$sent_http_..." и
5895        "$upstream_http_..." можно менять директивой set.
5896 
5897     *) Исправление: при использовании SSI-команды 'if expr="$var = /"' в
5898        рабочем процессе мог произойти segmentation fault.
5899 
5900     *) Исправление: завершающая строка multipart range ответа передавалась
5901        неверно.
5902        Спасибо Evan Miller.
5903 
5904     *) Исправление: nginx не работал на Solaris/sparc64, если был собран Sun
5905        Studio.
5906        Спасибо Андрею Нигматулину.
5907 
5908     *) Исправление: модуль ngx_http_perl_module не собирался make в Solaris.
5909        Спасибо Андрею Нигматулину.
5910 
5911 
5912 Изменения в nginx 0.5.19                                          24.04.2007
5913 
5914     *) Изменение: значение переменной $request_time теперь записывается с
5915        точностью до миллисекунд.
5916 
5917     *) Изменение: метод $r->rflush в модуле ngx_http_perl_module
5918        переименован в $r->flush.
5919 
5920     *) Добавление: переменная $upstream_addr.
5921 
5922     *) Добавление: директивы proxy_headers_hash_max_size и
5923        proxy_headers_hash_bucket_size.
5924        Спасибо Володымыру Костырко.
5925 
5926     *) Исправление: при использовании sendfile и limit_rate на 64-битных
5927        платформах нельзя было передавать файлы больше 2G.
5928 
5929     *) Исправление: при использовании sendfile на 64-битном Linux нельзя
5930        было передавать файлы больше 2G.
5931 
5932 
5933 Изменения в nginx 0.5.18                                          19.04.2007
5934 
5935     *) Добавление: модуль ngx_http_sub_filter_module.
5936 
5937     *) Добавление: переменные "$upstream_http_...".
5938 
5939     *) Добавление: теперь переменные $upstream_status и
5940        $upstream_response_time содержат данные о всех обращениях к
5941        апстримам, сделанным до X-Accel-Redirect.
5942 
5943     *) Исправление: если nginx был собран с модулем ngx_http_perl_module и
5944        perl не поддерживал multiplicity, то после первой переконфигурации и
5945        после получения любого сигнала в основном процессе происходил
5946        segmentation fault; ошибка появилась в 0.5.9.
5947 
5948     *) Исправление: если perl не поддерживал multiplicity, то после
5949        переконфигурации перловый код не работал; ошибка появилась в 0.3.38.
5950 
5951 
5952 Изменения в nginx 0.5.17                                          02.04.2007
5953 
5954     *) Изменение: теперь nginx для метода TRACE всегда возвращает код 405.
5955 
5956     *) Добавление: теперь nginx поддерживает директиву include внутри блока
5957        types.
5958 
5959     *) Исправление: использование переменной $document_root в директиве root
5960        и alias запрещено: оно вызывало рекурсивное переполнение стека.
5961 
5962     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
5963 
5964     *) Исправление: в некоторых случаях некэшируемые переменные (такие, как
5965        $uri) возвращали старое закэшированное значение.
5966 
5967 
5968 Изменения в nginx 0.5.16                                          26.03.2007
5969 
5970     *) Исправление: в качестве ключа для хэша в директиве ip_hash не
5971        использовалась сеть класса С.
5972        Спасибо Павлу Ярковому.
5973 
5974     *) Исправление: если в строке "Content-Type" в заголовке ответа бэкенда
5975        был указан charset и строка завершалась символом ";", то в рабочем
5976        процессе мог произойти segmentation fault; ошибка появилась в 0.3.50.
5977 
5978     *) Исправление: ошибки "[alert] zero size buf" при работе с
5979        FastCGI-сервером, если тело запроса, записанное во временный файл,
5980        было кратно 32K.
5981 
5982     *) Исправление: nginx не собирался на Solaris без параметра
5983        --with-debug; ошибка появилась в 0.5.15.
5984 
5985 
5986 Изменения в nginx 0.5.15                                          19.03.2007
5987 
5988     *) Добавление: почтовый прокси-сервер поддерживает аутентифицированное
5989        SMTP-проксирование и директивы smtp_auth, smtp_capabilities и
5990        xclient.
5991        Спасибо Антону Южанинову и Максиму Дунину.
5992 
5993     *) Добавление: теперь keep-alive соединения закрываются сразу же по
5994        получении сигнала переконфигурации.
5995 
5996     *) Изменение: директивы imap и auth переименованы соответственно в mail
5997        и pop3_auth.
5998 
5999     *) Исправление: если использовался метод аутентификации CRAM-MD5 и не
6000        был разрешён метод APOP, то в рабочем процессе происходил
6001        segmentation fault.
6002 
6003     *) Исправление: при использовании директивы starttls only в протоколе
6004        POP3 nginx разрешал аутентификацию без перехода в режим SSL.
6005 
6006     *) Исправление: рабочие процессы не выходили после переконфигурации и не
6007        переоткрывали логи, если использовался метод eventport.
6008 
6009     *) Исправление: при использовании директивы ip_hash рабочий процесс мог
6010        зациклиться.
6011 
6012     *) Исправление: теперь nginx не пишет в лог некоторые alert'ы, если
6013        используются методы eventport или /dev/poll.
6014 
6015 
6016 Изменения в nginx 0.5.14                                          23.02.2007
6017 
6018     *) Исправление: nginx игнорировал лишние закрывающие скобки "}" в конце
6019        конфигурационного файла.
6020 
6021 
6022 Изменения в nginx 0.5.13                                          19.02.2007
6023 
6024     *) Добавление: методы COPY и MOVE.
6025 
6026     *) Исправление: модуль ngx_http_realip_module устанавливал мусор для
6027        запросов, переданных по keep-alive соединению.
6028 
6029     *) Исправление: nginx не работал на 64-битном big-endian Linux.
6030        Спасибо Андрею Нигматулину.
6031 
6032     *) Исправление: при получении слишком длинной команды IMAP/POP3-прокси
6033        теперь сразу закрывает соединение, а не по таймауту.
6034 
6035     *) Исправление: если при использовании метода epoll клиент закрывал
6036        преждевременно соединение со своей стороны, то nginx закрывал это
6037        соединение только по истечении таймаута на передачу.
6038 
6039     *) Исправление: nginx не собирался на платформах, отличных от i386,
6040        amd64, sparc и ppc; ошибка появилась в 0.5.8.
6041 
6042 
6043 Изменения в nginx 0.5.12                                          12.02.2007
6044 
6045     *) Исправление: nginx не собирался на платформах, отличных от i386,
6046        amd64, sparc и ppc; ошибка появилась в 0.5.8.
6047 
6048     *) Исправление: при использовании временных файлов в время работы с
6049        FastCGI-сервером в рабочем процессе мог произойти segmentation fault;
6050        ошибка появилась в 0.5.8.
6051 
6052     *) Исправление: если переменная $fastcgi_script_name записывалась в лог,
6053        то в рабочем процессе мог произойти segmentation fault.
6054 
6055     *) Исправление: ngx_http_perl_module не собирался на Solaris.
6056 
6057 
6058 Изменения в nginx 0.5.11                                          05.02.2007
6059 
6060     *) Добавление: теперь configure определяет библиотеку PCRE в MacPorts.
6061        Спасибо Chris McGrath.
6062 
6063     *) Исправление: ответ был неверным, если запрашивалось несколько
6064        диапазонов; ошибка появилась в 0.5.6.
6065 
6066     *) Исправление: директива create_full_put_path не могла создавать
6067        промежуточные каталоги, если не была установлена директива
6068        dav_access.
6069        Спасибо Evan Miller.
6070 
6071     *) Исправление: вместо кодов ошибок "400" и "408" в access_log мог
6072        записываться код "0".
6073 
6074     *) Исправление: при сборке с оптимизацией -O2 в рабочем процессе мог
6075        произойти segmentation fault.
6076 
6077 
6078 Изменения в nginx 0.5.10                                          26.01.2007
6079 
6080     *) Исправление: во время обновления исполняемого файла новый процесс не
6081        наследовал слушающие сокеты; ошибка появилась в 0.5.9.
6082 
6083     *) Исправление: при сборке с оптимизацией -O2 в рабочем процессе мог
6084        произойти segmentation fault; ошибка появилась в 0.5.1.
6085 
6086 
6087 Изменения в nginx 0.5.9                                           25.01.2007
6088 
6089     *) Изменение: модуль ngx_http_memcached_module теперь в качестве ключа
6090        использует значение переменной $memcached_key.
6091 
6092     *) Добавление: переменная $memcached_key.
6093 
6094     *) Добавление: параметр clean в директиве client_body_in_file_only.
6095 
6096     *) Добавление: директива env.
6097 
6098     *) Добавление: директива sendfile работает внутри блока if.
6099 
6100     *) Добавление: теперь при ошибке записи в access_log nginx записывает
6101        сообщение в error_log, но не чаще одного раза в минуту.
6102 
6103     *) Исправление: директива "access_log off" не всегда запрещала запись в
6104        лог.
6105 
6106 
6107 Изменения в nginx 0.5.8                                           19.01.2007
6108 
6109     *) Исправление: если использовалась директива
6110        "client_body_in_file_only on" и тело запроса было небольшое, то мог
6111        произойти segmentation fault.
6112 
6113     *) Исправление: происходил segmentation fault, если использовались
6114        директивы "client_body_in_file_only on" и
6115        "proxy_pass_request_body off" или "fastcgi_pass_request_body off", и
6116        делался переход к следующему бэкенду.
6117 
6118     *) Исправление: если при использовании директивы "proxy_buffering off"
6119        соединение с клиентом было неактивно, то оно закрывалось по таймауту,
6120        заданному директивой send_timeout; ошибка появилась в 0.4.7.
6121 
6122     *) Исправление: если при использовании метода epoll клиент закрывал
6123        преждевременно соединение со своей стороны, то nginx закрывал это
6124        соединение только по истечении таймаута на передачу.
6125 
6126     *) Исправление: ошибки "[alert] zero size buf" при работе с
6127        FastCGI-сервером.
6128 
6129     *) Исправление ошибок в директиве limit_zone.
6130 
6131 
6132 Изменения в nginx 0.5.7                                           15.01.2007
6133 
6134     *) Добавление: оптимизация использования памяти в ssl_session_cache.
6135 
6136     *) Исправление ошибок в директивах ssl_session_cache и limit_zone.
6137 
6138     *) Исправление: на старте или во время переконфигурации происходил
6139        segmentation fault, если директивы ssl_session_cache или limit_zone
6140        использовались на 64-битных платформах.
6141 
6142     *) Исправление: при использовании директив add_before_body или
6143        add_after_body происходил segmentation fault, если в заголовке ответа
6144        нет строки "Content-Type".
6145 
6146     *) Исправление: библиотека OpenSSL всегда собиралась с поддержкой
6147        потоков.
6148        Спасибо Дену Иванову.
6149 
6150     *) Исправление: совместимость библиотеки PCRE-6.5+ и компилятора icc.
6151 
6152 
6153 Изменения в nginx 0.5.6                                           09.01.2007
6154 
6155     *) Изменение: теперь модуль ngx_http_index_module игнорирует все методы,
6156        кроме GET, HEAD и POST.
6157 
6158     *) Добавление: модуль ngx_http_limit_zone_module.
6159 
6160     *) Добавление: переменная $binary_remote_addr.
6161 
6162     *) Добавление: директивы ssl_session_cache модулей ngx_http_ssl_module и
6163        ngx_imap_ssl_module.
6164 
6165     *) Добавление: метод DELETE поддерживает рекурсивное удаление.
6166 
6167     *) Исправление: при использовании $r->sendfile() byte-ranges
6168        передавались неверно.
6169 
6170 
6171 Изменения в nginx 0.5.5                                           24.12.2006
6172 
6173     *) Изменение: ключ -v больше не выводит информацию о компиляторе.
6174 
6175     *) Добавление: ключ -V.
6176 
6177     *) Добавление: директива worker_rlimit_core поддерживает указание
6178        размера в K, M и G.
6179 
6180     *) Исправление: модуль nginx.pm теперь может устанавливаться
6181        непривилегированным пользователем.
6182 
6183     *) Исправление: при использовании методов $r->request_body или
6184        $r->request_body_file мог произойти segmentation fault.
6185 
6186     *) Исправление: ошибок, специфичных для платформы ppc.
6187 
6188 
6189 Изменения в nginx 0.5.4                                           15.12.2006
6190 
6191     *) Добавление: директиву perl можно использовать внутри блока
6192        limit_except.
6193 
6194     *) Исправление: модуль ngx_http_dav_module требовал строку "Date" в
6195        заголовке запроса для метода DELETE.
6196 
6197     *) Исправление: при использовании одного параметра в директиве
6198        dav_access nginx мог сообщить об ошибке в конфигурации.
6199 
6200     *) Исправление: при использовании переменной $host мог произойти
6201        segmentation fault; ошибка появилась в 0.4.14.
6202 
6203 
6204 Изменения в nginx 0.5.3                                           13.12.2006
6205 
6206     *) Добавление: модуль ngx_http_perl_module поддерживает методы
6207        $r->status, $r->log_error и $r->sleep.
6208 
6209     *) Добавление: метод $r->variable поддерживает переменные, неописанные в
6210        конфигурации nginx'а.
6211 
6212     *) Исправление: метод $r->has_request_body не работал.
6213 
6214 
6215 Изменения в nginx 0.5.2                                           11.12.2006
6216 
6217     *) Исправление: если в директивах proxy_pass использовалось имя,
6218        указанное в upstream, то nginx пытался найти IP-адрес этого имени;
6219        ошибка появилась в 0.5.1.
6220 
6221 
6222 Изменения в nginx 0.5.1                                           11.12.2006
6223 
6224     *) Исправление: директива post_action могла не работать после неудачного
6225        завершения запроса.
6226 
6227     *) Изменение: обход ошибки в Eudora для Mac; ошибка появилась в 0.4.11.
6228        Спасибо Bron Gondwana.
6229 
6230     *) Исправление: при указании в директиве fastcgi_pass имени описанного
6231        upstream'а выдавалось сообщение "no port in upstream"; ошибка
6232        появилась в 0.5.0.
6233 
6234     *) Исправление: если в директивах proxy_pass и fastcgi_pass
6235        использовались одинаковых имена серверов, но с разными портами, то
6236        эти директивы использовали первый описанный порт; ошибка появилась в
6237        0.5.0.
6238 
6239     *) Исправление: если в директивах proxy_pass и fastcgi_pass
6240        использовались unix domain сокеты, то эти директивы использовали
6241        первый описанный сокет; ошибка появилась в 0.5.0.
6242 
6243     *) Исправление: ngx_http_auth_basic_module игнорировал пользователя,
6244        если он был указан в последней строке файла паролей и после пароля не
6245        было перевода строки, возврата каретки или символа ":".
6246 
6247     *) Исправление: переменная $upstream_response_time могла быть равна
6248        "0.000", хотя время обработки было больше 1 миллисекунды.
6249 
6250 
6251 Изменения в nginx 0.5.0                                           04.12.2006
6252 
6253     *) Изменение: параметры в виде "%name" в директиве log_format больше не
6254        поддерживаются.
6255 
6256     *) Изменение: директивы proxy_upstream_max_fails,
6257        proxy_upstream_fail_timeout, fastcgi_upstream_max_fails, и
6258        fastcgi_upstream_fail_timeout, memcached_upstream_max_fails и
6259        memcached_upstream_fail_timeout больше не поддерживаются.
6260 
6261     *) Добавление: директива server в блоке upstream поддерживает параметры
6262        max_fails, fail_timeout и down.
6263 
6264     *) Добавление: директива ip_hash в блоке upstream.
6265 
6266     *) Добавление: статус WAIT в строке "Auth-Status" в заголовке ответа
6267        сервера аутентификации IMAP/POP3 прокси.
6268 
6269     *) Исправление: nginx не собирался на 64-битных платформах; ошибка
6270        появилась в 0.4.14.
6271 
6272 
6273 Изменения в nginx 0.4.14                                          27.11.2006
6274 
6275     *) Добавление: директива proxy_pass_error_message в IMAP/POP3 прокси.
6276 
6277     *) Добавление: теперь configure определяет библиотеку PCRE на FreeBSD,
6278        Linux и NetBSD.
6279 
6280     *) Исправление: ngx_http_perl_module не работал с перлом, собранным с
6281        поддержкой потоков; ошибка появилась в 0.3.38.
6282 
6283     *) Исправление: ngx_http_perl_module не работал корректно, если перл
6284        вызывался рекурсивно.
6285 
6286     *) Исправление: nginx игнорировал имя сервера в строке запроса.
6287 
6288     *) Исправление: если FastCGI сервер передавал много в stderr, то рабочий
6289        процесс мог зациклиться.
6290 
6291     *) Исправление: при изменении системного времени переменная
6292        $upstream_response_time могла быть отрицательной.
6293 
6294     *) Исправление: при использовании POP3 серверу аутентификации IMAP/POP3
6295        прокси не передавался параметр Auth-Login-Attempt.
6296 
6297     *) Исправление: при ошибке соединения с сервером аутентификации
6298        IMAP/POP3 прокси мог произойти segmentation fault.
6299 
6300 
6301 Изменения в nginx 0.4.13                                          15.11.2006
6302 
6303     *) Добавление: директиву proxy_pass можно использовать внутри блока
6304        limit_except.
6305 
6306     *) Добавление: директива limit_except поддерживает все WebDAV методы.
6307 
6308     *) Исправление: при использовании директивы add_before_body без
6309        директивы add_after_body ответ передавался не полностью.
6310 
6311     *) Исправление: большое тело запроса не принималось, если использовались
6312        метод epoll и deferred accept().
6313 
6314     *) Исправление: для ответов модуля ngx_http_autoindex_module не
6315        выставлялась кодировка; ошибка появилась в 0.3.50.
6316 
6317     *) Исправление: ошибки "[alert] zero size buf" при работе с
6318        FastCGI-сервером;
6319 
6320     *) Исправление: параметр конфигурации --group= игнорировался.
6321        Спасибо Thomas Moschny.
6322 
6323     *) Исправление: 50-й подзапрос в SSI ответе не работал; ошибка появилась
6324        в 0.3.50.
6325 
6326 
6327 Изменения в nginx 0.4.12                                          31.10.2006
6328 
6329     *) Добавление: модуль ngx_http_perl_module поддерживает метод
6330        $r->variable.
6331 
6332     *) Исправление: при включении в ответ большого статического файла с
6333        помощью SSI ответ мог передаваться не полностью.
6334 
6335     *) Исправление: nginx не убирал "#fragment" в URI.
6336 
6337 
6338 Изменения в nginx 0.4.11                                          25.10.2006
6339 
6340     *) Добавление: POP3 прокси поддерживает AUTH LOGIN PLAIN и CRAM-MD5.
6341 
6342     *) Добавление: модуль ngx_http_perl_module поддерживает метод
6343        $r->allow_ranges.
6344 
6345     *) Исправление: при включённой поддержке команды APOP в POP3 прокси
6346        могли не работать команды USER/PASS; ошибка появилась в 0.4.10.
6347 
6348 
6349 Изменения в nginx 0.4.10                                          23.10.2006
6350 
6351     *) Добавление: POP3 прокси поддерживает APOP.
6352 
6353     *) Исправление: при использовании методов select, poll и /dev/poll во
6354        время ожидания ответа от сервера аутентификации IMAP/POP3 прокси
6355        нагружал процессор.
6356 
6357     *) Исправление: при использовании переменной $server_addr в директиве
6358        map мог произойти segmentation fault.
6359 
6360     *) Исправление: модуль ngx_http_flv_module не поддерживал byte ranges
6361        для полных ответов; ошибка появилась в 0.4.7.
6362 
6363     *) Исправление: nginx не собирался на Debian amd64; ошибка появилась в
6364        0.4.9.
6365 
6366 
6367 Изменения в nginx 0.4.9                                           13.10.2006
6368 
6369     *) Добавление: параметр set в команде SSI include.
6370 
6371     *) Добавление: модуль ngx_http_perl_module теперь проверяет версию
6372        модуля nginx.pm.
6373 
6374 
6375 Изменения в nginx 0.4.8                                           11.10.2006
6376 
6377     *) Исправление: если до команды SSI include с параметром wait
6378        выполнялась ещё одна команда SSI include, то параметр wait мог не
6379        работать.
6380 
6381     *) Исправление: модуль ngx_http_flv_module добавлял FLV-заголовок для
6382        полных ответов.
6383        Спасибо Алексею Ковырину.
6384 
6385 
6386 Изменения в nginx 0.4.7                                           10.10.2006
6387 
6388     *) Добавление: модуль ngx_http_flv_module.
6389 
6390     *) Добавление: переменная $request_body_file.
6391 
6392     *) Добавление: директивы charset и source_charset поддерживают
6393        переменные.
6394 
6395     *) Исправление: если до команды SSI include с параметром wait
6396        выполнялась ещё одна команда SSI include, то параметр wait мог не
6397        работать.
6398 
6399     *) Исправление: при использовании директивы "proxy_buffering off" или
6400        при работе с memcached соединения могли не закрываться по таймауту.
6401 
6402     *) Исправление: nginx не запускался на 64-битных платформах, отличных от
6403        amd64, sparc64 и ppc64.
6404 
6405 
6406 Изменения в nginx 0.4.6                                           06.10.2006
6407 
6408     *) Исправление: nginx не запускался на 64-битных платформах, отличных от
6409        amd64, sparc64 и ppc64.
6410 
6411     *) Исправление: при запросе версии HTTP/1.1 nginx передавал ответ
6412        chunk'ами, если длина ответа в методе
6413        $r->headers_out("Content-Length", ...) была задана текстовой строкой.
6414 
6415     *) Исправление: после перенаправления ошибки с помощью директивы
6416        error_page любая директива модуля ngx_http_rewrite_module возвращала
6417        эту ошибку; ошибка появилась в 0.4.4.
6418 
6419 
6420 Изменения в nginx 0.4.5                                           02.10.2006
6421 
6422     *) Исправление: nginx не собирался на Linux и Solaris; ошибка появилась
6423        в 0.4.4.
6424 
6425 
6426 Изменения в nginx 0.4.4                                           02.10.2006
6427 
6428     *) Добавление: переменная $scheme.
6429 
6430     *) Добавление: директива expires поддерживает параметр max.
6431 
6432     *) Добавление: директива include поддерживает маску "*".
6433        Спасибо Jonathan Dance.
6434 
6435     *) Исправление: директива return всегда изменяла код ответа,
6436        перенаправленного директивой error_page.
6437 
6438     *) Исправление: происходил segmentation fault, если в методе PUT
6439        передавалось тело нулевой длины.
6440 
6441     *) Исправление: при использовании переменных в директиве proxy_redirect
6442        редирект изменялся неверно.
6443 
6444 
6445 Изменения в nginx 0.4.3                                           26.09.2006
6446 
6447     *) Изменение: ошибку 499 теперь нельзя перенаправить с помощью директивы
6448        error_page.
6449 
6450     *) Добавление: поддержка Solaris 10 event ports.
6451 
6452     *) Добавление: модуль ngx_http_browser_module.
6453 
6454     *) Исправление: при перенаправлении ошибки 400 проксированному серверу
6455        помощью директивы error_page мог произойти segmentation fault.
6456 
6457     *) Исправление: происходил segmentation fault, если в директиве
6458        proxy_pass использовался unix domain сокет; ошибка появилась в
6459        0.3.47.
6460 
6461     *) Исправление: SSI не работал с ответами memcached и
6462        небуферизированными проксированными ответами.
6463 
6464     *) Изменение: обход ошибки PAUSE hardware capability в Sun Studio.
6465 
6466 
6467 Изменения в nginx 0.4.2                                           14.09.2006
6468 
6469     *) Исправление: убрана поддержка флага O_NOATIME на Linux; ошибка
6470        появилась в 0.4.1.
6471 
6472 
6473 Изменения в nginx 0.4.1                                           14.09.2006
6474 
6475     *) Исправление: совместимость с DragonFlyBSD.
6476        Спасибо Павлу Назарову.
6477 
6478     *) Изменение: обход ошибки в sendfile() в 64-битном Linux при передаче
6479        файлов больше 2G.
6480 
6481     *) Добавление: теперь на Linux nginx для статических запросов использует
6482        флаг O_NOATIME.
6483        Спасибо Yusuf Goolamabbas.
6484 
6485 
6486 Изменения в nginx 0.4.0                                           30.08.2006
6487 
6488     *) Изменение во внутреннем API: инициализация модулей HTTP перенесена из
6489        фазы init module в фазу HTTP postconfiguration.
6490 
6491     *) Изменение: теперь тело запроса в модуле ngx_http_perl_module не
6492        считывается заранее: нужно явно инициировать чтение с помощью метода
6493        $r->has_request_body.
6494 
6495     *) Добавление: модуль ngx_http_perl_module поддерживает код возврата
6496        DECLINED.
6497 
6498     *) Добавление: модуль ngx_http_dav_module поддерживает входящую строку
6499        заголовка "Date" для метода PUT.
6500 
6501     *) Добавление: директива ssi работает внутри блока if.
6502 
6503     *) Исправление: происходил segmentation fault, если в директиве index
6504        использовалась переменные и при этом первое имя индексного файла было
6505        без переменных; ошибка появилась в 0.1.29.
6506 
6507 
6508 Изменения в nginx 0.3.61                                          28.08.2006
6509 
6510     *) Изменение: директива tcp_nodelay теперь по умолчанию включена.
6511 
6512     *) Добавление: директива msie_refresh.
6513 
6514     *) Добавление: директива recursive_error_pages.
6515 
6516     *) Исправление: директива rewrite возвращала неправильный редирект, если
6517        редирект включал в себя выделенные закодированные символы из
6518        оригинального URI.
6519 
6520 
6521 Изменения в nginx 0.3.60                                          18.08.2006
6522 
6523     *) Исправление: во время перенаправления ошибки рабочий процесс мог
6524        зациклиться; ошибка появилась в 0.3.59.
6525 
6526 
6527 Изменения в nginx 0.3.59                                          16.08.2006
6528 
6529     *) Добавление: теперь можно делать несколько перенаправлений через
6530        директиву error_page.
6531 
6532     *) Исправление: директива dav_access не поддерживала три параметра.
6533 
6534     *) Исправление: директива error_page не изменяла строку "Content-Type"
6535        после перенаправления с помощью "X-Accel-Redirect"; ошибка появилась
6536        в 0.3.58.
6537 
6538 
6539 Изменения в nginx 0.3.58                                          14.08.2006
6540 
6541     *) Добавление: директива error_page поддерживает переменные.
6542 
6543     *) Изменение: теперь на Linux используется интерфейс procfs вместо
6544        sysctl.
6545 
6546     *) Изменение: теперь при использовании "X-Accel-Redirect" строка
6547        "Content-Type" наследуется из первоначального ответа.
6548 
6549     *) Исправление: директива error_page не перенаправляла ошибку 413.
6550 
6551     *) Исправление: завершающий "?" не удалял старые аргументы, если в
6552        переписанном URI не было новых аргументов.
6553 
6554     *) Исправление: nginx не запускался на 64-битной FreeBSD 7.0-CURRENT.
6555 
6556 
6557 Изменения в nginx 0.3.57                                          09.08.2006
6558 
6559     *) Добавление: переменная $ssl_client_serial.
6560 
6561     *) Исправление: в операторе "!-e" в директиве if.
6562        Спасибо Андриану Буданцову.
6563 
6564     *) Исправление: при проверке клиентского сертификата nginx не передавал
6565        клиенту информацию о требуемых сертификатах.
6566 
6567     *) Исправление: переменная $document_root не поддерживала переменные в
6568        директиве root.
6569 
6570 
6571 Изменения в nginx 0.3.56                                          04.08.2006
6572 
6573     *) Добавление: директива dav_access.
6574 
6575     *) Добавление: директива if поддерживает операторы "-d", "!-d", "-e",
6576        "!-e", "-x" и "!-x".
6577 
6578     *) Исправление: при записи в access_log некоторых передаваемых клиенту
6579        строк заголовков происходил segmentation fault, если запрос возвращал
6580        редирект.
6581 
6582 
6583 Изменения в nginx 0.3.55                                          28.07.2006
6584 
6585     *) Добавление: параметр stub в команде SSI include.
6586 
6587     *) Добавление: команда SSI block.
6588 
6589     *) Добавление: скрипт unicode2nginx добавлен в contrib.
6590 
6591     *) Исправление: если root был задан только переменной, то корень
6592        задавался относительно префикса сервера.
6593 
6594     *) Исправление: если в запросе был "//" или "/.", и после этого
6595        закодированные символы в виде "%XX", то проксируемый запрос
6596        передавался незакодированным.
6597 
6598     *) Исправление: метод $r->header_in("Cookie") модуля
6599        ngx_http_perl_module теперь возвращает все строки "Cookie" в
6600        заголовке запроса.
6601 
6602     *) Исправление: происходил segmentation fault, если использовался
6603        "client_body_in_file_only on" и делался переход к следующему бэкенду.
6604 
6605     *) Исправление: при некоторых условиях во время переконфигурации коды
6606        символов внутри директивы charset_map могли считаться неверными;
6607        ошибка появилась в 0.3.50.
6608 
6609 
6610 Изменения в nginx 0.3.54                                          11.07.2006
6611 
6612     *) Добавление: nginx теперь записывает в лог информацию о подзапросах.
6613 
6614     *) Добавление: директивы proxy_next_upstream, fastcgi_next_upstream и
6615        memcached_next_upstream поддерживают параметр off.
6616 
6617     *) Добавление: директива debug_connection поддерживает запись адресов в
6618        формате CIDR.
6619 
6620     *) Исправление: при перекодировании ответа проксированного сервера или
6621        сервера FastCGI в UTF-8 или наоборот ответ мог передаваться не
6622        полностью.
6623 
6624     *) Исправление: переменная $upstream_response_time содержала время
6625        только первого обращения к бэкенду.
6626 
6627     *) Исправление: nginx не собирался на платформе amd64; ошибка появилась
6628        в 0.3.53.
6629 
6630 
6631 Изменения в nginx 0.3.53                                          07.07.2006
6632 
6633     *) Изменение: директива add_header добавляет строки в ответы с кодом
6634        204, 301 и 302.
6635 
6636     *) Добавление: директива server в блоке upstream поддерживает параметр
6637        weight.
6638 
6639     *) Добавление: директива server_name поддерживает маску "*".
6640 
6641     *) Добавление: nginx поддерживает тело запроса больше 2G.
6642 
6643     *) Исправление: если при использовании "satisfy_any on" клиент успешно
6644        проходил аутентификацию, в лог всё равно записалоcь сообщение "access
6645        forbidden by rule".
6646 
6647     *) Исправление: метод PUT мог ошибочно не создать файл и вернуть код
6648        409.
6649 
6650     *) Исправление: если во время аутентификации IMAP/POP3 бэкенд возвращал
6651        ошибку, nginx продолжал проксирование.
6652 
6653 
6654 Изменения в nginx 0.3.52                                          03.07.2006
6655 
6656     *) Изменение: восстановлено поведение модуля ngx_http_index_module для
6657        запросов "POST /": как в версии до 0.3.40, модуль теперь не выдаёт
6658        ошибку 405.
6659 
6660     *) Исправление: при использовании ограничения скорости рабочий процесс
6661        мог зациклиться; ошибка появилась в 0.3.37.
6662 
6663     *) Исправление: модуль ngx_http_charset_module записывал в лог ошибку
6664        "unknown charset", даже если перекодировка не требовалась; ошибка
6665        появилась в 0.3.50.
6666 
6667     *) Исправление: если в результате запроса PUT возвращался код 409, то
6668        временный файл не удалялся.
6669 
6670 
6671 Изменения в nginx 0.3.51                                          30.06.2006
6672 
6673     *) Исправление: при некоторых условиях в SSI мог пропадать символы "<";
6674        ошибка появилась в 0.3.50.
6675 
6676 
6677 Изменения в nginx 0.3.50                                          28.06.2006
6678 
6679     *) Изменение: директивы proxy_redirect_errors и fastcgi_redirect_errors
6680        переименованы соответственно в proxy_intercept_errors и
6681        fastcgi_intercept_errors.
6682 
6683     *) Добавление: модуль ngx_http_charset_module поддерживает
6684        перекодирование из однобайтных кодировок в UTF-8 и обратно.
6685 
6686     *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка
6687        "X-Accel-Charset" в ответе бэкенда.
6688 
6689     *) Исправление: символ "\" в парах "\"" и "\'" в SSI командах убирался,
6690        только если также использовался символ "$".
6691 
6692     *) Исправление: при некоторых условиях в SSI после вставки могла быть
6693        добавлена строка "<!--".
6694 
6695     *) Исправление: если в заголовке ответа была строка "Content-Length: 0",
6696        то при использовании небуферизированного проксировании не закрывалось
6697        соединение с клиентом.
6698 
6699 
6700 Изменения в nginx 0.3.49                                          31.05.2006
6701 
6702     *) Исправление: в директиве set.
6703 
6704     *) Исправление: при включении в ssi двух и более подзапросов,
6705        обрабатываемых через FastCGI, вместо вывода второго и остальных
6706        подзапросов в ответ включался вывод первого подзапроса.
6707 
6708 
6709 Изменения в nginx 0.3.48                                          29.05.2006
6710 
6711     *) Изменение: теперь модуль ngx_http_charset_module работает для
6712        подзапросов, в ответах которых нет строки заголовка "Content-Type".
6713 
6714     *) Исправление: если в директиве proxy_pass не было URI, то директива
6715        "proxy_redirect default" добавляла в переписанный редирект в начало
6716        лишний слэш.
6717 
6718     *) Исправление: внутренний редирект всегда превращал любой HTTP-метод в
6719        GET, теперь это делается только для редиректов, выполняемых с помощью
6720        X-Accel-Redirect, и у которых метод не равен HEAD; ошибка появилась в
6721        0.3.42.
6722 
6723     *) Исправление: модуль ngx_http_perl_module не собирался, если перл был
6724        с поддержкой потоков; ошибка появилась в 0.3.46.
6725 
6726 
6727 Изменения в nginx 0.3.47                                          23.05.2006
6728 
6729     *) Добавление: директива upstream.
6730 
6731     *) Изменение: символ "\" в парах "\"" и "\'" в SSI командах теперь
6732        всегда убирается.
6733 
6734 
6735 Изменения в nginx 0.3.46                                          11.05.2006
6736 
6737     *) Добавление: директивы proxy_hide_header, proxy_pass_header,
6738        fastcgi_hide_header и fastcgi_pass_header.
6739 
6740     *) Изменение: директивы proxy_pass_x_powered_by, fastcgi_x_powered_by и
6741        proxy_pass_server упразднены.
6742 
6743     *) Добавление: в режиме прокси поддерживается строка заголовка
6744        "X-Accel-Buffering" в ответе бэкенда.
6745 
6746     *) Исправление: ошибок и утечек памяти при переконфигурации в модуле
6747        ngx_http_perl_module.
6748 
6749 
6750 Изменения в nginx 0.3.45                                          06.05.2006
6751 
6752     *) Добавление: директивы ssl_verify_client, ssl_verify_depth и
6753        ssl_client_certificate.
6754 
6755     *) Изменение: теперь переменная $request_method возвращает метод только
6756        основного запроса.
6757 
6758     *) Изменение: в таблице перекодировки koi-win изменены коды символа
6759        &deg;.
6760 
6761     *) Добавление: в таблицу перекодировки koi-win добавлены символы евро и
6762        номера.
6763 
6764     *) Исправление: если nginx распределял запросы на несколько машин, то
6765        при падении одной из них запросы, предназначенные для этой машины,
6766        перенаправлялись только на одну машину вместо того, чтобы равномерно
6767        распределяться между остальными.
6768 
6769 
6770 Изменения в nginx 0.3.44                                          04.05.2006
6771 
6772     *) Добавление: параметр wait в команде SSI include.
6773 
6774     *) Добавление: в таблицу перекодировки koi-win добавлены украинские и
6775        белорусские символы.
6776 
6777     *) Исправление: в SSI.
6778 
6779 
6780 Изменения в nginx 0.3.43                                          26.04.2006
6781 
6782     *) Исправление: в SSI.
6783 
6784 
6785 Изменения в nginx 0.3.42                                          26.04.2006
6786 
6787     *) Добавление: параметр bind в директиве listen в IMAP/POP3 прокси.
6788 
6789     *) Исправление: ошибки при использовании в директиве rewrite одного и
6790        того же выделения более одного раза.
6791 
6792     *) Исправление: в лог не записывались переменные
6793        $sent_http_content_type, $sent_http_content_length,
6794        $sent_http_last_modified, $sent_http_connection,
6795        $sent_http_keep_alive и $sent_http_transfer_encoding.
6796 
6797     *) Исправление: переменная $sent_http_cache_control возвращала
6798        содержимое только одной строки "Cache-Control" в заголовке ответа.
6799 
6800 
6801 Изменения в nginx 0.3.41                                          21.04.2006
6802 
6803     *) Добавление: ключ -v.
6804 
6805     *) Исправление: при включении в SSI удалённых подзапросов мог произойти
6806        segmentation fault.
6807 
6808     *) Исправление: в обработке FastCGI.
6809 
6810     *) Исправление: если путь к перловым модулям не был указан с помощью
6811        --with-perl_modules_path=PATH или директивы perl_modules, то на
6812        старте происходил segmentation fault.
6813 
6814 
6815 Изменения в nginx 0.3.40                                          19.04.2006
6816 
6817     *) Добавление: модуль ngx_http_dav_module поддерживает метод MKCOL.
6818 
6819     *) Добавление: директива create_full_put_path.
6820 
6821     *) Добавление: переменная $limit_rate.
6822 
6823 
6824 Изменения в nginx 0.3.39                                          17.04.2006
6825 
6826     *) Добавление: директива uninitialized_variable_warn; уровень
6827        логгирования сообщения о неинициализированной переменной понижен с
6828        уровня alert на warn.
6829 
6830     *) Добавление: директива override_charset.
6831 
6832     *) Изменение: при использовании неизвестной переменной в SSI-командах
6833        echo и if expr='$name' теперь не записывается в лог сообщение о
6834        неизвестной переменной.
6835 
6836     *) Исправление: счётчик активных соединений рос при превышении лимита
6837        соединений, заданного директивой worker_connections; ошибка появилась
6838        в 0.2.0.
6839 
6840     *) Исправление: при некоторых условия ограничение скорости соединения
6841        могло не работать; ошибка появилась в 0.3.38.
6842 
6843 
6844 Изменения в nginx 0.3.38                                          14.04.2006
6845 
6846     *) Добавление: модуль ngx_http_dav_module.
6847 
6848     *) Изменение: оптимизация модуля ngx_http_perl_module.
6849        Спасибо Сергею Скворцову.
6850 
6851     *) Добавление: модуль ngx_http_perl_module поддерживает метод
6852        $r->request_body_file.
6853 
6854     *) Добавление: директива client_body_in_file_only.
6855 
6856     *) Изменение: теперь при переполнении диска nginx пытается писать
6857        access_log'и только раз в секунду.
6858        Спасибо Антону Южанинову и Максиму Дунину.
6859 
6860     *) Исправление: теперь директива limit_rate точнее ограничивает скорость
6861        при значениях больше 100 Kbyte/s.
6862        Спасибо ForJest.
6863 
6864     *) Исправление: IMAP/POP3 прокси теперь передаёт серверу авторизации
6865        символы "\r" и "\n" в логине и пароле в закодированном виде.
6866        Спасибо Максиму Дунину.
6867 
6868 
6869 Изменения в nginx 0.3.37                                          07.04.2006
6870 
6871     *) Добавление: директива limit_except.
6872 
6873     *) Добавление: директива if поддерживает операторы "!~", "!~*", "-f" и
6874        "!-f".
6875 
6876     *) Добавление: модуль ngx_http_perl_module поддерживает метод
6877        $r->request_body.
6878 
6879     *) Исправление: в модуле ngx_http_addition_filter_module.
6880 
6881 
6882 Изменения в nginx 0.3.36                                          05.04.2006
6883 
6884     *) Добавление: модуль ngx_http_addition_filter_module.
6885 
6886     *) Добавление: директивы proxy_pass и fastcgi_pass можно использовать
6887        внутри блока if.
6888 
6889     *) Добавление: директивы proxy_ignore_client_abort и
6890        fastcgi_ignore_client_abort.
6891 
6892     *) Добавление: переменная $request_completion.
6893 
6894     *) Добавление: модуль ngx_http_perl_module поддерживает методы
6895        $r->request_method и $r->remote_addr.
6896 
6897     *) Добавление: модуль ngx_http_ssi_module поддерживает команду elif.
6898 
6899     *) Исправление: строка "\/" в начале выражения команды if модуля
6900        ngx_http_ssi_module воспринималась неверно.
6901 
6902     *) Исправление: в использовании регулярных выражениях в команде if
6903        модуля ngx_http_ssi_module.
6904 
6905     *) Исправление: при задании относительного пути в директивах
6906        client_body_temp_path, proxy_temp_path, fastcgi_temp_path и
6907        perl_modules использовался каталог относительно текущего каталога, а
6908        не относительно префикса сервера.
6909 
6910 
6911 Изменения в nginx 0.3.35                                          22.03.2006
6912 
6913     *) Исправление: accept-фильтр и TCP_DEFER_ACCEPT устанавливались только
6914        для первой директивы listen; ошибка появилась в 0.3.31.
6915 
6916     *) Исправление: в директиве proxy_pass без URI при использовании в
6917        подзапросе.
6918 
6919 
6920 Изменения в nginx 0.3.34                                          21.03.2006
6921 
6922     *) Добавление: директива add_header поддерживает переменные.
6923 
6924 
6925 Изменения в nginx 0.3.33                                          15.03.2006
6926 
6927     *) Добавление: параметр http_503 в директивах proxy_next_upstream или
6928        fastcgi_next_upstream.
6929 
6930     *) Исправление: ngx_http_perl_module не работал со встроенным в
6931        конфигурационный файл кодом, если он не начинался сразу же с "sub".
6932 
6933     *) Исправление: в директиве post_action.
6934 
6935 
6936 Изменения в nginx 0.3.32                                          11.03.2006
6937 
6938     *) Исправление: удаление отладочного логгирования на старте и при
6939        переконфигурации; ошибка появилась в 0.3.31.
6940 
6941 
6942 Изменения в nginx 0.3.31                                          10.03.2006
6943 
6944     *) Изменение: теперь nginx передаёт неверные ответы проксированного
6945        бэкенда.
6946 
6947     *) Добавление: директивы listen поддерживают адрес в виде "*:порт".
6948 
6949     *) Добавление: поддержка EVFILER_TIMER в MacOSX 10.4.
6950 
6951     *) Изменение: обход ошибки обработки миллисекундных таймаутов kqueue в
6952        64-битном ядре MacOSX.
6953        Спасибо Андрею Нигматулину.
6954 
6955     *) Исправление: если внутри одного сервера описаны несколько директив
6956        listen, слушающих на разных адресах, то имена серверов вида
6957        "*.domain.tld" работали только для первого адреса; ошибка появилась в
6958        0.3.18.
6959 
6960     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
6961        не передавались запросы с телом, записанным во временный файл.
6962 
6963     *) Исправление: совместимость с perl 5.8.8.
6964 
6965 
6966 Изменения в nginx 0.3.30                                          22.02.2006
6967 
6968     *) Изменение: уровень записи в лог ошибки ECONNABORTED изменён на error
6969        с уровня crit.
6970 
6971     *) Исправление: модуль ngx_http_perl_module не собирался без модуля
6972        ngx_http_ssi_filter_module.
6973 
6974     *) Исправление: nginx не собирался на i386 платформе, если использовался
6975        PIC; ошибка появилась в 0.3.27.
6976 
6977 
6978 Изменения в nginx 0.3.29                                          20.02.2006
6979 
6980     *) Добавление: теперь nginx использует меньше памяти, если PHP в режиме
6981        FastCGI передаёт большое количество предупреждений перед ответом.
6982 
6983     *) Исправление: в ответах 204 для запросов версии HTTP/1.1 выдавалась
6984        строка заголовка "Transfer-Encoding: chunked".
6985 
6986     *) Исправление: nginx возвращал 502 код ответа, если FastCGI сервер
6987        передавал полные строки заголовка ответа в отдельных FastCGI записях.
6988 
6989     *) Исправление: если в директиве post_action был указан проксируемый
6990        URI, то он выполнялся только после успешного завершения запроса.
6991 
6992 
6993 Изменения в nginx 0.3.28                                          16.02.2006
6994 
6995     *) Добавление: директива restrict_host_names упразднена.
6996 
6997     *) Добавление: параметр конфигурации --with-cpu-opt=ppc64.
6998 
6999     *) Исправление: при некоторых условиях проксированное соединение с
7000        клиентом завершалось преждевременно.
7001        Спасибо Владимиру Шутову.
7002 
7003     *) Исправление: строка заголовка "X-Accel-Limit-Rate" не учитывалась для
7004        запросов, перенаправленных с помощью строки "X-Accel-Redirect".
7005 
7006     *) Исправление: директива post_action работала только после успешного
7007        завершения запроса.
7008 
7009     *) Исправление: тело проксированного ответа, создаваемого директивой
7010        post_action, передавалось клиенту.
7011 
7012 
7013 Изменения в nginx 0.3.27                                          08.02.2006
7014 
7015     *) Изменение: директивы variables_hash_max_size и
7016        variables_hash_bucket_size.
7017 
7018     *) Добавление: переменная $body_bytes_sent доступна не только в
7019        директиве log_format.
7020 
7021     *) Добавление: переменные $ssl_protocol и $ssl_cipher.
7022 
7023     *) Добавление: определение размера строки кэша распространённых
7024        процессоров при старте.
7025 
7026     *) Добавление: директива accept_mutex теперь поддерживается посредством
7027        fcntl(2) на платформах, отличных от i386, amd64, sparc64 и ppc.
7028 
7029     *) Добавление: директива lock_file и параметр автоконфигурации
7030        --with-lock-path=PATH.
7031 
7032     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
7033        не передавались запросы с телом.
7034 
7035 
7036 Изменения в nginx 0.3.26                                          03.02.2006
7037 
7038     *) Изменение: директива optimize_host_names переименована в
7039        optimize_server_names.
7040 
7041     *) Исправление: при проксировании подзапроса в SSI бэкенду передавался
7042        URI основного запроса, если в директиве proxy_pass отсутствовал URI.
7043 
7044 
7045 Изменения в nginx 0.3.25                                          01.02.2006
7046 
7047     *) Исправление: при неверной конфигурации на старте или во время
7048        переконфигурации происходил segmentation fault; ошибка появилась в
7049        0.3.24.
7050 
7051 
7052 Изменения в nginx 0.3.24                                          01.02.2006
7053 
7054     *) Изменение: обход ошибки в kqueue во FreeBSD.
7055 
7056     *) Исправление: ответ, создаваемый директивой post_action, теперь не
7057        передаётся клиенту.
7058 
7059     *) Исправление: при использовании большого количества лог-файлов
7060        происходила утечка памяти.
7061 
7062     *) Исправление: внутри одного location работала только первая директива
7063        proxy_redirect.
7064 
7065     *) Исправление: на 64-битных платформах при старте мог произойти
7066        segmentation fault, если использовалось большое количество имён в
7067        директивах server_name; ошибка появилась в 0.3.18.
7068 
7069 
7070 Изменения в nginx 0.3.23                                          24.01.2006
7071 
7072     *) Добавление: директива optimize_host_names.
7073 
7074     *) Исправление: ошибки при использовании переменных в директивах path и
7075        alias.
7076 
7077     *) Исправление: модуль ngx_http_perl_module неправильно собирался на
7078        Linux и Solaris.
7079 
7080 
7081 Изменения в nginx 0.3.22                                          17.01.2006
7082 
7083     *) Добавление: модуль ngx_http_perl_module поддерживает методы $r->args
7084        и $r->unescape.
7085 
7086     *) Добавление: метод $r->query_string в модуле ngx_http_perl_module
7087        упразднён.
7088 
7089     *) Исправление: если в директиве valid_referers указаны только none или
7090        blocked, то происходил segmentation fault; ошибка появилась в 0.3.18.
7091 
7092 
7093 Изменения в nginx 0.3.21                                          16.01.2006
7094 
7095     *) Добавление: модуль ngx_http_perl_module.
7096 
7097     *) Изменение: директива valid_referers разрешает использовать рефереры
7098        совсем без URI.
7099 
7100 
7101 Изменения в nginx 0.3.20                                          11.01.2006
7102 
7103     *) Исправление: ошибки в обработке SSI.
7104 
7105     *) Исправление: модуль ngx_http_memcached_module не поддерживал ключи в
7106        виде /uri?args.
7107 
7108 
7109 Изменения в nginx 0.3.19                                          28.12.2005
7110 
7111     *) Добавление: директивы path и alias поддерживают переменные.
7112 
7113     *) Изменение: теперь директива valid_referers опять учитывает URI.
7114 
7115     *) Исправление: ошибки в обработке SSI.
7116 
7117 
7118 Изменения в nginx 0.3.18                                          26.12.2005
7119 
7120     *) Добавление: директива server_names поддерживает имена вида
7121        ".domain.tld".
7122 
7123     *) Добавление: директива server_names использует хэш для имён вида
7124        "*.domain.tld" и более эффективный хэш для обычных имён.
7125 
7126     *) Изменение: директивы server_names_hash_max_size и
7127        server_names_hash_bucket_size.
7128 
7129     *) Изменение: директивы server_names_hash и server_names_hash_threshold
7130        упразднены.
7131 
7132     *) Добавление: директива valid_referers использует хэш для имён сайтов.
7133 
7134     *) Изменение: теперь директива valid_referers проверяет только имена
7135        сайтов без учёта URI.
7136 
7137     *) Исправление: некоторые имена вида ".domain.tld" неверно
7138        обрабатывались модулем ngx_http_map_module.
7139 
7140     *) Исправление: если конфигурационного файла не было, то происходил
7141        segmentation fault; ошибка появилась в 0.3.12.
7142 
7143     *) Исправление: на 64-битных платформах при старте мог произойти
7144        segmentation fault; ошибка появилась в 0.3.16.
7145 
7146 
7147 Изменения в nginx 0.3.17                                          18.12.2005
7148 
7149     *) Изменение: на Linux configure теперь проверяет наличие epoll и
7150        sendfile64() в ядре.
7151 
7152     *) Добавление: директива map поддерживает доменные имена в формате
7153        ".domain.tld".
7154 
7155     *) Исправление: во время SSL handshake не иcпользовались таймауты;
7156        ошибка появилась в 0.2.4.
7157 
7158     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
7159 
7160     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
7161        по умолчанию использовался порт 80.
7162 
7163 
7164 Изменения в nginx 0.3.16                                          16.12.2005
7165 
7166     *) Добавление: модуль ngx_http_map_module.
7167 
7168     *) Добавление: директивы types_hash_max_size и types_hash_bucket_size.
7169 
7170     *) Добавление: директива ssi_value_length.
7171 
7172     *) Добавление: директива worker_rlimit_core.
7173 
7174     *) Изменение: при сборке компиляторами icc 8.1 и 9.0 с оптимизацией для
7175        Pentium 4 номер соединения в логах всегда был равен 1.
7176 
7177     *) Исправление: команда config timefmt в SSI задавала неверный формат
7178        времени.
7179 
7180     *) Исправление: nginx не закрывал соединения с IMAP/POP3 бэкендом при
7181        использовании SSL соединений; ошибка появилась в 0.3.13.
7182        Спасибо Rob Mueller.
7183 
7184     *) Исправление: segmentation fault мог произойти во время SSL shutdown;
7185        ошибка появилась в 0.3.13.
7186 
7187 
7188 Изменения в nginx 0.3.15                                          07.12.2005
7189 
7190     *) Добавление: новой код 444 в директиве return для закрытия соединения.
7191 
7192     *) Добавление: директива so_keepalive в IMAP/POP3 прокси.
7193 
7194     *) Исправление: nginx теперь вызывает abort() при обнаружении незакрытых
7195        соединений только при плавном выходе и включённой директиве
7196        debug_points.
7197 
7198 
7199 Изменения в nginx 0.3.14                                          05.12.2005
7200 
7201     *) Исправление: в ответе 304 передавалось тело ответа; ошибка появилась
7202        в 0.3.13.
7203 
7204 
7205 Изменения в nginx 0.3.13                                          05.12.2005
7206 
7207     *) Добавление: IMAP/POP3 прокси поддерживает STARTTLS и STLS.
7208 
7209     *) Исправление: IMAP/POP3 прокси не работала с методами select, poll и
7210        /dev/poll.
7211 
7212     *) Исправление: ошибки в обработке SSI.
7213 
7214     *) Исправление: sendfilev() в Solaris теперь не используется при
7215        передаче тела запроса FastCGI-серверу через unix domain сокет.
7216 
7217     *) Исправление: директива auth_basic не запрещала аутентификацию; ошибка
7218        появилась в 0.3.11.
7219 
7220 
7221 Изменения в nginx 0.3.12                                          26.11.2005
7222 
7223     *) Безопасность: если nginx был собран с модулем ngx_http_realip_module,
7224        то при использовании директивы "satisfy_any on" директивы доступа и
7225        аутентификации не работали. Модуль ngx_http_realip_module не
7226        собирался и не собирается по умолчанию.
7227 
7228     *) Изменение: имя переменной "$time_gmt" изменено на "$time_local".
7229 
7230     *) Изменение: директивы proxy_header_buffer_size и
7231        fastcgi_header_buffer_size переименованы соответственно в
7232        proxy_buffer_size и fastcgi_buffer_size.
7233 
7234     *) Добавление: модуль ngx_http_memcached_module.
7235 
7236     *) Добавление: директива proxy_buffering.
7237 
7238     *) Исправление: изменение в работе с accept mutex при использовании
7239        метода rtsig; ошибка появилась в 0.3.0.
7240 
7241     *) Исправление: если клиент передал строку "Transfer-Encoding: chunked"
7242        в заголовке запроса, то nginx теперь выдаёт ошибку 411.
7243 
7244     *) Исправление: при наследовании директивы auth_basic с уровня http в
7245        строке "WWW-Authenticate" заголовка ответа выводился realm без текста
7246        "Basic realm".
7247 
7248     *) Исправление: если в директиве access_log был явно указан формат
7249        combined, то в лог записывались пустые строки; ошибка появилась в
7250        0.3.8.
7251 
7252     *) Исправление: nginx не работал на платформе sparc под любыми OS, кроме
7253        Solaris.
7254 
7255     *) Исправление: в директиве if теперь не нужно разделять пробелом строку
7256        в кавычках и закрывающую скобку.
7257 
7258 
7259 Изменения в nginx 0.3.11                                          15.11.2005
7260 
7261     *) Исправление: nginx не передавал при проксировании тело запроса и
7262        строки заголовка клиента; ошибка появилась в 0.3.10.
7263 
7264 
7265 Изменения в nginx 0.3.10                                          15.11.2005
7266 
7267     *) Изменение: директива valid_referers и переменная $invalid_referer
7268        перенесены из модуля ngx_http_rewrite_module в новый модуль
7269        ngx_http_referer_module.
7270 
7271     *) Изменение: имя переменной "$apache_bytes_sent" изменено на
7272        "$body_bytes_sent".
7273 
7274     *) Добавление: переменные "$sent_http_...".
7275 
7276     *) Добавление: директива if поддерживает операции "=" и "!=".
7277 
7278     *) Добавление: директива proxy_pass поддерживает протокол HTTPS.
7279 
7280     *) Добавление: директива proxy_set_body.
7281 
7282     *) Добавление: директива post_action.
7283 
7284     *) Добавление: модуль ngx_http_empty_gif_module.
7285 
7286     *) Добавление: директива worker_cpu_affinity для Linux.
7287 
7288     *) Исправление: директива rewrite не раскодировала символы в редиректах
7289        в URI, теперь символы раскодируются, кроме символов %00-%25 и
7290        %7F-%FF.
7291 
7292     *) Исправление: nginx не собирался компилятором icc 9.0.
7293 
7294     *) Исправление: если для статического файла нулевого размера был
7295        разрешён SSI, то ответ передавался неверно при кодировании chunk'ами.
7296 
7297 
7298 Изменения в nginx 0.3.9                                           10.11.2005
7299 
7300     *) Исправление: nginx считал небезопасными URI, в которых между двумя
7301        слэшами находилось два любых символа; ошибка появилась в 0.3.8.
7302 
7303 
7304 Изменения в nginx 0.3.8                                           09.11.2005
7305 
7306     *) Безопасность: nginx теперь проверят URI, полученные от бэкенда в
7307        строке "X-Accel-Redirect" в заголовке ответа, или в SSI файле на
7308        наличие путей "/../" и нулей.
7309 
7310     *) Изменение: nginx теперь не воспринимает пустое имя как правильное в
7311        строке "Authorization" в заголовке запроса.
7312 
7313     *) Добавление: директива ssl_session_timeout модулей ngx_http_ssl_module
7314        и ngx_imap_ssl_module.
7315 
7316     *) Добавление: директива auth_http_header модуля
7317        ngx_imap_auth_http_module.
7318 
7319     *) Добавление: директива add_header.
7320 
7321     *) Добавление: модуль ngx_http_realip_module.
7322 
7323     *) Добавление: новые переменные для использования в директиве
7324        log_format: $bytes_sent, $apache_bytes_sent, $status, $time_gmt,
7325        $uri, $request_time, $request_length, $upstream_status,
7326        $upstream_response_time, $gzip_ratio, $uid_got, $uid_set,
7327        $connection, $pipe и $msec. Параметры в виде "%name" скоро будут
7328        упразднены.
7329 
7330     *) Изменение: в директиве "if" ложными значениями переменных теперь
7331        являются пустая строка "" и строки, начинающиеся на "0".
7332 
7333     *) Исправление: при работает с проксированными или FastCGI-серверами
7334        nginx мог оставлять открытыми соединения и временные файлы с
7335        запросами клиентов.
7336 
7337     *) Исправление: рабочие процессы не сбрасывали буферизированные логи при
7338        плавном выходе.
7339 
7340     *) Исправление: если URI запроса изменялось с помощью rewrite, а затем
7341        запрос проксировался в location, заданном регулярным выражением, то
7342        бэкенду передавался неверный запрос; ошибка появилась в 0.2.6.
7343 
7344     *) Исправление: директива expires не удаляла уже установленную строку
7345        заголовка "Expires".
7346 
7347     *) Исправление: при использовании метода rtsig и нескольких рабочих
7348        процессах nginx мог перестать принимать запросы.
7349 
7350     *) Исправление: в SSI командах неверно обрабатывались строки "\"" и
7351        "\'".
7352 
7353     *) Исправление: если ответ заканчивался сразу же после SSI команды, то
7354        при использовании сжатия ответ передавался не до конца или не
7355        передавался вообще.
7356 
7357 
7358 Изменения в nginx 0.3.7                                           27.10.2005
7359 
7360     *) Добавление: директива access_log поддерживает параметр buffer=.
7361 
7362     *) Исправление: nginx не собирался на платформах, отличных от i386,
7363        amd64, sparc и ppc; ошибка появилась в 0.3.2.
7364 
7365 
7366 Изменения в nginx 0.3.6                                           24.10.2005
7367 
7368     *) Изменение: IMAP/POP3 прокси теперь не передаёт серверу авторизации
7369        пустой логин.
7370 
7371     *) Добавление: директива log_format поддерживает переменные в виде
7372        $name.
7373 
7374     *) Исправление: если хотя бы в одном сервере не было описано ни одной
7375        директивы listen, то nginx не слушал на 80 порту; ошибка появилась в
7376        0.3.3.
7377 
7378     *) Исправление: если в директиве proxy_pass отсутствовал URI, то всегда
7379        использовался порт 80.
7380 
7381 
7382 Изменения в nginx 0.3.5                                           21.10.2005
7383 
7384     *) Исправление: если логин IMAP/POP3 менялся сервером авторизации, то
7385        мог произойти segmentation fault; ошибка появилась в 0.2.2.
7386 
7387     *) Исправление: accept mutex не работал, все соединения обрабатывались
7388        одним рабочим процессом; ошибка появилась в 0.3.3.
7389 
7390     *) Исправление: при использовании метода rtsig и директивы
7391        timer_resolution не работали таймауты.
7392 
7393 
7394 Изменения в nginx 0.3.4                                           19.10.2005
7395 
7396     *) Исправление: nginx не собирался на Linux 2.4+ и MacOS X; ошибка
7397        появилась в 0.3.3.
7398 
7399 
7400 Изменения в nginx 0.3.3                                           19.10.2005
7401 
7402     *) Изменение: параметры "bl" и "af" директивы listen переименованы в
7403        "backlog" и "accept_filter".
7404 
7405     *) Добавление: параметры "rcvbuf" и "sndbuf" в директиве listen.
7406 
7407     *) Изменение: параметр лога $msec теперь не требует дополнительного
7408        системного вызова gettimeofday().
7409 
7410     *) Добавление: ключ -t теперь проверяет директивы listen.
7411 
7412     *) Исправление: если в директиве listen был указан неверный адрес, то
7413        nginx после сигнала -HUP оставлял открытый сокет в состоянии CLOSED.
7414 
7415     *) Исправление: для индексных файлов, содержащих в имени переменную, мог
7416        неверно выставляться тип mime по умолчанию; ошибка появилась в 0.3.0.
7417 
7418     *) Добавление: директива timer_resolution.
7419 
7420     *) Добавление: параметр лога $upstream_response_time в миллисекундах.
7421 
7422     *) Исправление: временный файл с телом запроса клиента теперь удаляется
7423        сразу после того, как клиенту передан заголовок ответа.
7424 
7425     *) Исправление: совместимость с OpenSSL 0.9.6.
7426 
7427     *) Исправление: пути к файлам с SSL сертификатом и ключом не могли быть
7428        относительными.
7429 
7430     *) Исправление: директива ssl_prefer_server_ciphers не работала для
7431        модуля ngx_imap_ssl_module.
7432 
7433     *) Исправление: директива ssl_protocols позволяла задать только один
7434        протокол.
7435 
7436 
7437 Изменения в nginx 0.3.2                                           12.10.2005
7438 
7439     *) Добавление: поддержка Sun Studio 10 C compiler.
7440 
7441     *) Добавление: директивы proxy_upstream_max_fails,
7442        proxy_upstream_fail_timeout, fastcgi_upstream_max_fails и
7443        fastcgi_upstream_fail_timeout.
7444 
7445 
7446 Изменения в nginx 0.3.1                                           10.10.2005
7447 
7448     *) Исправление: во время переполнения очереди сигналов при использовании
7449        метода rtsig происходил segmentation fault; ошибка появилась в 0.2.0.
7450 
7451     *) Изменение: корректная обработка пар "\\", "\"", "\'" и "\$" в SSI.
7452 
7453 
7454 Изменения в nginx 0.3.0                                           07.10.2005
7455 
7456     *) Изменение: убрано десятидневное ограничение времени работы рабочего
7457        процесса. Ограничение было введено из-за переполнения миллисекундных
7458        таймеров.
7459 
7460 
7461 Изменения в nginx 0.2.6                                           05.10.2005
7462 
7463     *) Изменение: с 60 до 10 секунд уменьшено время повторного обращения к
7464        бэкенду при использовании распределения нагрузки.
7465 
7466     *) Изменение: директива proxy_pass_unparsed_uri упразднена, оригинальный
7467        запрос теперь передаётся, если в директиве proxy_pass отсутствует
7468        URI.
7469 
7470     *) Добавление: директива error_page поддерживает редиректы и позволяет
7471        более гибко менять код ошибки.
7472 
7473     *) Изменение: в проксированных подзапросах теперь игнорируется
7474        переданный charset.
7475 
7476     *) Исправление: если после изменения URI в блоке if для запроса не
7477        находилась новая конфигурация, то правила модуля
7478        ngx_http_rewrite_module выполнялись снова.
7479 
7480     *) Исправление: если директива set устанавливала переменную модуля
7481        ngx_http_geo_module в какой-либо части конфигурации, то эта
7482        переменная не была доступна в других частях конфигурации и выдавалась
7483        ошибка "using uninitialized variable"; ошибка появилась в 0.2.2.
7484 
7485 
7486 Изменения в nginx 0.2.5                                           04.10.2005
7487 
7488     *) Изменение: дублирующее значение переменной модуля ngx_http_geo_module
7489        теперь выдаёт предупреждение и изменяет старое значение.
7490 
7491     *) Добавление: модуль ngx_http_ssi_module поддерживает команду set.
7492 
7493     *) Добавление: модуль ngx_http_ssi_module поддерживает параметр file в
7494        команде include.
7495 
7496     *) Добавление: модуль ngx_http_ssi_module поддерживает подстановку
7497        значений переменных в выражениях команды if.
7498 
7499 
7500 Изменения в nginx 0.2.4                                           03.10.2005
7501 
7502     *) Добавление: модуль ngx_http_ssi_module поддерживает выражения
7503        "$var=text", "$var!=text", "$var=/text/" и "$var!=/text/" в команде
7504        if.
7505 
7506     *) Исправление: ошибки при проксировании location без слэша в конце;
7507        ошибка появилась в 0.1.44.
7508 
7509     *) Исправление: при использовании метода rtsig мог произойти
7510        segmentation fault; ошибка появилась в 0.2.0.
7511 
7512 
7513 Изменения в nginx 0.2.3                                           30.09.2005
7514 
7515     *) Исправление: nginx не собирался без параметра --with-debug; ошибка
7516        появилась в 0.2.2.
7517 
7518 
7519 Изменения в nginx 0.2.2                                           30.09.2005
7520 
7521     *) Добавление: команда config errmsg в модуле ngx_http_ssi_module.
7522 
7523     *) Изменение: переменные модуля ngx_http_geo_module можно переопределять
7524        директивой set.
7525 
7526     *) Добавление: директивы ssl_protocols и ssl_prefer_server_ciphers
7527        модулей ngx_http_ssl_module и ngx_imap_ssl_module.
7528 
7529     *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе
7530        длинных имён файлов;
7531 
7532     *) Исправление: модуль ngx_http_autoindex_module теперь не показывает
7533        файлы, начинающиеся на точку.
7534 
7535     *) Исправление: если SSL handshake завершался с ошибкой, то это могло
7536        привести также к закрытию другого соединения.
7537        Спасибо Rob Mueller.
7538 
7539     *) Исправление: экспортные версии MSIE 5.x не могли соединиться по
7540        HTTPS.
7541 
7542 
7543 Изменения в nginx 0.2.1                                           23.09.2005
7544 
7545     *) Исправление: если все бэкенды, используемые для балансировки
7546        нагрузки, оказывались в нерабочем состоянии после одной ошибки, то
7547        nginx мог зациклится; ошибка появилась в 0.2.0.
7548 
7549 
7550 Изменения в nginx 0.2.0                                           23.09.2005
7551 
7552     *) Изменились имена pid-файлов, используемые во время обновления
7553        исполняемого файла. Ручное переименование теперь не нужно. Старый
7554        основной процесс добавляет к своему pid-файл суффикс ".oldbin" и
7555        запускает новый исполняемый файл. Новый основной процесс создаёт
7556        обычный pid-файл без суффикса ".newbin". Если новый основной процесс
7557        выходит, то старый процесс переименовывает свой pid-файл c суффиксом
7558        ".oldbin" в pid-файл без суффикса. При обновлении с версии 0.1.х до
7559        0.2.0 нужно учитывать, что оба процесса - старый 0.1.x и новый
7560        0.2.0 - используют pid-файл без суффиксов.
7561 
7562     *) Изменение: директива worker_connections, новое название директивы
7563        connections; директива теперь задаёт максимальное число соединений, а
7564        не максимально возможный номер дескриптора для сокета.
7565 
7566     *) Добавление: SSL поддерживает кэширование сессий в пределах одного
7567        рабочего процесса.
7568 
7569     *) Добавление: директива satisfy_any.
7570 
7571     *) Изменение: модули ngx_http_access_module и ngx_http_auth_basic_module
7572        не работают для подзапросов.
7573 
7574     *) Добавление: директивы worker_rlimit_nofile и
7575        worker_rlimit_sigpending.
7576 
7577     *) Исправление: если все бэкенды, используемые для балансировки
7578        нагрузки, оказывались в нерабочем состоянии после одной ошибки, то
7579        nginx не обращался к ним в течение 60 секунд.
7580 
7581     *) Исправление: в парсинге аргументов IMAP/POP3 команд.
7582        Спасибо Rob Mueller.
7583 
7584     *) Исправление: ошибки при использовании SSL в IMAP/POP3 прокси.
7585 
7586     *) Исправление: ошибки при использовании SSI и сжатия.
7587 
7588     *) Исправление: в ответах 304 не добавлялись строки заголовка ответа
7589        "Expires" и "Cache-Control".
7590        Спасибо Александру Кукушкину.
7591 
7592 
7593 Изменения в nginx 0.1.45                                          08.09.2005
7594 
7595     *) Изменение: директива ssl_engine упразднена в модуле
7596        ngx_http_ssl_module и перенесена на глобальный уровень.
7597 
7598     *) Исправление: ответы с подзапросами, включённые с помощью SSI, не
7599        передавались через SSL соединение.
7600 
7601     *) Разные исправления в IMAP/POP3 прокси.
7602 
7603 
7604 Изменения в nginx 0.1.44                                          06.09.2005
7605 
7606     *) Добавление: IMAP/POP3 прокси поддерживает SSL.
7607 
7608     *) Добавление: директива proxy_timeout модуля ngx_imap_proxy_module.
7609 
7610     *) Добавление: директива userid_mark.
7611 
7612     *) Добавление: значение переменной $remote_user определяется независимо
7613        от того, используется ли авторизация или нет.
7614 
7615 
7616 Изменения в nginx 0.1.43                                          30.08.2005
7617 
7618     *) Добавление: listen(2) backlog в директиве listen можно менять по
7619        сигналу -HUP.
7620 
7621     *) Добавление: скрипт geo2nginx.pl добавлен в contrib.
7622 
7623     *) Изменение: параметры FastCGI с пустым значениями теперь передаются
7624        серверу.
7625 
7626     *) Исправление: если в ответе проксированного сервера или FastCGI
7627        сервера была строка "Cache-Control", то при использовании директивы
7628        expires происходил segmentation fault или рабочий процесс мог
7629        зациклится; в режиме прокси ошибка появилась в 0.1.29.
7630 
7631 
7632 Изменения в nginx 0.1.42                                          23.08.2005
7633 
7634     *) Исправление: если URI запроса получался нулевой длины после обработки
7635        модулем ngx_http_rewrite_module, то в модуле ngx_http_proxy_module
7636        происходил segmentation fault или bus error.
7637 
7638     *) Исправление: директива limit_rate не работала внутри блока if; ошибка
7639        появилась в 0.1.38.
7640 
7641 
7642 Изменения в nginx 0.1.41                                          25.07.2005
7643 
7644     *) Исправление: если переменная использовалась в файле конфигурации, то
7645        она не могла использоваться в SSI.
7646 
7647 
7648 Изменения в nginx 0.1.40                                          22.07.2005
7649 
7650     *) Исправление: если клиент слал очень длинную строку заголовка, то в
7651        логе не помещалась информация, связанная с этим запросом.
7652 
7653     *) Исправление: при использовании "X-Accel-Redirect" не передавалась
7654        строка "Set-Cookie"; ошибка появилась в 0.1.39.
7655 
7656     *) Исправление: при использовании "X-Accel-Redirect" не передавалась
7657        строка "Content-Disposition".
7658 
7659     *) Исправление: по сигналу SIGQUIT основной процесс не закрывал сокеты,
7660        на которых он слушал.
7661 
7662     *) Исправление: после обновления исполняемого файла на лету на Linux и
7663        Solaris название процесса в команде ps становилось короче.
7664 
7665 
7666 Изменения в nginx 0.1.39                                          14.07.2005
7667 
7668     *) Изменения в модуле ngx_http_charset_module: директива default_charset
7669        упразднена; директива charset задаёт кодировку ответа; директива
7670        source_charset задаёт только исходную кодировку.
7671 
7672     *) Исправление: при перенаправлении ошибки 401, полученной от бэкенда,
7673        не передавалась строка заголовка "WWW-Authenticate".
7674 
7675     *) Исправление: модули ngx_http_proxy_module и ngx_http_fastcgi_module
7676        могли закрыть соединение до того, как что-нибудь было передано
7677        клиенту; ошибка появилась в 0.1.38.
7678 
7679     *) Изменение: обработка ошибки инициализации в crypt_r() в Linux glibc.
7680 
7681     *) Исправление: модуль ngx_http_ssi_module не поддерживал относительные
7682        URI в команде include virtual.
7683 
7684     *) Исправление: если в строке заголовка ответа бэкенда была строка
7685        "Location", которую nginx не должен был изменять, то в ответе
7686        передавалось тело 500 ошибки; ошибка появилась в 0.1.29.
7687 
7688     *) Исправление: некоторые директивы модулей ngx_http_proxy_module и
7689        ngx_http_fastcgi_module не наследовались с уровня server на уровень
7690        location; ошибка появилась в 0.1.29.
7691 
7692     *) Исправление: модуль ngx_http_ssl_module не поддерживал цепочки
7693        сертификатов.
7694 
7695     *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе
7696        длинных имён файлов; ошибка появилась в 0.1.38.
7697 
7698     *) Исправления в IMAP/POP3 прокси при взаимодействии с бэкендом на
7699        стадии login.
7700 
7701 
7702 Изменения в nginx 0.1.38                                          08.07.2005
7703 
7704     *) Добавление: директива limit_rate поддерживается в режиме прокси и
7705        FastCGI.
7706 
7707     *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка
7708        "X-Accel-Limit-Rate" в ответе бэкенда.
7709 
7710     *) Добавление: директива break.
7711 
7712     *) Добавление: директива log_not_found.
7713 
7714     *) Исправление: при перенаправлении запроса с помощью строки заголовка
7715        "X-Accel-Redirect" не изменялся код ответа.
7716 
7717     *) Исправление: переменные, установленные директивой set не могли
7718        использоваться в SSI.
7719 
7720     *) Исправление: при включении в SSI более одного удалённого подзапроса
7721        мог произойти segmentation fault.
7722 
7723     *) Исправление: если статусная строка в ответе бэкенда передавалась в
7724        двух пакетах, то nginx считал ответ неверным; ошибка появилась в
7725        0.1.29.
7726 
7727     *) Добавление: директива ssi_types.
7728 
7729     *) Добавление: директива autoindex_exact_size.
7730 
7731     *) Исправление: модуль ngx_http_autoindex_module не поддерживал длинные
7732        имена файлов в UTF-8.
7733 
7734     *) Добавление: IMAP/POP3 прокси.
7735 
7736 
7737 Изменения в nginx 0.1.37                                          23.06.2005
7738 
7739     *) Изменение: в конце файла nginx.pid теперь добавляется "\n".
7740 
7741     *) Исправление: при включении большого количества вставок или нескольких
7742        больших вставок с помощью SSI ответ мог передаваться не полностью.
7743 
7744     *) Исправление: если все бэкенды возвращали ответ 404, то при
7745        использовании параметра http_404 в директивах proxy_next_upstream или
7746        fastcgi_next_upstream, nginx начинал запрашивать все бэкенды снова.
7747 
7748 
7749 Изменения в nginx 0.1.36                                          15.06.2005
7750 
7751     *) Изменение: если в заголовке запроса есть дублирующиеся строки "Host",
7752        "Connection", "Content-Length" и "Authorization", то nginx теперь
7753        выдаёт ошибку 400.
7754 
7755     *) Изменение: директива post_accept_timeout упразднена.
7756 
7757     *) Добавление: параметры default, af=, bl=, deferred и bind в директиве
7758        listen.
7759 
7760     *) Добавление: поддержка accept фильтров во FreeBSD.
7761 
7762     *) Добавление: поддержка TCP_DEFER_ACCEPT в Linux.
7763 
7764     *) Исправление: модуль ngx_http_autoindex_module не поддерживал имена
7765        файлов в UTF-8.
7766 
7767     *) Исправление: после добавления новый лог-файл ротация этого лога по
7768        сигналу -USR1 выполнялась, только если переконфигурировать nginx два
7769        раза по сигналу -HUP.
7770 
7771 
7772 Изменения в nginx 0.1.35                                          07.06.2005
7773 
7774     *) Добавление: директива working_directory.
7775 
7776     *) Добавление: директива port_in_redirect.
7777 
7778     *) Исправление: если заголовок ответа бэкенда не помещался в один пакет,
7779        то происходил segmentation fault; ошибка появилась в 0.1.29.
7780 
7781     *) Исправление: если было сконфигурировано более 10 серверов или в
7782        сервере не описана директива "listen", то при запуске мог произойти
7783        segmentation fault.
7784 
7785     *) Исправление: если ответ не помещался во временный файл, то мог
7786        произойти segmentation fault.
7787 
7788     *) Исправление: nginx возвращал ошибку 400 на запросы вида
7789        "GET http://www.domain.com/uri HTTP/1.0"; ошибка появилась в 0.1.28.
7790 
7791 
7792 Изменения в nginx 0.1.34                                          26.05.2005
7793 
7794     *) Исправление: при включении больших ответов с помощью SSI рабочий
7795        процесс мог зациклиться.
7796 
7797     *) Исправление: переменные, устанавливаемые директивой "set", не были
7798        доступны в SSI.
7799 
7800     *) Добавление: директива autoindex_localtime.
7801 
7802     *) Исправление: пустое значение в директиве proxy_set_header запрещает
7803        передачу заголовка.
7804 
7805 
7806 Изменения в nginx 0.1.33                                          23.05.2005
7807 
7808     *) Исправление: nginx не собирался с параметром --without-pcre; ошибка
7809        появилась в 0.1.29.
7810 
7811     *) Исправление: 3, 5, 7 и 8 директив proxy_set_header на одном уровне
7812        вызывали bus fault при запуске.
7813 
7814     *) Исправление: в редиректах внутри HTTPS сервера был указан протокол
7815        HTTP.
7816 
7817     *) Исправление: если директива rewrite использовала выделения внутри
7818        директивы if, то возвращалась ошибка 500.
7819 
7820 
7821 Изменения в nginx 0.1.32                                          19.05.2005
7822 
7823     *) Исправление: в редиректах, выдаваемых с помощью директивы rewrite, не
7824        передавались аргументы; ошибка появилась в 0.1.29.
7825 
7826     *) Добавление: директива if поддерживает выделения в регулярных
7827        выражениях.
7828 
7829     *) Добавление: директива set поддерживает переменные и выделения из
7830        регулярных выражений.
7831 
7832     *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка
7833        "X-Accel-Redirect" в ответе бэкенда.
7834 
7835 
7836 Изменения в nginx 0.1.31                                          16.05.2005
7837 
7838     *) Исправление: при использовании SSL ответ мог передаваться не до
7839        конца.
7840 
7841     *) Исправление: ошибки при обработке SSI в ответе, полученного от
7842        FastCGI-сервера.
7843 
7844     *) Исправление: ошибки при использовании SSI и сжатия.
7845 
7846     *) Исправление: редирект с кодом 301 передавался без тела ответа; ошибка
7847        появилась в 0.1.30.
7848 
7849 
7850 Изменения в nginx 0.1.30                                          14.05.2005
7851 
7852     *) Исправление: при использовании SSI рабочий процесс мог зациклиться.
7853 
7854     *) Исправление: при использовании SSL ответ мог передаваться не до
7855        конца.
7856 
7857     *) Исправление: если длина части ответа, полученного за один раз от
7858        проксируемого или FastCGI сервера была равна 500 байт, то nginx
7859        возвращал код ответа 500; в режиме прокси ошибка появилась только в
7860        0.1.29.
7861 
7862     *) Исправление: nginx не считал неверными директивы с 8-ю или 9-ю
7863        параметрами.
7864 
7865     *) Добавление: директива return может возвращать код ответа 204.
7866 
7867     *) Добавление: директива ignore_invalid_headers.
7868 
7869 
7870 Изменения в nginx 0.1.29                                          12.05.2005
7871 
7872     *) Добавление: модуль ngx_http_ssi_module поддерживает команду include
7873        virtual.
7874 
7875     *) Добавление: модуль ngx_http_ssi_module поддерживает условную команду
7876        вида 'if expr="$NAME"' и команды else и endif. Допускается только
7877        один уровень вложенности.
7878 
7879     *) Добавление: модуль ngx_http_ssi_module поддерживает две переменные
7880        DATE_LOCAL и DATE_GMT и команду config timefmt.
7881 
7882     *) Добавление: директива ssi_ignore_recycled_buffers.
7883 
7884     *) Исправление: если переменная QUERY_STRING не была определена, то в
7885        команде echo не ставилось значение по умолчанию.
7886 
7887     *) Изменение: модуль ngx_http_proxy_module полностью переписан.
7888 
7889     *) Добавление: директивы proxy_redirect, proxy_pass_request_headers,
7890        proxy_pass_request_body и proxy_method.
7891 
7892     *) Добавление: директива proxy_set_header. Директива proxy_x_var
7893        упразднена и должна быть заменена директивой proxy_set_header.
7894 
7895     *) Изменение: директива proxy_preserve_host упразднена и должна быть
7896        заменена директивами "proxy_set_header Host $host" и "proxy_redirect
7897        off" или директивой "proxy_set_header Host $host:$proxy_port" и
7898        соответствующими ей директивами proxy_redirect.
7899 
7900     *) Изменение: директива proxy_set_x_real_ip упразднена и должна быть
7901        заменена директивой "proxy_set_header X-Real-IP $remote_addr".
7902 
7903     *) Изменение: директива proxy_add_x_forwarded_for упразднена и должна
7904        быть заменена директивой
7905        "proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for".
7906 
7907     *) Изменение: директива proxy_set_x_url упразднена и должна быть
7908        заменена директивой
7909        "proxy_set_header X-URL http://$host:$server_port$request_uri".
7910 
7911     *) Добавление: директива fastcgi_param.
7912 
7913     *) Изменение: директивы fastcgi_root, fastcgi_set_var и fastcgi_params
7914        упразднены и должны быть замены директивами fastcgi_param.
7915 
7916     *) Добавление: директива index может использовать переменные.
7917 
7918     *) Добавление: директива index может быть указана на уровне http и
7919        server.
7920 
7921     *) Изменение: только последний параметр в директиве index может быть
7922        абсолютным.
7923 
7924     *) Добавление: в директиве rewrite могут использоваться переменные.
7925 
7926     *) Добавление: директива internal.
7927 
7928     *) Добавление: переменные CONTENT_LENGTH, CONTENT_TYPE, REMOTE_PORT,
7929        SERVER_ADDR, SERVER_PORT, SERVER_PROTOCOL, DOCUMENT_ROOT,
7930        SERVER_NAME, REQUEST_METHOD, REQUEST_URI и REMOTE_USER.
7931 
7932     *) Изменение: nginx теперь передаёт неверные строки в заголовках запроса
7933        клиента и ответа бэкенда.
7934 
7935     *) Исправление: если бэкенд долго не передавал ответ и send_timeout был
7936        меньше, чем proxy_read_timeout, то клиенту возвращался ответ 408.
7937 
7938     *) Исправление: если бэкенд передавал неверную строку в заголовке
7939        ответа, то происходил segmentation fault; ошибка появилась в 0.1.26.
7940 
7941     *) Исправление: при использовании отказоустойчивой конфигурации в
7942        FastCGI мог происходить segmentation fault.
7943 
7944     *) Исправление: директива expires не удаляла уже установленные строки
7945        заголовка "Expires" и "Cache-Control".
7946 
7947     *) Исправление: nginx не учитывал завершающую точку в строке заголовка
7948        запроса "Host".
7949 
7950     *) Исправление: модуль ngx_http_auth_module не работал на Linux.
7951 
7952     *) Исправление: директива rewrite неверно работала, если в запросе
7953        присутствовали аргументы.
7954 
7955     *) Исправление: nginx не собирался на MacOS X.
7956 
7957 
7958 Изменения в nginx 0.1.28                                          08.04.2005
7959 
7960     *) Исправление: при проксировании больших файлов nginx сильно нагружал
7961        процессор.
7962 
7963     *) Исправление: nginx не собирался gcc 4.0 на Linux.
7964 
7965 
7966 Изменения в nginx 0.1.27                                          28.03.2005
7967 
7968     *) Добавление: параметр blocked в директиве valid_referers.
7969 
7970     *) Изменение: ошибки обработки заголовка запроса теперь записываются на
7971        уровне info, в лог также записывается имя сервера и строки заголовка
7972        запроса "Host" и "Referer".
7973 
7974     *) Изменение: при записи ошибок в лог записывается также строка
7975        заголовка запроса "Host".
7976 
7977     *) Добавление: директива proxy_pass_unparsed_uri. Специальная обработка
7978        символов "://" в URI, введённая в версии 0.1.11, теперь упразднена.
7979 
7980     *) Исправление: nginx не собирался на FreeBSD и Linux, если был указан
7981        параметр конфигурации --without-ngx_http_auth_basic_module.
7982 
7983 
7984 Изменения в nginx 0.1.26                                          22.03.2005
7985 
7986     *) Изменение: неверные строки заголовка, переданные клиентом, теперь
7987        игнорируется и записываются в error_log на уровне info.
7988 
7989     *) Изменение: при записи ошибок в лог записывается также имя сервера,
7990        при обращении к которому произошла ошибка.
7991 
7992     *) Добавление: модуль ngx_http_auth_basic_module и директивы auth_basic
7993        и auth_basic_user_file.
7994 
7995 
7996 Изменения в nginx 0.1.25                                          19.03.2005
7997 
7998     *) Исправление: nginx не работал на Linux parisc.
7999 
8000     *) Добавление: nginx теперь не запускается под FreeBSD, если значение
8001        sysctl kern.ipc.somaxconn слишком большое.
8002 
8003     *) Исправление: если модуль ngx_http_index_module делал внутреннее
8004        перенаправление запроса в модули ngx_http_proxy_module или
8005        ngx_http_fastcgi_module, то файл индекса не закрывался после
8006        обслуживания запроса.
8007 
8008     *) Добавление: директива proxy_pass может использоваться в location,
8009        заданных регулярным выражением.
8010 
8011     *) Добавление: модуль ngx_http_rewrite_filter_module поддерживает
8012        условия вида "if ($HTTP_USER_AGENT ~ MSIE)".
8013 
8014     *) Исправление: nginx очень медленно запускался при большом количестве
8015        адресов и использовании текстовых значений в директиве geo.
8016 
8017     *) Изменение: имя переменной в директиве geo нужно указывать, как $name.
8018        Прежний вариант без "$" пока работает, но вскоре будет убран.
8019 
8020     *) Добавление: параметр лога "%{VARIABLE}v".
8021 
8022     *) Добавление: директива "set $name value".
8023 
8024     *) Исправление: совместимость с gcc 4.0.
8025 
8026     *) Добавление: параметр автоконфигурации --with-openssl-opt=OPTIONS.
8027 
8028 
8029 Изменения в nginx 0.1.24                                          04.03.2005
8030 
8031     *) Добавление: модуль ngx_http_ssi_filter_module поддерживает переменные
8032        QUERY_STRING и DOCUMENT_URI.
8033 
8034     *) Исправление: модуль ngx_http_autoindex_module мог выдавать ответ 404
8035        на существующий каталог, если этот каталог был указан как alias.
8036 
8037     *) Исправление: модуль ngx_http_ssi_filter_module неправильно работал
8038        при больших ответах.
8039 
8040     *) Исправление: отсутствие строки заголовка "Referer" всегда считалось
8041        правильным referrer'ом.
8042 
8043 
8044 Изменения в nginx 0.1.23                                          01.03.2005
8045 
8046     *) Добавление: модуль ngx_http_ssi_filter_module и директивы ssi,
8047        ssi_silent_errors и ssi_min_file_chunk. Поддерживаются команды 'echo
8048        var="HTTP_..." default=""' и 'echo var="REMOTE_ADDR"'.
8049 
8050     *) Добавление: параметр лога %request_time.
8051 
8052     *) Добавление: если запрос пришёл без строки заголовка "Host", то
8053        директива proxy_preserve_host устанавливает в качестве этого
8054        заголовка первое имя сервера из директивы server_name.
8055 
8056     *) Исправление: nginx не собирался на платформах, отличных от i386,
8057        amd64, sparc и ppc; ошибка появилась в 0.1.22.
8058 
8059     *) Исправление: модуль ngx_http_autoindex_module теперь показывает
8060        информацию не о символическом линке, а о файле или каталоге, на
8061        который он указывает.
8062 
8063     *) Исправление: если клиенту ничего не передавалось, то параметр
8064        %apache_length записывал в лог отрицательную длину заголовка ответа.
8065 
8066 
8067 Изменения в nginx 0.1.22                                          22.02.2005
8068 
8069     *) Исправление: модуль ngx_http_stub_status_module показывал неверную
8070        статистику для обработанных соединений, если использовалось
8071        проксирование или FastCGI-сервер.
8072 
8073     *) Исправление: на Linux и Solaris установочные пути были неверно
8074        заключены в кавычки; ошибка появилась в 0.1.21.
8075 
8076 
8077 Изменения в nginx 0.1.21                                          22.02.2005
8078 
8079     *) Исправление: модуль ngx_http_stub_status_module показывал неверную
8080        статистику при использовании метода rtsig или при использовании
8081        нескольких рабочих процессов на SMP машине.
8082 
8083     *) Исправление: nginx не собирался компилятором icc под Линуксом или
8084        если библиотека zlib-1.2.x собиралась из исходных текстов.
8085 
8086     *) Исправление: nginx не собирался под NetBSD 2.0.
8087 
8088 
8089 Изменения в nginx 0.1.20                                          17.02.2005
8090 
8091     *) Добавление: новые параметры script_filename и remote_port в директиве
8092        fastcgi_params.
8093 
8094     *) Исправление: неправильно обрабатывался поток stderr от
8095        FastCGI-сервера.
8096 
8097 
8098 Изменения в nginx 0.1.19                                          16.02.2005
8099 
8100     *) Исправление: если в запросе есть нуль, то для локальных запросов
8101        теперь возвращается ошибка 404.
8102 
8103     *) Исправление: nginx не собирался под NetBSD 2.0.
8104 
8105     *) Исправление: во время чтения тела запроса клиента в SSL соединении
8106        мог произойти таймаут.
8107 
8108 
8109 Изменения в nginx 0.1.18                                          09.02.2005
8110 
8111     *) Изменение: для совместимости с Solaris 10 в директивах devpoll_events
8112        и devpoll_changes значения по умолчанию уменьшены с 512 до 32.
8113 
8114     *) Исправление: директивы proxy_set_x_var и fastcgi_set_var не
8115        наследовались.
8116 
8117     *) Исправление: в директиве rewrite, возвращающей редирект, аргументы
8118        присоединялись к URI через символ "&" вместо "?".
8119 
8120     *) Исправление: строки для модуля ngx_http_geo_module без символа ";" во
8121        включённом файле игнорировались.
8122 
8123     *) Добавление: модуль ngx_http_stub_status_module.
8124 
8125     *) Исправление: неизвестный формат лог-файла в директиве access_log
8126        вызывал segmentation fault.
8127 
8128     *) Добавление: новый параметр document_root в директиве fastcgi_params.
8129 
8130     *) Добавление: директива fastcgi_redirect_errors.
8131 
8132     *) Добавление: новый модификатор break в директиве rewrite позволяет
8133        прекратить цикл rewrite/location и устанавливает текущую конфигурацию
8134        для запроса.
8135 
8136 
8137 Изменения в nginx 0.1.17                                          03.02.2005
8138 
8139     *) Изменение: модуль ngx_http_rewrite_module полностью переписан. Теперь
8140        можно делать редиректы, возвращать коды ошибок и проверять переменные
8141        и рефереры. Эти директивы можно использовать внутри location.
8142        Директива redirect упразднена.
8143 
8144     *) Добавление: модуль ngx_http_geo_module.
8145 
8146     *) Добавление: директивы proxy_set_x_var и fastcgi_set_var.
8147 
8148     *) Исправление: конфигурация location с модификатором "=" могла
8149        использоваться в другом location.
8150 
8151     *) Исправление: правильный тип ответа выставлялся только для запросов, у
8152        которых в расширении были только маленькие буквы.
8153 
8154     *) Исправление: если для location установлен proxy_pass или
8155        fastcgi_pass, и доступ к нему запрещался, а ошибка перенаправлялась
8156        на статическую страницу, то происходил segmentation fault.
8157 
8158     *) Исправление: если в проксированном ответе в заголовке "Location"
8159        передавался относительный URL, то к нему добавлялось имя хоста и
8160        слэш; ошибка появилась в 0.1.14.
8161 
8162     *) Исправление: на Linux в лог не записывался текст системной ошибки.
8163 
8164 
8165 Изменения в nginx 0.1.16                                          25.01.2005
8166 
8167     *) Исправление: если ответ передавался chunk'ами, то при запросе HEAD
8168        выдавался завершающий chunk.
8169 
8170     *) Исправление: заголовок "Connection: keep-alive" выдавался, даже если
8171        директива keepalive_timeout запрещала использование keep-alive.
8172 
8173     *) Исправление: ошибки в модуле ngx_http_fastcgi_module вызывали
8174        segmentation fault.
8175 
8176     *) Исправление: при использовании SSL сжатый ответ мог передаваться не
8177        до конца.
8178 
8179     *) Исправление: опции TCP_NODELAY, TCP_NOPUSH и TCP_CORK, специфичные
8180        для TCP сокетов, не используются для unix domain сокетов.
8181 
8182     *) Добавление: директива rewrite поддерживает перезаписывание
8183        аргументов.
8184 
8185     *) Исправление: на запрос POST с заголовком "Content-Length: 0"
8186        возвращался ответ 400; ошибка появилась в 0.1.14.
8187 
8188 
8189 Изменения в nginx 0.1.15                                          19.01.2005
8190 
8191     *) Исправление: ошибка соединения с FastCGI-сервером вызывала
8192        segmentation fault.
8193 
8194     *) Исправление: корректная обработка регулярного выражения, в котором
8195        число выделенных частей не совпадает с числом подстановок.
8196 
8197     *) Добавление: location, который передаётся FastCGI-серверу, может быть
8198        задан с помощью регулярного выражения.
8199 
8200     *) Исправление: параметр FastCGI REQUEST_URI теперь передаётся вместе с
8201        аргументами и в том виде, в котором был получен от клиента.
8202 
8203     *) Исправление: для использования регулярных выражений в location нужно
8204        было собирать nginx вместе с ngx_http_rewrite_module.
8205 
8206     *) Исправление: если бэкенд слушал на 80-ом порту, то при использовании
8207        директивы "proxy_preserve_host on" в заголовке "Host" указывался
8208        также порт 80; ошибка появилась в 0.1.14.
8209 
8210     *) Исправление: если задать одинаковые пути в параметрах
8211        автоконфигурации --http-client-body-temp-path=PATH и
8212        --http-proxy-temp-path=PATH или --http-client-body-temp-path=PATH и
8213        --http-fastcgi-temp-path=PATH, то происходил segmentation fault.
8214 
8215 
8216 Изменения в nginx 0.1.14                                          18.01.2005
8217 
8218     *) Добавление: параметры автоконфигурации
8219        --http-client-body-temp-path=PATH, --http-proxy-temp-path=PATH и
8220        --http-fastcgi-temp-path=PATH
8221 
8222     *) Изменение: имя каталога с временными файлами, содержащие тело запроса
8223        клиента, задаётся директивой client_body_temp_path, по умолчанию
8224        <prefix>/client_body_temp.
8225 
8226     *) Добавление: модуль ngx_http_fastcgi_module и директивы fastcgi_pass,
8227        fastcgi_root, fastcgi_index, fastcgi_params, fastcgi_connect_timeout,
8228        fastcgi_send_timeout, fastcgi_read_timeout, fastcgi_send_lowat,
8229        fastcgi_header_buffer_size, fastcgi_buffers,
8230        fastcgi_busy_buffers_size, fastcgi_temp_path,
8231        fastcgi_max_temp_file_size, fastcgi_temp_file_write_size,
8232        fastcgi_next_upstream и fastcgi_x_powered_by.
8233 
8234     *) Исправление: ошибка "[alert] zero size buf"; ошибка появилась в
8235        0.1.3.
8236 
8237     *) Изменение: в директиве proxy_pass нужно обязательно указывать URI
8238        после имени хоста.
8239 
8240     *) Изменение: если в URI встречался символ %3F, то он считался началом
8241        строки аргументов.
8242 
8243     *) Добавление: поддержка unix domain сокетов в модуле
8244        ngx_http_proxy_module.
8245 
8246     *) Добавление: директивы ssl_engine и ssl_ciphers.
8247        Спасибо Сергею Скворцову за SSL-акселератор.
8248 
8249 
8250 Изменения в nginx 0.1.13                                          21.12.2004
8251 
8252     *) Добавление: директивы server_names_hash и
8253        server_names_hash_threshold.
8254 
8255     *) Исправление: имена *.domain.tld в директиве server_name не работали.
8256 
8257     *) Исправление: параметр лога %request_length записывал неверную длину.
8258 
8259 
8260 Изменения в nginx 0.1.12                                          06.12.2004
8261 
8262     *) Добавление: параметр лога %request_length.
8263 
8264     *) Исправление: при использовании /dev/poll, select и poll на
8265        платформах, где возможны ложные срабатывания указанных методов, могли
8266        быть длительные задержки при обработке запроса по keep-alive
8267        соединению. Наблюдалось по крайней мере на Solaris с использованием
8268        /dev/poll.
8269 
8270     *) Исправление: директива send_lowat игнорируется на Linux, так как
8271        Linux не поддерживает опцию SO_SNDLOWAT.
8272 
8273 
8274 Изменения в nginx 0.1.11                                          02.12.2004
8275 
8276     *) Добавление: директива worker_priority.
8277 
8278     *) Изменение: под FreeBSD директивы tcp_nopush и tcp_nodelay вместе
8279        влияют на передачу ответа.
8280 
8281     *) Исправление: nginx не вызывал initgroups().
8282        Спасибо Андрею Ситникову и Андрею Нигматулину.
8283 
8284     *) Изменение: ngx_http_auto_index_module теперь выдаёт размер файлов в
8285        байтах.
8286 
8287     *) Исправление: ngx_http_auto_index_module возвращал ошибку 500, если в
8288        каталоге есть битый symlink.
8289 
8290     *) Исправление: файлы больше 4G не передавались с использованием
8291        sendfile.
8292 
8293     *) Исправление: если бэкенд резолвился в несколько адресов и при
8294        ожидании от него ответа происходила ошибка, то процесс зацикливался.
8295 
8296     *) Исправление: при использовании метода /dev/poll рабочий процесс мог
8297        завершиться с сообщением "unknown cycle".
8298 
8299     *) Исправление: ошибки "close() channel failed".
8300 
8301     *) Исправление: автоматическое определение групп nobody и nogroup.
8302 
8303     *) Исправление: директива send_lowat не работала на Linux.
8304 
8305     *) Исправление: если в конфигурации не было раздела events, то
8306        происходил segmentation fault.
8307 
8308     *) Исправление: nginx не собирался под OpenBSD.
8309 
8310     *) Исправление: двойные слэшы в "://" в URI превращались в ":/".
8311 
8312 
8313 Изменения в nginx 0.1.10                                          26.11.2004
8314 
8315     *) Исправление: если в запросе без аргументов есть "//", "/./", "/../"
8316        или "%XX", то терялся последний символ в строке запроса; ошибка
8317        появилась в 0.1.9.
8318 
8319     *) Исправление: исправление в версии 0.1.9 для файлов больше 2G на Linux
8320        не работало.
8321 
8322 
8323 Изменения в nginx 0.1.9                                           25.11.2004
8324 
8325     *) Исправление: если в запросе есть "//", "/./", "/../" или "%XX", то
8326        проксируемый запрос передавался без аргументов.
8327 
8328     *) Исправление: при сжатии больших ответов иногда они передавались не
8329        полностью.
8330 
8331     *) Исправление: не передавались файлы больше 2G на Linux,
8332        неподдерживающем sendfile64().
8333 
8334     *) Исправление: на Linux при конфигурации сборки нужно было обязательно
8335        использовать параметр --with-poll_module; ошибка появилась в 0.1.8.
8336 
8337 
8338 Изменения в nginx 0.1.8                                           20.11.2004
8339 
8340     *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе
8341        длинных имён файлов.
8342 
8343     *) Добавление: модификатор "^~" в директиве location.
8344 
8345     *) Добавление: директива proxy_max_temp_file_size.
8346 
8347 
8348 Изменения в nginx 0.1.7                                           12.11.2004
8349 
8350     *) Исправление: при использовании sendfile, если передаваемый файл
8351        менялся, то мог произойти segmentation fault на FreeBSD; ошибка
8352        появилась в 0.1.5.
8353 
8354 
8355 Изменения в nginx 0.1.6                                           11.11.2004
8356 
8357     *) Исправление: при некоторых комбинациях директив location c
8358        регулярными выражениями использовалась конфигурация не из того
8359        location.
8360 
8361 
8362 Изменения в nginx 0.1.5                                           11.11.2004
8363 
8364     *) Исправление: на Solaris и Linux могло быть очень много сообщений
8365        "recvmsg() returned not enough data".
8366 
8367     *) Исправление: в режиме прокси без использования sendfile на Solaris
8368        возникала ошибка "writev() failed (22: Invalid argument)". На других
8369        платформах, не поддерживающих sendfile, процесс зацикливался.
8370 
8371     *) Исправление: при использовании sendfile в режиме прокси на Solaris
8372        возникал segmentation fault.
8373 
8374     *) Исправление: segmentation fault на Solaris.
8375 
8376     *) Исправление: обновление исполняемого файла на лету не работало на
8377        Linux.
8378 
8379     *) Исправление: в списке файлов, выдаваемом модулем
8380        ngx_http_autoindex_module, не перекодировались пробелы, кавычки и
8381        знаки процента.
8382 
8383     *) Изменение: уменьшение операций копирования.
8384 
8385     *) Добавление: директива userid_p3p.
8386 
8387 
8388 Изменения в nginx 0.1.4                                           26.10.2004
8389 
8390     *) Исправление: ошибка в модуле ngx_http_autoindex_module.
8391 
8392 
8393 Изменения в nginx 0.1.3                                           25.10.2004
8394 
8395     *) Добавление: модуль ngx_http_autoindex_module и директива autoindex.
8396 
8397     *) Добавление: директива proxy_set_x_url.
8398 
8399     *) Исправление: модуль проксировании мог привести к зацикливанию, если
8400        не использовался sendfile.
8401 
8402 
8403 Изменения в nginx 0.1.2                                           21.10.2004
8404 
8405     *) Добавление: параметры --user=USER, --group=GROUP и
8406        --with-ld-opt=OPTIONS в configure.
8407 
8408     *) Добавление: директива server_name поддерживает *.domain.tld.
8409 
8410     *) Исправление: улучшена переносимость на неизвестные платформы.
8411 
8412     *) Исправление: нельзя переконфигурировать nginx, если конфигурационный
8413        файл указан в командной строке; ошибка появилась в 0.1.1.
8414 
8415     *) Исправление: модуль проксировании мог привести к зацикливанию, если
8416        не использовался sendfile.
8417 
8418     *) Исправление: при использовании sendfile текст ответа не
8419        перекодировался согласно директивам модуля charset; ошибка появилась
8420        в 0.1.1.
8421 
8422     *) Исправление: очень редкая ошибка при обработке kqueue.
8423 
8424     *) Исправление: модуль сжатия сжимал уже сжатые ответы, полученные при
8425        проксировании.
8426 
8427 
8428 Изменения в nginx 0.1.1                                           11.10.2004
8429 
8430     *) Добавление: директива gzip_types.
8431 
8432     *) Добавление: директива tcp_nodelay.
8433 
8434     *) Добавление: директива send_lowat работает не только на платформах,
8435        поддерживающих kqueue NOTE_LOWAT, но и на всех, поддерживающих
8436        SO_SNDLOWAT.
8437 
8438     *) Добавление: эмуляция setproctitle() для Linux и Solaris.
8439 
8440     *) Исправление: ошибка при переписывании заголовка "Location" при
8441        проксировании.
8442 
8443     *) Исправление: ошибка в модуле ngx_http_chunked_module, приводившая к
8444        зацикливанию.
8445 
8446     *) Исправление: ошибки в модуле /dev/poll.
8447 
8448     *) Исправление: при проксировании и использовании временных файлов
8449        ответы портились.
8450 
8451     *) Исправление: бэкенду передавались запросы с неперекодированными
8452        символами.
8453 
8454     *) Исправление: на Linux 2.4 при конфигурации сборки нужно было
8455        обязательно использовать параметр --with-poll_module.
8456 
8457 
8458 Изменения в nginx 0.1.0                                           04.10.2004
8459 
8460     *) Первая публично доступная версия.
8461