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.15.12                                         16.04.2019
0003 
0004     *) Исправление: в рабочем процессе мог произойти segmentation fault,
0005        если в директивах ssl_certificate или ssl_certificate_key
0006        использовались переменные и был включён OCSP stapling.
0007 
0008 
0009 Изменения в nginx 1.15.11                                         09.04.2019
0010 
0011     *) Исправление: в директиве ssl_stapling_file на Windows.
0012 
0013 
0014 Изменения в nginx 1.15.10                                         26.03.2019
0015 
0016     *) Изменение: теперь при использовании имени хоста в директиве listen
0017        nginx создаёт listen-сокеты для всех адресов, соответствующих этому
0018        имени (ранее использовался только первый адрес).
0019 
0020     *) Добавление: диапазоны портов в директиве listen.
0021 
0022     *) Добавление: возможность загрузки SSL-сертификатов и секретных ключей
0023        из переменных.
0024 
0025     *) Изменение: переменная $ssl_server_name могла быть пустой при
0026        использовании OpenSSL 1.1.1.
0027 
0028     *) Исправление: nginx/Windows не собирался с Visual Studio 2015 и новее;
0029        ошибка появилась в 1.15.9.
0030 
0031 
0032 Изменения в nginx 1.15.9                                          26.02.2019
0033 
0034     *) Добавление: директивы ssl_certificate и ssl_certificate_key
0035        поддерживают переменные.
0036 
0037     *) Добавление: метод poll теперь доступен на Windows при использовании
0038        Windows Vista и новее.
0039 
0040     *) Исправление: если при использовании метода select на Windows
0041        происходила ошибка при установлении соединения с бэкендом, nginx
0042        ожидал истечения таймаута на установление соединения.
0043 
0044     *) Исправление: директивы proxy_upload_rate и proxy_download_rate в
0045        модуле stream работали некорректно при проксировании UDP-пакетов.
0046 
0047 
0048 Изменения в nginx 1.15.8                                          25.12.2018
0049 
0050     *) Добавление: переменная $upstream_bytes_sent.
0051        Спасибо Piotr Sikora.
0052 
0053     *) Добавление: новые директивы в скриптах подсветки синтаксиса для vim.
0054        Спасибо Геннадию Махомеду.
0055 
0056     *) Исправление: в директиве proxy_cache_background_update.
0057 
0058     *) Исправление: в директиве geo при использовании unix domain
0059        listen-сокетов.
0060 
0061     *) Изменение: при использовании директивы ssl_early_data с OpenSSL в
0062        логах могли появляться сообщения "ignoring stale global SSL error ...
0063        bad length".
0064 
0065     *) Исправление: в nginx/Windows.
0066 
0067     *) Исправление: в модуле ngx_http_autoindex_module на 32-битных
0068        платформах.
0069 
0070 
0071 Изменения в nginx 1.15.7                                          27.11.2018
0072 
0073     *) Добавление: директива proxy_requests в модуле stream.
0074 
0075     *) Добавление: параметр "delay" директивы "limit_req".
0076        Спасибо Владиславу Шабанову и Петру Щучкину.
0077 
0078     *) Исправление: утечки памяти в случае ошибок при переконфигурации.
0079 
0080     *) Исправление: в переменных $upstream_response_time,
0081        $upstream_connect_time и $upstream_header_time.
0082 
0083     *) Исправление: в рабочем процессе мог произойти segmentation fault,
0084        если использовался модуль ngx_http_mp4_module на 32-битных
0085        платформах.
0086 
0087 
0088 Изменения в nginx 1.15.6                                          06.11.2018
0089 
0090     *) Безопасность: при использовании HTTP/2 клиент мог вызвать чрезмерное
0091        потреблению памяти (CVE-2018-16843) и ресурсов процессора
0092        (CVE-2018-16844).
0093 
0094     *) Безопасность: при обработке специально созданного mp4-файла модулем
0095        ngx_http_mp4_module содержимое памяти рабочего процесса могло быть
0096        отправлено клиенту (CVE-2018-16845).
0097 
0098     *) Добавление: директивы proxy_socket_keepalive,
0099        fastcgi_socket_keepalive, grpc_socket_keepalive,
0100        memcached_socket_keepalive, scgi_socket_keepalive и
0101        uwsgi_socket_keepalive.
0102 
0103     *) Исправление: если nginx был собран с OpenSSL 1.1.0, а использовался с
0104        OpenSSL 1.1.1, протокол TLS 1.3 всегда был разрешён.
0105 
0106     *) Исправление: при работе с gRPC-бэкендами могло расходоваться большое
0107        количество памяти.
0108 
0109 
0110 Изменения в nginx 1.15.5                                          02.10.2018
0111 
0112     *) Исправление: при использовании OpenSSL 1.1.0h и новее в рабочем
0113        процессе мог произойти segmentation fault; ошибка появилась в 1.15.4.
0114 
0115     *) Исправление: незначительных потенциальных ошибок.
0116 
0117 
0118 Изменения в nginx 1.15.4                                          25.09.2018
0119 
0120     *) Добавление: теперь директиву ssl_early_data можно использовать с
0121        OpenSSL.
0122 
0123     *) Исправление: в модуле ngx_http_uwsgi_module.
0124        Спасибо Chris Caputo.
0125 
0126     *) Исправление: соединения к некоторым gRPC-бэкендам могли не
0127        кэшироваться при использовании директивы keepalive.
0128 
0129     *) Исправление: при использовании директивы error_page для
0130        перенаправления ошибок, возникающих на ранних этапах обработки
0131        запроса, в частности ошибок с кодом 400, могла происходить утечка
0132        сокетов.
0133 
0134     *) Исправление: директива return при возврате ошибок не изменяла код
0135        ответа, если запрос был перенаправлен с помощью директивы error_page.
0136 
0137     *) Исправление: стандартные сообщения об ошибках и ответы модуля
0138        ngx_http_autoindex_module содержали атрибут bgcolor, что могло
0139        приводить к их некорректному отображению при использовании
0140        пользовательских настроек цветов в браузерах.
0141        Спасибо Nova DasSarma.
0142 
0143     *) Изменение: уровень логгирования ошибок SSL "no suitable key share" и
0144        "no suitable signature algorithm" понижен с уровня crit до info.
0145 
0146 
0147 Изменения в nginx 1.15.3                                          28.08.2018
0148 
0149     *) Добавление: теперь TLSv1.3 можно использовать с BoringSSL.
0150 
0151     *) Добавление: директива ssl_early_data, сейчас доступна при
0152        использовании BoringSSL.
0153 
0154     *) Добавление: директивы keepalive_timeout и keepalive_requests в блоке
0155        upstream.
0156 
0157     *) Исправление: модуль ngx_http_dav_module при копировании файла поверх
0158        существующего файла с помощью метода COPY не обнулял целевой файл.
0159 
0160     *) Исправление: модуль ngx_http_dav_module при перемещении файла между
0161        файловыми системами с помощью метода MOVE устанавливал нулевые права
0162        доступа на результирующий файл и не сохранял время изменения файла.
0163 
0164     *) Исправление: модуль ngx_http_dav_module при копировании файла с
0165        помощью метода COPY для результирующего файла использовал права
0166        доступа по умолчанию.
0167 
0168     *) Изменение: некоторые клиенты могли не работать при использовании
0169        HTTP/2; ошибка появилась в 1.13.5.
0170 
0171     *) Исправление: nginx не собирался с LibreSSL 2.8.0.
0172 
0173 
0174 Изменения в nginx 1.15.2                                          24.07.2018
0175 
0176     *) Добавление: переменная $ssl_preread_protocol в модуле
0177        ngx_stream_ssl_preread_module.
0178 
0179     *) Добавление: теперь при использовании директивы
0180        reset_timedout_connection nginx сбрасывает соединения, закрываемые с
0181        кодом 444.
0182 
0183     *) Изменение: уровень логгирования ошибок SSL "http request", "https
0184        proxy request", "unsupported protocol" и "version too low" понижен с
0185        уровня crit до info.
0186 
0187     *) Исправление: запросы к DNS-серверу не отправлялись повторно, если при
0188        первой попытке отправки происходила ошибка.
0189 
0190     *) Исправление: параметр reuseport директивы listen игнорировался, если
0191        количество рабочих процессов было задано после директивы listen.
0192 
0193     *) Исправление: при использовании OpenSSL 1.1.0 и новее директиву
0194        ssl_prefer_server_ciphers нельзя было выключить в виртуальном
0195        сервере, если она была включена в сервере по умолчанию.
0196 
0197     *) Исправление: повторное использование SSL-сессий к бэкендам не
0198        работало с протоколом TLS 1.3.
0199 
0200 
0201 Изменения в nginx 1.15.1                                          03.07.2018
0202 
0203     *) Добавление: директива random в блоке upstream.
0204 
0205     *) Добавление: улучшена производительность при использовании директив
0206        hash и ip_hash совместно с директивой zone.
0207 
0208     *) Добавление: параметр reuseport директивы listen теперь использует
0209        SO_REUSEPORT_LB на FreeBSD 12.
0210 
0211     *) Исправление: HTTP/2 server push не работал, если SSL терминировался
0212        прокси-сервером перед nginx'ом.
0213 
0214     *) Исправление: директива tcp_nopush всегда использовалась для
0215        соединений к бэкендам.
0216 
0217     *) Исправление: при отправке сохранённого на диск тела запроса на
0218        gRPC-бэкенд могли возникать ошибки.
0219 
0220 
0221 Изменения в nginx 1.15.0                                          05.06.2018
0222 
0223     *) Изменение: директива "ssl" теперь считается устаревшей; вместо неё
0224        следует использовать параметр ssl директивы listen.
0225 
0226     *) Изменение: теперь при использовании директивы listen с параметром ssl
0227        nginx определяет отсутствие SSL-сертификатов при тестировании
0228        конфигурации.
0229 
0230     *) Добавление: теперь модуль stream умеет обрабатывать несколько
0231        входящих UDP-пакетов от клиента в рамках одной сессии.
0232 
0233     *) Исправление: в директиве proxy_cache_valid можно было указать
0234        некорректный код ответа.
0235 
0236     *) Исправление: nginx не собирался gcc 8.1.
0237 
0238     *) Исправление: логгирование в syslog останавливалось при изменении
0239        локального IP-адреса.
0240 
0241     *) Исправление: nginx не собирался компилятором clang, если был
0242        установлен CUDA SDK; ошибка появилась в 1.13.8.
0243 
0244     *) Исправление: при использовании unix domain listen-сокетов на FreeBSD
0245        в процессе обновления исполняемого файла в логе могли появляться
0246        сообщения "getsockopt(TCP_FASTOPEN) ... failed".
0247 
0248     *) Исправление: nginx не собирался на Fedora 28 Linux.
0249 
0250     *) Исправление: при использовании директивы limit_req заданная скорость
0251        обработки запросов могла не соблюдаться.
0252 
0253     *) Исправление: в обработке адресов клиентов при использовании unix
0254        domain listen-сокетов для работы с датаграммами на Linux.
0255 
0256     *) Исправление: в обработке ошибок выделения памяти.
0257 
0258 
0259 Изменения в nginx 1.13.12                                         10.04.2018
0260 
0261     *) Исправление: при возврате большого ответа соединения с gRPC-бэкендами
0262        могли неожиданно закрываться.
0263 
0264 
0265 Изменения в nginx 1.13.11                                         03.04.2018
0266 
0267     *) Добавление: параметр proxy_protocol директивы listen теперь
0268        поддерживает протокол PROXY версии 2.
0269 
0270     *) Исправление: nginx не собирался с OpenSSL 1.1.1 статически на Linux.
0271 
0272     *) Исправление: в параметрах http_404, http_500 и им подобных директивы
0273        proxy_next_upstream.
0274 
0275 
0276 Изменения в nginx 1.13.10                                         20.03.2018
0277 
0278     *) Добавление: теперь параметр set в SSI-директиве include позволяет
0279        сохранять в переменную любые ответы; максимальный размер ответа
0280        задаётся директивой subrequest_output_buffer_size.
0281 
0282     *) Добавление: теперь nginx использует вызов
0283        clock_gettime(CLOCK_MONOTONIC), если он доступен, что позволяет
0284        избежать некорректного срабатывания таймаутов при изменениях
0285        системного времени.
0286 
0287     *) Добавление: параметр "escape=none" директивы log_format.
0288        Спасибо Johannes Baiter и Calin Don.
0289 
0290     *) Добавление: переменная $ssl_preread_alpn_protocols в модуле
0291        ngx_stream_ssl_preread_module.
0292 
0293     *) Добавление: модуль ngx_http_grpc_module.
0294 
0295     *) Исправление: в обработке ошибок выделения памяти в директиве geo.
0296 
0297     *) Исправление: при использовании переменных в директиве
0298        auth_basic_user_file в лог мог выводиться символ '\0'.
0299        Спасибо Вадиму Филимонову.
0300 
0301 
0302 Изменения в nginx 1.13.9                                          20.02.2018
0303 
0304     *) Добавление: поддержка HTTP/2 server push; директивы http2_push и
0305        http2_push_preload.
0306 
0307     *) Исправление: при использовании кэша в логах могли появляться
0308        сообщения "header already sent"; ошибка появилась в 1.9.13.
0309 
0310     *) Исправление: при использовании директивы ssl_verify_client в рабочем
0311        процессе мог произойти segmentation fault, если в виртуальном сервере
0312        не был указан SSL-сертификат.
0313 
0314     *) Исправление: в модуле ngx_http_v2_module.
0315 
0316     *) Исправление: в модуле ngx_http_dav_module.
0317 
0318 
0319 Изменения в nginx 1.13.8                                          26.12.2017
0320 
0321     *) Добавление: теперь при использовании параметра transparent директив
0322        proxy_bind, fastcgi_bind, memcached_bind, scgi_bind и uwsgi_bind
0323        nginx автоматически сохраняет capability CAP_NET_RAW в рабочих
0324        процессах.
0325 
0326     *) Добавление: улучшения в определении размера строки кэша процессора.
0327        Спасибо Debayan Ghosh.
0328 
0329     *) Добавление: новые директивы в скриптах подсветки синтаксиса для vim.
0330        Спасибо Геннадию Махомеду.
0331 
0332     *) Исправление: процедура обновления исполняемого файла не работала,
0333        если после завершения родительского процесса новым родительским
0334        процессом nginx'а становился процесс с PID, отличным от 1.
0335 
0336     *) Исправление: модуль ngx_http_autoindex_module неправильно обрабатывал
0337        запросы с телом.
0338 
0339     *) Исправление: в директиве proxy_limit_rate при использовании с
0340        директивой keepalive.
0341 
0342     *) Исправление: при использовании "proxy_buffering off" часть ответа
0343        могла буферизироваться, если клиентское соединение использовало SSL.
0344        Спасибо Patryk Lesiewicz.
0345 
0346     *) Исправление: в директиве proxy_cache_background_update.
0347 
0348     *) Исправление: переменную вида "${name}" с именем в фигурных скобках
0349        нельзя было использовать в начале параметра не заключив весь параметр
0350        в кавычки.
0351 
0352 
0353 Изменения в nginx 1.13.7                                          21.11.2017
0354 
0355     *) Исправление: в переменной $upstream_status.
0356 
0357     *) Исправление: в рабочем процессе мог произойти segmentation fault,
0358        если бэкенд возвращал ответ "101 Switching Protocols" на подзапрос.
0359 
0360     *) Исправление: если при переконфигурации изменялся размер зоны
0361        разделяемой памяти и переконфигурация завершалась неудачно, то в
0362        главном процессе происходил segmentation fault.
0363 
0364     *) Исправление: в модуле ngx_http_fastcgi_module.
0365 
0366     *) Исправление: nginx возвращал ошибку 500, если в директиве
0367        xslt_stylesheet были заданы параметры без использования переменных.
0368 
0369     *) Изменение: при использовании варианта библиотеки zlib от Intel в лог
0370        писались сообщения "gzip filter failed to use preallocated memory".
0371 
0372     *) Исправление: директива worker_shutdown_timeout не работала при
0373        использовании почтового прокси-сервера и при проксировании
0374        WebSocket-соединений.
0375 
0376 
0377 Изменения в nginx 1.13.6                                          10.10.2017
0378 
0379     *) Исправление: при использовании директивы ssl_preread в модуле stream
0380        не работало переключение на следующий бэкенд.
0381 
0382     *) Исправление: в модуле ngx_http_v2_module.
0383        Спасибо Piotr Sikora.
0384 
0385     *) Исправление: nginx не поддерживал даты после 2038 года на 32-битных
0386        платформах с 64-битным time_t.
0387 
0388     *) Исправление: в обработке дат до 1970 года и после 10000 года.
0389 
0390     *) Исправление: в модуле stream таймауты ожидания UDP-пакетов от
0391        бэкендов не логгировались или логгировались на уровне info вместо
0392        error.
0393 
0394     *) Исправление: при использовании HTTP/2 nginx мог вернуть ошибку 400,
0395        не указав в логе причину.
0396 
0397     *) Исправление: в обработке повреждённых файлов кэша.
0398 
0399     *) Исправление: при кэшировании ошибок, перехваченных error_page, не
0400        учитывались заголовки управления кэшированием.
0401 
0402     *) Исправление: при использовании HTTP/2 тело запроса могло быть
0403        повреждено.
0404 
0405     *) Исправление: в обработке адресов клиентов при использовании unix
0406        domain сокетов.
0407 
0408     *) Исправление: при использовании директивы "hash ... consistent" в
0409        блоке upstream nginx нагружал процессор, если использовались большие
0410        веса и все или почти все бэкенды были недоступны.
0411 
0412 
0413 Изменения в nginx 1.13.5                                          05.09.2017
0414 
0415     *) Добавление: переменная $ssl_client_escaped_cert.
0416 
0417     *) Исправление: директива ssl_session_ticket_key и параметр include
0418        директивы geo не работали на Windows.
0419 
0420     *) Исправление: на 32-битных платформах при запросе более 4 гигабайт с
0421        помощью нескольких диапазонов возвращалась некорректная длина ответа.
0422 
0423     *) Исправление: директива "expires modified" и обработка строки If-Range
0424        заголовка запроса не учитывали время последнего изменения ответа,
0425        если использовалось проксирование без кэширования.
0426 
0427 
0428 Изменения в nginx 1.13.4                                          08.08.2017
0429 
0430     *) Добавление: модуль ngx_http_mirror_module.
0431 
0432     *) Исправление: клиентские соединения могли сбрасываться при
0433        тестировании конфигурации, если использовался параметр reuseport
0434        директивы listen на Linux.
0435 
0436     *) Исправление: тело запроса могло быть недоступно в подзапросах, если
0437        оно было сохранено в файл и использовалось проксирование.
0438 
0439     *) Исправление: очистка кэша по max_size не работала на Windows.
0440 
0441     *) Исправление: любое выделение разделяемой памяти на Windows требовало
0442        4096 байт памяти.
0443 
0444     *) Исправление: при использовании директивы zone в блоке upstream на
0445        Windows рабочий процесс мог завершаться аварийно.
0446 
0447 
0448 Изменения в nginx 1.13.3                                          11.07.2017
0449 
0450     *) Безопасность: специально созданный запрос мог вызвать целочисленное
0451        переполнение в range-фильтре и последующую некорректную обработку
0452        запрошенных диапазонов, что потенциально могло привести к утечке
0453        конфиденциальной информации (CVE-2017-7529).
0454 
0455 
0456 Изменения в nginx 1.13.2                                          27.06.2017
0457 
0458     *) Изменение: теперь при запросе диапазона, начинающегося с 0, из
0459        пустого файла nginx возвращает ответ 200 вместо 416.
0460 
0461     *) Добавление: директива add_trailer.
0462        Спасибо Piotr Sikora.
0463 
0464     *) Исправление: nginx не собирался под Cygwin и NetBSD; ошибка появилась
0465        в 1.13.0.
0466 
0467     *) Исправление: nginx не собирался под MSYS2 / MinGW 64-bit.
0468        Спасибо Orgad Shaneh.
0469 
0470     *) Исправление: при использовании SSI с большим количеством подзапросов
0471        и proxy_pass с переменными в рабочем процессе мог произойти
0472        segmentation fault.
0473 
0474     *) Исправление: в модуле ngx_http_v2_module.
0475        Спасибо Piotr Sikora.
0476 
0477 
0478 Изменения в nginx 1.13.1                                          30.05.2017
0479 
0480     *) Добавление: теперь в качестве параметра директивы set_real_ip_from
0481        можно указывать имя хоста.
0482 
0483     *) Добавление: улучшения в скриптах подсветки синтаксиса для vim.
0484 
0485     *) Добавление: директива worker_cpu_affinity теперь работает на
0486        DragonFly BSD.
0487        Спасибо Sepherosa Ziehau.
0488 
0489     *) Исправление: SSL renegotiation в соединениях к бэкендам не работал
0490        при использовании OpenSSL до 1.1.0.
0491 
0492     *) Изменение: nginx не собирался с Oracle Developer Studio 12.5.
0493 
0494     *) Изменение: теперь cache manager пропускает заблокированные записи при
0495        очистке кэша по max_size.
0496 
0497     *) Исправление: клиентские SSL-соединения сразу закрывались, если
0498        использовался отложенный accept и параметр proxy_protocol директивы
0499        listen.
0500 
0501     *) Исправление: в директиве proxy_cache_background_update.
0502 
0503     *) Изменение: теперь директива tcp_nodelay устанавливает опцию
0504        TCP_NODELAY перед SSL handshake.
0505 
0506 
0507 Изменения в nginx 1.13.0                                          25.04.2017
0508 
0509     *) Изменение: теперь SSL renegotiation допускается в соединениях к
0510        бэкендам.
0511 
0512     *) Добавление: параметры rcvbuf и sndbuf директив listen в почтовом
0513        прокси-сервере и модуле stream.
0514 
0515     *) Добавление: директивы return и error_page теперь могут использоваться
0516        для возврата перенаправлений с кодом 308.
0517        Спасибо Simon Leblanc.
0518 
0519     *) Добавление: параметр TLSv1.3 в директиве ssl_protocols.
0520 
0521     *) Добавление: при логгировании сигналов теперь указывается PID
0522        отправившего сигнал процесса.
0523 
0524     *) Исправление: в обработке ошибок выделения памяти.
0525 
0526     *) Исправление: если сервер в модуле stream слушал на wildcard-адресе,
0527        исходящий адрес ответного UDP-пакета мог отличаться от адреса
0528        назначения исходного пакета.
0529 
0530 
0531 Изменения в nginx 1.11.13                                         04.04.2017
0532 
0533     *) Добавление: параметр http_429 в директивах proxy_next_upstream,
0534        fastcgi_next_upstream, scgi_next_upstream и uwsgi_next_upstream.
0535        Спасибо Piotr Sikora.
0536 
0537     *) Исправление: в обработке ошибок выделения памяти.
0538 
0539     *) Исправление: при использовании директив sendfile и timer_resolution
0540        на Linux запросы могли зависать.
0541 
0542     *) Исправление: при использовании с подзапросами директив sendfile и
0543        aio_write запросы могли зависать.
0544 
0545     *) Исправление: в модуле ngx_http_v2_module.
0546        Спасибо Piotr Sikora.
0547 
0548     *) Исправление: при использовании HTTP/2 в рабочем процессе мог
0549        произойти segmentation fault.
0550 
0551     *) Исправление: запросы могли зависать при использовании с подзапросами
0552        директив limit_rate, sendfile_max_chunk, limit_req или метода
0553        $r->sleep() встроенного перла.
0554 
0555     *) Исправление: в модуле ngx_http_slice_module.
0556 
0557 
0558 Изменения в nginx 1.11.12                                         24.03.2017
0559 
0560     *) Исправление: nginx мог нагружать процессор; ошибка появилась в
0561        1.11.11.
0562 
0563 
0564 Изменения в nginx 1.11.11                                         21.03.2017
0565 
0566     *) Добавление: директива worker_shutdown_timeout.
0567 
0568     *) Добавление: улучшения в скриптах подсветки синтаксиса для vim.
0569        Спасибо Wei-Ko Kao.
0570 
0571     *) Исправление: при попытке установить переменную $limit_rate в пустую
0572        строку в рабочем процессе мог произойти segmentation fault.
0573 
0574     *) Исправление: директивы proxy_cache_background_update,
0575        fastcgi_cache_background_update, scgi_cache_background_update и
0576        uwsgi_cache_background_update могли работать некорректно, если
0577        использовалась директива if.
0578 
0579     *) Исправление: в рабочем процессе мог произойти segmentation fault,
0580        если количество large_client_header_buffers в виртуальном сервере
0581        отличалось от такового в сервере по умолчанию.
0582 
0583     *) Исправление: в почтовом прокси-сервере.
0584 
0585 
0586 Изменения в nginx 1.11.10                                         14.02.2017
0587 
0588     *) Изменение: формат заголовка кэша был изменен, ранее закэшированные
0589        ответы будут загружены заново.
0590 
0591     *) Добавление: поддержка расширений stale-while-revalidate и
0592        stale-if-error в строке "Cache-Control" в заголовке ответа бэкенда.
0593 
0594     *) Добавление: директивы proxy_cache_background_update,
0595        fastcgi_cache_background_update, scgi_cache_background_update и
0596        uwsgi_cache_background_update.
0597 
0598     *) Добавление: теперь nginx может кэшировать ответы со строкой Vary
0599        заголовка длиной до 128 символов (вместо 42 символов в предыдущих
0600        версиях).
0601 
0602     *) Добавление: параметр build директивы server_tokens.
0603        Спасибо Tom Thorogood.
0604 
0605     *) Исправление: при обработке запросов со строкой "Expect: 100-continue"
0606        в заголовке запроса в логах могли появляться сообщения "[crit]
0607        SSL_write() failed".
0608 
0609     *) Исправление: модуль ngx_http_slice_module не работал в именованных
0610        location'ах.
0611 
0612     *) Исправление: при использовании AIO после перенаправления запроса с
0613        помощью X-Accel-Redirect в рабочем процессе мог произойти
0614        segmentation fault.
0615 
0616     *) Исправление: уменьшено потребление памяти для долгоживущих запросов,
0617        использующих сжатие.
0618 
0619 
0620 Изменения в nginx 1.11.9                                          24.01.2017
0621 
0622     *) Исправление: при использовании модуля stream nginx мог нагружать
0623        процессор; ошибка появилась в 1.11.5.
0624 
0625     *) Исправление: метод аутентификации EXTERNAL в почтовом прокси-сервере
0626        можно было использовать, даже если он не был разрешён в конфигурации.
0627 
0628     *) Исправление: при использовании директивы ssl_verify_client модуля
0629        stream в рабочем процессе мог произойти segmentation fault.
0630 
0631     *) Исправление: директива ssl_verify_client модуля stream могла не
0632        работать.
0633 
0634     *) Исправление: при исчерпании рабочим процессом свободных соединений
0635        keepalive-соединения могли закрываться излишне агрессивно.
0636        Спасибо Joel Cunningham.
0637 
0638     *) Исправление: при использовании директивы sendfile на FreeBSD и macOS
0639        мог возвращаться некорректный ответ; ошибка появилась в 1.7.8.
0640 
0641     *) Исправление: при использовании директивы aio_write ответ мог
0642        сохраняться в кэш не полностью.
0643 
0644     *) Исправление: при использовании директивы aio_write могла происходить
0645        утечка сокетов.
0646 
0647 
0648 Изменения в nginx 1.11.8                                          27.12.2016
0649 
0650     *) Добавление: директива absolute_redirect.
0651 
0652     *) Добавление: параметр escape директивы log_format.
0653 
0654     *) Добавление: проверка клиентских SSL-сертификатов в модуле stream.
0655 
0656     *) Добавление: директива ssl_session_ticket_key поддерживает шифрование
0657        TLS session tickets с помощью AES256 при использовании с 80-байтными
0658        ключами.
0659 
0660     *) Добавление: поддержка vim-commentary в скриптах для vim.
0661        Спасибо Armin Grodon.
0662 
0663     *) Исправление: рекурсия при получении значений переменных не
0664        ограничивалась.
0665 
0666     *) Исправление: в модуле ngx_stream_ssl_preread_module.
0667 
0668     *) Исправление: если сервер, описанный в блоке upstream в модуле stream,
0669        был признан неработающим, то после истечения fail_timeout он
0670        признавался работающим только после завершения тестового соединения;
0671        теперь достаточно, чтобы соединение было успешно установлено.
0672 
0673     *) Исправление: nginx/Windows не собирался с 64-битным Visual Studio.
0674 
0675     *) Исправление: nginx/Windows не собирался с OpenSSL 1.1.0.
0676 
0677 
0678 Изменения в nginx 1.11.7                                          13.12.2016
0679 
0680     *) Изменение: переменная $ssl_client_verify теперь в случае ошибки
0681        проверки клиентского сертификата содержит строку с описанием ошибки,
0682        например, "FAILED:certificate has expired".
0683 
0684     *) Добавление: переменные $ssl_ciphers, $ssl_curves,
0685        $ssl_client_v_start, $ssl_client_v_end и $ssl_client_v_remain.
0686 
0687     *) Добавление: параметр volatile директивы map.
0688 
0689     *) Исправление: при сборке динамических модулей не учитывались заданные
0690        для модуля зависимости.
0691 
0692     *) Исправление: при использовании HTTP/2 и директив limit_req или
0693        auth_request тело запроса могло быть повреждено; ошибка появилась в
0694        1.11.0.
0695 
0696     *) Исправление: при использовании HTTP/2 в рабочем процессе мог
0697        произойти segmentation fault; ошибка появилась в 1.11.3.
0698 
0699     *) Исправление: в модуле ngx_http_mp4_module.
0700        Спасибо Congcong Hu.
0701 
0702     *) Исправление: в модуле ngx_http_perl_module.
0703 
0704 
0705 Изменения в nginx 1.11.6                                          15.11.2016
0706 
0707     *) Изменение: формат переменных $ssl_client_s_dn и $ssl_client_i_dn
0708        изменён на соответствующий RFC 2253 (RFC 4514); значения в старом
0709        формате доступны через переменные $ssl_client_s_dn_legacy и
0710        $ssl_client_i_dn_legacy.
0711 
0712     *) Изменение: при сохранении временных файлов в каталоге кэша они теперь
0713        располагаются не в отдельном подкаталоге для временных файлов, а в
0714        том же подкаталоге, что и соответствующие файлы в кэше.
0715 
0716     *) Добавление: поддержка метода аутентификации EXTERNAL в почтовом
0717        прокси-сервере.
0718        Спасибо Robert Norris.
0719 
0720     *) Добавление: поддержка WebP в модуле ngx_http_image_filter_module.
0721 
0722     *) Добавление: директива proxy_method поддерживает переменные.
0723        Спасибо Дмитрию Лазуркину.
0724 
0725     *) Добавление: директива http2_max_requests в модуле ngx_http_v2_module.
0726 
0727     *) Добавление: директивы proxy_cache_max_range_offset,
0728        fastcgi_cache_max_range_offset, scgi_cache_max_range_offset и
0729        uwsgi_cache_max_range_offset.
0730 
0731     *) Исправление: плавное завершение старых рабочих процессов могло
0732        занимать бесконечное время при использовании HTTP/2.
0733 
0734     *) Исправление: в модуле ngx_http_mp4_module.
0735 
0736     *) Исправление: при проксировании WebSocket-соединений и включённом
0737        кэшировании в логах могли появляться сообщения "ignore long locked
0738        inactive cache entry".
0739 
0740     *) Исправление: если во время SSL handshake с бэкендом происходил
0741        таймаут, nginx ничего не писал в лог и возвращал ответ с кодом 502
0742        вместо 504.
0743 
0744 
0745 Изменения в nginx 1.11.5                                          11.10.2016
0746 
0747     *) Изменение: параметр configure --with-ipv6 упразднён, поддержка IPv6
0748        теперь собирается автоматически.
0749 
0750     *) Изменение: теперь, если в блоке upstream не оказалось доступных
0751        серверов, nginx не сбрасывает статистику ошибок всех серверов, как
0752        делал ранее, а ожидает истечения fail_timeout.
0753 
0754     *) Добавление: модуль ngx_stream_ssl_preread_module.
0755 
0756     *) Добавление: директива server в блоке upstream поддерживает параметр
0757        max_conns.
0758 
0759     *) Добавление: параметр configure --with-compat.
0760 
0761     *) Добавление: параметры manager_files, manager_threshold и
0762        manager_sleep директив proxy_cache_path, fastcgi_cache_path,
0763        scgi_cache_path и uwsgi_cache_path.
0764 
0765     *) Исправление: при сборке perl-модуля не использовались флаги, заданные
0766        с помощью параметра configure --with-ld-opt.
0767 
0768     *) Исправление: в директиве add_after_body при использовании совместно с
0769        директивой sub_filter.
0770 
0771     *) Исправление: в переменной $realip_remote_addr.
0772 
0773     *) Исправление: директивы dav_access, proxy_store_access,
0774        fastcgi_store_access, scgi_store_access и uwsgi_store_access
0775        игнорировали права, заданные для пользователя.
0776 
0777     *) Исправление: unix domain listen-сокеты могли не наследоваться при
0778        обновлении исполняемого файла на Linux.
0779 
0780     *) Исправление: nginx возвращал ошибку 400 на запросы с символом "-" в
0781        HTTP-методе.
0782 
0783 
0784 Изменения в nginx 1.11.4                                          13.09.2016
0785 
0786     *) Добавление: переменная $upstream_bytes_received.
0787 
0788     *) Добавление: переменные $bytes_received, $session_time, $protocol,
0789        $status, $upstream_addr, $upstream_bytes_sent,
0790        $upstream_bytes_received, $upstream_connect_time,
0791        $upstream_first_byte_time и $upstream_session_time в модуле stream.
0792 
0793     *) Добавление: модуль ngx_stream_log_module.
0794 
0795     *) Добавление: параметр proxy_protocol в директиве listen, переменные
0796        $proxy_protocol_addr и $proxy_protocol_port в модуле stream.
0797 
0798     *) Добавление: модуль ngx_stream_realip_module.
0799 
0800     *) Исправление: nginx не собирался с модулем stream и модулем
0801        ngx_http_ssl_module, но без модуля ngx_stream_ssl_module; ошибка
0802        появилась в 1.11.3.
0803 
0804     *) Добавление: опция сокета IP_BIND_ADDRESS_NO_PORT не использовалась;
0805        ошибка появилась в 1.11.2.
0806 
0807     *) Исправление: в параметре ranges директивы geo.
0808 
0809     *) Исправление: при использовании директив "aio threads" и sendfile мог
0810        возвращаться некорректный ответ; ошибка появилась в 1.9.13.
0811 
0812 
0813 Изменения в nginx 1.11.3                                          26.07.2016
0814 
0815     *) Изменение: теперь accept_mutex по умолчанию выключен.
0816 
0817     *) Добавление: теперь nginx использует EPOLLEXCLUSIVE на Linux.
0818 
0819     *) Добавление: модуль ngx_stream_geo_module.
0820 
0821     *) Добавление: модуль ngx_stream_geoip_module.
0822 
0823     *) Добавление: модуль ngx_stream_split_clients_module.
0824 
0825     *) Добавление: директивы proxy_pass и proxy_ssl_name в модуле stream
0826        поддерживают переменные.
0827 
0828     *) Исправление: утечки сокетов при использовании HTTP/2.
0829 
0830     *) Исправление: в configure.
0831        Спасибо Piotr Sikora.
0832 
0833 
0834 Изменения в nginx 1.11.2                                          05.07.2016
0835 
0836     *) Изменение: теперь nginx всегда использует внутренние реализации MD5 и
0837        SHA1; параметры configure --with-md5 и --with-sha1 упразднены.
0838 
0839     *) Добавление: поддержка переменных в модуле stream.
0840 
0841     *) Добавление: модуль ngx_stream_map_module.
0842 
0843     *) Добавление: модуль ngx_stream_return_module.
0844 
0845     *) Добавление: в директивах proxy_bind, fastcgi_bind, memcached_bind,
0846        scgi_bind и uwsgi_bind теперь можно указывать порт.
0847 
0848     *) Добавление: теперь nginx использует опцию сокета
0849        IP_BIND_ADDRESS_NO_PORT, если она доступна.
0850 
0851     *) Исправление: при использовании HTTP/2 и директивы
0852        proxy_request_buffering в рабочем процессе мог произойти segmentation
0853        fault.
0854 
0855     *) Исправление: при использовании HTTP/2 к запросам, передаваемым на
0856        бэкенд, всегда добавлялась строка заголовка "Content-Length", даже
0857        если у запроса не было тела.
0858 
0859     *) Исправление: при использовании HTTP/2 в логах могли появляться
0860        сообщения "http request count is zero".
0861 
0862     *) Исправление: при использовании директивы sub_filter могло
0863        буферизироваться больше данных, чем это необходимо; проблема
0864        появилась в 1.9.4.
0865 
0866 
0867 Изменения в nginx 1.11.1                                          31.05.2016
0868 
0869     *) Безопасность: при записи тела специально созданного запроса во
0870        временный файл в рабочем процессе мог происходить segmentation fault
0871        (CVE-2016-4450); ошибка появилась в 1.3.9.
0872 
0873 
0874 Изменения в nginx 1.11.0                                          24.05.2016
0875 
0876     *) Добавление: параметр transparent директив proxy_bind, fastcgi_bind,
0877        memcached_bind, scgi_bind и uwsgi_bind.
0878 
0879     *) Добавление: переменная $request_id.
0880 
0881     *) Добавление: директива map поддерживает комбинации нескольких
0882        переменных в качестве результирующих значений.
0883 
0884     *) Добавление: теперь при использовании метода epoll nginx проверяет,
0885        поддерживает ли ядро события EPOLLRDHUP, и соответственно
0886        оптимизирует обработку соединений.
0887 
0888     *) Добавление: директивы ssl_certificate и ssl_certificate_key теперь
0889        можно указывать несколько раз для загрузки сертификатов разных типов
0890        (например, RSA и ECDSA).
0891 
0892     *) Добавление: при использовании OpenSSL 1.0.2 и новее с помощью
0893        директивы ssl_ecdh_curve теперь можно задать список кривых; по
0894        умолчанию используется встроенный в OpenSSL список кривых.
0895 
0896     *) Изменение: для использования DHE-шифров теперь надо явно задавать
0897        файл параметров с помощью директивы ssl_dhparam.
0898 
0899     *) Добавление: переменная $proxy_protocol_port.
0900 
0901     *) Добавление: переменная $realip_remote_port в модуле
0902        ngx_http_realip_module.
0903 
0904     *) Добавление: модуль ngx_http_realip_module теперь позволяет
0905        устанавливать не только адрес, но и порт клиента.
0906 
0907     *) Изменение: при попытке запросить виртуальный сервер, отличающийся от
0908        согласованного в процессе SSL handshake, теперь возвращается ответ
0909        "421 Misdirected Request"; это улучшает совместимость с некоторыми
0910        HTTP/2-клиентами в случае использования клиентских сертификатов.
0911 
0912     *) Изменение: HTTP/2-клиенты теперь могут сразу присылать тело запроса;
0913        директива http2_body_preread_size позволяет указать размер буфера,
0914        который будет использоваться до того, как nginx начнёт читать тело.
0915 
0916     *) Исправление: при использовании директивы proxy_cache_bypass не
0917        обновлялись закэшированные ошибочные ответы.
0918 
0919 
0920 Изменения в nginx 1.9.15                                          19.04.2016
0921 
0922     *) Исправление: при использовании HHVM в качестве FastCGI-сервера могли
0923        возникать ошибки "recv() failed".
0924 
0925     *) Исправление: при использовании HTTP/2 и директив limit_req или
0926        auth_request при чтении тела запроса мог произойти таймаут или ошибка
0927        "client violated flow control"; ошибка появилась в 1.9.14.
0928 
0929     *) Изменение: при использовании HTTP/2 ответ мог не показываться
0930        некоторыми браузерами, если тело запроса было прочитано не целиком;
0931        ошибка появилась в 1.9.14.
0932 
0933     *) Исправление: при использовании директивы "aio threads" соединения
0934        могли зависать.
0935        Спасибо Mindaugas Rasiukevicius.
0936 
0937 
0938 Изменения в nginx 1.9.14                                          05.04.2016
0939 
0940     *) Добавление: совместимость с OpenSSL 1.1.0.
0941 
0942     *) Добавление: директивы proxy_request_buffering,
0943        fastcgi_request_buffering, scgi_request_buffering и
0944        uwsgi_request_buffering теперь работают при использовании HTTP/2.
0945 
0946     *) Исправление: при использовании HTTP/2 в логах могли появляться
0947        сообщения "zero size buf in output".
0948 
0949     *) Исправление: при использовании HTTP/2 директива client_max_body_size
0950        могла работать неверно.
0951 
0952     *) Исправление: незначительных ошибок логгирования.
0953 
0954 
0955 Изменения в nginx 1.9.13                                          29.03.2016
0956 
0957     *) Изменение: неидемпотентные запросы (POST, LOCK, PATCH) теперь по
0958        умолчанию не передаются на другой сервер, если запрос уже был
0959        отправлен на бэкенд; параметр non_idempotent директивы
0960        proxy_next_upstream явно разрешает повторять такие запросы.
0961 
0962     *) Добавление: модуль ngx_http_perl_module теперь можно собрать
0963        динамически.
0964 
0965     *) Добавление: поддержка UDP в модуле stream.
0966 
0967     *) Добавление: директива aio_write.
0968 
0969     *) Добавление: теперь cache manager следит за количеством элементов в
0970        кэше и старается не допускать переполнений зоны разделяемой памяти.
0971 
0972     *) Исправление: при использовании директив sendfile и aio с подзапросами
0973        в логах могли появляться сообщения "task already active" и "second
0974        aio post".
0975 
0976     *) Исправление: при использовании кэширования в логах могли появляться
0977        сообщения "zero size buf in output", если клиент закрывал соединение
0978        преждевременно.
0979 
0980     *) Исправление: при использовании кэширования соединения с клиентами
0981        могли закрываться без необходимости.
0982        Спасибо Justin Li.
0983 
0984     *) Исправление: nginx мог нагружать процессор при использовании
0985        директивы sendfile на Linux и Solaris, если отправляемый файл был
0986        изменён в процессе отправки.
0987 
0988     *) Исправление: при использовании директив sendfile и "aio threads"
0989        соединения могли зависать.
0990 
0991     *) Исправление: в директивах proxy_pass, fastcgi_pass, scgi_pass и
0992        uwsgi_pass при использовании переменных.
0993        Спасибо Piotr Sikora.
0994 
0995     *) Исправление: в модуле ngx_http_sub_filter_module.
0996 
0997     *) Исправление: если в закэшированном соединении к бэкенду происходила
0998        ошибка, запрос передавался на другой сервер без учёта директивы
0999        proxy_next_upstream.
1000 
1001     *) Исправление: ошибки "CreateFile() failed" при создании временных
1002        файлов на Windows.
1003 
1004 
1005 Изменения в nginx 1.9.12                                          24.02.2016
1006 
1007     *) Добавление: кодирование Хаффмана заголовков ответов в HTTP/2.
1008        Спасибо Владу Краснову.
1009 
1010     *) Добавление: директива worker_cpu_affinity теперь поддерживает более
1011        64 процессоров.
1012 
1013     *) Исправление: совместимость со сторонними модулями на C++; ошибка
1014        появилась в 1.9.11.
1015        Спасибо Piotr Sikora.
1016 
1017     *) Исправление: nginx не собирался статически с OpenSSL на Linux; ошибка
1018        появилась в 1.9.11.
1019 
1020     *) Исправление: директива "add_header ... always" с пустым значением не
1021        удаляла из заголовков ошибочных ответов строки Last-Modified и ETag.
1022 
1023     *) Изменение: при использовании OpenSSL 1.0.2f в логах могли появляться
1024        сообщения "called a function you should not call" и "shutdown while
1025        in init".
1026 
1027     *) Исправление: ошибочные заголовки могли логгироваться некорректно.
1028 
1029     *) Исправление: утечки сокетов при использовании HTTP/2.
1030 
1031     *) Исправление: в модуле ngx_http_v2_module.
1032 
1033 
1034 Изменения в nginx 1.9.11                                          09.02.2016
1035 
1036     *) Добавление: теперь resolver поддерживает TCP.
1037 
1038     *) Добавление: динамические модули.
1039 
1040     *) Исправление: при использовании HTTP/2 переменная $request_length не
1041        учитывала размер заголовков запроса.
1042 
1043     *) Исправление: в модуле ngx_http_v2_module.
1044 
1045 
1046 Изменения в nginx 1.9.10                                          26.01.2016
1047 
1048     *) Безопасность: при использовании директивы resolver во время обработки
1049        ответов DNS-сервера могло происходить разыменование некорректного
1050        адреса, что позволяло атакующему, имеющему возможность подделывать
1051        UDP-пакеты от DNS-сервера, вызвать segmentation fault в рабочем
1052        процессе (CVE-2016-0742).
1053 
1054     *) Безопасность: при использовании директивы resolver во время обработки
1055        CNAME-записей могло произойти обращение к ранее освобождённой памяти,
1056        что позволяло атакующему, имеющему возможность инициировать
1057        преобразование произвольных имён в адреса, вызвать segmentation fault
1058        в рабочем процессе, а также потенциально могло иметь другие
1059        последствия (CVE-2016-0746).
1060 
1061     *) Безопасность: при использовании директивы resolver во время обработки
1062        CNAME-записей не во всех случаях проверялось ограничение на
1063        максимальное количество записей в цепочке, что позволяло атакующему,
1064        имеющему возможность инициировать преобразование произвольных имён в
1065        адреса, вызвать чрезмерное потребление ресурсов рабочими процессами
1066        (CVE-2016-0747).
1067 
1068     *) Добавление: параметр auto директивы worker_cpu_affinity.
1069 
1070     *) Исправление: параметр proxy_protocol директивы listen не работал с
1071        IPv6 listen-сокетами.
1072 
1073     *) Исправление: при использовании директивы keepalive соединения к
1074        бэкендам могли кэшироваться некорректно.
1075 
1076     *) Исправление: после перенаправления запроса с помощью X-Accel-Redirect
1077        при проксировании использовался HTTP-метод оригинального запроса.
1078 
1079 
1080 Изменения в nginx 1.9.9                                           09.12.2015
1081 
1082     *) Исправление: проксирование в unix domain сокеты не работало при
1083        использовании переменных; ошибка появилась в 1.9.8.
1084 
1085 
1086 Изменения в nginx 1.9.8                                           08.12.2015
1087 
1088     *) Добавление: поддержка pwritev().
1089 
1090     *) Добавление: директива include в блоке upstream.
1091 
1092     *) Добавление: модуль ngx_http_slice_module.
1093 
1094     *) Исправление: при использовании LibreSSL в рабочем процессе мог
1095        произойти segmentation fault; ошибка появилась в 1.9.6.
1096 
1097     *) Исправление: nginx мог не собираться на OS X.
1098 
1099 
1100 Изменения в nginx 1.9.7                                           17.11.2015
1101 
1102     *) Добавление: параметр nohostname логгирования в syslog.
1103 
1104     *) Добавление: директива proxy_cache_convert_head.
1105 
1106     *) Добавление: переменная $realip_remote_addr в модуле
1107        ngx_http_realip_module.
1108 
1109     *) Исправление: директива expires могла не срабатывать при использовании
1110        переменных.
1111 
1112     *) Исправление: при использовании HTTP/2 в рабочем процессе мог
1113        произойти segmentation fault; ошибка появилась в 1.9.6.
1114 
1115     *) Исправление: если nginx был собран с модулем ngx_http_v2_module,
1116        протокол HTTP/2 мог быть использован клиентом, даже если не был
1117        указан параметр http2 директивы listen.
1118 
1119     *) Исправление: в модуле ngx_http_v2_module.
1120 
1121 
1122 Изменения в nginx 1.9.6                                           27.10.2015
1123 
1124     *) Исправление: при использовании HTTP/2 в рабочем процессе мог
1125        произойти segmentation fault.
1126        Спасибо Piotr Sikora и Denis Andzakovic.
1127 
1128     *) Исправление: при использовании HTTP/2 переменная $server_protocol
1129        была пустой.
1130 
1131     *) Исправление: SSL-соединения к бэкендам в модуле stream могли
1132        неожиданно завершаться по таймауту.
1133 
1134     *) Исправление: при использовании различных настроек ssl_session_cache в
1135        разных виртуальных серверах в рабочем процессе мог произойти
1136        segmentation fault.
1137 
1138     *) Исправление: nginx/Windows не собирался с MinGW gcc; ошибка появилась
1139        в 1.9.4.
1140        Спасибо Kouhei Sutou.
1141 
1142     *) Исправление: при использовании директивы timer_resolution на Windows
1143        время не обновлялось.
1144 
1145     *) Незначительные исправления и улучшения.
1146        Спасибо Markus Linnala, Kurtis Nusbaum и Piotr Sikora.
1147 
1148 
1149 Изменения в nginx 1.9.5                                           22.09.2015
1150 
1151     *) Добавление: модуль ngx_http_v2_module (заменяет модуль
1152        ngx_http_spdy_module).
1153        Спасибо Dropbox и Automattic за спонсирование разработки.
1154 
1155     *) Изменение: теперь по умолчанию директива output_buffers использует
1156        два буфера.
1157 
1158     *) Изменение: теперь nginx ограничивает максимальную вложенность
1159        подзапросов, а не количество одновременных подзапросов.
1160 
1161     *) Изменение: теперь при возврате ответов из кэша nginx проверяет ключ
1162        полностью.
1163        Спасибо Геннадию Махомеду и Сергею Брестеру.
1164 
1165     *) Исправление: при использовании кэша в логах могли появляться
1166        сообщения "header already sent"; ошибка появилась в 1.7.5.
1167 
1168     *) Исправление: при использовании CephFS и директивы timer_resolution на
1169        Linux в логах могли появляться сообщения "writev() failed (4:
1170        Interrupted system call)".
1171 
1172     *) Исправление: в обработке ошибок конфигурации.
1173        Спасибо Markus Linnala.
1174 
1175     *) Исправление: при использовании директивы sub_filter на уровне http в
1176        рабочем процессе происходил segmentation fault; ошибка появилась в
1177        1.9.4.
1178 
1179 
1180 Изменения в nginx 1.9.4                                           18.08.2015
1181 
1182     *) Изменение: директивы proxy_downstream_buffer и proxy_upstream_buffer
1183        в модуле stream заменены директивой proxy_buffer_size.
1184 
1185     *) Добавление: директива tcp_nodelay в модуле stream.
1186 
1187     *) Добавление: теперь можно указать несколько директив sub_filter
1188        одновременно.
1189 
1190     *) Добавление: директива sub_filter поддерживает переменные в строке
1191        поиска.
1192 
1193     *) Изменение: тестирование конфигурации могло не работать под Linux
1194        OpenVZ.
1195        Спасибо Геннадию Махомеду.
1196 
1197     *) Исправление: после переконфигурации старые рабочие процессы могли
1198        сильно нагружать процессор при больших значениях worker_connections.
1199 
1200     *) Исправление: при совместном использовании директив try_files и alias
1201        внутри location'а, заданного регулярным выражением, в рабочем
1202        процессе мог произойти segmentation fault; ошибка появилась в 1.7.1.
1203 
1204     *) Исправление: директива try_files внутри вложенного location'а,
1205        заданного регулярным выражением, работала неправильно, если во
1206        внешнем location'е использовалась директива alias.
1207 
1208     *) Исправление: в обработке ошибок при построении хэш-таблиц.
1209 
1210     *) Исправление: nginx не собирался с Visual Studio 2015.
1211 
1212 
1213 Изменения в nginx 1.9.3                                           14.07.2015
1214 
1215     *) Изменение: дублирующиеся блоки http, mail и stream теперь запрещены.
1216 
1217     *) Добавление: ограничение количества соединений в модуле stream.
1218 
1219     *) Добавление: ограничение скорости в модуле stream.
1220 
1221     *) Исправление: директива zone в блоке upstream не работала на Windows.
1222 
1223     *) Исправление: совместимость с LibreSSL в модуле stream.
1224        Спасибо Piotr Sikora.
1225 
1226     *) Исправление: в параметре --builddir в configure.
1227        Спасибо Piotr Sikora.
1228 
1229     *) Исправление: директива ssl_stapling_file не работала; ошибка
1230        появилась в 1.9.2.
1231        Спасибо Faidon Liambotis и Brandon Black.
1232 
1233     *) Исправление: при использовании директивы ssl_stapling в рабочем
1234        процессе мог произойти segmentation fault; ошибка появилась в 1.9.2.
1235        Спасибо Matthew Baldwin.
1236 
1237 
1238 Изменения в nginx 1.9.2                                           16.06.2015
1239 
1240     *) Добавление: параметр backlog директивы listen в почтовом
1241        прокси-сервере и модуле stream.
1242 
1243     *) Добавление: директивы allow и deny в модуле stream.
1244 
1245     *) Добавление: директива proxy_bind в модуле stream.
1246 
1247     *) Добавление: директива proxy_protocol в модуле stream.
1248 
1249     *) Добавление: ключ -T.
1250 
1251     *) Добавление: параметр REQUEST_SCHEME добавлен в стандартные
1252        конфигурационные файлы fastcgi.conf, fastcgi_params, scgi_params и
1253        uwsgi_params.
1254 
1255     *) Исправление: параметр reuseport директивы listen в модуле stream не
1256        работал.
1257 
1258     *) Исправление: OCSP stapling в некоторых случаях мог вернуть устаревший
1259        OCSP-ответ.
1260 
1261 
1262 Изменения в nginx 1.9.1                                           26.05.2015
1263 
1264     *) Изменение: теперь протокол SSLv3 по умолчанию запрещён.
1265 
1266     *) Изменение: некоторые давно устаревшие директивы больше не
1267        поддерживаются.
1268 
1269     *) Добавление: параметр reuseport директивы listen.
1270        Спасибо Yingqi Lu из Intel и Sepherosa Ziehau.
1271 
1272     *) Добавление: переменная $upstream_connect_time.
1273 
1274     *) Исправление: в директиве hash на big-endian платформах.
1275 
1276     *) Исправление: nginx мог не запускаться на некоторых старых версиях
1277        Linux; ошибка появилась в 1.7.11.
1278 
1279     *) Исправление: в парсинге IP-адресов.
1280        Спасибо Сергею Половко.
1281 
1282 
1283 Изменения в nginx 1.9.0                                           28.04.2015
1284 
1285     *) Изменение: устаревшие методы обработки соединений aio и rtsig больше
1286        не поддерживаются.
1287 
1288     *) Добавление: директива zone в блоке upstream.
1289 
1290     *) Добавление: модуль stream.
1291 
1292     *) Добавление: поддержка byte ranges для ответов модуля
1293        ngx_http_memcached_module.
1294        Спасибо Martin Mlynář.
1295 
1296     *) Добавление: разделяемую память теперь можно использовать на версиях
1297        Windows с рандомизацией адресного пространства.
1298        Спасибо Сергею Брестеру.
1299 
1300     *) Добавление: директиву error_log теперь можно использовать на уровнях
1301        mail и server в почтовом прокси-сервере.
1302 
1303     *) Исправление: параметр proxy_protocol директивы listen не работал,
1304        если не был указан в первой директиве listen для данного
1305        listen-сокета.
1306 
1307 
1308 Изменения в nginx 1.7.12                                          07.04.2015
1309 
1310     *) Добавление: теперь директива tcp_nodelay работает для SSL-соединений
1311        с бэкендами.
1312 
1313     *) Добавление: теперь потоки могут использоваться для чтения заголовков
1314        файлов в кэше.
1315 
1316     *) Исправление: в директиве proxy_request_buffering.
1317 
1318     *) Исправление: при использовании потоков на Linux в рабочем процессе
1319        мог произойти segmentation fault.
1320 
1321     *) Исправление: в обработке ошибок при использовании директивы
1322        ssl_stapling.
1323        Спасибо Filipe da Silva.
1324 
1325     *) Исправление: в модуле ngx_http_spdy_module.
1326 
1327 
1328 Изменения в nginx 1.7.11                                          24.03.2015
1329 
1330     *) Изменение: параметр sendfile директивы aio более не нужен; теперь
1331        nginx автоматически использует AIO для подгрузки данных для sendfile,
1332        если одновременно используются директивы aio и sendfile.
1333 
1334     *) Добавление: экспериментальная поддержка потоков.
1335 
1336     *) Добавление: директивы proxy_request_buffering,
1337        fastcgi_request_buffering, scgi_request_buffering и
1338        uwsgi_request_buffering.
1339 
1340     *) Добавление: экспериментальное API для обработки тела запроса.
1341 
1342     *) Добавление: проверка клиентских SSL-сертификатов в почтовом
1343        прокси-сервере.
1344        Спасибо Sven Peter, Franck Levionnois и Filipe Da Silva.
1345 
1346     *) Добавление: уменьшение времени запуска при использовании директивы
1347        "hash ... consistent" в блоке upstream.
1348        Спасибо Wai Keen Woon.
1349 
1350     *) Добавление: отладочное логгирование в кольцевой буфер в памяти.
1351 
1352     *) Исправление: в обработке хэш-таблиц.
1353        Спасибо Chris West.
1354 
1355     *) Исправление: в директиве proxy_cache_revalidate.
1356 
1357     *) Исправление: SSL-соединения могли зависать, если использовался
1358        отложенный accept или параметр proxy_protocol директивы listen.
1359        Спасибо James Hamlin.
1360 
1361     *) Исправление: переменная $upstream_response_time могла содержать
1362        неверное значение при использовании директивы image_filter.
1363 
1364     *) Исправление: в обработке целочисленных переполнений.
1365        Спасибо Régis Leroy.
1366 
1367     *) Исправление: при использовании LibreSSL было невозможно включить
1368        поддержку SSLv3.
1369 
1370     *) Исправление: при использовании LibreSSL в логах появлялись сообщения
1371        "ignoring stale global SSL error ... called a function you should not
1372        call".
1373 
1374     *) Исправление: сертификаты, указанные в директивах
1375        ssl_client_certificate и ssl_trusted_certificate, использовались для
1376        автоматического построения цепочек сертификатов.
1377 
1378 
1379 Изменения в nginx 1.7.10                                          10.02.2015
1380 
1381     *) Добавление: параметр use_temp_path директив proxy_cache_path,
1382        fastcgi_cache_path, scgi_cache_path и uwsgi_cache_path.
1383 
1384     *) Добавление: переменная $upstream_header_time.
1385 
1386     *) Изменение: теперь при переполнении диска nginx пытается писать
1387        error_log'и только раз в секунду.
1388 
1389     *) Исправление: директива try_files при тестировании каталогов не
1390        игнорировала обычные файлы.
1391        Спасибо Damien Tournoud.
1392 
1393     *) Исправление: при использовании директивы sendfile на OS X возникали
1394        ошибки "sendfile() failed"; ошибка появилась в nginx 1.7.8.
1395 
1396     *) Исправление: в лог могли писаться сообщения "sem_post() failed".
1397 
1398     *) Исправление: nginx не собирался с musl libc.
1399        Спасибо James Taylor.
1400 
1401     *) Исправление: nginx не собирался на Tru64 UNIX.
1402        Спасибо Goetz T. Fischer.
1403 
1404 
1405 Изменения в nginx 1.7.9                                           23.12.2014
1406 
1407     *) Добавление: директивы proxy_cache, fastcgi_cache, scgi_cache и
1408        uwsgi_cache поддерживают переменные.
1409 
1410     *) Добавление: директива expires поддерживает переменные.
1411 
1412     *) Добавление: возможность загрузки секретных ключей с аппаратных
1413        устройств с помощью OpenSSL engines.
1414        Спасибо Дмитрию Пичулину.
1415 
1416     *) Добавление: директива autoindex_format.
1417 
1418     *) Исправление: ревалидация элементов кэша теперь используется только
1419        для ответов с кодами 200 и 206.
1420        Спасибо Piotr Sikora.
1421 
1422     *) Исправление: строка "TE" заголовка запроса клиента передавалась на
1423        бэкенд при проксировании.
1424 
1425     *) Исправление: директивы proxy_pass, fastcgi_pass, scgi_pass и
1426        uwsgi_pass могли неправильно работать внутри блоков if и
1427        limit_except.
1428 
1429     *) Исправление: директива proxy_store с параметром "on" игнорировалась,
1430        если на предыдущем уровне использовалась директива proxy_store с явно
1431        заданным путём к файлам.
1432 
1433     *) Исправление: nginx не собирался с BoringSSL.
1434        Спасибо Lukas Tribus.
1435 
1436 
1437 Изменения в nginx 1.7.8                                           02.12.2014
1438 
1439     *) Изменение: теперь строки "If-Modified-Since", "If-Range" и им
1440        подобные в заголовке запроса клиента передаются бэкенду при
1441        включённом кэшировании, если nginx заранее знает, что не будет
1442        кэшировать ответ (например, при использовании proxy_cache_min_uses).
1443 
1444     *) Изменение: теперь после истечения proxy_cache_lock_timeout nginx
1445        отправляет запрос на бэкенд без кэширования; новые директивы
1446        proxy_cache_lock_age, fastcgi_cache_lock_age, scgi_cache_lock_age и
1447        uwsgi_cache_lock_age позволяют указать, через какое время блокировка
1448        будет принудительно снята и будет сделана ещё одна попытка
1449        закэшировать ответ.
1450 
1451     *) Изменение: директива log_format теперь может использоваться только на
1452        уровне http.
1453 
1454     *) Добавление: директивы proxy_ssl_certificate,
1455        proxy_ssl_certificate_key, proxy_ssl_password_file,
1456        uwsgi_ssl_certificate, uwsgi_ssl_certificate_key и
1457        uwsgi_ssl_password_file.
1458        Спасибо Piotr Sikora.
1459 
1460     *) Добавление: теперь с помощью X-Accel-Redirect можно перейти в
1461        именованный location.
1462        Спасибо Toshikuni Fukaya.
1463 
1464     *) Добавление: теперь директива tcp_nodelay работает для
1465        SPDY-соединений.
1466 
1467     *) Добавление: новые директивы в скриптах подсветки синтаксиса для vim.
1468        Спасибо Peter Wu.
1469 
1470     *) Исправление: nginx игнорировал значение "s-maxage" в строке
1471        "Cache-Control" в заголовке ответа бэкенда.
1472        Спасибо Piotr Sikora.
1473 
1474     *) Исправление: в модуле ngx_http_spdy_module.
1475        Спасибо Piotr Sikora.
1476 
1477     *) Исправление: в директиве ssl_password_file при использовании OpenSSL
1478        0.9.8zc, 1.0.0o, 1.0.1j.
1479 
1480     *) Исправление: при использовании директивы post_action в лог писались
1481        сообщения "header already sent"; ошибка появилась в nginx 1.5.4.
1482 
1483     *) Исправление: при использовании директивы "postpone_output 0" с
1484        SSI-подзапросами в лог могли писаться сообщения "the http output
1485        chain is empty".
1486 
1487     *) Исправление: в директиве proxy_cache_lock при использовании
1488        SSI-подзапросов.
1489        Спасибо Yichun Zhang.
1490 
1491 
1492 Изменения в nginx 1.7.7                                           28.10.2014
1493 
1494     *) Изменение: теперь nginx учитывает при кэшировании строку "Vary" в
1495        заголовке ответа бэкенда.
1496 
1497     *) Добавление: директивы proxy_force_ranges, fastcgi_force_ranges,
1498        scgi_force_ranges и uwsgi_force_ranges.
1499 
1500     *) Добавление: директивы proxy_limit_rate, fastcgi_limit_rate,
1501        scgi_limit_rate и uwsgi_limit_rate.
1502 
1503     *) Добавление: параметр Vary директив proxy_ignore_headers,
1504        fastcgi_ignore_headers, scgi_ignore_headers и uwsgi_ignore_headers.
1505 
1506     *) Исправление: последняя часть ответа, полученного от бэкенда при
1507        небуферизированном проксировании, могла не отправляться клиенту, если
1508        использовались директивы gzip или gunzip.
1509 
1510     *) Исправление: в директиве proxy_cache_revalidate.
1511        Спасибо Piotr Sikora.
1512 
1513     *) Исправление: в обработке ошибок.
1514        Спасибо Yichun Zhang и Даниилу Бондареву.
1515 
1516     *) Исправление: в директивах proxy_next_upstream_tries и
1517        proxy_next_upstream_timeout.
1518        Спасибо Feng Gu.
1519 
1520     *) Исправление: nginx/Windows не собирался с MinGW-w64 gcc.
1521        Спасибо Kouhei Sutou.
1522 
1523 
1524 Изменения в nginx 1.7.6                                           30.09.2014
1525 
1526     *) Изменение: устаревшая директива limit_zone больше не поддерживается.
1527 
1528     *) Добавление: в директивах limit_conn_zone и limit_req_zone теперь
1529        можно использовать комбинации нескольких переменных.
1530 
1531     *) Исправление: при повторной отправке FastCGI-запроса на бэкенд тело
1532        запроса могло передаваться неправильно.
1533 
1534     *) Исправление: в логгировании в syslog.
1535 
1536 
1537 Изменения в nginx 1.7.5                                           16.09.2014
1538 
1539     *) Безопасность: при использовании общего для нескольких блоков server
1540        разделяемого кэша SSL-сессий или общего ключа для шифрования TLS
1541        session tickets было возможно повторно использовать SSL-сессию в
1542        контексте другого блока server (CVE-2014-3616).
1543        Спасибо Antoine Delignat-Lavaud.
1544 
1545     *) Изменение: директиву stub_status теперь можно указывать без
1546        параметров.
1547 
1548     *) Добавление: параметр always директивы add_header.
1549 
1550     *) Добавление: директивы proxy_next_upstream_tries,
1551        proxy_next_upstream_timeout, fastcgi_next_upstream_tries,
1552        fastcgi_next_upstream_timeout, memcached_next_upstream_tries,
1553        memcached_next_upstream_timeout, scgi_next_upstream_tries,
1554        scgi_next_upstream_timeout, uwsgi_next_upstream_tries и
1555        uwsgi_next_upstream_timeout.
1556 
1557     *) Исправление: в параметре if директивы access_log.
1558 
1559     *) Исправление: в модуле ngx_http_perl_module.
1560        Спасибо Piotr Sikora.
1561 
1562     *) Исправление: директива listen почтового прокси-сервера не позволяла
1563        указать более двух параметров.
1564 
1565     *) Исправление: директива sub_filter не работала с заменяемой строкой из
1566        одного символа.
1567 
1568     *) Исправление: запросы могли зависать, если использовался resolver и в
1569        процессе обращения к DNS-серверу происходил таймаут.
1570 
1571     *) Исправление: в модуле ngx_http_spdy_module при использовании
1572        совместно с AIO.
1573 
1574     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1575        если с помощью директивы set изменялись переменные "$http_...",
1576        "$sent_http_..." или "$upstream_http_...".
1577 
1578     *) Исправление: в обработке ошибок выделения памяти.
1579        Спасибо Markus Linnala и Feng Gu.
1580 
1581 
1582 Изменения в nginx 1.7.4                                           05.08.2014
1583 
1584     *) Безопасность: pipelined-команды не отбрасывались после команды
1585        STARTTLS в SMTP прокси-сервере (CVE-2014-3556); ошибка появилась в
1586        1.5.6.
1587        Спасибо Chris Boulton.
1588 
1589     *) Изменение: экранирование символов в URI теперь использует
1590        шестнадцатеричные цифры в верхнем регистре.
1591        Спасибо Piotr Sikora.
1592 
1593     *) Добавление: теперь nginx можно собрать с BoringSSL и LibreSSL.
1594        Спасибо Piotr Sikora.
1595 
1596     *) Исправление: запросы могли зависать, если использовался resolver и
1597        DNS-сервер возвращал некорректный ответ; ошибка появилась в 1.5.8.
1598 
1599     *) Исправление: в модуле ngx_http_spdy_module.
1600        Спасибо Piotr Sikora.
1601 
1602     *) Исправление: переменная $uri могла содержать мусор при возврате
1603        ошибок с кодом 400.
1604        Спасибо Сергею Боброву.
1605 
1606     *) Исправление: в обработке ошибок в директиве proxy_store и в модуле
1607        ngx_http_dav_module.
1608        Спасибо Feng Gu.
1609 
1610     *) Исправление: при логгировании ошибок в syslog мог происходить
1611        segmentation fault; ошибка появилась в 1.7.1.
1612 
1613     *) Исправление: переменные $geoip_latitude, $geoip_longitude,
1614        $geoip_dma_code и $geoip_area_code могли не работать.
1615        Спасибо Yichun Zhang.
1616 
1617     *) Исправление: в обработке ошибок выделения памяти.
1618        Спасибо Tatsuhiko Kubo и Piotr Sikora.
1619 
1620 
1621 Изменения в nginx 1.7.3                                           08.07.2014
1622 
1623     *) Добавление: weak entity tags теперь не удаляются при изменениях
1624        ответа, а strong entity tags преобразуются в weak.
1625 
1626     *) Добавление: ревалидация элементов кэша теперь, если это возможно,
1627        использует заголовок If-None-Match.
1628 
1629     *) Добавление: директива ssl_password_file.
1630 
1631     *) Исправление: при возврате ответа из кэша заголовок запроса
1632        If-None-Match игнорировался, если в ответе не было заголовка
1633        Last-Modified.
1634 
1635     *) Исправление: сообщения "peer closed connection in SSL handshake" при
1636        соединении с бэкендами логгировались на уровне info вместо error.
1637 
1638     *) Исправление: в модуле ngx_http_dav_module в nginx/Windows.
1639 
1640     *) Исправление: SPDY-соединения могли неожиданно закрываться, если
1641        использовалось кэширование.
1642 
1643 
1644 Изменения в nginx 1.7.2                                           17.06.2014
1645 
1646     *) Добавление: директива hash в блоке upstream.
1647 
1648     *) Добавление: дефрагментация свободных блоков разделяемой памяти.
1649        Спасибо Wandenberg Peixoto и Yichun Zhang.
1650 
1651     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1652        если использовалось значение access_log по умолчанию; ошибка
1653        появилась в 1.7.0.
1654        Спасибо Piotr Sikora.
1655 
1656     *) Исправление: завершающий слэш ошибочно удалялся из последнего
1657        параметра директивы try_files.
1658 
1659     *) Исправление: nginx мог не собираться на OS X.
1660 
1661     *) Исправление: в модуле ngx_http_spdy_module.
1662 
1663 
1664 Изменения в nginx 1.7.1                                           27.05.2014
1665 
1666     *) Добавление: переменные "$upstream_cookie_...".
1667 
1668     *) Добавление: переменная $ssl_client_fingerprint.
1669 
1670     *) Добавление: директивы error_log и access_log теперь поддерживают
1671        логгирование в syslog.
1672 
1673     *) Добавление: почтовый прокси-сервер теперь логгирует порт клиента при
1674        соединении.
1675 
1676     *) Исправление: утечки памяти при использовании директивы
1677        "ssl_stapling".
1678        Спасибо Filipe da Silva.
1679 
1680     *) Исправление: директива alias внутри location'а, заданного регулярным
1681        выражением, работала неправильно, если использовались директивы if
1682        или limit_except.
1683 
1684     *) Исправление: директива charset не ставила кодировку для сжатых
1685        ответов бэкендов.
1686 
1687     *) Исправление: директива proxy_pass без URI могла использовать
1688        оригинальный запрос после установки переменной $args.
1689        Спасибо Yichun Zhang.
1690 
1691     *) Исправление: в работе параметра none директивы smtp_auth; ошибка
1692        появилась в 1.5.6.
1693        Спасибо Святославу Никольскому.
1694 
1695     *) Исправление: при совместном использовании sub_filter и SSI ответы
1696        могли передаваться неверно.
1697 
1698     *) Исправление: nginx не собирался с параметром --with-file-aio на
1699        Linux/aarch64.
1700 
1701 
1702 Изменения в nginx 1.7.0                                           24.04.2014
1703 
1704     *) Добавление: проверка SSL-сертификатов бэкендов.
1705 
1706     *) Добавление: поддержка SNI при работе с бэкендами по SSL.
1707 
1708     *) Добавление: переменная $ssl_server_name.
1709 
1710     *) Добавление: параметр if директивы access_log.
1711 
1712 
1713 Изменения в nginx 1.5.13                                          08.04.2014
1714 
1715     *) Изменение: улучшена обработка хэш-таблиц; в директивах
1716        variables_hash_max_size и types_hash_bucket_size значения по
1717        умолчанию изменены на 1024 и 64 соответственно.
1718 
1719     *) Добавление: модуль ngx_http_mp4_module теперь понимает аргумент end.
1720 
1721     *) Добавление: поддержка byte ranges модулем ngx_http_mp4_module и при
1722        сохранении ответов в кэш.
1723 
1724     *) Исправление: теперь nginx не пишет в лог сообщения "ngx_slab_alloc()
1725        failed: no memory" при использовании разделяемой памяти в
1726        ssl_session_cache и в модуле ngx_http_limit_req_module.
1727 
1728     *) Исправление: директива underscores_in_headers не разрешала
1729        подчёркивание в первом символе заголовка.
1730        Спасибо Piotr Sikora.
1731 
1732     *) Исправление: cache manager мог нагружать процессор при выходе в
1733        nginx/Windows.
1734 
1735     *) Исправление: при использовании ssl_session_cache с параметром shared
1736        рабочий процесс nginx/Windows завершался аварийно.
1737 
1738     *) Исправление: в модуле ngx_http_spdy_module.
1739 
1740 
1741 Изменения в nginx 1.5.12                                          18.03.2014
1742 
1743     *) Безопасность: при обработке специально созданного запроса модулем
1744        ngx_http_spdy_module могло происходить переполнение буфера в рабочем
1745        процессе, что потенциально могло приводить к выполнению произвольного
1746        кода (CVE-2014-0133).
1747        Спасибо Lucas Molas из Programa STIC, Fundación Dr. Manuel Sadosky,
1748        Buenos Aires, Argentina.
1749 
1750     *) Добавление: параметр proxy_protocol в директивах listen и
1751        real_ip_header, переменная $proxy_protocol_addr.
1752 
1753     *) Исправление: в директиве fastcgi_next_upstream.
1754        Спасибо Lucas Molas.
1755 
1756 
1757 Изменения в nginx 1.5.11                                          04.03.2014
1758 
1759     *) Безопасность: при обработке специально созданного запроса модулем
1760        ngx_http_spdy_module на 32-битных платформах могла повреждаться
1761        память рабочего процесса, что потенциально могло приводить к
1762        выполнению произвольного кода (CVE-2014-0088); ошибка появилась в
1763        1.5.10.
1764        Спасибо Lucas Molas из Programa STIC, Fundación Dr. Manuel Sadosky,
1765        Buenos Aires, Argentina.
1766 
1767     *) Добавление: переменная $ssl_session_reused.
1768 
1769     *) Исправление: директива client_max_body_size могла не работать при
1770        чтении тела запроса с использованием chunked transfer encoding;
1771        ошибка появилась в 1.3.9.
1772        Спасибо Lucas Molas.
1773 
1774     *) Исправление: при проксировании WebSocket-соединений в рабочем
1775        процессе мог произойти segmentation fault.
1776 
1777     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1778        если использовался модуль ngx_http_spdy_module на 32-битных
1779        платформах; ошибка появилась в 1.5.10.
1780 
1781     *) Исправление: значение переменной $upstream_status могло быть
1782        неверным, если использовались директивы proxy_cache_use_stale или
1783        proxy_cache_revalidate.
1784        Спасибо Piotr Sikora.
1785 
1786     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1787        если ошибки с кодом 400 с помощью директивы error_page
1788        перенаправлялись в именованный location.
1789 
1790     *) Исправление: nginx/Windows не собирался с Visual Studio 2013.
1791 
1792 
1793 Изменения в nginx 1.5.10                                          04.02.2014
1794 
1795     *) Добавление: модуль ngx_http_spdy_module теперь использует протокол
1796        SPDY 3.1.
1797        Спасибо Automattic и MaxCDN за спонсирование разработки.
1798 
1799     *) Добавление: модуль ngx_http_mp4_module теперь пропускает дорожки,
1800        имеющие меньшую длину, чем запрошенная перемотка.
1801 
1802     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1803        если переменная $ssl_session_id использовалась при логгировании;
1804        ошибка появилась в 1.5.9.
1805 
1806     *) Исправление: переменные $date_local и $date_gmt использовали неверный
1807        формат вне модуля ngx_http_ssi_filter_module.
1808 
1809     *) Исправление: клиентские соединения могли сразу закрываться, если
1810        использовался отложенный accept; ошибка появилась в 1.3.15.
1811 
1812     *) Исправление: сообщения "getsockopt(TCP_FASTOPEN) ... failed"
1813        записывались в лог в процессе обновления исполняемого файла на Linux;
1814        ошибка появилась в 1.5.8.
1815        Спасибо Piotr Sikora.
1816 
1817 
1818 Изменения в nginx 1.5.9                                           22.01.2014
1819 
1820     *) Изменение: теперь в заголовке X-Accel-Redirect nginx ожидает
1821        закодированный URI.
1822 
1823     *) Добавление: директива ssl_buffer_size.
1824 
1825     *) Добавление: директиву limit_rate теперь можно использовать для
1826        ограничения скорости передачи ответов клиенту в SPDY-соединениях.
1827 
1828     *) Добавление: директива spdy_chunk_size.
1829 
1830     *) Добавление: директива ssl_session_tickets.
1831        Спасибо Dirkjan Bussink.
1832 
1833     *) Исправление: переменная $ssl_session_id содержала всю сессию в
1834        сериализованном виде вместо её идентификатора.
1835        Спасибо Ivan Ristić.
1836 
1837     *) Исправление: nginx неправильно обрабатывал закодированный символ "?"
1838        в команде SSI include.
1839 
1840     *) Исправление: модуль ngx_http_dav_module не раскодировал целевой URI
1841        при обработке методов COPY и MOVE.
1842 
1843     *) Исправление: resolver не понимал доменные имена с точкой в конце.
1844        Спасибо Yichun Zhang.
1845 
1846     *) Исправление: при проксировании в логах могли появляться сообщения
1847        "zero size buf in output"; ошибка появилась в 1.3.9.
1848 
1849     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1850        если использовался модуль ngx_http_spdy_module.
1851 
1852     *) Исправление: при использовании методов обработки соединений select,
1853        poll и /dev/poll проксируемые WebSocket-соединения могли зависать
1854        сразу после открытия.
1855 
1856     *) Исправление: директива xclient почтового прокси-сервера некорректно
1857        передавала IPv6-адреса.
1858 
1859 
1860 Изменения в nginx 1.5.8                                           17.12.2013
1861 
1862     *) Добавление: теперь resolver поддерживает IPv6.
1863 
1864     *) Добавление: директива listen поддерживает параметр fastopen.
1865        Спасибо Mathew Rodley.
1866 
1867     *) Добавление: поддержка SSL в модуле ngx_http_uwsgi_module.
1868        Спасибо Roberto De Ioris.
1869 
1870     *) Добавление: скрипты подсветки синтаксиса для vim добавлены в contrib.
1871        Спасибо Evan Miller.
1872 
1873     *) Исправление: при чтении тела запроса с использованием chunked
1874        transfer encoding по SSL-соединению мог произойти таймаут.
1875 
1876     *) Исправление: директива master_process работала неправильно в
1877        nginx/Windows.
1878 
1879     *) Исправление: параметр setfib директивы listen мог не работать.
1880 
1881     *) Исправление: в модуле ngx_http_spdy_module.
1882 
1883 
1884 Изменения в nginx 1.5.7                                           19.11.2013
1885 
1886     *) Безопасность: символ, следующий за незакодированным пробелом в строке
1887        запроса, обрабатывался неправильно (CVE-2013-4547); ошибка появилась
1888        в 0.8.41.
1889        Спасибо Ivan Fratric из Google Security Team.
1890 
1891     *) Изменение: уровень логгирования ошибок auth_basic об отсутствии
1892        пароля понижен с уровня error до info.
1893 
1894     *) Добавление: директивы proxy_cache_revalidate,
1895        fastcgi_cache_revalidate, scgi_cache_revalidate и
1896        uwsgi_cache_revalidate.
1897 
1898     *) Добавление: директива ssl_session_ticket_key.
1899        Спасибо Piotr Sikora.
1900 
1901     *) Исправление: директива "add_header Cache-Control ''" добавляла строку
1902        заголовка ответа "Cache-Control" с пустым значением.
1903 
1904     *) Исправление: директива "satisfy any" могла вернуть ошибку 403 вместо
1905        401 при использовании директив auth_request и auth_basic.
1906        Спасибо Jan Marc Hoffmann.
1907 
1908     *) Исправление: параметры accept_filter и deferred директивы listen
1909        игнорировались для listen-сокетов, создаваемых в процессе обновления
1910        исполняемого файла.
1911        Спасибо Piotr Sikora.
1912 
1913     *) Исправление: часть данных, полученных от бэкенда при
1914        небуферизированном проксировании, могла не отправляться клиенту
1915        сразу, если использовались директивы gzip или gunzip.
1916        Спасибо Yichun Zhang.
1917 
1918     *) Исправление: в обработке ошибок в модуле
1919        ngx_http_gunzip_filter_module.
1920 
1921     *) Исправление: ответы могли зависать, если использовался модуль
1922        ngx_http_spdy_module и директива auth_request.
1923 
1924     *) Исправление: утечки памяти в nginx/Windows.
1925 
1926 
1927 Изменения в nginx 1.5.6                                           01.10.2013
1928 
1929     *) Добавление: директива fastcgi_buffering.
1930 
1931     *) Добавление: директивы proxy_ssl_protocols и proxy_ssl_ciphers.
1932        Спасибо Piotr Sikora.
1933 
1934     *) Добавление: оптимизация SSL handshake при использовании длинных
1935        цепочек сертификатов.
1936 
1937     *) Добавление: почтовый прокси-сервер поддерживает SMTP pipelining.
1938 
1939     *) Исправление: в модуле ngx_http_auth_basic_module при использовании
1940        метода шифрования паролей "$apr1$".
1941        Спасибо Markus Linnala.
1942 
1943     *) Исправление: на MacOSX, Cygwin и nginx/Windows для обработки запроса
1944        мог использоваться неверный location, если для задания location'ов
1945        использовались символы разных регистров.
1946 
1947     *) Исправление: автоматическое перенаправление с добавлением
1948        завершающего слэша для проксированных location'ов могло не работать.
1949 
1950     *) Исправление: в почтовом прокси-сервере.
1951 
1952     *) Исправление: в модуле ngx_http_spdy_module.
1953 
1954 
1955 Изменения в nginx 1.5.5                                           17.09.2013
1956 
1957     *) Изменение: теперь nginx по умолчанию использует HTTP/1.0, если точно
1958        определить протокол не удалось.
1959 
1960     *) Добавление: директива disable_symlinks теперь использует O_PATH на
1961        Linux.
1962 
1963     *) Добавление: для определения того, что клиент закрыл соединение, при
1964        использовании метода epoll теперь используются события EPOLLRDHUP.
1965 
1966     *) Исправление: в директиве valid_referers при использовании параметра
1967        server_names.
1968 
1969     *) Исправление: переменная $request_time не работала в nginx/Windows.
1970 
1971     *) Исправление: в директиве image_filter.
1972        Спасибо Lanshun Zhou.
1973 
1974     *) Исправление: совместимость с OpenSSL 1.0.1f.
1975        Спасибо Piotr Sikora.
1976 
1977 
1978 Изменения в nginx 1.5.4                                           27.08.2013
1979 
1980     *) Изменение: MIME-тип для расширения js изменён на
1981        "application/javascript"; значение по умолчанию директивы
1982        charset_types изменено соответственно.
1983 
1984     *) Изменение: теперь директива image_filter с параметром size возвращает
1985        ответ с MIME-типом "application/json".
1986 
1987     *) Добавление: модуль ngx_http_auth_request_module.
1988 
1989     *) Исправление: на старте или во время переконфигурации мог произойти
1990        segmentation fault, если использовалась директива try_files с пустым
1991        параметром.
1992 
1993     *) Исправление: утечки памяти при использовании в директивах root и
1994        auth_basic_user_file относительных путей, заданных с помощью
1995        переменных.
1996 
1997     *) Исправление: директива valid_referers неправильно выполняла
1998        регулярные выражения, если заголовок Referer начинался с "https://".
1999        Спасибо Liangbin Li.
2000 
2001     *) Исправление: ответы могли зависать, если использовались подзапросы и
2002        при обработке подзапроса происходила ошибка во время SSL handshake с
2003        бэкендом.
2004        Спасибо Aviram Cohen.
2005 
2006     *) Исправление: в модуле ngx_http_autoindex_module.
2007 
2008     *) Исправление: в модуле ngx_http_spdy_module.
2009 
2010 
2011 Изменения в nginx 1.5.3                                           30.07.2013
2012 
2013     *) Изменение во внутреннем API: теперь при небуферизированной работе с
2014        бэкендами u->length по умолчанию устанавливается в -1.
2015 
2016     *) Изменение: теперь при получении неполного ответа от бэкенда nginx
2017        отправляет полученную часть ответа, после чего закрывает соединение с
2018        клиентом.
2019 
2020     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2021        если использовался модуль ngx_http_spdy_module и директива
2022        client_body_in_file_only.
2023 
2024     *) Исправление: параметр so_keepalive директивы listen мог работать
2025        некорректно на DragonFlyBSD.
2026        Спасибо Sepherosa Ziehau.
2027 
2028     *) Исправление: в модуле ngx_http_xslt_filter_module.
2029 
2030     *) Исправление: в модуле ngx_http_sub_filter_module.
2031 
2032 
2033 Изменения в nginx 1.5.2                                           02.07.2013
2034 
2035     *) Добавление: теперь можно использовать несколько директив error_log.
2036 
2037     *) Исправление: метод $r->header_in() встроенного перла не возвращал
2038        значения строк "Cookie" и "X-Forwarded-For" из заголовка запроса;
2039        ошибка появилась в 1.3.14.
2040 
2041     *) Исправление: в модуле ngx_http_spdy_module.
2042        Спасибо Jim Radford.
2043 
2044     *) Исправление: nginx не собирался на Linux при использовании x32 ABI.
2045        Спасибо Сергею Иванцову.
2046 
2047 
2048 Изменения в nginx 1.5.1                                           04.06.2013
2049 
2050     *) Добавление: директивы ssi_last_modified, sub_filter_last_modified и
2051        xslt_last_modified.
2052        Спасибо Алексею Колпакову.
2053 
2054     *) Добавление: параметр http_403 в директивах proxy_next_upstream,
2055        fastcgi_next_upstream, scgi_next_upstream и uwsgi_next_upstream.
2056 
2057     *) Добавление: директивы allow и deny теперь поддерживают unix domain
2058        сокеты.
2059 
2060     *) Исправление: nginx не собирался с модулем ngx_mail_ssl_module, но без
2061        модуля ngx_http_ssl_module; ошибка появилась в 1.3.14.
2062 
2063     *) Исправление: в директиве proxy_set_body.
2064        Спасибо Lanshun Zhou.
2065 
2066     *) Исправление: в директиве lingering_time.
2067        Спасибо Lanshun Zhou.
2068 
2069     *) Исправление: параметр fail_timeout директивы server в блоке upstream
2070        мог не работать, если использовался параметр max_fails; ошибка
2071        появилась в 1.3.0.
2072 
2073     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2074        если использовалась директива ssl_stapling.
2075        Спасибо Piotr Sikora.
2076 
2077     *) Исправление: в почтовом прокси-сервере.
2078        Спасибо Filipe Da Silva.
2079 
2080     *) Исправление: nginx/Windows мог перестать принимать соединения, если
2081        использовалось несколько рабочих процессов.
2082 
2083 
2084 Изменения в nginx 1.5.0                                           07.05.2013
2085 
2086     *) Безопасность: при обработке специально созданного запроса мог
2087        перезаписываться стек рабочего процесса, что могло приводить к
2088        выполнению произвольного кода (CVE-2013-2028); ошибка появилась в
2089        1.3.9.
2090        Спасибо Greg MacManus, iSIGHT Partners Labs.
2091 
2092 
2093 Изменения в nginx 1.4.0                                           24.04.2013
2094 
2095     *) Исправление: nginx не собирался с модулем ngx_http_perl_module, если
2096        использовался параметр --with-openssl; ошибка появилась в 1.3.16.
2097 
2098     *) Исправление: в работе с телом запроса из модуля ngx_http_perl_module;
2099        ошибка появилась в 1.3.9.
2100 
2101 
2102 Изменения в nginx 1.3.16                                          16.04.2013
2103 
2104     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2105        если использовались подзапросы; ошибка появилась в 1.3.9.
2106 
2107     *) Исправление: директива tcp_nodelay вызывала ошибку при проксировании
2108        WebSocket-соединений в unix domain сокет.
2109 
2110     *) Исправление: переменная $upstream_response_length возвращала значение
2111        "0", если не использовалась буферизация.
2112        Спасибо Piotr Sikora.
2113 
2114     *) Исправление: в методах обработки соединений eventport и /dev/poll.
2115 
2116 
2117 Изменения в nginx 1.3.15                                          26.03.2013
2118 
2119     *) Изменение: открытие и закрытие соединения без отправки в нём
2120        каких-либо данных больше не записывается в access_log с кодом ошибки
2121        400.
2122 
2123     *) Добавление: модуль ngx_http_spdy_module.
2124        Спасибо Automattic за спонсирование разработки.
2125 
2126     *) Добавление: директивы limit_req_status и limit_conn_status.
2127        Спасибо Nick Marden.
2128 
2129     *) Добавление: директива image_filter_interlace.
2130        Спасибо Ивану Боброву.
2131 
2132     *) Добавление: переменная $connections_waiting в модуле
2133        ngx_http_stub_status_module.
2134 
2135     *) Добавление: теперь почтовый прокси-сервер поддерживает IPv6-бэкенды.
2136 
2137     *) Исправление: при повторной отправке запроса на бэкенд тело запроса
2138        могло передаваться неправильно; ошибка появилась в 1.3.9.
2139        Спасибо Piotr Sikora.
2140 
2141     *) Исправление: в директиве client_body_in_file_only; ошибка появилась в
2142        1.3.9.
2143 
2144     *) Исправление: ответы могли зависать, если использовались подзапросы и
2145        при обработке подзапроса происходила DNS-ошибка.
2146        Спасибо Lanshun Zhou.
2147 
2148     *) Исправление: в процедуре учёта использования бэкендов.
2149 
2150 
2151 Изменения в nginx 1.3.14                                          05.03.2013
2152 
2153     *) Добавление: переменные $connections_active, $connections_reading и
2154        $connections_writing в модуле ngx_http_stub_status_module.
2155 
2156     *) Добавление: поддержка WebSocket-соединений в модулях
2157        ngx_http_uwsgi_module и ngx_http_scgi_module.
2158 
2159     *) Исправление: в обработке виртуальных серверов при использовании SNI.
2160 
2161     *) Исправление: при использовании директивы "ssl_session_cache shared"
2162        новые сессии могли не сохраняться, если заканчивалось место в
2163        разделяемой памяти.
2164        Спасибо Piotr Sikora.
2165 
2166     *) Исправление: несколько заголовков X-Forwarded-For обрабатывались
2167        неправильно.
2168        Спасибо Neal Poole за спонсирование разработки.
2169 
2170     *) Исправление: в модуле ngx_http_mp4_module.
2171        Спасибо Gernot Vormayr.
2172 
2173 
2174 Изменения в nginx 1.3.13                                          19.02.2013
2175 
2176     *) Изменение: теперь для сборки по умолчанию используется компилятор с
2177        именем "cc".
2178 
2179     *) Добавление: поддержка проксирования WebSocket-соединений.
2180        Спасибо Apcera и CloudBees за спонсирование разработки.
2181 
2182     *) Добавление: директива auth_basic_user_file поддерживает шифрование
2183        паролей методом "{SHA}".
2184        Спасибо Louis Opter.
2185 
2186 
2187 Изменения в nginx 1.3.12                                          05.02.2013
2188 
2189     *) Добавление: директивы proxy_bind, fastcgi_bind, memcached_bind,
2190        scgi_bind и uwsgi_bind поддерживают переменные.
2191 
2192     *) Добавление: переменные $pipe, $request_length, $time_iso8601 и
2193        $time_local теперь можно использовать не только в директиве
2194        log_format.
2195        Спасибо Kiril Kalchev.
2196 
2197     *) Добавление: поддержка IPv6 в модуле ngx_http_geoip_module.
2198        Спасибо Gregor Kališnik.
2199 
2200     *) Исправление: директива proxy_method работала неверно, если была
2201        указана на уровне http.
2202 
2203     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2204        если использовался resolver и метод poll.
2205 
2206     *) Исправление: nginx мог нагружать процессор во время SSL handshake с
2207        бэкендом при использовании методов обработки соединений select, poll
2208        и /dev/poll.
2209 
2210     *) Исправление: ошибка "[crit] SSL_write() failed (SSL:)".
2211 
2212     *) Исправление: в директиве client_body_in_file_only; ошибка появилась в
2213        1.3.9.
2214 
2215     *) Исправление: в директиве fastcgi_keep_conn.
2216 
2217 
2218 Изменения в nginx 1.3.11                                          10.01.2013
2219 
2220     *) Исправление: при записи в лог мог происходить segmentation fault;
2221        ошибка появилась в 1.3.10.
2222 
2223     *) Исправление: директива proxy_pass не работала с IP-адресами без
2224        явного указания порта; ошибка появилась в 1.3.10.
2225 
2226     *) Исправление: на старте или во время переконфигурации происходил
2227        segmentation fault, если директива keepalive была указана несколько
2228        раз в одном блоке upstream.
2229 
2230     *) Исправление: параметр default директивы geo не определял значение по
2231        умолчанию для IPv6-адресов.
2232 
2233 
2234 Изменения в nginx 1.3.10                                          25.12.2012
2235 
2236     *) Изменение: для указанных в конфигурационном файле доменных имён
2237        теперь используются не только IPv4, но и IPv6 адреса.
2238 
2239     *) Изменение: теперь при использовании директивы include с маской на
2240        Unix-системах включаемые файлы сортируются в алфавитном порядке.
2241 
2242     *) Изменение: директива add_header добавляет строки в ответы с кодом
2243        201.
2244 
2245     *) Добавление: директива geo теперь поддерживает IPv6 адреса в формате
2246        CIDR.
2247 
2248     *) Добавление: параметры flush и gzip в директиве access_log.
2249 
2250     *) Добавление: директива auth_basic поддерживает переменные.
2251 
2252     *) Исправление: nginx в некоторых случаях не собирался с модулем
2253        ngx_http_perl_module.
2254 
2255     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2256        если использовался модуль ngx_http_xslt_module.
2257 
2258     *) Исправление: nginx мог не собираться на MacOSX.
2259        Спасибо Piotr Sikora.
2260 
2261     *) Исправление: при использовании директивы limit_rate с большими
2262        значениями скорости на 32-битных системах ответ мог возвращаться не
2263        целиком.
2264        Спасибо Алексею Антропову.
2265 
2266     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2267        если использовалась директива if.
2268        Спасибо Piotr Sikora.
2269 
2270     *) Исправление: ответ "100 Continue" выдавался вместе с ответом "413
2271        Request Entity Too Large".
2272 
2273     *) Исправление: директивы image_filter, image_filter_jpeg_quality и
2274        image_filter_sharpen могли наследоваться некорректно.
2275        Спасибо Ивану Боброву.
2276 
2277     *) Исправление: при использовании директивы auth_basic под Linux могли
2278        возникать ошибки "crypt_r() failed".
2279 
2280     *) Исправление: в обработке backup-серверов.
2281        Спасибо Thomas Chen.
2282 
2283     *) Исправление: при проксировании HEAD-запросов мог возвращаться
2284        некорректный ответ, если использовалась директива gzip.
2285 
2286 
2287 Изменения в nginx 1.3.9                                           27.11.2012
2288 
2289     *) Добавление: поддержка chunked transfer encoding при получении тела
2290        запроса.
2291 
2292     *) Добавление: переменные $request_time и $msec теперь можно
2293        использовать не только в директиве log_format.
2294 
2295     *) Исправление: cache manager и cache loader могли не запускаться, если
2296        использовалось более 512 listen-сокетов.
2297 
2298     *) Исправление: в модуле ngx_http_dav_module.
2299 
2300 
2301 Изменения в nginx 1.3.8                                           30.10.2012
2302 
2303     *) Добавление: параметр optional_no_ca директивы ssl_verify_client.
2304        Спасибо Михаилу Казанцеву и Eric O'Connor.
2305 
2306     *) Добавление: переменные $bytes_sent, $connection и
2307        $connection_requests теперь можно использовать не только в директиве
2308        log_format.
2309        Спасибо Benjamin Grössing.
2310 
2311     *) Добавление: параметр auto директивы worker_processes.
2312 
2313     *) Исправление: сообщения "cache file ... has md5 collision".
2314 
2315     *) Исправление: в модуле ngx_http_gunzip_filter_module.
2316 
2317     *) Исправление: в директиве ssl_stapling.
2318 
2319 
2320 Изменения в nginx 1.3.7                                           02.10.2012
2321 
2322     *) Добавление: поддержка OCSP stapling.
2323        Спасибо Comodo, DigiCert и GlobalSign за спонсирование разработки.
2324 
2325     *) Добавление: директива ssl_trusted_certificate.
2326 
2327     *) Добавление: теперь resolver случайным образом меняет порядок
2328        возвращаемых закэшированных адресов.
2329        Спасибо Антону Жулину.
2330 
2331     *) Исправление: совместимость с OpenSSL 0.9.7.
2332 
2333 
2334 Изменения в nginx 1.3.6                                           12.09.2012
2335 
2336     *) Добавление: модуль ngx_http_gunzip_filter_module.
2337 
2338     *) Добавление: директива memcached_gzip_flag.
2339 
2340     *) Добавление: параметр always директивы gzip_static.
2341 
2342     *) Исправление: в директиве "limit_req"; ошибка появилась в 1.1.14.
2343        Спасибо Charles Chen.
2344 
2345     *) Исправление: nginx не собирался gcc 4.7 с оптимизацией -O2 если
2346        использовался параметр --with-ipv6.
2347 
2348 
2349 Изменения в nginx 1.3.5                                           21.08.2012
2350 
2351     *) Изменение: модуль ngx_http_mp4_module больше не отфильтровывает
2352        дорожки в форматах, отличных от H.264 и AAC.
2353 
2354     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2355        если в директиве map в качестве значений использовались переменные.
2356 
2357     *) Исправление: в рабочем процессе мог произойти segmentation fault при
2358        использовании директивы geo с параметром ranges, но без параметра
2359        default; ошибка появилась в 0.8.43.
2360        Спасибо Zhen Chen и Weibin Yao.
2361 
2362     *) Исправление: в обработке параметра командной строки -p.
2363 
2364     *) Исправление: в почтовом прокси-сервере.
2365 
2366     *) Исправление: незначительных потенциальных ошибок.
2367        Спасибо Coverity.
2368 
2369     *) Исправление: nginx/Windows не собирался с Visual Studio 2005 Express.
2370        Спасибо HAYASHI Kentaro.
2371 
2372 
2373 Изменения в nginx 1.3.4                                           31.07.2012
2374 
2375     *) Изменение: теперь на слушающих IPv6-сокетах параметр ipv6only включён
2376        по умолчанию.
2377 
2378     *) Добавление: поддержка компилятора Clang.
2379 
2380     *) Исправление: могли создаваться лишние слушающие сокеты.
2381        Спасибо Роману Одайскому.
2382 
2383     *) Исправление: nginx/Windows мог нагружать процессор, если при запуске
2384        рабочего процесса происходила ошибка.
2385        Спасибо Ricardo Villalobos Guevara.
2386 
2387     *) Исправление: директивы proxy_pass_header, fastcgi_pass_header,
2388        scgi_pass_header, uwsgi_pass_header, proxy_hide_header,
2389        fastcgi_hide_header, scgi_hide_header и uwsgi_hide_header могли
2390        наследоваться некорректно.
2391 
2392 
2393 Изменения в nginx 1.3.3                                           10.07.2012
2394 
2395     *) Добавление: поддержка entity tags и директива etag.
2396 
2397     *) Исправление: при использовании директивы map с параметром hostnames
2398        не игнорировалась конечная точка в исходном значении.
2399 
2400     *) Исправление: для обработки запроса мог использоваться неверный
2401        location, если переход в именованный location происходил после
2402        изменения URI с помощью директивы rewrite.
2403 
2404 
2405 Изменения в nginx 1.3.2                                           26.06.2012
2406 
2407     *) Изменение: параметр single директивы keepalive теперь игнорируется.
2408 
2409     *) Изменение: сжатие SSL теперь отключено в том числе при использовании
2410        OpenSSL старее 1.0.0.
2411 
2412     *) Добавление: директиву "ip_hash" теперь можно использовать для
2413        балансировки IPv6 клиентов.
2414 
2415     *) Добавление: переменную $status теперь можно использовать не только в
2416        директиве log_format.
2417 
2418     *) Исправление: при завершении рабочего процесса мог произойти
2419        segmentation fault, если использовалась директива resolver.
2420 
2421     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2422        если использовался модуль ngx_http_mp4_module.
2423 
2424     *) Исправление: в модуле ngx_http_mp4_module.
2425 
2426     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2427        если использовались конфликтующие имена серверов с масками.
2428 
2429     *) Исправление: на платформе ARM nginx мог аварийно завершаться по
2430        сигналу SIGBUS.
2431 
2432     *) Исправление: во время переконфигурации на HP-UX в лог записывался
2433        alert "sendmsg() failed (9: Bad file number)".
2434 
2435 
2436 Изменения в nginx 1.3.1                                           05.06.2012
2437 
2438     *) Безопасность: теперь nginx/Windows игнорирует точку в конце
2439        компонента URI и не разрешает URI, содержащие последовательность
2440        ":$".
2441        Спасибо Владимиру Кочеткову, Positive Research Center.
2442 
2443     *) Добавление: директивы proxy_pass, fastcgi_pass, scgi_pass, uwsgi_pass
2444        и директива server в блоке upstream теперь поддерживают IPv6-адреса.
2445 
2446     *) Добавление: в директиве resolver теперь можно указывать порт и
2447        задавать IPv6-адреса DNS-серверов.
2448 
2449     *) Добавление: директива least_conn в блоке upstream.
2450 
2451     *) Добавление: при использовании директивы ip_hash теперь можно задавать
2452        веса серверов.
2453 
2454     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2455        если использовалась директива image_filter; ошибка появилась в 1.3.0.
2456 
2457     *) Исправление: nginx не собирался с модулем ngx_cpp_test_module; ошибка
2458        появилась в 1.1.12.
2459 
2460     *) Исправление: доступ к переменным из SSI и встроенного перла мог не
2461        работать после переконфигурации.
2462        Спасибо Yichun Zhang.
2463 
2464     *) Исправление: в модуле ngx_http_xslt_filter_module.
2465        Спасибо Kuramoto Eiji.
2466 
2467     *) Исправление: утечки памяти при использовании переменной $geoip_org.
2468        Спасибо Денису Латыпову.
2469 
2470     *) Исправление: в директивах proxy_cookie_domain и proxy_cookie_path.
2471 
2472 
2473 Изменения в nginx 1.3.0                                           15.05.2012
2474 
2475     *) Добавление: директива debug_connection теперь поддерживает
2476        IPv6-адреса и параметр "unix:".
2477 
2478     *) Добавление: директива set_real_ip_from и параметр proxy директивы geo
2479        теперь поддерживают IPv6-адреса.
2480 
2481     *) Добавление: директивы real_ip_recursive, geoip_proxy и
2482        geoip_proxy_recursive.
2483 
2484     *) Добавление: параметр proxy_recursive директивы geo.
2485 
2486     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2487        если использовалась директива resolver.
2488 
2489     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2490        если использовались директивы fastcgi_pass, scgi_pass или uwsgi_pass
2491        и бэкенд возвращал некорректный ответ.
2492 
2493     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2494        если использовалась директива rewrite и в новых аргументах запроса в
2495        строке замены использовались переменные.
2496 
2497     *) Исправление: nginx мог нагружать процессор, если было достигнуто
2498        ограничение на количество открытых файлов.
2499 
2500     *) Исправление: при использовании директивы proxy_next_upstream с
2501        параметром http_404 nginx мог бесконечно перебирать бэкенды, если в
2502        блоке upstream был хотя бы один сервер с флагом backup.
2503 
2504     *) Исправление: при использовании директивы ip_hash установка параметра
2505        down директивы server могла приводить к ненужному перераспределению
2506        клиентов между бэкендами.
2507 
2508     *) Исправление: утечки сокетов.
2509        Спасибо Yichun Zhang.
2510 
2511     *) Исправление: в модуле ngx_http_fastcgi_module.
2512 
2513 
2514 Изменения в nginx 1.2.0                                           23.04.2012
2515 
2516     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2517        если использовалась директива try_files; ошибка появилась в 1.1.19.
2518 
2519     *) Исправление: ответ мог быть передан не полностью, если использовалось
2520        больше IOV_MAX буферов.
2521 
2522     *) Исправление: в работе параметра crop директивы image_filter.
2523        Спасибо Maxim Bublis.
2524 
2525 
2526 Изменения в nginx 1.1.19                                          12.04.2012
2527 
2528     *) Безопасность: при обработке специально созданного mp4 файла модулем
2529        ngx_http_mp4_module могли перезаписываться области памяти рабочего
2530        процесса, что могло приводить к выполнению произвольного кода
2531        (CVE-2012-2089).
2532        Спасибо Matthew Daley.
2533 
2534     *) Исправление: nginx/Windows мог завершаться аварийно.
2535        Спасибо Vincent Lee.
2536 
2537     *) Исправление: nginx нагружал процессор, если все серверы в upstream'е
2538        были помечены флагом backup.
2539 
2540     *) Исправление: директивы allow и deny могли наследоваться некорректно,
2541        если в них использовались IPv6 адреса.
2542 
2543     *) Исправление: директивы modern_browser и ancient_browser могли
2544        наследоваться некорректно.
2545 
2546     *) Исправление: таймауты могли работать некорректно на Solaris/SPARC.
2547 
2548     *) Исправление: в модуле ngx_http_mp4_module.
2549 
2550 
2551 Изменения в nginx 1.1.18                                          28.03.2012
2552 
2553     *) Изменение: теперь keepalive соединения не запрещены для Safari по
2554        умолчанию.
2555 
2556     *) Добавление: переменная $connection_requests.
2557 
2558     *) Добавление: переменные $tcpinfo_rtt, $tcpinfo_rttvar,
2559        $tcpinfo_snd_cwnd и $tcpinfo_rcv_space.
2560 
2561     *) Добавление: директива worker_cpu_affinity теперь работает на FreeBSD.
2562 
2563     *) Добавление: директивы xslt_param и xslt_string_param.
2564        Спасибо Samuel Behan.
2565 
2566     *) Исправление: в configure.
2567        Спасибо Piotr Sikora.
2568 
2569     *) Исправление: в модуле ngx_http_xslt_filter_module.
2570 
2571     *) Исправление: nginx не собирался на Debian GNU/Hurd.
2572 
2573 
2574 Изменения в nginx 1.1.17                                          15.03.2012
2575 
2576     *) Безопасность: содержимое ранее освобождённой памяти могло быть
2577        отправлено клиенту, если бэкенд возвращал специально созданный ответ.
2578        Спасибо Matthew Daley.
2579 
2580     *) Исправление: при использовании встроенного перла из SSI.
2581        Спасибо Matthew Daley.
2582 
2583     *) Исправление: в модуле ngx_http_uwsgi_module.
2584 
2585 
2586 Изменения в nginx 1.1.16                                          29.02.2012
2587 
2588     *) Изменение: ограничение на количество одновременных подзапросов
2589        поднято до 200.
2590 
2591     *) Добавление: параметр from в директиве disable_symlinks.
2592 
2593     *) Добавление: директивы return и error_page теперь могут использоваться
2594        для возврата перенаправлений с кодом 307.
2595 
2596     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2597        если использовалась директива resolver и на глобальном уровне не была
2598        задана директива error_log.
2599        Спасибо Роману Арутюняну.
2600 
2601     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2602        если использовались директивы "proxy_http_version 1.1" или
2603        "fastcgi_keep_conn on".
2604 
2605     *) Исправление: утечек памяти.
2606        Спасибо Lanshun Zhou.
2607 
2608     *) Исправление: в директиве disable_symlinks.
2609 
2610     *) Исправление: при использовании ZFS размер кэша на диске мог считаться
2611        некорректно; ошибка появилась в 1.0.1.
2612 
2613     *) Исправление: nginx не собирался компилятором icc 12.1.
2614 
2615     *) Исправление: nginx не собирался gcc на Solaris; ошибка появилась в
2616        1.1.15.
2617 
2618 
2619 Изменения в nginx 1.1.15                                          15.02.2012
2620 
2621     *) Добавление: директива disable_symlinks.
2622 
2623     *) Добавление: директивы proxy_cookie_domain и proxy_cookie_path.
2624 
2625     *) Исправление: nginx мог некорректно сообщать об ошибке "upstream
2626        prematurely closed connection" вместо "upstream sent too big header".
2627        Спасибо Feibo Li.
2628 
2629     *) Исправление: nginx не собирался с модулем ngx_http_perl_module, если
2630        использовался параметр --with-openssl.
2631 
2632     *) Исправление: количество внутренних перенаправлений в именованные
2633        location'ы не ограничивалось.
2634 
2635     *) Исправление: вызов $r->flush() несколько раз подряд мог приводить к
2636        ошибкам в модуле ngx_http_gzip_filter_module.
2637 
2638     *) Исправление: при использовании директивы proxy_store с
2639        SSI-подзапросами временные файлы могли не удаляться.
2640 
2641     *) Исправление: в некоторых случаях некэшируемые переменные (такие, как
2642        $args) возвращали старое пустое закэшированное значение.
2643 
2644     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2645        если одновременно создавалось слишком много SSI-подзапросов; ошибка
2646        появилась в 0.7.25.
2647 
2648 
2649 Изменения в nginx 1.1.14                                          30.01.2012
2650 
2651     *) Добавление: теперь можно указать несколько ограничений limit_req
2652        одновременно.
2653 
2654     *) Исправление: в обработке ошибок при соединении с бэкендом.
2655        Спасибо Piotr Sikora.
2656 
2657     *) Исправление: в обработке ошибок при использовании AIO на FreeBSD.
2658 
2659     *) Исправление: в инициализации библиотеки OpenSSL.
2660 
2661     *) Исправление: директивы proxy_redirect могли наследоваться
2662        некорректно.
2663 
2664     *) Исправление: утечки памяти при переконфигурации, если использовалась
2665        директива pcre_jit.
2666 
2667 
2668 Изменения в nginx 1.1.13                                          16.01.2012
2669 
2670     *) Добавление: параметры TLSv1.1 и TLSv1.2 в директиве ssl_protocols.
2671 
2672     *) Исправление: параметры директивы limit_req наследовались некорректно;
2673        ошибка появилась в 1.1.12.
2674 
2675     *) Исправление: директива proxy_redirect некорректно обрабатывала
2676        заголовок Refresh при использовании регулярных выражений.
2677 
2678     *) Исправление: директива proxy_cache_use_stale с параметром error не
2679        возвращала ответ из кэша, если все бэкенды были признаны
2680        неработающими.
2681 
2682     *) Исправление: директива worker_cpu_affinity могла не работать.
2683 
2684     *) Исправление: nginx не собирался на Solaris; ошибка появилась в
2685        1.1.12.
2686 
2687     *) Исправление: в модуле ngx_http_mp4_module.
2688 
2689 
2690 Изменения в nginx 1.1.12                                          26.12.2011
2691 
2692     *) Изменение: после перенаправления запроса с помощью директивы
2693        error_page директива proxy_pass без URI теперь использует изменённый
2694        URI.
2695        Спасибо Lanshun Zhou.
2696 
2697     *) Добавление: директивы proxy/fastcgi/scgi/uwsgi_cache_lock,
2698        proxy/fastcgi/scgi/uwsgi_cache_lock_timeout.
2699 
2700     *) Добавление: директива pcre_jit.
2701 
2702     *) Добавление: SSI команда if поддерживает выделения в регулярных
2703        выражениях.
2704 
2705     *) Исправление: SSI команда if не работала внутри команды block.
2706 
2707     *) Исправление: директивы limit_conn_log_level и limit_req_log_level
2708        могли не работать.
2709 
2710     *) Исправление: директива limit_rate не позволяла передавать на полной
2711        скорости, даже если был указан очень большой лимит.
2712 
2713     *) Исправление: директива sendfile_max_chunk не работала, если
2714        использовалась директива limit_rate.
2715 
2716     *) Исправление: если в директиве proxy_pass использовались переменные и
2717        не был указан URI, всегда использовался URI исходного запроса.
2718 
2719     *) Исправление: после перенаправления запроса с помощью директивы
2720        try_files директива proxy_pass без URI могла использовать URI
2721        исходного запроса.
2722        Спасибо Lanshun Zhou.
2723 
2724     *) Исправление: в модуле ngx_http_scgi_module.
2725 
2726     *) Исправление: в модуле ngx_http_mp4_module.
2727 
2728     *) Исправление: nginx не собирался на Solaris; ошибка появилась в 1.1.9.
2729 
2730 
2731 Изменения в nginx 1.1.11                                          12.12.2011
2732 
2733     *) Добавление: параметр so_keepalive в директиве listen.
2734        Спасибо Всеволоду Стахову.
2735 
2736     *) Добавление: параметр if_not_empty в директивах
2737        fastcgi/scgi/uwsgi_param.
2738 
2739     *) Добавление: переменная $https.
2740 
2741     *) Добавление: директива proxy_redirect поддерживает переменные в первом
2742        параметре.
2743 
2744     *) Добавление: директива proxy_redirect поддерживает регулярные
2745        выражения.
2746 
2747     *) Исправление: переменная $sent_http_cache_control могла содержать
2748        неверное значение при использовании директивы expires.
2749        Спасибо Yichun Zhang.
2750 
2751     *) Исправление: директива read_ahead могла не работать при использовании
2752        совместно с try_files и open_file_cache.
2753 
2754     *) Исправление: если в параметре inactive директивы proxy_cache_path
2755        было указано малое время, в рабочем процессе мог произойти
2756        segmentation fault.
2757 
2758     *) Исправление: ответы из кэша могли зависать.
2759 
2760 
2761 Изменения в nginx 1.1.10                                          30.11.2011
2762 
2763     *) Исправление: при использовании AIO на Linux в рабочем процессе
2764        происходил segmentation fault; ошибка появилась в 1.1.9.
2765 
2766 
2767 Изменения в nginx 1.1.9                                           28.11.2011
2768 
2769     *) Изменение: теперь двойные кавычки экранируется при выводе
2770        SSI-командой echo.
2771        Спасибо Зауру Абасмирзоеву.
2772 
2773     *) Добавление: параметр valid в директиве resolver. По умолчанию теперь
2774        используется TTL, возвращённый DNS-сервером.
2775        Спасибо Кириллу Коринскому.
2776 
2777     *) Исправление: nginx мог перестать отвечать, если рабочий процесс
2778        завершался аварийно.
2779 
2780     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2781        если использовалось SNI; ошибка появилась в 1.1.2.
2782 
2783     *) Исправление: в директиве keepalive_disable; ошибка появилась в 1.1.8.
2784        Спасибо Александру Усову.
2785 
2786     *) Исправление: сигнал SIGWINCH переставал работать после первого
2787        обновления исполняемого файла; ошибка появилась в 1.1.1.
2788 
2789     *) Исправление: теперь ответы бэкендов, длина которых не соответствует
2790        заголовку Content-Length, не кэширутся.
2791 
2792     *) Исправление: в директиве scgi_param при использовании составных
2793        параметров.
2794 
2795     *) Исправление: в методе epoll.
2796        Спасибо Yichun Zhang.
2797 
2798     *) Исправление: в модуле ngx_http_flv_module.
2799        Спасибо Piotr Sikora.
2800 
2801     *) Исправление: в модуле ngx_http_mp4_module.
2802 
2803     *) Исправление: теперь nginx понимает IPv6-адреса в строке запроса и в
2804        заголовке Host.
2805 
2806     *) Исправление: директивы add_header и expires не работали для ответов с
2807        кодом 206, если запрос проксировался.
2808 
2809     *) Исправление: nginx не собирался на FreeBSD 10.
2810 
2811     *) Исправление: nginx не собирался на AIX.
2812 
2813 
2814 Изменения в nginx 1.1.8                                           14.11.2011
2815 
2816     *) Изменение: модуль ngx_http_limit_zone_module переименован в
2817        ngx_http_limit_conn_module.
2818 
2819     *) Изменение: директива limit_zone заменена директивой limit_conn_zone с
2820        новым синтаксисом.
2821 
2822     *) Добавление: поддержка ограничения по нескольким limit_conn на одном
2823        уровне.
2824 
2825     *) Добавление: директива image_filter_sharpen.
2826 
2827     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2828        если resolver получил большой DNS-ответ.
2829        Спасибо Ben Hawkes.
2830 
2831     *) Исправление: в вычислении ключа для кэширования, если использовалась
2832        внутренняя реализация MD5; ошибка появилась в 1.0.4.
2833 
2834     *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в
2835        заголовке запроса клиента могли передаваться бэкенду при кэшировании;
2836        или не передаваться при выключенном кэшировании, если кэширование
2837        было включено в другой части конфигурации.
2838 
2839     *) Исправление: модуль ngx_http_mp4_module выдавал неверную строку
2840        "Content-Length" в заголовке ответа, использовался аргумент start.
2841        Спасибо Piotr Sikora.
2842 
2843 
2844 Изменения в nginx 1.1.7                                           31.10.2011
2845 
2846     *) Добавление: поддержка нескольких DNS серверов в директиве "resolver".
2847        Спасибо Кириллу Коринскому.
2848 
2849     *) Исправление: на старте или во время переконфигурации происходил
2850        segmentation fault, если директива ssl использовалась на уровне http
2851        и не был указан ssl_certificate.
2852 
2853     *) Исправление: уменьшено потребление памяти при проксировании больших
2854        файлов, если они буферизировались на диск.
2855 
2856     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2857        если использовалась директива "proxy_http_version 1.1".
2858 
2859     *) Исправление: в директиве "expires @time".
2860 
2861 
2862 Изменения в nginx 1.1.6                                           17.10.2011
2863 
2864     *) Изменение во внутреннем API: теперь при внутреннем редиректе в
2865        именованный location контексты модулей очищаются.
2866        По запросу Yichun Zhang.
2867 
2868     *) Изменение: теперь если сервер, описанный в блоке upstream, был
2869        признан неработающим, то после истечения fail_timeout на него будет
2870        отправлен только один запрос; сервер будет считаться работающим, если
2871        успешно ответит на этот запрос.
2872 
2873     *) Изменение: теперь символы 0x7F-0xFF в access_log записываются в виде
2874        \xXX.
2875 
2876     *) Добавление: директивы "proxy/fastcgi/scgi/uwsgi_ignore_headers"
2877        теперь поддерживают значения X-Accel-Limit-Rate, X-Accel-Buffering и
2878        X-Accel-Charset.
2879 
2880     *) Добавление: уменьшение потребления памяти при использовании SSL.
2881 
2882     *) Исправление: некоторые UTF-8 символы обрабатывались неправильно.
2883        Спасибо Алексею Куцу.
2884 
2885     *) Исправление: директивы модуля ngx_http_rewrite_module, заданные на
2886        уровне server, применялись повторно, если для запроса не находилось
2887        ни одного location'а.
2888 
2889     *) Исправление: при использовании "aio sendfile" могла происходить
2890        утечка сокетов.
2891 
2892     *) Исправление: при использовании файлового AIO соединения с быстрыми
2893        клиентами могли быть закрыты по истечению send_timeout.
2894 
2895     *) Исправление: в модуле ngx_http_autoindex_module.
2896 
2897     *) Исправление: модуль ngx_http_mp4_module не поддерживал перемотку на
2898        32-битных платформах.
2899 
2900 
2901 Изменения в nginx 1.1.5                                           05.10.2011
2902 
2903     *) Добавление: директивы uwsgi_buffering и scgi_buffering.
2904        Спасибо Peter Smit.
2905 
2906     *) Исправление: при использовании proxy_cache_bypass могли быть
2907        закэшированы некэшируемые ответы.
2908        Спасибо John Ferlito.
2909 
2910     *) Исправление: в модуле ngx_http_proxy_module при работе с бэкендами по
2911        HTTP/1.1.
2912 
2913     *) Исправление: закэшированные ответы с пустым телом возвращались
2914        некорректно; ошибка появилась в 0.8.31.
2915 
2916     *) Исправление: ответы с кодом 201 модуля ngx_http_dav_module были
2917        некорректны; ошибка появилась в 0.8.32.
2918 
2919     *) Исправление: в директиве return.
2920 
2921     *) Исправление: при использовании директивы "ssl_session_cache builtin"
2922        происходил segmentation fault; ошибка появилась в 1.1.1.
2923 
2924 
2925 Изменения в nginx 1.1.4                                           20.09.2011
2926 
2927     *) Добавление: модуль ngx_http_upstream_keepalive.
2928 
2929     *) Добавление: директива proxy_http_version.
2930 
2931     *) Добавление: директива fastcgi_keep_conn.
2932 
2933     *) Добавление: директива worker_aio_requests.
2934 
2935     *) Исправление: если nginx был собран с файловым AIO, он не мог
2936        запускаться на Linux без поддержки AIO.
2937 
2938     *) Исправление: в обработке ошибок при работе с Linux AIO.
2939        Спасибо Hagai Avrahami.
2940 
2941     *) Исправление: уменьшено потребление памяти для долгоживущих запросов.
2942 
2943     *) Исправление: модуль ngx_http_mp4_module не поддерживал 64-битный
2944        MP4-атом co64.
2945 
2946 
2947 Изменения в nginx 1.1.3                                           14.09.2011
2948 
2949     *) Добавление: модуль ngx_http_mp4_module.
2950 
2951     *) Исправление: в Linux AIO, используемым совместно с open_file_cache.
2952 
2953     *) Исправление: open_file_cache не обновлял информацию о файле, если
2954        файл был изменён не атомарно.
2955 
2956     *) Исправление: nginx не собирался на MacOSX 10.7.
2957 
2958 
2959 Изменения в nginx 1.1.2                                           05.09.2011
2960 
2961     *) Изменение: теперь, если суммарный размер всех диапазонов больше
2962        размера исходного ответа, то nginx возвращает только исходный ответ,
2963        не обрабатывая диапазоны.
2964 
2965     *) Добавление: директива max_ranges.
2966 
2967     *) Исправление: директивы ssl_verify_client, ssl_verify_depth и
2968        ssl_prefer_server_cipher могли работать некорректно, если
2969        использовался SNI.
2970 
2971     *) Исправление: в директивах proxy/fastcgi/scgi/
2972        uwsgi_ignore_client_abort.
2973 
2974 
2975 Изменения в nginx 1.1.1                                           22.08.2011
2976 
2977     *) Изменение: теперь загрузчик кэша за каждую итерацию либо обрабатывает
2978        число файлов, указанное в параметре load_files, либо работает не
2979        дольше времени, указанного в параметре loader_threshold.
2980 
2981     *) Изменение: SIGWINCH сигнал теперь работает только в режиме демона.
2982 
2983     *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX
2984        на Solaris.
2985        Спасибо Денису Иванову.
2986 
2987     *) Добавление: теперь на NetBSD поддерживаются accept фильтры.
2988 
2989     *) Исправление: nginx не собирался на Linux 3.0.
2990 
2991     *) Исправление: в некоторых случаях nginx не использовал сжатие; ошибка
2992        появилась в 1.1.0.
2993 
2994     *) Исправление: обработка тела запроса могла быть неверной, если клиент
2995        использовал pipelining.
2996 
2997     *) Исправление: в директиве request_body_in_single_buf.
2998 
2999     *) Исправление: в директивах proxy_set_body и proxy_pass_request_body
3000        при использовании SSL-соединения с бэкендом.
3001 
3002     *) Исправление: nginx нагружал процессор, если все серверы в upstream'е
3003        были помечены флагом down.
3004 
3005     *) Исправление: при переконфигурации мог произойти segmentation fault,
3006        если в предыдущей конфигурации был определён, но не использовался
3007        ssl_session_cache.
3008 
3009     *) Исправление: при использовании большого количества backup-серверов в
3010        рабочем процессе мог произойти segmentation fault.
3011 
3012     *) Исправление: при использовании директив fastcgi/scgi/uwsgi_param со
3013        значениями, начинающимися со строки "HTTP_", в рабочем процессе мог
3014        произойти segmentation fault; ошибка появилась в 0.8.40.
3015 
3016 
3017 Изменения в nginx 1.1.0                                           01.08.2011
3018 
3019     *) Добавление: уменьшение времени работы загрузчика кэша.
3020 
3021     *) Добавление: параметры loader_files, loader_sleep и loader_threshold
3022        директив proxy/fastcgi/scgi/uwsgi_cache_path.
3023 
3024     *) Добавление: уменьшение времени загрузки конфигураций с большим
3025        количеством HTTPS серверов.
3026 
3027     *) Добавление: теперь nginx поддерживает шифры с обменом ECDHE-ключами.
3028        Спасибо Adrian Kotelba.
3029 
3030     *) Добавление: директива lingering_close.
3031        Спасибо Максиму Дунину.
3032 
3033     *) Исправление: закрытия соединения для pipelined-запросов.
3034        Спасибо Максиму Дунину.
3035 
3036     *) Исправление: nginx не запрещал сжатие при получении значения
3037        "gzip;q=0" в строке "Accept-Encoding" в заголовке запроса клиента.
3038 
3039     *) Исправление: таймаута при небуферизированном проксировании.
3040        Спасибо Максиму Дунину.
3041 
3042     *) Исправление: утечки памяти при использовании переменных в директиве
3043        proxy_pass при работе с бэкендом по HTTPS.
3044        Спасибо Максиму Дунину.
3045 
3046     *) Исправление: в проверке параметра директивы proxy_pass, заданного
3047        переменными.
3048        Спасибо Lanshun Zhou.
3049 
3050     *) Исправление: SSL не работал на QNX.
3051        Спасибо Максиму Дунину.
3052 
3053     *) Исправление: SSL модули не собирались gcc 4.6 без параметра
3054        --with-debug.
3055 
3056 
3057 Изменения в nginx 1.0.5                                           19.07.2011
3058 
3059     *) Изменение: теперь по умолчанию используются следующие шифры SSL:
3060        "HIGH:!aNULL:!MD5".
3061        Спасибо Rob Stradling.
3062 
3063     *) Добавление: директивы referer_hash_max_size и
3064        referer_hash_bucket_size.
3065        Спасибо Witold Filipczyk.
3066 
3067     *) Добавление: переменная $uid_reset.
3068 
3069     *) Исправление: при использовании кэширования в рабочем процессе мог
3070        произойти segmentation fault.
3071        Спасибо Lanshun Zhou.
3072 
3073     *) Исправление: при использовании кэширования рабочие процессы могли
3074        зациклиться во время переконфигурации; ошибка появилась в 0.8.48.
3075        Спасибо Максиму Дунину.
3076 
3077     *) Исправление: сообщения "stalled cache updating".
3078        Спасибо Максиму Дунину.
3079 
3080 
3081 Изменения в nginx 1.0.4                                           01.06.2011
3082 
3083     *) Изменение: теперь в регулярных выражениях в директиве map можно
3084        задать чувствительность к регистру с помощью префиксов "~" и "~*".
3085 
3086     *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX
3087        на Linux.
3088        Спасибо Денису Латыпову.
3089 
3090     *) Исправление: сообщения "stalled cache updating".
3091 
3092     *) Исправление: nginx не собирался с параметром
3093        --without-http_auth_basic_module; ошибка появилась в 1.0.3.
3094 
3095 
3096 Изменения в nginx 1.0.3                                           25.05.2011
3097 
3098     *) Добавление: директива auth_basic_user_file поддерживает шифрование
3099        пароля методами "$apr1", "{PLAIN}" и "{SSHA}".
3100        Спасибо Максиму Дунину.
3101 
3102     *) Добавление: директива geoip_org и переменная $geoip_org.
3103        Спасибо Александру Ускову, Arnaud Granal и Денису Латыпову.
3104 
3105     *) Добавление: модули ngx_http_geo_module и ngx_http_geoip_module
3106        поддерживают адреса IPv4, отображённые на IPv6 адреса.
3107 
3108     *) Исправление: при проверке адреса IPv4, отображённого на адрес IPv6, в
3109        рабочем процессе происходил segmentation fault, если директивы access
3110        или deny были определены только для адресов IPv6; ошибка появилась в
3111        0.8.22.
3112 
3113     *) Исправление: закэшированный ответ мог быть испорчен, если значения
3114        директив proxy/fastcgi/scgi/uwsgi_cache_bypass и proxy/fastcgi/scgi/
3115        uwsgi_no_cache были разными; ошибка появилась в 0.8.46.
3116 
3117 
3118 Изменения в nginx 1.0.2                                           10.05.2011
3119 
3120     *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX.
3121 
3122     *) Исправление: в работе параметра rotate директивы image_filter.
3123        Спасибо Adam Bocim.
3124 
3125     *) Исправление: nginx не собирался на Solaris; ошибка появилась в 1.0.1.
3126 
3127 
3128 Изменения в nginx 1.0.1                                           03.05.2011
3129 
3130     *) Изменение: теперь директива split_clients использует алгоритм
3131        MurmurHash2 из-за лучшего распределения.
3132        Спасибо Олегу Мамонтову.
3133 
3134     *) Изменение: теперь длинные строки, начинающиеся с нуля, не считаются
3135        ложными значениями.
3136        Спасибо Максиму Дунину.
3137 
3138     *) Изменение: теперь по умолчанию nginx использует значение 511 для
3139        listen backlog на Linux.
3140 
3141     *) Добавление: переменные $upstream_... можно использовать в SSI и
3142        перловом модулях.
3143 
3144     *) Исправление: теперь nginx лучше ограничивает размер кэша на диске.
3145        Спасибо Олегу Мамонтову.
3146 
3147     *) Исправление: при парсинге неправильного IPv4 адреса мог произойти
3148        segmentation fault; ошибка появилась в 0.8.22.
3149        Спасибо Максиму Дунину.
3150 
3151     *) Исправление: nginx не собирался gcc 4.6 без параметра --with-debug.
3152 
3153     *) Исправление: nginx не собирался на Solaris 9 и более ранних; ошибка
3154        появилась в 0.9.3.
3155        Спасибо Dagobert Michelsen.
3156 
3157     *) Исправление: переменная $request_time имела неверные значения, если
3158        использовались подзапросы; ошибка появилась в 0.8.47.
3159        Спасибо Игорю А. Валькову.
3160 
3161 
3162 Изменения в nginx 1.0.0                                           12.04.2011
3163 
3164     *) Исправление: cache manager мог нагружать процессор после
3165        переконфигурации.
3166        Спасибо Максиму Дунину.
3167 
3168     *) Исправление: директива "image_filter crop" неправильно работала в
3169        сочетании с "image_filter rotate 180".
3170 
3171     *) Исправление: директива "satisfy any" запрещала выдачу
3172        пользовательской страницы для 401 кода.
3173 
3174 
3175 Изменения в nginx 0.9.7                                           04.04.2011
3176 
3177     *) Добавление: теперь соединения в состоянии keepalive могут быть
3178        закрыты преждевременно, если у воркера нет свободных соединений.
3179        Спасибо Максиму Дунину.
3180 
3181     *) Добавление: параметр rotate директивы image_filter.
3182        Спасибо Adam Bocim.
3183 
3184     *) Исправление: ситуации, когда бэкенд в директивах fastcgi_pass,
3185        scgi_pass или uwsgi_pass задан выражением и ссылается на описанный
3186        upstream.
3187 
3188 
3189 Изменения в nginx 0.9.6                                           21.03.2011
3190 
3191     *) Добавление: директива map поддерживает регулярные выражения в
3192        качестве значения первого параметра.
3193 
3194     *) Добавление: переменная $time_iso8601 для access_log.
3195        Спасибо Michael Lustfield.
3196 
3197 
3198 Изменения в nginx 0.9.5                                           21.02.2011
3199 
3200     *) Изменение: теперь по умолчанию nginx использует значение -1 для
3201        listen backlog на Linux.
3202        Спасибо Андрею Нигматулину.
3203 
3204     *) Добавление: параметр utf8 в директивах geoip_country и geoip_city.
3205        Спасибо Денису Латыпову.
3206 
3207     *) Исправление: исправление в умолчательной директиве proxy_redirect,
3208        если в директиве proxy_pass не был описан URI.
3209        Спасибо Максиму Дунину.
3210 
3211     *) Исправление: директива error_page не работала с нестандартными кодами
3212        ошибок; ошибка появилась в 0.8.53.
3213        Спасибо Максиму Дунину.
3214 
3215 
3216 Изменения в nginx 0.9.4                                           21.01.2011
3217 
3218     *) Добавление: директива server_name поддерживает переменную $hostname.
3219 
3220     *) Добавление: 494 код для ошибки "Request Header Too Large".
3221 
3222 
3223 Изменения в nginx 0.9.3                                           13.12.2010
3224 
3225     *) Исправление: если для пары IPv6-адрес:порт описан только один сервер,
3226        то выделения в регулярных выражениях в директиве server_name не
3227        работали.
3228 
3229     *) Исправление: nginx не собирался под Solaris; ошибка появилась в
3230        0.9.0.
3231 
3232 
3233 Изменения в nginx 0.9.2                                           06.12.2010
3234 
3235     *) Добавление: поддержка строки "If-Unmodified-Since" в заголовке
3236        запроса клиента.
3237 
3238     *) Изменение: использование accept(), если accept4() не реализован;
3239        ошибка появилась в 0.9.0.
3240 
3241     *) Исправление: nginx не собирался под Cygwin; ошибка появилась в 0.9.0.
3242 
3243     *) Исправление: уязвимости в OpenSSL CVE-2010-4180.
3244        Спасибо Максиму Дунину.
3245 
3246 
3247 Изменения в nginx 0.9.1                                           30.11.2010
3248 
3249     *) Исправление: директивы вида "return CODE message" не работали; ошибка
3250        появилась в 0.9.0.
3251 
3252 
3253 Изменения в nginx 0.9.0                                           29.11.2010
3254 
3255     *) Добавление: директива keepalive_disable.
3256 
3257     *) Добавление: директива map поддерживает переменные в качестве значения
3258        определяемой переменной.
3259 
3260     *) Добавление: директива map поддерживает пустые строки в качестве
3261        значения первого параметра.
3262 
3263     *) Добавление: директива map поддерживает выражения в первом параметре.
3264 
3265     *) Добавление: страница руководства nginx(8).
3266        Спасибо Сергею Осокину.
3267 
3268     *) Добавление: поддержка accept4() в Linux.
3269        Спасибо Simon Liu.
3270 
3271     *) Изменение: устранение предупреждения линкера о "sys_errlist" и
3272        "sys_nerr" под Linux; предупреждение появилось в 0.8.35.
3273 
3274     *) Исправление: при использовании директивы auth_basic в рабочем
3275        процессе мог произойти segmentation fault.
3276        Спасибо Михаилу Лалетину.
3277 
3278     *) Исправление: совместимость с модулем ngx_http_eval_module; ошибка
3279        появилась в 0.8.42.
3280 
3281 
3282 Изменения в nginx 0.8.53                                          18.10.2010
3283 
3284     *) Добавление: теперь директива error_page позволяет менять код статуса
3285        у редиректа.
3286 
3287     *) Добавление: директива gzip_disable поддерживает специальную маску
3288        degradation.
3289 
3290     *) Исправление: при использовании файлового AIO могла происходить утечка
3291        сокетов.
3292        Спасибо Максиму Дунину.
3293 
3294     *) Исправление: если в первом сервере не была описана директива listen и
3295        нигде явно не описан сервер по умолчанию, то сервером по умолчанию
3296        становился следующий сервер с директивой listen; ошибка появилась в
3297        0.8.21.
3298 
3299 
3300 Изменения в nginx 0.8.52                                          28.09.2010
3301 
3302     *) Исправление: nginx использовал режим SSL для listen сокета, если для
3303        него был установлен любой listen-параметр; ошибка появилась в 0.8.51.
3304 
3305 
3306 Изменения в nginx 0.8.51                                          27.09.2010
3307 
3308     *) Изменение: директива secure_link_expires упразднена.
3309 
3310     *) Изменение: уровень логгирования ошибок resolver'а понижен с уровня
3311        alert на error.
3312 
3313     *) Добавление: теперь параметр "ssl" listen-сокета можно устанавливать
3314        несколько раз.
3315 
3316 
3317 Изменения в nginx 0.8.50                                          02.09.2010
3318 
3319     *) Добавление: директивы secure_link, secure_link_md5 и
3320        secure_link_expires модуля ngx_http_secure_link_module.
3321 
3322     *) Добавление: ключ -q.
3323        Спасибо Геннадию Махомеду.
3324 
3325     *) Исправление: при использовании кэширования рабочие процессы и могли
3326        зациклиться во время переконфигурации; ошибка появилась в 0.8.48.
3327 
3328     *) Исправление: в директиве gzip_disable.
3329        Спасибо Derrick Petzold.
3330 
3331     *) Исправление: nginx/Windows не мог посылать сигналы stop, quit,
3332        reopen, reload процессу, запущенному в другой сессии.
3333 
3334 
3335 Изменения в nginx 0.8.49                                          09.08.2010
3336 
3337     *) Добавление: директива image_filter_jpeg_quality поддерживает
3338        переменные.
3339 
3340     *) Исправление: при использовании переменной $geoip_region_name в
3341        рабочем процессе мог произойти segmentation fault; ошибка появилась в
3342        0.8.48.
3343 
3344     *) Исправление: ошибки, перехваченные error_page, кэшировались только до
3345        следующего запроса; ошибка появилась в 0.8.48.
3346 
3347 
3348 Изменения в nginx 0.8.48                                          03.08.2010
3349 
3350     *) Изменение: теперь по умолчанию директива server_name имеет значение
3351        пустое имя "".
3352        Спасибо Геннадию Махомеду.
3353 
3354     *) Изменение: теперь по умолчанию директива server_name_in_redirect
3355        имеет значение off.
3356 
3357     *) Добавление: переменные $geoip_dma_code, $geoip_area_code и
3358        $geoip_region_name.
3359        Спасибо Christine McGonagle.
3360 
3361     *) Исправление: директивы proxy_pass, fastcgi_pass, uwsgi_pass и
3362        scgi_pass не наследовались в блоки limit_except.
3363 
3364     *) Исправление: директивы proxy_cache_min_uses, fastcgi_cache_min_uses
3365        uwsgi_cache_min_uses и scgi_cache_min_uses не работали; ошибка
3366        появилась в 0.8.46.
3367 
3368     *) Исправление: директива fastcgi_split_path_info неверно использовала
3369        выделения, если в выделения попадала только часть URI.
3370        Спасибо Юрию Тарадаю и Frank Enderle.
3371 
3372     *) Исправление: директива rewrite не экранировала символ ";" при
3373        копировании из URI в аргументы.
3374        Спасибо Daisuke Murase.
3375 
3376     *) Исправление: модуль ngx_http_image_filter_module закрывал соединение,
3377        если изображение было больше размера image_filter_buffer.
3378 
3379 
3380 Изменения в nginx 0.8.47                                          28.07.2010
3381 
3382     *) Исправление: переменная $request_time имела неверные значения для
3383        подзапросов.
3384 
3385     *) Исправление: ошибки, перехваченные error_page, не кэшировались.
3386 
3387     *) Исправление: если использовался параметр max_size, то cache manager
3388        мог зациклиться; ошибка появилась в 0.8.46.
3389 
3390 
3391 Изменения в nginx 0.8.46                                          19.07.2010
3392 
3393     *) Изменение: директивы proxy_no_cache, fastcgi_no_cache, uwsgi_no_cache
3394        и scgi_no_cache теперь влияют только на сохранение закэшированного
3395        ответа.
3396 
3397     *) Добавление: директивы proxy_cache_bypass, fastcgi_cache_bypass,
3398        uwsgi_cache_bypass и scgi_cache_bypass.
3399 
3400     *) Исправление: nginx не освобождал память в keys_zone кэшей в случае
3401        ошибки работы с бэкендом: память освобождалась только по истечении
3402        времени неактивности или при недостатке памяти.
3403 
3404 
3405 Изменения в nginx 0.8.45                                          13.07.2010
3406 
3407     *) Добавление: улучшения в модуле ngx_http_xslt_filter.
3408        Спасибо Laurence Rowe.
3409 
3410     *) Исправление: ответ SSI модуля мог передаваться не полностью после
3411        команды include с параметром wait="yes"; ошибка появилась в 0.7.25.
3412        Спасибо Максиму Дунину.
3413 
3414     *) Исправление: директива listen не поддерживала параметр setfib=0.
3415 
3416 
3417 Изменения в nginx 0.8.44                                          05.07.2010
3418 
3419     *) Изменение: теперь nginx по умолчанию не кэширует ответы бэкендов, в
3420        заголовке которых есть строка "Set-Cookie".
3421 
3422     *) Добавление: директива listen поддерживает параметр setfib.
3423        Спасибо Андрею Филонову.
3424 
3425     *) Исправление: директива sub_filter могла изменять регистр букв при
3426        частичном совпадении.
3427 
3428     *) Исправление: совместимость с HP/UX.
3429 
3430     *) Исправление: совместимость с компилятором AIX xlC_r.
3431 
3432     *) Исправление: nginx считал большие пакеты SSLv2 как обычные текстовые
3433        запросы.
3434        Спасибо Miroslaw Jaworski.
3435 
3436 
3437 Изменения в nginx 0.8.43                                          30.06.2010
3438 
3439     *) Добавление: ускорение загрузки больших баз geo-диапазонов.
3440 
3441     *) Исправление: перенаправление ошибки в "location /zero {return 204;}"
3442        без изменения кода ответа оставляло тело ошибки; ошибка появилась в
3443        0.8.42.
3444 
3445     *) Исправление: nginx мог закрывать IPv6 listen сокет во время
3446        переконфигурации.
3447        Спасибо Максиму Дунину.
3448 
3449     *) Исправление: переменную $uid_set можно использовать на любой стадии
3450        обработки запроса.
3451 
3452 
3453 Изменения в nginx 0.8.42                                          21.06.2010
3454 
3455     *) Изменение: теперь nginx проверяет location'ы, заданные регулярными
3456        выражениями, если запрос полностью совпал с location'ом, заданным
3457        строкой префикса. Предыдущее поведение появилось в 0.7.1.
3458 
3459     *) Добавление: модуль ngx_http_scgi_module.
3460        Спасибо Manlio Perillo.
3461 
3462     *) Добавление: в директиве return можно добавлять текст ответа.
3463 
3464 
3465 Изменения в nginx 0.8.41                                          15.06.2010
3466 
3467     *) Безопасность: рабочий процесс nginx/Windows мог завершаться аварийно
3468        при запросе файла с неверной кодировкой UTF-8.
3469 
3470     *) Изменение: теперь nginx разрешает использовать пробелы в строке
3471        запроса.
3472 
3473     *) Исправление: директива proxy_redirect неправильно изменяла строку
3474        "Refresh" в заголовке ответа бэкенда.
3475        Спасибо Андрею Андрееву и Максиму Согину.
3476 
3477     *) Исправление: nginx не поддерживал путь без имени хоста в строке
3478        "Destination" в заголовке запроса.
3479 
3480 
3481 Изменения в nginx 0.8.40                                          07.06.2010
3482 
3483     *) Безопасность: теперь nginx/Windows игнорирует имя потока файла по
3484        умолчанию.
3485        Спасибо Jose Antonio Vazquez Gonzalez.
3486 
3487     *) Добавление: модуль ngx_http_uwsgi_module.
3488        Спасибо Roberto De Ioris.
3489 
3490     *) Добавление: директива fastcgi_param со значением, начинающимся со
3491        строки "HTTP_", изменяет строку заголовка в запросе клиента.
3492 
3493     *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в
3494        заголовке запроса клиента передавались FastCGI-серверу при
3495        кэшировании.
3496 
3497     *) Исправление: listen unix domain сокет нельзя было изменить во время
3498        переконфигурации.
3499        Спасибо Максиму Дунину.
3500 
3501 
3502 Изменения в nginx 0.8.39                                          31.05.2010
3503 
3504     *) Исправление: наследуемая директива alias неправильно работала во
3505        вложенном location'е.
3506 
3507     *) Исправление: в комбинации директив alias с переменными и try_files;
3508 
3509     *) Исправление: listen unix domain и IPv6 сокеты не наследовались во
3510        время обновления без перерыва.
3511        Спасибо Максиму Дунину.
3512 
3513 
3514 Изменения в nginx 0.8.38                                          24.05.2010
3515 
3516     *) Добавление: директивы proxy_no_cache и fastcgi_no_cache.
3517 
3518     *) Добавление: теперь при использовании переменной $scheme в директиве
3519        rewrite автоматически делается редирект.
3520        Спасибо Piotr Sikora.
3521 
3522     *) Исправление: теперь задержки в директиве limit_req соответствует
3523        описанному алгоритму.
3524        Спасибо Максиму Дунину.
3525 
3526     *) Исправление: переменную $uid_got нельзя было использовать в SSI и
3527        перловом модулях.
3528 
3529 
3530 Изменения в nginx 0.8.37                                          17.05.2010
3531 
3532     *) Добавление: модуль ngx_http_split_clients_module.
3533 
3534     *) Добавление: директива map поддерживает ключи больше 255 символов.
3535 
3536     *) Исправление: nginx игнорировал значения "private" и "no-store" в
3537        строке "Cache-Control" в заголовке ответа бэкенда.
3538 
3539     *) Исправление: параметр stub в SSI-директиве include не использовался,
3540        если пустой ответ имел код 200.
3541 
3542     *) Исправление: если проксированный или FastCGI запрос внутренне
3543        перенаправлялся в другой проксированный или FastCGI location, то в
3544        рабочем процессе мог произойти segmentation fault; ошибка появилась в
3545        0.8.33.
3546        Спасибо Yichun Zhang.
3547 
3548     *) Исправление: соединения IMAP к серверу Zimbra могло зависнуть до
3549        таймаута.
3550        Спасибо Alan Batie.
3551 
3552 
3553 Изменения в nginx 0.8.36                                          22.04.2010
3554 
3555     *) Исправление: модуль ngx_http_dav_module неправильно обрабатывал
3556        методы DELETE, COPY и MOVE для симлинков.
3557 
3558     *) Исправление: модуль SSI в подзапросах использовал закэшированные в
3559        основном запросе значения переменных $query_string, $arg_... и им
3560        подобных.
3561 
3562     *) Исправление: значение переменной повторно экранировалось после
3563        каждого вывода SSI-команды echo; ошибка появилась в 0.6.14.
3564 
3565     *) Исправление: рабочий процесс зависал при запросе файла FIFO.
3566        Спасибо Vicente Aguilar и Максиму Дунину.
3567 
3568     *) Исправление: совместимость с OpenSSL-1.0.0 на 64-битном Linux.
3569        Спасибо Максиму Дунину.
3570 
3571     *) Исправление: nginx не собирался с параметром --without-http-cache;
3572        ошибка появилась в 0.8.35.
3573 
3574 
3575 Изменения в nginx 0.8.35                                          01.04.2010
3576 
3577     *) Изменение: теперь charset-фильтр работает до SSI-фильтра.
3578 
3579     *) Добавление: директива chunked_transfer_encoding.
3580 
3581     *) Исправление: символ "&" при копировании в аргументы в правилах
3582        rewrite не экранировался.
3583 
3584     *) Исправление: nginx мог завершаться аварийно во время обработки
3585        сигнала или при использовании директивы timer_resolution на
3586        платформах, не поддерживающих методы kqueue или eventport.
3587        Спасибо George Xie и Максиму Дунину.
3588 
3589     *) Исправление: если временные файлы и постоянное место хранения
3590        располагались на разных файловых системах, то у постоянных файлов
3591        время изменения было неверным.
3592        Спасибо Максиму Дунину.
3593 
3594     *) Исправление: модуль ngx_http_memcached_module мог выдавать ошибку
3595        "memcached sent invalid trailer".
3596        Спасибо Максиму Дунину.
3597 
3598     *) Исправление: nginx не мог собрать библиотеку zlib-1.2.4 из исходных
3599        текстов.
3600        Спасибо Максиму Дунину.
3601 
3602     *) Исправление: в рабочем процессе происходил segmentation fault, если
3603        перед ответом FastCGI-сервера было много вывода в stderr; ошибка
3604        появилась в 0.8.34.
3605        Спасибо Максиму Дунину.
3606 
3607 
3608 Изменения в nginx 0.8.34                                          03.03.2010
3609 
3610     *) Исправление: nginx не поддерживал все шифры, используемые в
3611        клиентских сертификатах.
3612        Спасибо Иннокентию Еникееву.
3613 
3614     *) Исправление: nginx неправильно кэшировал FastCGI-ответы, если перед
3615        ответом было много вывода в stderr.
3616 
3617     *) Исправление: nginx не поддерживал HTTPS-рефереры.
3618 
3619     *) Исправление: nginx/Windows мог не находить файлы, если путь в
3620        конфигурации был задан в другом регистре; ошибка появилась в 0.8.33.
3621 
3622     *) Исправление: переменная $date_local выдавала неверное время, если
3623        использовался формат "%s".
3624        Спасибо Максиму Дунину.
3625 
3626     *) Исправление: если ssl_session_cache не был установлен или установлен
3627        в none, то при проверке клиентского сертификаты могла происходить
3628        ошибка "session id context uninitialized"; ошибка появилась в 0.7.1.
3629 
3630     *) Исправление: geo-диапазон возвращал значение по умолчанию, если
3631        диапазон включал в себя одну и более сетей размером /16 и не
3632        начинался на границе сети размером /16.
3633 
3634     *) Исправление: блок, используемый в параметре stub в SSI-директиве
3635        include, выводился с MIME-типом "text/plain".
3636 
3637     *) Исправление: $r->sleep() не работал; ошибка появилась в 0.8.11.
3638 
3639 
3640 Изменения в nginx 0.8.33                                          01.02.2010
3641 
3642     *) Безопасность: теперь nginx/Windows игнорирует пробелы в конце URI.
3643        Спасибо Dan Crowley, Core Security Technologies.
3644 
3645     *) Безопасность: теперь nginx/Windows игнорирует короткие имена файлов.
3646        Спасибо Dan Crowley, Core Security Technologies.
3647 
3648     *) Изменение: теперь keepalive соединения после запросов POST не
3649        запрещаются для MSIE 7.0+.
3650        Спасибо Adam Lounds.
3651 
3652     *) Изменение: теперь keepalive соединения запрещены для Safari.
3653        Спасибо Joshua Sierles.
3654 
3655     *) Исправление: если проксированный или FastCGI запрос внутренне
3656        перенаправлялся в другой проксированный или FastCGI location, то
3657        переменная $upstream_response_time могла иметь ненормально большое
3658        значение; ошибка появилась в 0.8.7.
3659 
3660     *) Исправление: в рабочем процессе мог произойти segmentation fault при
3661        отбрасывания тела запроса; ошибка появилась в 0.8.11.
3662 
3663 
3664 Изменения в nginx 0.8.32                                          11.01.2010
3665 
3666     *) Исправление: ошибки при использовании кодировки UTF-8 в
3667        ngx_http_autoindex_module.
3668        Спасибо Максиму Дунину.
3669 
3670     *) Исправление: именованные выделения в регулярных выражениях работали
3671        только для двух переменных.
3672        Спасибо Максиму Дунину.
3673 
3674     *) Исправление: теперь в строке заголовка запроса "Host" используется
3675        имя "localhost", если в директиве auth_http указан unix domain сокет.
3676        Спасибо Максиму Дунину.
3677 
3678     *) Исправление: nginx не поддерживал передачу chunk'ами для 201-ых
3679        ответов.
3680        Спасибо Julian Reich.
3681 
3682     *) Исправление: если директива "expires modified" выставляла дату в
3683        прошлом, то в строке заголовка ответа "Cache-Control" выдавалось
3684        отрицательное число.
3685        Спасибо Алексею Капранову.
3686 
3687 
3688 Изменения в nginx 0.8.31                                          23.12.2009
3689 
3690     *) Добавление: теперь директива error_page может перенаправлять ответы
3691        со статусом 301 и 302.
3692 
3693     *) Добавление: переменные $geoip_city_continent_code, $geoip_latitude и
3694        $geoip_longitude.
3695        Спасибо Arvind Sundararajan.
3696 
3697     *) Добавление: модуль ngx_http_image_filter_module теперь всегда удаляет
3698        EXIF и другие данные, если они занимают больше 5% в JPEG-файле.
3699 
3700     *) Исправление: nginx закрывал соединение при запросе закэшированного
3701        ответа с пустым телом.
3702        Спасибо Piotr Sikora.
3703 
3704     *) Исправление: nginx мог не собираться gcc 4.x при использовании
3705        оптимизации -O2 и выше.
3706        Спасибо Максиму Дунину и Денису Латыпову.
3707 
3708     *) Исправление: регулярные выражения в location всегда тестировались с
3709        учётом регистра; ошибка появилась в 0.8.25.
3710 
3711     *) Исправление: nginx кэшировал 304 ответ, если в заголовке
3712        проксируемого запроса была строка "If-None-Match".
3713        Спасибо Tim Dettrick и David Kostal.
3714 
3715     *) Исправление: nginx/Windows пытался дважды удалить временный файл при
3716        перезаписи уже существующего файла.
3717 
3718 
3719 Изменения в nginx 0.8.30                                          15.12.2009
3720 
3721     *) Изменение: теперь по умолчанию размер буфера директивы
3722        large_client_header_buffers равен 8K.
3723        Спасибо Andrew Cholakian.
3724 
3725     *) Добавление: файл conf/fastcgi.conf для простых конфигураций FastCGI.
3726 
3727     *) Исправление: nginx/Windows пытался дважды переименовать временный
3728        файл при перезаписи уже существующего файла.
3729 
3730     *) Исправление: ошибки double free or corruption, возникающей, если имя
3731        хоста не было найдено; ошибка появилась в 0.8.22.
3732        Спасибо Константину Свисту.
3733 
3734     *) Исправление: в использовании libatomic на некоторых платформах.
3735        Спасибо W-Mark Kubacki.
3736 
3737 
3738 Изменения в nginx 0.8.29                                          30.11.2009
3739 
3740     *) Изменение: теперь для проксируемых ответов HTTP/0.9 в лог пишется код
3741        ответа "009".
3742 
3743     *) Добавление: директивы addition_types, charset_types, gzip_types,
3744        ssi_types, sub_filter_types и xslt_types поддерживают параметр "*".
3745 
3746     *) Добавление: использование встроенных атомарных операций GCC 4.1+.
3747        Спасибо W-Mark Kubacki.
3748 
3749     *) Добавление: параметр --with-libatomic[=DIR] в configure.
3750        Спасибо W-Mark Kubacki.
3751 
3752     *) Исправление: listen unix domain сокет имели ограниченные права
3753        доступа.
3754 
3755     *) Исправление: закэшированные ответы ответов HTTP/0.9 неправильно
3756        обрабатывались.
3757 
3758     *) Исправление: именованные выделения в регулярных выражениях, заданные
3759        как "?P<...>", не работали в директиве server_name.
3760        Спасибо Максиму Дунину.
3761 
3762 
3763 Изменения в nginx 0.8.28                                          23.11.2009
3764 
3765     *) Исправление: nginx не собирался с параметром --without-pcre; ошибка
3766        появилась в 0.8.25.
3767 
3768 
3769 Изменения в nginx 0.8.27                                          17.11.2009
3770 
3771     *) Исправление: регулярные выражения не работали в nginx/Windows; ошибка
3772        появилась в 0.8.25.
3773 
3774 
3775 Изменения в nginx 0.8.26                                          16.11.2009
3776 
3777     *) Исправление: ошибки при использовании выделений в директиве rewrite;
3778        ошибка появилась в 0.8.25.
3779 
3780     *) Исправление: nginx не собирался без параметра --with-debug; ошибка
3781        появилась в 0.8.25.
3782 
3783 
3784 Изменения в nginx 0.8.25                                          16.11.2009
3785 
3786     *) Изменение: теперь в лог ошибок не пишется сообщение, если переменная
3787        не найдена с помощью метода $r->variable().
3788 
3789     *) Добавление: модуль ngx_http_degradation_module.
3790 
3791     *) Добавление: именованные выделения в регулярных выражениях.
3792 
3793     *) Добавление: теперь при использовании переменных в директиве
3794        proxy_pass не требуется задавать URI.
3795 
3796     *) Добавление: теперь директива msie_padding работает и для Chrome.
3797 
3798     *) Исправление: в рабочем процессе происходил segmentation fault при
3799        недостатке памяти; ошибка появилась в 0.8.18.
3800 
3801     *) Исправление: nginx передавал сжатые ответы клиентам, не
3802        поддерживающим сжатие, при настройках gzip_static on и gzip_vary off;
3803        ошибка появилась в 0.8.16.
3804 
3805 
3806 Изменения в nginx 0.8.24                                          11.11.2009
3807 
3808     *) Исправление: nginx всегда добавлял строку "Content-Encoding: gzip" в
3809        заголовок 304-ых ответов модуля ngx_http_gzip_static_module.
3810 
3811     *) Исправление: nginx не собирался без параметра --with-debug; ошибка
3812        появилась в 0.8.23.
3813 
3814     *) Исправление: параметр "unix:" в директиве set_real_ip_from
3815        неправильно наследовался с предыдущего уровня.
3816 
3817     *) Исправление: в resolver'е при определении пустого имени.
3818 
3819 
3820 Изменения в nginx 0.8.23                                          11.11.2009
3821 
3822     *) Безопасность: теперь SSL/TLS renegotiation запрещён.
3823        Спасибо Максиму Дунину.
3824 
3825     *) Исправление: listen unix domain сокет не наследовался во время
3826        обновления без перерыва.
3827 
3828     *) Исправление: параметр "unix:" в директиве set_real_ip_from не работал
3829        без ещё одной директивы с любым IP-адресом.
3830 
3831     *) Исправление: segmentation fault и зацикливания в resolver'е.
3832 
3833     *) Исправление: в resolver'е.
3834        Спасибо Артёму Бохану.
3835 
3836 
3837 Изменения в nginx 0.8.22                                          03.11.2009
3838 
3839     *) Добавление: директивы proxy_bind, fastcgi_bind и memcached_bind.
3840 
3841     *) Добавление: директивы access и deny поддерживают IPv6.
3842 
3843     *) Добавление: директива set_real_ip_from поддерживает IPv6 адреса в
3844        заголовках запроса.
3845 
3846     *) Добавление: параметр "unix:" в директиве set_real_ip_from.
3847 
3848     *) Исправление: nginx не удалял unix domain сокет после тестирования
3849        конфигурации.
3850 
3851     *) Исправление: nginx удалял unix domain сокет во время обновления без
3852        перерыва.
3853 
3854     *) Исправление: оператор "!-x" не работал.
3855        Спасибо Максиму Дунину.
3856 
3857     *) Исправление: в рабочем процессе мог произойти segmentation fault при
3858        использовании limit_rate в HTTPS сервере.
3859        Спасибо Максиму Дунину.
3860 
3861     *) Исправление: при записи в лог переменной $limit_rate в рабочем
3862        процессе происходил segmentation fault.
3863        Спасибо Максиму Дунину.
3864 
3865     *) Исправление: в рабочем процессе мог произойти segmentation fault,
3866        если внутри блока server не было директивы listen; ошибка появилась в
3867        0.8.21.
3868 
3869 
3870 Изменения в nginx 0.8.21                                          26.10.2009
3871 
3872     *) Добавление: теперь ключ -V показывает статус поддержки TLS SNI.
3873 
3874     *) Добавление: директива listen модуля HTTP поддерживает unix domain
3875        сокеты.
3876        Спасибо Hongli Lai.
3877 
3878     *) Добавление: параметр "default_server" в директиве listen.
3879 
3880     *) Добавление: теперь параметр "default" не обязателен для установки
3881        параметров listen-сокета.
3882 
3883     *) Исправление: nginx не поддерживал даты в 2038 году на 32-битных
3884        платформах;
3885 
3886     *) Исправление: утечки сокетов; ошибка появилась в 0.8.11.
3887 
3888 
3889 Изменения в nginx 0.8.20                                          14.10.2009
3890 
3891     *) Изменение: теперь по умолчанию используются следующие шифры SSL:
3892        "HIGH:!ADH:!MD5".
3893 
3894     *) Исправление: модуль ngx_http_autoindex_module не показывал последний
3895        слэш для линков на каталоги; ошибка появилась в 0.7.15.
3896 
3897     *) Исправление: nginx не закрывал лог, заданный параметром конфигурации
3898        --error-log-path; ошибка появилась в 0.7.53.
3899 
3900     *) Исправление: nginx не считал запятую разделителем в строке
3901        "Cache-Control" в заголовке ответа бэкенда.
3902 
3903     *) Исправление: nginx/Windows мог не создать временный файл, файл в кэше
3904        или файл с помощью директив proxy/fastcgi_store, если рабочий процесс
3905        не имел достаточно прав для работы с каталогами верхнего уровня.
3906 
3907     *) Исправление: строки "Set-Cookie" и "P3P" в заголовке ответа
3908        FastCGI-сервера не скрывались при кэшировании, если не использовались
3909        директивы fastcgi_hide_header с любыми параметрами.
3910 
3911     *) Исправление: nginx неверно считал размер кэша на диске.
3912 
3913 
3914 Изменения в nginx 0.8.19                                          06.10.2009
3915 
3916     *) Изменение: теперь протокол SSLv2 по умолчанию запрещён.
3917 
3918     *) Изменение: теперь по умолчанию используются следующие шифры SSL:
3919        "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM".
3920 
3921     *) Исправление: директива limit_req не работала; ошибка появилась в
3922        0.8.18.
3923 
3924 
3925 Изменения в nginx 0.8.18                                          06.10.2009
3926 
3927     *) Добавление: директива read_ahead.
3928 
3929     *) Добавление: теперь можно использовать несколько директив
3930        perl_modules.
3931 
3932     *) Добавление: директивы limit_req_log_level и limit_conn_log_level.
3933 
3934     *) Исправление: теперь директива limit_req соответствует алгоритму leaky
3935        bucket.
3936        Спасибо Максиму Дунину.
3937 
3938     *) Исправление: nginx не работал на Linux/sparc.
3939        Спасибо Marcus Ramberg.
3940 
3941     *) Исправление: nginx слал символ '\0' в строке "Location" в заголовке в
3942        ответе на запрос MKCOL.
3943        Спасибо Xie Zhenye.
3944 
3945     *) Исправление: вместо кода ответа 499 в лог записывался код 0; ошибка
3946        появилась в 0.8.11.
3947 
3948     *) Исправление: утечки сокетов; ошибка появилась в 0.8.11.
3949 
3950 
3951 Изменения в nginx 0.8.17                                          28.09.2009
3952 
3953     *) Безопасность: теперь символы "/../" запрещены в строке "Destination"
3954        в заголовке запроса.
3955 
3956     *) Изменение: теперь значение переменной $host всегда в нижнем регистре.
3957 
3958     *) Добавление: переменная $ssl_session_id.
3959 
3960     *) Исправление: утечки сокетов; ошибка появилась в 0.8.11.
3961 
3962 
3963 Изменения в nginx 0.8.16                                          22.09.2009
3964 
3965     *) Добавление: директива image_filter_transparency.
3966 
3967     *) Исправление: директива "addition_types" была неверно названа
3968        "addtion_types".
3969 
3970     *) Исправление: порчи кэша resolver'а.
3971        Спасибо Matthew Dempsky.
3972 
3973     *) Исправление: утечки памяти в resolver'е.
3974        Спасибо Matthew Dempsky.
3975 
3976     *) Исправление: неверная строка запроса в переменной $request
3977        записывалась в access_log только при использовании error_log на
3978        уровне info или debug.
3979 
3980     *) Исправление: в поддержке альфа-канала PNG в модуле
3981        ngx_http_image_filter_module.
3982 
3983     *) Исправление: nginx всегда добавлял строку "Vary: Accept-Encoding" в
3984        заголовок ответа, если обе директивы gzip_static и gzip_vary были
3985        включены.
3986 
3987     *) Исправление: в поддержке кодировки UTF-8 директивой try_files в
3988        nginx/Windows.
3989 
3990     *) Исправление: ошибки при использовании post_action; ошибка появилась в
3991        0.8.11.
3992        Спасибо Игорю Артемьеву.
3993 
3994 
3995 Изменения в nginx 0.8.15                                          14.09.2009
3996 
3997     *) Безопасность: при обработке специально созданного запроса в рабочем
3998        процессе мог произойти segmentation fault.
3999        Спасибо Chris Ries.
4000 
4001     *) Исправление: если были описаны имена .domain.tld, .sub.domain.tld и
4002        .domain-some.tld, то имя .sub.domain.tld попадало под маску
4003        .domain.tld.
4004 
4005     *) Исправление: в поддержке прозрачности в модуле
4006        ngx_http_image_filter_module.
4007 
4008     *) Исправление: в файловом AIO.
4009 
4010     *) Исправление: ошибки при использовании X-Accel-Redirect; ошибка
4011        появилась в 0.8.11.
4012 
4013     *) Исправление: ошибки при использовании встроенного перла; ошибка
4014        появилась в 0.8.11.
4015 
4016 
4017 Изменения в nginx 0.8.14                                          07.09.2009
4018 
4019     *) Исправление: устаревший закэшированный запрос мог залипнуть в
4020        состоянии "UPDATING".
4021 
4022     *) Исправление: при использовании error_log на уровне info или debug в
4023        рабочем процессе мог произойти segmentation fault.
4024        Спасибо Сергею Боченкову.
4025 
4026     *) Исправление: ошибки при использовании встроенного перла; ошибка
4027        появилась в 0.8.11.
4028 
4029     *) Исправление: директива error_page не перенаправляла ошибку 413;
4030        ошибка появилась в 0.6.10.
4031 
4032 
4033 Изменения в nginx 0.8.13                                          31.08.2009
4034 
4035     *) Исправление: в директиве "aio sendfile"; ошибка появилась в 0.8.12.
4036 
4037     *) Исправление: nginx не собирался без параметра --with-file-aio на
4038        FreeBSD; ошибка появилась в 0.8.12.
4039 
4040 
4041 Изменения в nginx 0.8.12                                          31.08.2009
4042 
4043     *) Добавление: параметр sendfile в директиве aio во FreeBSD.
4044 
4045     *) Исправление: ошибки при использовании try_files; ошибка появилась в
4046        0.8.11.
4047 
4048     *) Исправление: ошибки при использовании memcached; ошибка появилась в
4049        0.8.11.
4050 
4051 
4052 Изменения в nginx 0.8.11                                          28.08.2009
4053 
4054     *) Изменение: теперь директива "gzip_disable msie6" не запрещает сжатие
4055        для MSIE 6.0 SV1.
4056 
4057     *) Добавление: поддержка файлового AIO во FreeBSD и Linux.
4058 
4059     *) Добавление: директива directio_alignment.
4060 
4061 
4062 Изменения в nginx 0.8.10                                          24.08.2009
4063 
4064     *) Исправление: утечек памяти при использовании базы GeoIP City.
4065 
4066     *) Исправление: ошибки при копировании временных файлов в постоянное
4067        место хранения; ошибка появилась в 0.8.9.
4068 
4069 
4070 Изменения в nginx 0.8.9                                           17.08.2009
4071 
4072     *) Добавление: теперь стартовый загрузчик кэша работает в отдельном
4073        процесс; это должно улучшить обработку больших кэшей.
4074 
4075     *) Добавление: теперь временные файлы и постоянное место хранения могут
4076        располагаться на разных файловых системах.
4077 
4078 
4079 Изменения в nginx 0.8.8                                           10.08.2009
4080 
4081     *) Исправление: в обработке заголовков ответа, разделённых в
4082        FastCGI-записях.
4083 
4084     *) Исправление: если запрос обрабатывался в двух проксированных или
4085        FastCGI location'ах и в первом из них использовалось кэширование, то
4086        в рабочем процессе происходил segmentation fault; ошибка появилась в
4087        0.8.7.
4088 
4089 
4090 Изменения в nginx 0.8.7                                           27.07.2009
4091 
4092     *) Изменение: минимальная поддерживаемая версия OpenSSL - 0.9.7.
4093 
4094     *) Изменение: параметр ask директивы ssl_verify_client изменён на
4095        параметр optional и теперь он проверяет клиентский сертификат, если
4096        он был предложен.
4097        Спасибо Brice Figureau.
4098 
4099     *) Добавление: переменная $ssl_client_verify.
4100        Спасибо Brice Figureau.
4101 
4102     *) Добавление: директива ssl_crl.
4103        Спасибо Brice Figureau.
4104 
4105     *) Добавление: параметр proxy директивы geo.
4106 
4107     *) Добавление: директива image_filter поддерживает переменные для
4108        задания размеров.
4109 
4110     *) Исправление: использование переменной $ssl_client_cert портило
4111        память; ошибка появилась в 0.7.7.
4112        Спасибо Сергею Журавлёву.
4113 
4114     *) Исправление: директивы proxy_pass_header и fastcgi_pass_header" не
4115        передавали клиенту строки "X-Accel-Redirect", "X-Accel-Limit-Rate",
4116        "X-Accel-Buffering" и "X-Accel-Charset" из заголовка ответа бэкенда.
4117        Спасибо Максиму Дунину.
4118 
4119     *) Исправление: в обработке строк "Last-Modified" и "Accept-Ranges" в
4120        заголовке ответа бэкенда; ошибка появилась в 0.7.44.
4121        Спасибо Максиму Дунину.
4122 
4123     *) Исправление: ошибки "[alert] zero size buf" при получении пустых
4124        ответы в подзапросах; ошибка появилась в 0.8.5.
4125 
4126 
4127 Изменения в nginx 0.8.6                                           20.07.2009
4128 
4129     *) Добавление: модуль ngx_http_geoip_module.
4130 
4131     *) Исправление: XSLT-фильтр мог выдавать ошибку "not well formed XML
4132        document" для правильного документа.
4133        Спасибо Kuramoto Eiji.
4134 
4135     *) Исправление: в MacOSX, Cygwin и nginx/Windows при проверке
4136        location'ов, заданных регулярным выражением, теперь всегда делается
4137        сравнение без учёта регистра символов.
4138 
4139     *) Исправление: теперь nginx/Windows игнорирует точки в конце URI.
4140        Спасибо Hugo Leisink.
4141 
4142     *) Исправление: имя файла указанного в --conf-path игнорировалось при
4143        установке; ошибка появилась в 0.6.6.
4144        Спасибо Максиму Дунину.
4145 
4146 
4147 Изменения в nginx 0.8.5                                           13.07.2009
4148 
4149     *) Исправление: теперь nginx разрешает подчёркивания в методе запроса.
4150 
4151     *) Исправление: при использовании HTTP Basic-аутентификации на Windows
4152        для неверных имени/пароля возвращалась 500-ая ошибка.
4153 
4154     *) Исправление: ответы модуля ngx_http_perl_module не работали в
4155        подзапросах.
4156 
4157     *) Исправление: в модуле ngx_http_limit_req_module.
4158        Спасибо Максиму Дунину.
4159 
4160 
4161 Изменения в nginx 0.8.4                                           22.06.2009
4162 
4163     *) Исправление: nginx не собирался с параметром --without-http-cache;
4164        ошибка появилась в 0.8.3.
4165 
4166 
4167 Изменения в nginx 0.8.3                                           19.06.2009
4168 
4169     *) Добавление: переменная $upstream_cache_status.
4170 
4171     *) Исправление: nginx не собирался на MacOSX 10.6.
4172 
4173     *) Исправление: nginx не собирался с параметром --without-http-cache;
4174        ошибка появилась в 0.8.2.
4175 
4176     *) Исправление: если использовался перехват 401 ошибки от бэкенда и
4177        бэкенд не возвращал строку "WWW-Authenticate" в заголовке ответа, то
4178        в рабочем процессе происходил segmentation fault.
4179        Спасибо Евгению Мычло.
4180 
4181 
4182 Изменения в nginx 0.8.2                                           15.06.2009
4183 
4184     *) Исправление: во взаимодействии open_file_cache и proxy/fastcgi кэша
4185        на старте.
4186 
4187     *) Исправление: open_file_cache мог кэшировать открытые файлы очень
4188        долго; ошибка появилась в 0.7.4.
4189 
4190 
4191 Изменения в nginx 0.8.1                                           08.06.2009
4192 
4193     *) Добавление: параметр updating в директивах proxy_cache_use_stale и
4194        fastcgi_cache_use_stale.
4195 
4196     *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в
4197        заголовке запроса клиента передавались бэкенду при кэшировании, если
4198        не использовалась директива proxy_set_header с любыми параметрами.
4199 
4200     *) Исправление: строки "Set-Cookie" и "P3P" в заголовке ответа бэкенда
4201        не скрывались при кэшировании, если не использовались директивы
4202        proxy_hide_header/fastcgi_hide_header с любыми параметрами.
4203 
4204     *) Исправление: модуль ngx_http_image_filter_module не понимал формат
4205        GIF87a.
4206        Спасибо Денису Ильиных.
4207 
4208     *) Исправление: nginx не собирался на Solaris 10 и более ранних; ошибка
4209        появилась в 0.7.56.
4210 
4211 
4212 Изменения в nginx 0.8.0                                           02.06.2009
4213 
4214     *) Добавление: директива keepalive_requests.
4215 
4216     *) Добавление: директива limit_rate_after.
4217        Спасибо Ivan Debnar.
4218 
4219     *) Исправление: XSLT-фильтр не работал в подзапросах.
4220 
4221     *) Исправление: обработке относительных путей в nginx/Windows.
4222 
4223     *) Исправление: в proxy_store, fastcgi_store, proxy_cache и
4224        fastcgi_cache в nginx/Windows.
4225 
4226     *) Исправление: в обработке ошибок выделения памяти.
4227        Спасибо Максиму Дунину и Кириллу Коринскому.
4228 
4229 
4230 Изменения в nginx 0.7.59                                          25.05.2009
4231 
4232     *) Добавление: директивы proxy_cache_methods и fastcgi_cache_methods.
4233 
4234     *) Исправление: утечки сокетов; ошибка появилась в 0.7.25.
4235        Спасибо Максиму Дунину.
4236 
4237     *) Исправление: при использовании переменной $request_body в рабочем
4238        процессе происходил segmentation fault, если в запросе не было тела;
4239        ошибка появилась в 0.7.58.
4240 
4241     *) Исправление: SSL-модули могли не собираться на Solaris и Linux;
4242        ошибка появилась в 0.7.56.
4243 
4244     *) Исправление: ответы модуля ngx_http_xslt_filter_module не
4245        обрабатывались SSI-, charset- и gzip-фильтрами.
4246 
4247     *) Исправление: директива charset не ставила кодировку для ответов
4248        модуля ngx_http_gzip_static_module.
4249 
4250 
4251 Изменения в nginx 0.7.58                                          18.05.2009
4252 
4253     *) Добавление: директива listen почтового прокси-сервера поддерживает
4254        IPv6.
4255 
4256     *) Добавление: директива image_filter_jpeg_quality.
4257 
4258     *) Добавление: директива client_body_in_single_buffer.
4259 
4260     *) Добавление: переменная $request_body.
4261 
4262     *) Исправление: в модуле ngx_http_autoindex_module в ссылках на имена
4263        файлов, содержащих символ ":".
4264 
4265     *) Исправление: процедура "make upgrade" не работала; ошибка появилась в
4266        0.7.53.
4267        Спасибо Денису Латыпову.
4268 
4269 
4270 Изменения в nginx 0.7.57                                          12.05.2009
4271 
4272     *) Исправление: при перенаправлении ошибок модуля
4273        ngx_http_image_filter_module в именованный location в рабочем
4274        процессе происходил floating-point fault; ошибка появилась в 0.7.56.
4275 
4276 
4277 Изменения в nginx 0.7.56                                          11.05.2009
4278 
4279     *) Добавление: nginx/Windows поддерживает IPv6 в директиве listen модуля
4280        HTTP.
4281 
4282     *) Исправление: в модуле ngx_http_image_filter_module.
4283 
4284 
4285 Изменения в nginx 0.7.55                                          06.05.2009
4286 
4287     *) Исправление: параметры http_XXX в директивах proxy_cache_use_stale и
4288        fastcgi_cache_use_stale не работали.
4289 
4290     *) Исправление: fastcgi кэш не кэшировал ответы, состоящие только из
4291        заголовка.
4292 
4293     *) Исправление: ошибки "select() failed (9: Bad file descriptor)" в
4294        nginx/Unix и "select() failed (10038: ...)" в nginx/Windows.
4295 
4296     *) Исправление: при использовании директивы debug_connection в рабочем
4297        процессе мог произойти segmentation fault; ошибка появилась в 0.7.54.
4298 
4299     *) Исправление: в сборке модуля ngx_http_image_filter_module.
4300 
4301     *) Исправление: файлы больше 2G не передавались с использованием
4302        $r->sendfile.
4303        Спасибо Максиму Дунину.
4304 
4305 
4306 Изменения в nginx 0.7.54                                          01.05.2009
4307 
4308     *) Добавление: модуль ngx_http_image_filter_module.
4309 
4310     *) Добавление: директивы proxy_ignore_headers и fastcgi_ignore_headers.
4311 
4312     *) Исправление: при использовании переменных "open_file_cache_errors on"
4313        в рабочем процессе мог произойти segmentation fault; ошибка появилась
4314        в 0.7.53.
4315 
4316     *) Исправление: директива "port_in_redirect off" не работала; ошибка
4317        появилась в 0.7.39.
4318 
4319     *) Исправление: улучшение обработки ошибок метода select.
4320 
4321     *) Исправление: ошибки "select() failed (10022: ...)" в nginx/Windows.
4322 
4323     *) Исправление: в текстовых сообщениях об ошибках в nginx/Windows;
4324        ошибка появилась в 0.7.53.
4325 
4326 
4327 Изменения в nginx 0.7.53                                          27.04.2009
4328 
4329     *) Изменение: теперь лог, указанный в --error-log-path, создаётся с
4330        самого начала работы.
4331 
4332     *) Добавление: теперь ошибки и предупреждения при старте записываются в
4333        error_log и выводятся на stderr.
4334 
4335     *) Добавление: при сборке с пустым параметром --prefix= nginx использует
4336        как префикс каталог, в котором он был запущен.
4337 
4338     *) Добавление: ключ -p.
4339 
4340     *) Добавление: ключ -s на Unix-платформах.
4341 
4342     *) Добавление: ключи -? и -h.
4343        Спасибо Jerome Loyet.
4344 
4345     *) Добавление: теперь ключи можно задавать в сжатой форме.
4346 
4347     *) Исправление: nginx/Windows не работал, если файл конфигурации был
4348        задан ключом -c.
4349 
4350     *) Исправление: при использовании директив proxy_store, fastcgi_store,
4351        proxy_cache или fastcgi_cache временные файлы могли не удаляться.
4352        Спасибо Максиму Дунину.
4353 
4354     *) Исправление: в заголовке Auth-Method запроса серверу аутентификации
4355        почтового прокси-сервера передавалось неверное значение; ошибка
4356        появилась в 0.7.34.
4357        Спасибо Simon Lecaille.
4358 
4359     *) Исправление: при логгировании на Linux не писались текстовые описания
4360        системных ошибок; ошибка появилась в 0.7.45.
4361 
4362     *) Исправление: директива fastcgi_cache_min_uses не работала.
4363        Спасибо Андрею Воробьёву.
4364 
4365 
4366 Изменения в nginx 0.7.52                                          20.04.2009
4367 
4368     *) Добавление: первая бинарная версия под Windows.
4369 
4370     *) Исправление: корректная обработка метода HEAD при кэшировании.
4371 
4372     *) Исправление: корректная обработка строк "If-Modified-Since",
4373        "If-Range" и им подобных в заголовке запроса клиента при кэшировании.
4374 
4375     *) Исправление: теперь строки "Set-Cookie" и "P3P" скрываются в
4376        заголовке ответа для закэшированных ответов.
4377 
4378     *) Исправление: если nginx был собран с модулем ngx_http_perl_module и
4379        perl поддерживал потоки, то при выходе основного процесса могла
4380        выдаваться ошибка "panic: MUTEX_LOCK".
4381 
4382     *) Исправление: nginx не собирался с параметром --without-http-cache;
4383        ошибка появилась в 0.7.48.
4384 
4385     *) Исправление: nginx не собирался на платформах, отличных от i386,
4386        amd64, sparc и ppc; ошибка появилась в 0.7.42.
4387 
4388 
4389 Изменения в nginx 0.7.51                                          12.04.2009
4390 
4391     *) Добавление: директива try_files поддерживает код ответа в последнем
4392        параметре.
4393 
4394     *) Добавление: теперь в директиве return можно использовать любой код
4395        ответа.
4396 
4397     *) Исправление: директива error_page делала внешний редирект без строки
4398        запроса; ошибка появилась в 0.7.44.
4399 
4400     *) Исправление: если сервера слушали на нескольких явно описанных
4401        адресах, то виртуальные сервера могли не работать; ошибка появилась в
4402        0.7.39.
4403 
4404 
4405 Изменения в nginx 0.7.50                                          06.04.2009
4406 
4407     *) Исправление: переменные $arg_... не работали; ошибка появилась в
4408        0.7.49.
4409 
4410 
4411 Изменения в nginx 0.7.49                                          06.04.2009
4412 
4413     *) Исправление: при использовании переменных $arg_... в рабочем процессе
4414        мог произойти segmentation fault; ошибка появилась в 0.7.48.
4415 
4416 
4417 Изменения в nginx 0.7.48                                          06.04.2009
4418 
4419     *) Добавление: директива proxy_cache_key.
4420 
4421     *) Исправление: теперь nginx учитывает при кэшировании строки
4422        "X-Accel-Expires", "Expires" и "Cache-Control" в заголовке ответа
4423        бэкенда.
4424 
4425     *) Исправление: теперь nginx кэширует только ответы на запросы GET.
4426 
4427     *) Исправление: директива fastcgi_cache_key не наследовалась.
4428 
4429     *) Исправление: переменные $arg_... не работали с SSI-подзапросами.
4430        Спасибо Максиму Дунину.
4431 
4432     *) Исправление: nginx не собирался с библиотекой uclibc.
4433        Спасибо Timothy Redaelli.
4434 
4435     *) Исправление: nginx не собирался на OpenBSD; ошибка появилась
4436        в 0.7.46.
4437 
4438 
4439 Изменения в nginx 0.7.47                                          01.04.2009
4440 
4441     *) Исправление: nginx не собирался на FreeBSD 6 и более ранних версиях;
4442        ошибка появилась в 0.7.46.
4443 
4444     *) Исправление: nginx не собирался на MacOSX; ошибка появилась в 0.7.46.
4445 
4446     *) Исправление: если использовался параметр max_size, то cache manager
4447        мог удалить весь кэш; ошибка появилась в 0.7.46.
4448 
4449     *) Изменение: в рабочем процессе мог произойти segmentation fault, если
4450        директивы proxy_cache/fastcgi_cache и proxy_cache_valid/
4451        fastcgi_cache_valid не были заданы на одном уровне; ошибка появилась
4452        в 0.7.46.
4453 
4454     *) Исправление: в рабочем процессе мог произойти segmentation fault при
4455        перенаправлении запроса проксированному или FastCGI-серверу с помощью
4456        error_page или try_files; ошибка появилась в 0.7.44.
4457 
4458 
4459 Изменения в nginx 0.7.46                                          30.03.2009
4460 
4461     *) Исправление: архив предыдущего релиза был неверным.
4462 
4463 
4464 Изменения в nginx 0.7.45                                          30.03.2009
4465 
4466     *) Изменение: теперь директивы proxy_cache и proxy_cache_valid можно
4467        задавать на разных уровнях.
4468 
4469     *) Изменение: параметр clean_time в директиве proxy_cache_path удалён.
4470 
4471     *) Добавление: параметр max_size в директиве proxy_cache_path.
4472 
4473     *) Добавление: предварительная поддержка кэширования в модуле
4474        ngx_http_fastcgi_module.
4475 
4476     *) Добавление: теперь при ошибках выделения в разделяемой памяти в логе
4477        указываются названия директивы и зоны.
4478 
4479     *) Исправление: директива "add_header last-modified ''" не удаляла в
4480        заголовке ответа строку "Last-Modified"; ошибка появилась в 0.7.44.
4481 
4482     *) Исправление: в директиве auth_basic_user_file не работал
4483        относительный путь, заданный строкой без переменных; ошибка появилась
4484        в 0.7.44.
4485        Спасибо Jerome Loyet.
4486 
4487     *) Исправление: в директиве alias, заданной переменными без ссылок на
4488        выделения в регулярных выражениях; ошибка появилась в 0.7.42.
4489 
4490 
4491 Изменения в nginx 0.7.44                                          23.03.2009
4492 
4493     *) Добавление: предварительная поддержка кэширования в модуле
4494        ngx_http_proxy_module.
4495 
4496     *) Добавление: параметр --with-pcre в configure.
4497 
4498     *) Добавление: теперь директива try_files может быть использована на
4499        уровне server.
4500 
4501     *) Исправление: директива try_files неправильно обрабатывала строку
4502        запроса в последнем параметре.
4503 
4504     *) Исправление: директива try_files могла неверно тестировать каталоги.
4505 
4506     *) Исправление: если для пары адрес:порт описан только один сервер, то
4507        выделения в регулярных выражениях в директиве server_name не
4508        работали.
4509 
4510 
4511 Изменения в nginx 0.7.43                                          18.03.2009
4512 
4513     *) Исправление: запрос обрабатывался неверно, если директива root
4514        использовала переменные; ошибка появилась в 0.7.42.
4515 
4516     *) Исправление: если сервер слушал на адресах типа "*", то значение
4517        переменной $server_addr было "0.0.0.0"; ошибка появилась в 0.7.36.
4518 
4519 
4520 Изменения в nginx 0.7.42                                          16.03.2009
4521 
4522     *) Изменение: ошибка "Invalid argument", возвращаемая
4523        setsockopt(TCP_NODELAY) на Solaris, теперь игнорируется.
4524 
4525     *) Изменение: при отсутствии файла, указанного в директиве
4526        auth_basic_user_file, теперь возвращается ошибка 403 вместо 500.
4527 
4528     *) Добавление: директива auth_basic_user_file поддерживает переменные.
4529        Спасибо Кириллу Коринскому.
4530 
4531     *) Добавление: директива listen поддерживает параметр ipv6only.
4532        Спасибо Zhang Hua.
4533 
4534     *) Исправление: в директиве alias со ссылками на выделения в регулярных
4535        выражениях; ошибка появилась в 0.7.40.
4536 
4537     *) Исправление: совместимость с Tru64 UNIX.
4538        Спасибо Dustin Marquess.
4539 
4540     *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась
4541        в 0.7.41.
4542 
4543 
4544 Изменения в nginx 0.7.41                                          11.03.2009
4545 
4546     *) Исправление: в рабочем процессе мог произойти segmentation fault,
4547        если в server_name или location были выделения в регулярных
4548        выражениях; ошибка появилась в 0.7.40.
4549        Спасибо Владимиру Сопоту.
4550 
4551 
4552 Изменения в nginx 0.7.40                                          09.03.2009
4553 
4554     *) Добавление: директива location поддерживает выделения в регулярных
4555        выражениях.
4556 
4557     *) Добавление: директиву alias с ссылками на выделения в регулярных
4558        выражениях можно использовать внутри location'а, заданного регулярным
4559        выражением с выделениями.
4560 
4561     *) Добавление: директива server_name поддерживает выделения в регулярных
4562        выражениях.
4563 
4564     *) Изменение: модуль ngx_http_autoindex_module не показывал последний
4565        слэш для каталогов на файловой системе XFS; ошибка появилась в
4566        0.7.15.
4567        Спасибо Дмитрию Кузьменко.
4568 
4569 
4570 Изменения в nginx 0.7.39                                          02.03.2009
4571 
4572     *) Исправление: при включённом сжатии большие ответы с использованием
4573        SSI могли зависать; ошибка появилась в 0.7.28.
4574        Спасибо Артёму Бохану.
4575 
4576     *) Исправление: при использовании коротких статических вариантов в
4577        директиве try_files в рабочем процессе мог произойти segmentation
4578        fault.
4579 
4580 
4581 Изменения в nginx 0.7.38                                          23.02.2009
4582 
4583     *) Добавление: логгирование ошибок аутентификации.
4584 
4585     *) Исправление: имя/пароль, заданные в auth_basic_user_file,
4586        игнорировались после нечётного числа пустых строк.
4587        Спасибо Александру Загребину.
4588 
4589     *) Исправление: при использовании длинного пути в unix domain сокете в
4590        главном процессе происходил segmentation fault; ошибка появилась в
4591        0.7.36.
4592 
4593 
4594 Изменения в nginx 0.7.37                                          21.02.2009
4595 
4596     *) Исправление: директивы, использующие upstream'ы, не работали; ошибка
4597        появилась в 0.7.36.
4598 
4599 
4600 Изменения в nginx 0.7.36                                          21.02.2009
4601 
4602     *) Добавление: предварительная поддержка IPv6; директива listen модуля
4603        HTTP поддерживает IPv6.
4604 
4605     *) Исправление: переменная $ancient_browser не работала для браузеров,
4606        заданных директивами modern_browser.
4607 
4608 
4609 Изменения в nginx 0.7.35                                          16.02.2009
4610 
4611     *) Исправление: директива ssl_engine не использовала SSL-акселератор для
4612        асимметричных шифров.
4613        Спасибо Marcin Gozdalik.
4614 
4615     *) Исправление: директива try_files выставляла MIME-type, исходя из
4616        расширения первоначального запроса.
4617 
4618     *) Исправление: в директивах server_name, valid_referers и map
4619        неправильно обрабатывались имена вида "*domain.tld", если
4620        использовались маски вида ".domain.tld" и ".subdomain.domain.tld";
4621        ошибка появилась в 0.7.9.
4622 
4623 
4624 Изменения в nginx 0.7.34                                          10.02.2009
4625 
4626     *) Добавление: параметр off в директиве if_modified_since.
4627 
4628     *) Добавление: теперь после команды XCLIENT nginx посылает команду
4629        HELO/EHLO.
4630        Спасибо Максиму Дунину.
4631 
4632     *) Добавление: поддержка Microsoft-специфичного режима
4633        "AUTH LOGIN with User Name" в почтовом прокси-сервере.
4634        Спасибо Максиму Дунину.
4635 
4636     *) Исправление: в директиве rewrite, возвращающей редирект, старые
4637        аргументы присоединялись к новым через символ "?" вместо "&";
4638        ошибка появилась в 0.1.18.
4639        Спасибо Максиму Дунину.
4640 
4641     *) Исправление: nginx не собирался на AIX.
4642 
4643 
4644 Изменения в nginx 0.7.33                                          02.02.2009
4645 
4646     *) Исправление: если на запрос с телом возвращался редирект, то ответ
4647        мог быть двойным при использовании методов epoll или rtsig.
4648        Спасибо Eden Li.
4649 
4650     *) Исправление: для некоторых типов редиректов в переменной
4651        $sent_http_location было пустое значение.
4652 
4653     *) Исправление: при использовании директивы resolver в SMTP
4654        прокси-сервере в рабочем процессе мог произойти segmentation fault.
4655 
4656 
4657 Изменения в nginx 0.7.32                                          26.01.2009
4658 
4659     *) Добавление: теперь в директиве try_files можно явно указать проверку
4660        каталога.
4661 
4662     *) Исправление: fastcgi_store не всегда сохранял файлы.
4663 
4664     *) Исправление: в гео-диапазонах.
4665 
4666     *) Исправление: ошибки выделения больших блоков в разделяемой памяти,
4667        если nginx был собран без отладки.
4668        Спасибо Андрею Квасову.
4669 
4670 
4671 Изменения в nginx 0.7.31                                          19.01.2009
4672 
4673     *) Изменение: теперь директива try_files проверяет только файлы,
4674        игнорируя каталоги.
4675 
4676     *) Добавление: директива fastcgi_split_path_info.
4677 
4678     *) Исправления в поддержке строки "Expect" в заголовке запроса.
4679 
4680     *) Исправления в гео-диапазонах.
4681 
4682     *) Исправление: при отсутствии ответа ngx_http_memcached_module
4683        возвращал в теле ответа строку "END" вместо 404-ой страницы по
4684        умолчанию; ошибка появилась в 0.7.18.
4685        Спасибо Максиму Дунину.
4686 
4687     *) Исправление: при проксировании SMTP nginx выдавал сообщение
4688        "250 2.0.0 OK" вместо "235 2.0.0 OK"; ошибка появилась в 0.7.22.
4689        Спасибо Максиму Дунину.
4690 
4691 
4692 Изменения в nginx 0.7.30                                          24.12.2008
4693 
4694     *) Исправление: в рабочем процессе происходил segmentation fault, если в
4695        директивах fastcgi_pass или proxy_pass использовались переменные и
4696        имя хоста должно было резолвиться; ошибка появилась в 0.7.29.
4697 
4698 
4699 Изменения в nginx 0.7.29                                          24.12.2008
4700 
4701     *) Исправление: директивы fastcgi_pass и proxy_pass не поддерживали
4702        переменные при использовании unix domain сокетов.
4703 
4704     *) Исправления в обработке подзапросов; ошибки появились в 0.7.25.
4705 
4706     *) Исправление: ответ "100 Continue" выдавался для запросов версии
4707        HTTP/1.0;
4708        Спасибо Максиму Дунину.
4709 
4710     *) Исправление: в выделении памяти в модуле ngx_http_gzip_filter_module
4711        под Cygwin.
4712 
4713 
4714 Изменения в nginx 0.7.28                                          22.12.2008
4715 
4716     *) Изменение: в выделении памяти в модуле ngx_http_gzip_filter_module.
4717 
4718     *) Изменение: значения по умолчанию для директивы gzip_buffers изменены
4719        с 4 4k/8k на 32 4k или 16 8k.
4720 
4721 
4722 Изменения в nginx 0.7.27                                          15.12.2008
4723 
4724     *) Добавление: директива try_files.
4725 
4726     *) Добавление: директива fastcgi_pass поддерживает переменные.
4727 
4728     *) Добавление: теперь директива geo может брать адрес из переменной.
4729        Спасибо Андрею Нигматулину.
4730 
4731     *) Добавление: теперь модификатор location'а можно указывать без пробела
4732        перед названием.
4733 
4734     *) Добавление: переменная $upstream_response_length.
4735 
4736     *) Исправление: теперь директива add_header не добавляет пустое
4737        значение.
4738 
4739     *) Исправление: при запросе файла нулевой длины nginx закрывал
4740        соединение, ничего не передав; ошибка появилась в 0.7.25.
4741 
4742     *) Исправление: метод MOVE не мог перемещать файл в несуществующий
4743        каталог.
4744 
4745     *) Исправление: если в сервере не был описан ни один именованный
4746        location, но такой location использовался в директиве error_page, то
4747        в рабочем процессе происходил segmentation fault.
4748        Спасибо Сергею Боченкову.
4749 
4750 
4751 Изменения в nginx 0.7.26                                          08.12.2008
4752 
4753     *) Исправление: в обработке подзапросов; ошибка появилась в 0.7.25.
4754 
4755 
4756 Изменения в nginx 0.7.25                                          08.12.2008
4757 
4758     *) Изменение: в обработке подзапросов.
4759 
4760     *) Изменение: теперь разрешаются POST'ы без строки "Content-Length" в
4761        заголовке запроса.
4762 
4763     *) Исправление: теперь директивы limit_req и limit_conn указывают
4764        причину запрета запроса.
4765 
4766     *) Исправление: в параметре delete директивы geo.
4767 
4768 
4769 Изменения в nginx 0.7.24                                          01.12.2008
4770 
4771     *) Добавление: директива if_modified_since.
4772 
4773     *) Исправление: nginx не обрабатывал ответ FastCGI-сервера, если перед
4774        ответом сервер передавал много сообщений в stderr.
4775 
4776     *) Исправление: переменные "$cookie_..." не работали в SSI and в
4777        перловом модуле.
4778 
4779 
4780 Изменения в nginx 0.7.23                                          27.11.2008
4781 
4782     *) Добавление: параметры delete и ranges в директиве geo.
4783 
4784     *) Добавление: ускорение загрузки geo-базы с большим числом значений.
4785 
4786     *) Добавление: уменьшение памяти, необходимой для загрузки geo-базы.
4787 
4788 
4789 Изменения в nginx 0.7.22                                          20.11.2008
4790 
4791     *) Добавление: параметр none в директиве smtp_auth.
4792        Спасибо Максиму Дунину.
4793 
4794     *) Добавление: переменные "$cookie_...".
4795 
4796     *) Исправление: директива directio не работала с файловой системой XFS.
4797 
4798     *) Исправление: resolver не понимал большие DNS-ответы.
4799        Спасибо Zyb.
4800 
4801 
4802 Изменения в nginx 0.7.21                                          11.11.2008
4803 
4804     *) Изменения в модуле ngx_http_limit_req_module.
4805 
4806     *) Добавление: поддержка EXSLT в модуле ngx_http_xslt_module.
4807        Спасибо Денису Латыпову.
4808 
4809     *) Изменение: совместимость с glibc 2.3.
4810        Спасибо Eric Benson и Максиму Дунину.
4811 
4812     *) Исправление: nginx не запускался на MacOSX 10.4 и более ранних;
4813        ошибка появилась в 0.7.6.
4814 
4815 
4816 Изменения в nginx 0.7.20                                          10.11.2008
4817 
4818     *) Изменения в модуле ngx_http_gzip_filter_module.
4819 
4820     *) Добавление: модуль ngx_http_limit_req_module.
4821 
4822     *) Исправление: на платформах sparc и ppc рабочие процессы могли
4823        выходить по сигналу SIGBUS; ошибка появилась в 0.7.3.
4824        Спасибо Максиму Дунину.
4825 
4826     *) Исправление: директивы вида "proxy_pass http://host/some:uri" не
4827        работали; ошибка появилась в 0.7.12.
4828 
4829     *) Исправление: при использовании HTTPS запросы могли завершаться с
4830        ошибкой "bad write retry".
4831 
4832     *) Исправление: модуль ngx_http_secure_link_module не работал внутри
4833        location'ов с именами меньше 3 символов.
4834 
4835     *) Исправление: переменная $server_addr могла не иметь значения.
4836 
4837 
4838 Изменения в nginx 0.7.19                                          13.10.2008
4839 
4840     *) Исправление: обновление номера версии.
4841 
4842 
4843 Изменения в nginx 0.7.18                                          13.10.2008
4844 
4845     *) Изменение: директива underscores_in_headers; теперь nginx по
4846        умолчанию не разрешает подчёркивания в именах строк в заголовке
4847        запроса клиента.
4848 
4849     *) Добавление: модуль ngx_http_secure_link_module.
4850 
4851     *) Добавление: директива real_ip_header поддерживает любой заголовок.
4852 
4853     *) Добавление: директива log_subrequest.
4854 
4855     *) Добавление: переменная $realpath_root.
4856 
4857     *) Добавление: параметры http_502 и http_504 в директиве
4858        proxy_next_upstream.
4859 
4860     *) Исправление: параметр http_503 в директивах proxy_next_upstream или
4861        fastcgi_next_upstream не работал.
4862 
4863     *) Исправление: nginx мог выдавать строку "Transfer-Encoding: chunked"
4864        для запросов HEAD.
4865 
4866     *) Исправление: теперь accept-лимит зависит от числа worker_connections.
4867 
4868 
4869 Изменения в nginx 0.7.17                                          15.09.2008
4870 
4871     *) Добавление: директива directio теперь работает на Linux.
4872 
4873     *) Добавление: переменная $pid.
4874 
4875     *) Исправление: оптимизация directio, появившаяся в 0.7.15, не работала
4876        при использовании open_file_cache.
4877 
4878     *) Исправление: access_log с переменными не работал на Linux; ошибка
4879        появилась в 0.7.7.
4880 
4881     *) Исправление: модуль ngx_http_charset_module не понимал название
4882        кодировки в кавычках, полученное от бэкенда.
4883 
4884 
4885 Изменения в nginx 0.7.16                                          08.09.2008
4886 
4887     *) Исправление: nginx не собирался на 64-битных платформах; ошибка
4888        появилась в 0.7.15.
4889 
4890 
4891 Изменения в nginx 0.7.15                                          08.09.2008
4892 
4893     *) Добавление: модуль ngx_http_random_index_module.
4894 
4895     *) Добавление: директива directio оптимизирована для запросов файлов,
4896        начинающихся с произвольной позиции.
4897 
4898     *) Добавление: директива directio при необходимости запрещает
4899        использование sendfile.
4900 
4901     *) Добавление: теперь nginx разрешает подчёркивания в именах строк в
4902        заголовке запроса клиента.
4903 
4904 
4905 Изменения в nginx 0.7.14                                          01.09.2008
4906 
4907     *) Изменение: теперь директивы ssl_certificate и ssl_certificate_key не
4908        имеют значений по умолчанию.
4909 
4910     *) Добавление: директива listen поддерживает параметр ssl.
4911 
4912     *) Добавление: теперь при переконфигурации nginx учитывает изменение
4913        временной зоны на FreeBSD и Linux.
4914 
4915     *) Исправление: параметры директивы listen, такие как backlog, rcvbuf и
4916        прочие, не устанавливались, если сервером по умолчанию был не первый
4917        сервер.
4918 
4919     *) Исправление: при использовании в качестве аргументов части URI,
4920        выделенного с помощью директивы rewrite, эти аргументы не
4921        экранировались.
4922 
4923     *) Исправление: улучшения тестирования правильности конфигурационного
4924        файла.
4925 
4926 
4927 Изменения в nginx 0.7.13                                          26.08.2008
4928 
4929     *) Исправление: nginx не собирался на Linux и Solaris; ошибка появилась
4930        в 0.7.12.
4931 
4932 
4933 Изменения в nginx 0.7.12                                          26.08.2008
4934 
4935     *) Добавление: директива server_name поддерживает пустое имя "".
4936 
4937     *) Добавление: директива gzip_disable поддерживает специальную маску
4938        msie6.
4939 
4940     *) Исправление: при использовании параметра max_fails=0 в upstream'е с
4941        несколькими серверами рабочий процесс выходил по сигналу SIGFPE.
4942        Спасибо Максиму Дунину.
4943 
4944     *) Исправление: при перенаправлении запроса с помощью директивы
4945        error_page терялось тело запроса.
4946 
4947     *) Исправление: при перенаправлении запроса с методом HEAD с помощью
4948        директивы error_page возвращался полный ответ.
4949 
4950     *) Исправление: метод $r->header_in() не возвращал значения строк
4951        "Host", "User-Agent", и "Connection" из заголовка запроса; ошибка
4952        появилась в 0.7.0.
4953 
4954 
4955 Изменения в nginx 0.7.11                                          18.08.2008
4956 
4957     *) Изменение: теперь ngx_http_charset_module по умолчанию не работает
4958        MIME-типом text/css.
4959 
4960     *) Добавление: теперь nginx возвращает код 405 для метода POST при
4961        запросе статического файла, только если файл существует.
4962 
4963     *) Добавление: директива proxy_ssl_session_reuse.
4964 
4965     *) Исправление: после перенаправления запроса с помощью
4966        "X-Accel-Redirect" директива proxy_pass без URI могла использовать
4967        оригинальный запрос.
4968 
4969     *) Исправление: если у каталога были права доступа только на поиск
4970        файлов и первый индексный файл отсутствовал, то nginx возвращал
4971        ошибку 500.
4972 
4973     *) Исправление: ошибок во вложенных location'ах; ошибки появились в
4974        0.7.1.
4975 
4976 
4977 Изменения в nginx 0.7.10                                          13.08.2008
4978 
4979     *) Исправление: ошибок в директивах addition_types, charset_types,
4980        gzip_types, ssi_types, sub_filter_types и xslt_types; ошибки
4981        появились в 0.7.9.
4982 
4983     *) Исправление: рекурсивной error_page для 500 ошибки.
4984 
4985     *) Исправление: теперь модуль ngx_http_realip_module устанавливает адрес
4986        не для всего keepalive соединения, а для каждого запроса по этому
4987        соединению.
4988 
4989 
4990 Изменения в nginx 0.7.9                                           12.08.2008
4991 
4992     *) Изменение: теперь ngx_http_charset_module по умолчанию работает со
4993        следующими MIME-типами: text/html, text/css, text/xml, text/plain,
4994        text/vnd.wap.wml, application/x-javascript и application/rss+xml.
4995 
4996     *) Добавление: директивы charset_types и addition_types.
4997 
4998     *) Добавление: теперь директивы gzip_types, ssi_types и sub_filter_types
4999        используют хэш.
5000 
5001     *) Добавление: модуль ngx_cpp_test_module.
5002 
5003     *) Добавление: директива expires поддерживает суточное время.
5004 
5005     *) Добавление: улучшения и исправления в модуле ngx_http_xslt_module.
5006        Спасибо Денису Латыпову и Максиму Дунину.
5007 
5008     *) Исправление: директива log_not_found не работала при поиске индексных
5009        файлов.
5010 
5011     *) Исправление: HTTPS-соединения могли зависнуть, если использовались
5012        методы kqueue, epoll, rtsig или eventport; ошибка появилась в 0.7.7.
5013 
5014     *) Исправление: если в директивах server_name, valid_referers и map
5015        использовалась маска вида "*.domain.tld" и при этом полное имя вида
5016        "domain.tld" не было описано, то это имя попадало под маску; ошибка
5017        появилась в 0.3.18.
5018 
5019 
5020 Изменения в nginx 0.7.8                                           04.08.2008
5021 
5022     *) Добавление: модуль ngx_http_xslt_module.
5023 
5024     *) Добавление: переменные "$arg_...".
5025 
5026     *) Добавление: поддержка directio в Solaris.
5027        Спасибо Ivan Debnar.
5028 
5029     *) Исправление: теперь, если FastCGI-сервер присылает строку "Location"
5030        в заголовке ответа без строки статуса, то nginx использует код
5031        статуса 302.
5032        Спасибо Максиму Дунину.
5033 
5034 
5035 Изменения в nginx 0.7.7                                           30.07.2008
5036 
5037     *) Изменение: теперь ошибка EAGAIN при вызове connect() не считается
5038        временной.
5039 
5040     *) Изменение: значением переменной $ssl_client_cert теперь является
5041        сертификат, перед каждой строкой которого, кроме первой, вставляется
5042        символ табуляции; неизменённый сертификат доступен через переменную
5043        $ssl_client_raw_cert.
5044 
5045     *) Добавление: параметр ask директивы ssl_verify_client.
5046 
5047     *) Добавление: улучшения в обработке byte-range.
5048        Спасибо Максиму Дунину.
5049 
5050     *) Добавление: директива directio.
5051        Спасибо Jiang Hong.
5052 
5053     *) Добавление: поддержка sendfile() в MacOSX 10.5.
5054 
5055     *) Исправление: в MacOSX и Cygwin при проверке location'ов теперь
5056        делается сравнение без учёта регистра символов; однако, сравнение
5057        ограничено только однобайтными locale'ями.
5058 
5059     *) Исправление: соединения почтового прокси-сервера зависали в режиме
5060        SSL, если использовались методы select, poll или /dev/poll.
5061 
5062     *) Исправление: ошибки при использовании кодировки UTF-8 в
5063        ngx_http_autoindex_module.
5064 
5065 
5066 Изменения в nginx 0.7.6                                           07.07.2008
5067 
5068     *) Исправление: теперь при использовании переменных в директиве
5069        access_log всегда проверяется существовании root'а для запроса.
5070 
5071     *) Исправление: модуль ngx_http_flv_module не поддерживал несколько
5072        значений в аргументах запроса.
5073 
5074 
5075 Изменения в nginx 0.7.5                                           01.07.2008
5076 
5077     *) Исправления в поддержке переменных в директиве access_log; ошибки
5078        появились в 0.7.4.
5079 
5080     *) Исправление: nginx не собирался с параметром
5081        --without-http_gzip_module; ошибка появилась в 0.7.3.
5082        Спасибо Кириллу Коринскому.
5083 
5084     *) Исправление: при совместном использовании sub_filter и SSI ответы
5085        могли передаваться неверно.
5086 
5087 
5088 Изменения в nginx 0.7.4                                           30.06.2008
5089 
5090     *) Добавление: директива access_log поддерживает переменные.
5091 
5092     *) Добавление: директива open_log_file_cache.
5093 
5094     *) Добавление: ключ -g.
5095 
5096     *) Добавление: поддержка строки "Expect" в заголовке запроса.
5097 
5098     *) Исправление: большие включения в SSI могли передавались не полностью.
5099 
5100 
5101 Изменения в nginx 0.7.3                                           23.06.2008
5102 
5103     *) Изменение: MIME-тип для расширения rss изменён на
5104        "application/rss+xml".
5105 
5106     *) Изменение: теперь директива "gzip_vary on" выдаёт строку
5107        "Vary: Accept-Encoding" в заголовке ответа и для несжатых ответов.
5108 
5109     *) Добавление: теперь при использовании протокола "https://" в директиве
5110        rewrite автоматически делается редирект.
5111 
5112     *) Исправление: директива proxy_pass не работала с протоколом HTTPS;
5113        ошибка появилась в 0.6.9.
5114 
5115 
5116 Изменения в nginx 0.7.2                                           16.06.2008
5117 
5118     *) Добавление: теперь nginx поддерживает шифры с обменом EDH-ключами.
5119 
5120     *) Добавление: директива ssl_dhparam.
5121 
5122     *) Добавление: переменная $ssl_client_cert.
5123        Спасибо Manlio Perillo.
5124 
5125     *) Исправление: после изменения URI с помощью директивы rewrite nginx не
5126        искал новый location; ошибка появилась в 0.7.1.
5127        Спасибо Максиму Дунину.
5128 
5129     *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась
5130        в 0.7.1.
5131 
5132     *) Исправление: при редиректе запроса к каталогу с добавлением слэша
5133        nginx не добавлял аргументы из оригинального запроса.
5134 
5135 
5136 Изменения в nginx 0.7.1                                           26.05.2008
5137 
5138     *) Изменение: теперь поиск location'а делается с помощью дерева.
5139 
5140     *) Изменение: директива optimize_server_names упразднена в связи с
5141        появлением директивы server_name_in_redirect.
5142 
5143     *) Изменение: некоторые давно устаревшие директивы больше не
5144        поддерживаются.
5145 
5146     *) Изменение: параметр "none" в директиве ssl_session_cache; теперь этот
5147        параметр используется по умолчанию.
5148        Спасибо Rob Mueller.
5149 
5150     *) Исправление: рабочие процессы могли не реагировать на сигналы
5151        переконфигурации и ротации логов.
5152 
5153     *) Исправление: nginx не собирался на последних Fedora 9 Linux.
5154        Спасибо Roxis.
5155 
5156 
5157 Изменения в nginx 0.7.0                                           19.05.2008
5158 
5159     *) Изменение: теперь символы 0x00-0x1F, '"' и '\' в access_log
5160        записываются в виде \xXX.
5161        Спасибо Максиму Дунину.
5162 
5163     *) Изменение: теперь nginx разрешает несколько строк "Host" в заголовке
5164        запроса.
5165 
5166     *) Добавление: директива expires поддерживает флаг modified.
5167 
5168     *) Добавление: переменные $uid_got и $uid_set можно использовать на
5169        любой стадии обработки запроса.
5170 
5171     *) Добавление: переменная $hostname.
5172        Спасибо Андрею Нигматулину.
5173 
5174     *) Добавление: поддержка DESTDIR.
5175        Спасибо Todd A. Fisher и Andras Voroskoi.
5176 
5177     *) Исправление: при использовании keepalive на Linux в рабочем процессе
5178        мог произойти segmentation fault.
5179 
5180 
5181 Изменения в nginx 0.6.31                                          12.05.2008
5182 
5183     *) Исправление: nginx не обрабатывал ответ FastCGI-сервера, если строка
5184        заголовка ответа была в конце записи FastCGI; ошибка появилась в
5185        0.6.2.
5186        Спасибо Сергею Серову.
5187 
5188     *) Исправление: при удалении файла и использовании директивы
5189        open_file_cache_errors off в рабочем процессе мог произойти
5190        segmentation fault.
5191 
5192 
5193 Изменения в nginx 0.6.30                                          29.04.2008
5194 
5195     *) Изменение: теперь, если маске, заданной в директиве include, не
5196        соответствует ни один файл, то nginx не выдаёт ошибку.
5197 
5198     *) Добавление: теперь время в директивах можно задавать без пробела,
5199        например, "1h50m".
5200 
5201     *) Исправление: утечек памяти, если директива ssl_verify_client имела
5202        значение on.
5203        Спасибо Chavelle Vincent.
5204 
5205     *) Исправление: директива sub_filter могла вставлять заменяемый текст в
5206        вывод.
5207 
5208     *) Исправление: директива error_page не воспринимала параметры в
5209        перенаправляемом URI.
5210 
5211     *) Исправление: теперь при сборке с Cygwin nginx всегда открывает файлы
5212        в бинарном режиме.
5213 
5214     *) Исправление: nginx не собирался под OpenBSD; ошибка появилась в
5215        0.6.15.
5216 
5217 
5218 Изменения в nginx 0.6.29                                          18.03.2008
5219 
5220     *) Добавление: модуль ngx_google_perftools_module.
5221 
5222     *) Исправление: модуль ngx_http_perl_module не собирался на 64-битных
5223        платформах; ошибка появилась в 0.6.27.
5224 
5225 
5226 Изменения в nginx 0.6.28                                          13.03.2008
5227 
5228     *) Исправление: метод rtsig не собирался; ошибка появилась в 0.6.27.
5229 
5230 
5231 Изменения в nginx 0.6.27                                          12.03.2008
5232 
5233     *) Изменение: теперь на Linux 2.6.18+ по умолчанию не собирается метод
5234        rtsig.
5235 
5236     *) Изменение: теперь при перенаправлении запроса в именованный location
5237        с помощью директивы error_page метод запроса не изменяется.
5238 
5239     *) Добавление: директивы resolver и resolver_timeout в SMTP
5240        прокси-сервере.
5241 
5242     *) Добавление: директива post_action поддерживает именованные
5243        location'ы.
5244 
5245     *) Исправление: при перенаправлении запроса из location'а c обработчиком
5246        proxy, FastCGI или memcached в именованный location со статическим
5247        обработчиком в рабочем процессе происходил segmentation fault.
5248 
5249     *) Исправление: браузеры не повторяли SSL handshake, если при первом
5250        handshake не оказалось правильного клиентского сертификата.
5251        Спасибо Александру Инюхину.
5252 
5253     *) Исправление: при перенаправлении ошибок 495-497 с помощью директивы
5254        error_page без изменения кода ошибки nginx пытался выделить очень
5255        много памяти.
5256 
5257     *) Исправление: утечки памяти в долгоживущих небуфферизированных
5258        соединениях.
5259 
5260     *) Исправление: утечки памяти в resolver'е.
5261 
5262     *) Исправление: при перенаправлении запроса из location'а c обработчиком
5263        proxy в другой location с обработчиком proxy в рабочем процессе
5264        происходил segmentation fault.
5265 
5266     *) Исправление: ошибки в кэшировании переменных $proxy_host и
5267        $proxy_port.
5268        Спасибо Сергею Боченкову.
5269 
5270     *) Исправление: директива proxy_pass с переменными использовала порт,
5271        описанной в другой директиве proxy_pass без переменных, но с таким же
5272        именем хоста.
5273        Спасибо Сергею Боченкову.
5274 
5275     *) Исправление: во время переконфигурации на некоторых 64-битном
5276        платформах в лог записывался alert "sendmsg() failed (9: Bad file
5277        descriptor)".
5278 
5279     *) Исправление: при повторном использовании в SSI пустого block'а в
5280        качестве заглушки в рабочем процессе происходил segmentation fault.
5281 
5282     *) Исправление: ошибки при копировании части URI, содержащего
5283        экранированные символы, в аргументы.
5284 
5285 
5286 Изменения в nginx 0.6.26                                          11.02.2008
5287 
5288     *) Исправление: директивы proxy_store и fastcgi_store не проверяли длину
5289        ответа.
5290 
5291     *) Исправление: при использовании большого значения в директиве expires
5292        в рабочем процессе происходил segmentation fault.
5293        Спасибо Joaquin Cuenca Abela.
5294 
5295     *) Исправление: nginx неверно определял длину строки кэша на Pentium 4.
5296        Спасибо Геннадию Махомеду.
5297 
5298     *) Исправление: в проксированных подзапросах и подзапросах к
5299        FastCGI-серверу вместо метода GET использовался оригинальный метод
5300        клиента.
5301 
5302     *) Исправление: утечки сокетов в режиме HTTPS при использовании
5303        отложенного accept'а.
5304        Спасибо Ben Maurer.
5305 
5306     *) Исправление: nginx выдавал ошибочное сообщение "SSL_shutdown() failed
5307        (SSL: )"; ошибка появилась в 0.6.23.
5308 
5309     *) Исправление: при использовании HTTPS запросы могли завершаться с
5310        ошибкой "bad write retry"; ошибка появилась в 0.6.23.
5311 
5312 
5313 Изменения в nginx 0.6.25                                          08.01.2008
5314 
5315     *) Изменение: вместо специального параметра "*" в директиве server_name
5316        теперь используется директива server_name_in_redirect.
5317 
5318     *) Изменение: в качестве основного имени в директиве server_name теперь
5319        можно использовать имена с масками и регулярными выражениями.
5320 
5321     *) Изменение: директива satisfy_any заменена директивой satisfy.
5322 
5323     *) Изменение: после переконфигурации старые рабочие процесс могли сильно
5324        нагружать процессор при запуске под Linux OpenVZ.
5325 
5326     *) Добавление: директива min_delete_depth.
5327 
5328     *) Исправление: методы COPY и MOVE не работали с одиночными файлами.
5329 
5330     *) Исправление: модуль ngx_http_gzip_static_module не позволял работать
5331        модулю ngx_http_dav_module; ошибка появилась в 0.6.23.
5332 
5333     *) Исправление: утечки сокетов в режиме HTTPS при использовании
5334        отложенного accept'а.
5335        Спасибо Ben Maurer.
5336 
5337     *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась
5338        в 0.6.23.
5339 
5340 
5341 Изменения в nginx 0.6.24                                          27.12.2007
5342 
5343     *) Исправление: при использовании HTTPS в рабочем процессе мог произойти
5344        segmentation fault; ошибка появилась в 0.6.23.
5345 
5346 
5347 Изменения в nginx 0.6.23                                          27.12.2007
5348 
5349     *) Изменение: параметр "off" в директиве ssl_session_cache; теперь этот
5350        параметр используется по умолчанию.
5351 
5352     *) Изменение: директива open_file_cache_retest переименована в
5353        open_file_cache_valid.
5354 
5355     *) Добавление: директива open_file_cache_min_uses.
5356 
5357     *) Добавление: модуль ngx_http_gzip_static_module.
5358 
5359     *) Добавление: директива gzip_disable.
5360 
5361     *) Добавление: директиву memcached_pass можно использовать внутри блока
5362        if.
5363 
5364     *) Исправление: если внутри одного location'а использовались директивы
5365        "memcached_pass" и "if", то в рабочем процессе происходил
5366        segmentation fault.
5367 
5368     *) Исправление: если при использовании директивы satisfy_any on" были
5369        заданы директивы не всех модулей доступа, то заданные директивы не
5370        проверялись.
5371 
5372     *) Исправление: параметры, заданные регулярным выражением в директиве
5373        valid_referers, не наследовалась с предыдущего уровня.
5374 
5375     *) Исправление: директива post_action не работала, если запрос
5376        завершался с кодом 499.
5377 
5378     *) Исправление: оптимизация использования 16K буфера для SSL-соединения.
5379        Спасибо Ben Maurer.
5380 
5381     *) Исправление: STARTTLS в режиме SMTP не работал.
5382        Спасибо Олегу Мотиенко.
5383 
5384     *) Исправление: при использовании HTTPS запросы могли завершаться с
5385        ошибкой "bad write retry"; ошибка появилась в 0.5.13.
5386 
5387 
5388 Изменения в nginx 0.6.22                                          19.12.2007
5389 
5390     *) Изменение: теперь все методы модуля ngx_http_perl_module возвращают
5391        значения, скопированные в память, выделенную perl'ом.
5392 
5393     *) Исправление: если nginx был собран с модулем ngx_http_perl_module,
5394        использовался perl до версии 5.8.6 и perl поддерживал потоки, то во
5395        время переконфигурации основной процесс аварийно выходил; ошибка
5396        появилась в 0.5.9.
5397        Спасибо Борису Жмурову.
5398 
5399     *) Исправление: в методы модуля ngx_http_perl_module могли передаваться
5400        неверные результаты выделения в регулярных выражениях.
5401 
5402     *) Исправление: если метод $r->has_request_body() вызывался для запроса,
5403        у которого небольшое тело запроса было уже полностью получено, то в
5404        рабочем процессе происходил segmentation fault.
5405 
5406     *) Исправление: large_client_header_buffers не освобождались перед
5407        переходом в состояние keep-alive.
5408        Спасибо Олександру Штепе.
5409 
5410     *) Исправление: в переменной $upstream_addr не записывался последний
5411        адрес; ошибка появилась в 0.6.18.
5412 
5413     *) Исправление: директива fastcgi_catch_stderr не возвращала ошибку;
5414        теперь она возвращает ошибку 502, которую можно направить на
5415        следующий сервер с помощью "fastcgi_next_upstream invalid_header".
5416 
5417     *) Исправление: при использовании директивы fastcgi_catch_stderr в
5418        основном процессе происходил segmentation fault; ошибка появилась в
5419        0.6.10.
5420        Спасибо Manlio Perillo.
5421 
5422 
5423 Изменения в nginx 0.6.21                                          03.12.2007
5424 
5425     *) Изменение: если в значениях переменных директивы proxy_pass
5426        используются только IP-адреса, то указывать resolver не нужно.
5427 
5428     *) Исправление: при использовании директивы proxy_pass c URI-частью в
5429        рабочем процессе мог произойти segmentation fault; ошибка появилась в
5430        0.6.19.
5431 
5432     *) Исправление: если resolver использовался на платформах, не
5433        поддерживающих метод kqueue, то nginx выдавал alert "name is out of
5434        response".
5435        Спасибо Андрею Нигматулину.
5436 
5437     *) Исправление: При использовании переменной $server_protocol в
5438        FastCGI-параметрах и запросе, длина которого была близка к значению
5439        директивы client_header_buffer_size, nginx выдавал alert "fastcgi:
5440        the request record is too big".
5441 
5442     *) Исправление: при обычном запросе версии HTTP/0.9 к HTTPS серверу
5443        nginx возвращал обычный ответ.
5444 
5445 
5446 Изменения в nginx 0.6.20                                          28.11.2007
5447 
5448     *) Исправление: при использовании директивы proxy_pass c URI-частью в
5449        рабочем процессе мог произойти segmentation fault; ошибка появилась в
5450        0.6.19.
5451 
5452 
5453 Изменения в nginx 0.6.19                                          27.11.2007
5454 
5455     *) Исправление: версия 0.6.18 не собиралась.
5456 
5457 
5458 Изменения в nginx 0.6.18                                          27.11.2007
5459 
5460     *) Изменение: теперь модуль ngx_http_userid_module в поле куки с номером
5461        процесса добавляет микросекунды на время старта.
5462 
5463     *) Изменение: в error_log теперь записывается полная строка запроса
5464        вместо только URI.
5465 
5466     *) Добавление: директива proxy_pass поддерживает переменные.
5467 
5468     *) Добавление: директивы resolver и resolver_timeout.
5469 
5470     *) Добавление: теперь директива "add_header last-modified ''" удаляет в
5471        заголовке ответа строку "Last-Modified".
5472 
5473     *) Исправление: директива limit_rate не позволяла передавать на полной
5474        скорости, даже если был указан очень большой лимит.
5475 
5476 
5477 Изменения в nginx 0.6.17                                          15.11.2007
5478 
5479     *) Добавление: поддержка строки "If-Range" в заголовке запроса.
5480        Спасибо Александру Инюхину.
5481 
5482     *) Исправление: при использовании директивы msie_refresh повторно
5483        экранировались уже экранированные символы; ошибка появилась в 0.6.4.
5484 
5485     *) Исправление: директива autoindex не работала при использовании "alias
5486        /".
5487 
5488     *) Исправление: при использовании подзапросов в рабочем процессе мог
5489        произойти segmentation fault.
5490 
5491     *) Исправление: при использовании SSL и gzip большие ответы могли
5492        передаваться не полностью.
5493 
5494     *) Исправление: если ответ проксированного сервера был версии HTTP/0.9,
5495        то переменная $status была равна 0.
5496 
5497 
5498 Изменения в nginx 0.6.16                                          29.10.2007
5499 
5500     *) Изменение: теперь на Linux используется uname(2) вместо procfs.
5501        Спасибо Илье Новикову.
5502 
5503     *) Исправление: если в директиве error_page использовался символ "?", то
5504        он экранировался при проксировании запроса; ошибка появилась в
5505        0.6.11.
5506 
5507     *) Исправление: совместимость с mget.
5508 
5509 
5510 Изменения в nginx 0.6.15                                          22.10.2007
5511 
5512     *) Добавление: совместимость с Cygwin.
5513        Спасибо Владимиру Кутакову.
5514 
5515     *) Добавление: директива merge_slashes.
5516 
5517     *) Добавление: директива gzip_vary.
5518 
5519     *) Добавление: директива server_tokens.
5520 
5521     *) Исправление: nginx не раскодировал URI в команде SSI include.
5522 
5523     *) Исправление: при использовании переменной в директивах charset или
5524        source_charset на старте или во время переконфигурации происходил
5525        segmentation fault,
5526 
5527     *) Исправление: nginx возвращал ошибку 400 на запросы вида
5528        "GET http://www.domain.com HTTP/1.0".
5529        Спасибо James Oakley.
5530 
5531     *) Исправление: после перенаправления запроса с телом запроса с помощью
5532        директивы error_page nginx пытался снова прочитать тело запроса;
5533        ошибка появилась в 0.6.7.
5534 
5535     *) Исправление: в рабочем процессе происходил segmentation fault, если у
5536        сервера, обрабатывающему запрос, не был явно определён server_name;
5537        ошибка появилась в 0.6.7.
5538 
5539 
5540 Изменения в nginx 0.6.14                                          15.10.2007
5541 
5542     *) Изменение: теперь по умолчанию команда SSI echo использует
5543        кодирование entity.
5544 
5545     *) Добавление: параметр encoding в команде SSI echo.
5546 
5547     *) Добавление: директиву access_log можно использовать внутри блока
5548        limit_except.
5549 
5550     *) Исправление: если все сервера апстрима оказывались недоступными, то
5551        до восстановления работоспособности у всех серверов вес становился
5552        равным одному; ошибка появилась в 0.6.6.
5553 
5554     *) Исправление: при использовании переменных $date_local и $date_gmt вне
5555        модуля ngx_http_ssi_filter_module в рабочем процессе происходил
5556        segmentation fault.
5557 
5558     *) Исправление: при использовании включённом отладочном логе в рабочем
5559        процессе мог произойти segmentation fault.
5560        Спасибо Андрею Нигматулину.
5561 
5562     *) Исправление: ngx_http_memcached_module не устанавливал
5563        $upstream_response_time.
5564        Спасибо Максиму Дунину.
5565 
5566     *) Исправление: рабочий процесс мог зациклиться при использовании
5567        memcached.
5568 
5569     *) Исправление: nginx распознавал параметры "close" и "keep-alive" в
5570        строке "Connection" в заголовке запроса только, если они были в
5571        нижнем регистре; ошибка появилась в 0.6.11.
5572 
5573     *) Исправление: sub_filter не работал с пустой строкой замены.
5574 
5575     *) Исправление: в парсинге sub_filter.
5576 
5577 
5578 Изменения в nginx 0.6.13                                          24.09.2007
5579 
5580     *) Исправление: nginx не закрывал файл каталога для запроса HEAD, если
5581        использовался autoindex
5582        Спасибо Arkadiusz Patyk.
5583 
5584 
5585 Изменения в nginx 0.6.12                                          21.09.2007
5586 
5587     *) Изменение: почтовый прокси-сервер разделён на три модуля: pop3, imap
5588        и smtp.
5589 
5590     *) Добавление: параметры конфигурации --without-mail_pop3_module,
5591        --without-mail_imap_module и --without-mail_smtp_module.
5592 
5593     *) Добавление: директивы smtp_greeting_delay и smtp_client_buffer модуля
5594        ngx_mail_smtp_module.
5595 
5596     *) Исправление: wildcard в конце имени сервера не работали; ошибка
5597        появилась в 0.6.9.
5598 
5599     *) Исправление: при использовании разделяемой библиотеки PCRE,
5600        расположенной в нестандартном месте, nginx не запускался на Solaris.
5601 
5602     *) Исправление: директивы proxy_hide_header и fastcgi_hide_header не
5603        скрывали строки заголовка ответа с именем больше 32 символов.
5604        Спасибо Manlio Perillo.
5605 
5606 
5607 Изменения в nginx 0.6.11                                          11.09.2007
5608 
5609     *) Исправление: счётчик активных соединений всегда рос при использовании
5610        почтового прокси-сервера.
5611 
5612     *) Исправление: если бэкенд возвращал только заголовок ответа при
5613        небуферизированном проксировании, то nginx закрывал соединение с
5614        бэкендом по таймауту.
5615 
5616     *) Исправление: nginx не поддерживал несколько строк "Connection" в
5617        заголовке запроса.
5618 
5619     *) Исправление: если в сервере апстрима был задан max_fails, то после
5620        первой же неудачной попытки вес сервера навсегда становился равным
5621        одному; ошибка появилась в 0.6.6.
5622 
5623 
5624 Изменения в nginx 0.6.10                                          03.09.2007
5625 
5626     *) Добавление: директивы open_file_cache, open_file_cache_retest и
5627        open_file_cache_errors.
5628 
5629     *) Исправление: утечки сокетов; ошибка появилась в 0.6.7.
5630 
5631     *) Исправление: В строку заголовка ответа "Content-Type", указанную в
5632        методе $r->send_http_header(), не добавлялась кодировка, указанная в
5633        директиве charset.
5634 
5635     *) Исправление: при использовании метода /dev/poll в рабочем процессе
5636        мог произойти segmentation fault.
5637 
5638 
5639 Изменения в nginx 0.6.9                                           28.08.2007
5640 
5641     *) Исправление: рабочий процесс мог зациклиться при использовании
5642        протокола HTTPS; ошибка появилась в 0.6.7.
5643 
5644     *) Исправление: если сервер слушал на двух адресах или портах, то nginx
5645        не запускался при использовании wildcard в конце имени сервера.
5646 
5647     *) Исправление: директива ip_hash могла неверно помечать сервера как
5648        нерабочие.
5649 
5650     *) Исправление: nginx не собирался на amd64; ошибка появилась в 0.6.8.
5651 
5652 
5653 Изменения в nginx 0.6.8                                           20.08.2007
5654 
5655     *) Изменение: теперь nginx пытается установить директивы
5656        worker_priority, worker_rlimit_nofile, worker_rlimit_core,
5657        worker_rlimit_sigpending без привилегий root'а.
5658 
5659     *) Изменение: теперь nginx экранирует символы пробела и "%" при передаче
5660        запроса серверу аутентификации почтового прокси-сервера.
5661 
5662     *) Изменение: теперь nginx экранирует символ "%" в переменной
5663        $memcached_key.
5664 
5665     *) Исправление: при указании относительного пути к конфигурационному
5666        файлу в качестве параметра ключа -c nginx определял путь относительно
5667        конфигурационного префикса; ошибка появилась в 0.6.6.
5668 
5669     *) Исправление: nginx не работал на FreeBSD/sparc64.
5670 
5671 
5672 Изменения в nginx 0.6.7                                           15.08.2007
5673 
5674     *) Изменение: теперь пути, указанные в директивах include,
5675        auth_basic_user_file, perl_modules, ssl_certificate,
5676        ssl_certificate_key и ssl_client_certificate, определяются
5677        относительно каталога конфигурационного файла nginx.conf, а не
5678        относительно префикса.
5679 
5680     *) Изменение: параметр --sysconfdir=PATH в configure упразднён.
5681 
5682     *) Изменение: для обновления на лету версий 0.1.x создан специальный
5683        сценарий make upgrade1.
5684 
5685     *) Добавление: директивы server_name и valid_referers поддерживают
5686        регулярные выражения.
5687 
5688     *) Добавление: директива server в блоке upstream поддерживает параметр
5689        backup.
5690 
5691     *) Добавление: модуль ngx_http_perl_module поддерживает метод
5692        $r->discard_request_body.
5693 
5694     *) Добавление: директива "add_header Last-Modified ..." меняет строку
5695        "Last-Modified" в заголовке ответа.
5696 
5697     *) Исправление: если на запрос с телом возвращался ответ с кодом HTTP
5698        отличным от 200, и после этого запроса соединение переходило в
5699        состояние keep-alive, то на следующий запрос nginx возвращал 400.
5700 
5701     *) Исправление: если в директиве auth_http был задан неправильный адрес,
5702        то в рабочем процессе происходил segmentation fault.
5703 
5704     *) Исправление: теперь по умолчанию nginx использует значение 511 для
5705        listen backlog на всех платформах, кроме FreeBSD.
5706        Спасибо Jiang Hong.
5707 
5708     *) Исправление: рабочий процесс мог зациклиться, если server в блоке
5709        upstream был помечен как down; ошибка появилась в 0.6.6.
5710 
5711     *) Исправление: sendfilev() в Solaris теперь не используется при
5712        передаче тела запроса FastCGI-серверу через unix domain сокет.
5713 
5714 
5715 Изменения в nginx 0.6.6                                           30.07.2007
5716 
5717     *) Добавление: параметр --sysconfdir=PATH в configure.
5718 
5719     *) Добавление: именованные location'ы.
5720 
5721     *) Добавление: переменную $args можно устанавливать с помощью set.
5722 
5723     *) Добавление: переменная $is_args.
5724 
5725     *) Исправление: равномерное распределение запросов к апстримам с
5726        большими весами.
5727 
5728     *) Исправление: если клиент в почтовом прокси-сервере закрывал
5729        соединение, то nginx мог не закрывать соединение с бэкендом.
5730 
5731     *) Исправление: при использовании одного хоста в качестве бэкендов для
5732        протоколов HTTP и HTTPS без явного указания портов, nginx использовал
5733        только один порт - 80 или 443.
5734 
5735     *) Исправление: nginx не собирался на Solaris/amd64 Sun Studio 11 и
5736        более ранними версиями; ошибка появилась в 0.6.4.
5737 
5738 
5739 Изменения в nginx 0.6.5                                           23.07.2007
5740 
5741     *) Добавление: переменная $nginx_version.
5742        Спасибо Николаю Гречуху.
5743 
5744     *) Добавление: почтовый прокси-сервер поддерживает AUTHENTICATE в режиме
5745        IMAP.
5746        Спасибо Максиму Дунину.
5747 
5748     *) Добавление: почтовый прокси-сервер поддерживает STARTTLS в режиме
5749        SMTP.
5750        Спасибо Максиму Дунину.
5751 
5752     *) Исправление: теперь nginx экранирует пробел в переменной
5753        $memcached_key.
5754 
5755     *) Исправление: nginx неправильно собирался Sun Studio на Solaris/amd64.
5756        Спасибо Jiang Hong.
5757 
5758     *) Исправление: незначительных потенциальных ошибок.
5759        Спасибо Coverity's Scan.
5760 
5761 
5762 Изменения в nginx 0.6.4                                           17.07.2007
5763 
5764     *) Безопасность: при использовании директивы msie_refresh был возможен
5765        XSS.
5766        Спасибо Максиму Богуку.
5767 
5768     *) Изменение: директивы proxy_store и fastcgi_store изменены.
5769 
5770     *) Добавление: директивы proxy_store_access и fastcgi_store_access.
5771 
5772     *) Исправление: nginx не работал на Solaris/sparc64, если был собран Sun
5773        Studio.
5774        Спасибо Андрею Нигматулину.
5775 
5776     *) Изменение: обход ошибки в Sun Studio 12.
5777        Спасибо Jiang Hong.
5778 
5779 
5780 Изменения в nginx 0.6.3                                           12.07.2007
5781 
5782     *) Добавление: директивы proxy_store и fastcgi_store.
5783 
5784     *) Исправление: при использовании директивы auth_http_header в рабочем
5785        процессе мог произойти segmentation fault.
5786        Спасибо Максиму Дунину.
5787 
5788     *) Исправление: если использовался метод аутентификации CRAM-MD5, но он
5789        не был разрешён, то в рабочем процессе происходил segmentation fault.
5790 
5791     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
5792        в рабочем процессе мог произойти segmentation fault.
5793 
5794     *) Исправление: в рабочем процессе мог произойти segmentation fault,
5795        если использовался метод eventport.
5796 
5797     *) Исправление: директивы proxy_ignore_client_abort и
5798        fastcgi_ignore_client_abort не работали; ошибка появилась в 0.5.13.
5799 
5800 
5801 Изменения в nginx 0.6.2                                           09.07.2007
5802 
5803     *) Исправление: если заголовок ответа был разделён в FastCGI-записях, то
5804        nginx передавал клиенту мусор в таких заголовках.
5805 
5806 
5807 Изменения в nginx 0.6.1                                           17.06.2007
5808 
5809     *) Исправление: в парсинге SSI.
5810 
5811     *) Исправление: при использовании удалённого подзапроса в SSI
5812        последующий подзапрос локального файла мог отдаваться клиенту в
5813        неверном порядке.
5814 
5815     *) Исправление: большие включения в SSI, сохранённые во временные файлы,
5816        передавались не полностью.
5817 
5818     *) Исправление: значение perl'овой переменной $$ модуля
5819        ngx_http_perl_module было равно номеру главного процесса.
5820 
5821 
5822 Изменения в nginx 0.6.0                                           14.06.2007
5823 
5824     *) Добавление: директивы "server_name", "map", and "valid_referers"
5825        поддерживают маски вида "www.example.*".
5826 
5827 
5828 Изменения в nginx 0.5.25                                          11.06.2007
5829 
5830     *) Исправление: nginx не собирался с параметром
5831        --without-http_rewrite_module; ошибка появилась в 0.5.24.
5832 
5833 
5834 Изменения в nginx 0.5.24                                          06.06.2007
5835 
5836     *) Безопасность: директива ssl_verify_client не работала, если запрос
5837        выполнялся по протоколу HTTP/0.9.
5838 
5839     *) Исправление: при использовании сжатия часть ответа могла передаваться
5840        несжатой; ошибка появилась в 0.5.23.
5841 
5842 
5843 Изменения в nginx 0.5.23                                          04.06.2007
5844 
5845     *) Добавление: модуль ngx_http_ssl_module поддерживает расширение TLS
5846        Server Name Indication.
5847 
5848     *) Добавление: директива fastcgi_catch_stderr.
5849        Спасибо Николаю Гречуху, проект OWOX.
5850 
5851     *) Исправление: на Линуксе в основном процессе происходил segmentation
5852        fault, если два виртуальных сервера должны bind()ится к
5853        пересекающимся портам.
5854 
5855     *) Исправление: если nginx был собран с модулем ngx_http_perl_module и
5856        perl поддерживал потоки, то во время второй переконфигурации
5857        выдавались ошибки "panic: MUTEX_LOCK" и "perl_parse() failed".
5858 
5859     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
5860 
5861 
5862 Изменения в nginx 0.5.22                                          29.05.2007
5863 
5864     *) Исправление: большое тело запроса могло не передаваться бэкенду;
5865        ошибка появилась в 0.5.21.
5866 
5867 
5868 Изменения в nginx 0.5.21                                          28.05.2007
5869 
5870     *) Исправление: если внутри сервера описано больше примерно десяти
5871        location'ов, то location'ы, заданные с помощью регулярного выражения,
5872        могли выполняться не в том, порядке, в каком они описаны.
5873 
5874     *) Исправление: на 64-битной платформе рабочий процесс мог зациклиться,
5875        если 33-тий по счёту или последующий бэкенд упал.
5876        Спасибо Антону Поварову.
5877 
5878     *) Исправление: при использовании библиотеки PCRE на Solaris/sparc64 мог
5879        произойти bus error.
5880        Спасибо Андрею Нигматулину.
5881 
5882     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
5883 
5884 
5885 Изменения в nginx 0.5.20                                          07.05.2007
5886 
5887     *) Добавление: директива sendfile_max_chunk.
5888 
5889     *) Добавление: переменные "$http_...", "$sent_http_..." и
5890        "$upstream_http_..." можно менять директивой set.
5891 
5892     *) Исправление: при использовании SSI-команды 'if expr="$var = /"' в
5893        рабочем процессе мог произойти segmentation fault.
5894 
5895     *) Исправление: завершающая строка multipart range ответа передавалась
5896        неверно.
5897        Спасибо Evan Miller.
5898 
5899     *) Исправление: nginx не работал на Solaris/sparc64, если был собран Sun
5900        Studio.
5901        Спасибо Андрею Нигматулину.
5902 
5903     *) Исправление: модуль ngx_http_perl_module не собирался make в Solaris.
5904        Спасибо Андрею Нигматулину.
5905 
5906 
5907 Изменения в nginx 0.5.19                                          24.04.2007
5908 
5909     *) Изменение: значение переменной $request_time теперь записывается с
5910        точностью до миллисекунд.
5911 
5912     *) Изменение: метод $r->rflush в модуле ngx_http_perl_module
5913        переименован в $r->flush.
5914 
5915     *) Добавление: переменная $upstream_addr.
5916 
5917     *) Добавление: директивы proxy_headers_hash_max_size и
5918        proxy_headers_hash_bucket_size.
5919        Спасибо Володымыру Костырко.
5920 
5921     *) Исправление: при использовании sendfile и limit_rate на 64-битных
5922        платформах нельзя было передавать файлы больше 2G.
5923 
5924     *) Исправление: при использовании sendfile на 64-битном Linux нельзя
5925        было передавать файлы больше 2G.
5926 
5927 
5928 Изменения в nginx 0.5.18                                          19.04.2007
5929 
5930     *) Добавление: модуль ngx_http_sub_filter_module.
5931 
5932     *) Добавление: переменные "$upstream_http_...".
5933 
5934     *) Добавление: теперь переменные $upstream_status и
5935        $upstream_response_time содержат данные о всех обращениях к
5936        апстримам, сделанным до X-Accel-Redirect.
5937 
5938     *) Исправление: если nginx был собран с модулем ngx_http_perl_module и
5939        perl не поддерживал multiplicity, то после первой переконфигурации и
5940        после получения любого сигнала в основном процессе происходил
5941        segmentation fault; ошибка появилась в 0.5.9.
5942 
5943     *) Исправление: если perl не поддерживал multiplicity, то после
5944        переконфигурации перловый код не работал; ошибка появилась в 0.3.38.
5945 
5946 
5947 Изменения в nginx 0.5.17                                          02.04.2007
5948 
5949     *) Изменение: теперь nginx для метода TRACE всегда возвращает код 405.
5950 
5951     *) Добавление: теперь nginx поддерживает директиву include внутри блока
5952        types.
5953 
5954     *) Исправление: использование переменной $document_root в директиве root
5955        и alias запрещено: оно вызывало рекурсивное переполнение стека.
5956 
5957     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
5958 
5959     *) Исправление: в некоторых случаях некэшируемые переменные (такие, как
5960        $uri) возвращали старое закэшированное значение.
5961 
5962 
5963 Изменения в nginx 0.5.16                                          26.03.2007
5964 
5965     *) Исправление: в качестве ключа для хэша в директиве ip_hash не
5966        использовалась сеть класса С.
5967        Спасибо Павлу Ярковому.
5968 
5969     *) Исправление: если в строке "Content-Type" в заголовке ответа бэкенда
5970        был указан charset и строка завершалась символом ";", то в рабочем
5971        процессе мог произойти segmentation fault; ошибка появилась в 0.3.50.
5972 
5973     *) Исправление: ошибки "[alert] zero size buf" при работе с
5974        FastCGI-сервером, если тело запроса, записанное во временный файл,
5975        было кратно 32K.
5976 
5977     *) Исправление: nginx не собирался на Solaris без параметра
5978        --with-debug; ошибка появилась в 0.5.15.
5979 
5980 
5981 Изменения в nginx 0.5.15                                          19.03.2007
5982 
5983     *) Добавление: почтовый прокси-сервер поддерживает аутентифицированное
5984        SMTP-проксирование и директивы smtp_auth, smtp_capabilities и
5985        xclient.
5986        Спасибо Антону Южанинову и Максиму Дунину.
5987 
5988     *) Добавление: теперь keep-alive соединения закрываются сразу же по
5989        получении сигнала переконфигурации.
5990 
5991     *) Изменение: директивы imap и auth переименованы соответственно в mail
5992        и pop3_auth.
5993 
5994     *) Исправление: если использовался метод аутентификации CRAM-MD5 и не
5995        был разрешён метод APOP, то в рабочем процессе происходил
5996        segmentation fault.
5997 
5998     *) Исправление: при использовании директивы starttls only в протоколе
5999        POP3 nginx разрешал аутентификацию без перехода в режим SSL.
6000 
6001     *) Исправление: рабочие процессы не выходили после переконфигурации и не
6002        переоткрывали логи, если использовался метод eventport.
6003 
6004     *) Исправление: при использовании директивы ip_hash рабочий процесс мог
6005        зациклиться.
6006 
6007     *) Исправление: теперь nginx не пишет в лог некоторые alert'ы, если
6008        используются методы eventport или /dev/poll.
6009 
6010 
6011 Изменения в nginx 0.5.14                                          23.02.2007
6012 
6013     *) Исправление: nginx игнорировал лишние закрывающие скобки "}" в конце
6014        конфигурационного файла.
6015 
6016 
6017 Изменения в nginx 0.5.13                                          19.02.2007
6018 
6019     *) Добавление: методы COPY и MOVE.
6020 
6021     *) Исправление: модуль ngx_http_realip_module устанавливал мусор для
6022        запросов, переданных по keep-alive соединению.
6023 
6024     *) Исправление: nginx не работал на 64-битном big-endian Linux.
6025        Спасибо Андрею Нигматулину.
6026 
6027     *) Исправление: при получении слишком длинной команды IMAP/POP3-прокси
6028        теперь сразу закрывает соединение, а не по таймауту.
6029 
6030     *) Исправление: если при использовании метода epoll клиент закрывал
6031        преждевременно соединение со своей стороны, то nginx закрывал это
6032        соединение только по истечении таймаута на передачу.
6033 
6034     *) Исправление: nginx не собирался на платформах, отличных от i386,
6035        amd64, sparc и ppc; ошибка появилась в 0.5.8.
6036 
6037 
6038 Изменения в nginx 0.5.12                                          12.02.2007
6039 
6040     *) Исправление: nginx не собирался на платформах, отличных от i386,
6041        amd64, sparc и ppc; ошибка появилась в 0.5.8.
6042 
6043     *) Исправление: при использовании временных файлов в время работы с
6044        FastCGI-сервером в рабочем процессе мог произойти segmentation fault;
6045        ошибка появилась в 0.5.8.
6046 
6047     *) Исправление: если переменная $fastcgi_script_name записывалась в лог,
6048        то в рабочем процессе мог произойти segmentation fault.
6049 
6050     *) Исправление: ngx_http_perl_module не собирался на Solaris.
6051 
6052 
6053 Изменения в nginx 0.5.11                                          05.02.2007
6054 
6055     *) Добавление: теперь configure определяет библиотеку PCRE в MacPorts.
6056        Спасибо Chris McGrath.
6057 
6058     *) Исправление: ответ был неверным, если запрашивалось несколько
6059        диапазонов; ошибка появилась в 0.5.6.
6060 
6061     *) Исправление: директива create_full_put_path не могла создавать
6062        промежуточные каталоги, если не была установлена директива
6063        dav_access.
6064        Спасибо Evan Miller.
6065 
6066     *) Исправление: вместо кодов ошибок "400" и "408" в access_log мог
6067        записываться код "0".
6068 
6069     *) Исправление: при сборке с оптимизацией -O2 в рабочем процессе мог
6070        произойти segmentation fault.
6071 
6072 
6073 Изменения в nginx 0.5.10                                          26.01.2007
6074 
6075     *) Исправление: во время обновления исполняемого файла новый процесс не
6076        наследовал слушающие сокеты; ошибка появилась в 0.5.9.
6077 
6078     *) Исправление: при сборке с оптимизацией -O2 в рабочем процессе мог
6079        произойти segmentation fault; ошибка появилась в 0.5.1.
6080 
6081 
6082 Изменения в nginx 0.5.9                                           25.01.2007
6083 
6084     *) Изменение: модуль ngx_http_memcached_module теперь в качестве ключа
6085        использует значение переменной $memcached_key.
6086 
6087     *) Добавление: переменная $memcached_key.
6088 
6089     *) Добавление: параметр clean в директиве client_body_in_file_only.
6090 
6091     *) Добавление: директива env.
6092 
6093     *) Добавление: директива sendfile работает внутри блока if.
6094 
6095     *) Добавление: теперь при ошибке записи в access_log nginx записывает
6096        сообщение в error_log, но не чаще одного раза в минуту.
6097 
6098     *) Исправление: директива "access_log off" не всегда запрещала запись в
6099        лог.
6100 
6101 
6102 Изменения в nginx 0.5.8                                           19.01.2007
6103 
6104     *) Исправление: если использовалась директива
6105        "client_body_in_file_only on" и тело запроса было небольшое, то мог
6106        произойти segmentation fault.
6107 
6108     *) Исправление: происходил segmentation fault, если использовались
6109        директивы "client_body_in_file_only on" и
6110        "proxy_pass_request_body off" или "fastcgi_pass_request_body off", и
6111        делался переход к следующему бэкенду.
6112 
6113     *) Исправление: если при использовании директивы "proxy_buffering off"
6114        соединение с клиентом было неактивно, то оно закрывалось по таймауту,
6115        заданному директивой send_timeout; ошибка появилась в 0.4.7.
6116 
6117     *) Исправление: если при использовании метода epoll клиент закрывал
6118        преждевременно соединение со своей стороны, то nginx закрывал это
6119        соединение только по истечении таймаута на передачу.
6120 
6121     *) Исправление: ошибки "[alert] zero size buf" при работе с
6122        FastCGI-сервером.
6123 
6124     *) Исправление ошибок в директиве limit_zone.
6125 
6126 
6127 Изменения в nginx 0.5.7                                           15.01.2007
6128 
6129     *) Добавление: оптимизация использования памяти в ssl_session_cache.
6130 
6131     *) Исправление ошибок в директивах ssl_session_cache и limit_zone.
6132 
6133     *) Исправление: на старте или во время переконфигурации происходил
6134        segmentation fault, если директивы ssl_session_cache или limit_zone
6135        использовались на 64-битных платформах.
6136 
6137     *) Исправление: при использовании директив add_before_body или
6138        add_after_body происходил segmentation fault, если в заголовке ответа
6139        нет строки "Content-Type".
6140 
6141     *) Исправление: библиотека OpenSSL всегда собиралась с поддержкой
6142        потоков.
6143        Спасибо Дену Иванову.
6144 
6145     *) Исправление: совместимость библиотеки PCRE-6.5+ и компилятора icc.
6146 
6147 
6148 Изменения в nginx 0.5.6                                           09.01.2007
6149 
6150     *) Изменение: теперь модуль ngx_http_index_module игнорирует все методы,
6151        кроме GET, HEAD и POST.
6152 
6153     *) Добавление: модуль ngx_http_limit_zone_module.
6154 
6155     *) Добавление: переменная $binary_remote_addr.
6156 
6157     *) Добавление: директивы ssl_session_cache модулей ngx_http_ssl_module и
6158        ngx_imap_ssl_module.
6159 
6160     *) Добавление: метод DELETE поддерживает рекурсивное удаление.
6161 
6162     *) Исправление: при использовании $r->sendfile() byte-ranges
6163        передавались неверно.
6164 
6165 
6166 Изменения в nginx 0.5.5                                           24.12.2006
6167 
6168     *) Изменение: ключ -v больше не выводит информацию о компиляторе.
6169 
6170     *) Добавление: ключ -V.
6171 
6172     *) Добавление: директива worker_rlimit_core поддерживает указание
6173        размера в K, M и G.
6174 
6175     *) Исправление: модуль nginx.pm теперь может устанавливаться
6176        непривилегированным пользователем.
6177 
6178     *) Исправление: при использовании методов $r->request_body или
6179        $r->request_body_file мог произойти segmentation fault.
6180 
6181     *) Исправление: ошибок, специфичных для платформы ppc.
6182 
6183 
6184 Изменения в nginx 0.5.4                                           15.12.2006
6185 
6186     *) Добавление: директиву perl можно использовать внутри блока
6187        limit_except.
6188 
6189     *) Исправление: модуль ngx_http_dav_module требовал строку "Date" в
6190        заголовке запроса для метода DELETE.
6191 
6192     *) Исправление: при использовании одного параметра в директиве
6193        dav_access nginx мог сообщить об ошибке в конфигурации.
6194 
6195     *) Исправление: при использовании переменной $host мог произойти
6196        segmentation fault; ошибка появилась в 0.4.14.
6197 
6198 
6199 Изменения в nginx 0.5.3                                           13.12.2006
6200 
6201     *) Добавление: модуль ngx_http_perl_module поддерживает методы
6202        $r->status, $r->log_error и $r->sleep.
6203 
6204     *) Добавление: метод $r->variable поддерживает переменные, неописанные в
6205        конфигурации nginx'а.
6206 
6207     *) Исправление: метод $r->has_request_body не работал.
6208 
6209 
6210 Изменения в nginx 0.5.2                                           11.12.2006
6211 
6212     *) Исправление: если в директивах proxy_pass использовалось имя,
6213        указанное в upstream, то nginx пытался найти IP-адрес этого имени;
6214        ошибка появилась в 0.5.1.
6215 
6216 
6217 Изменения в nginx 0.5.1                                           11.12.2006
6218 
6219     *) Исправление: директива post_action могла не работать после неудачного
6220        завершения запроса.
6221 
6222     *) Изменение: обход ошибки в Eudora для Mac; ошибка появилась в 0.4.11.
6223        Спасибо Bron Gondwana.
6224 
6225     *) Исправление: при указании в директиве fastcgi_pass имени описанного
6226        upstream'а выдавалось сообщение "no port in upstream"; ошибка
6227        появилась в 0.5.0.
6228 
6229     *) Исправление: если в директивах proxy_pass и fastcgi_pass
6230        использовались одинаковых имена серверов, но с разными портами, то
6231        эти директивы использовали первый описанный порт; ошибка появилась в
6232        0.5.0.
6233 
6234     *) Исправление: если в директивах proxy_pass и fastcgi_pass
6235        использовались unix domain сокеты, то эти директивы использовали
6236        первый описанный сокет; ошибка появилась в 0.5.0.
6237 
6238     *) Исправление: ngx_http_auth_basic_module игнорировал пользователя,
6239        если он был указан в последней строке файла паролей и после пароля не
6240        было перевода строки, возврата каретки или символа ":".
6241 
6242     *) Исправление: переменная $upstream_response_time могла быть равна
6243        "0.000", хотя время обработки было больше 1 миллисекунды.
6244 
6245 
6246 Изменения в nginx 0.5.0                                           04.12.2006
6247 
6248     *) Изменение: параметры в виде "%name" в директиве log_format больше не
6249        поддерживаются.
6250 
6251     *) Изменение: директивы proxy_upstream_max_fails,
6252        proxy_upstream_fail_timeout, fastcgi_upstream_max_fails, и
6253        fastcgi_upstream_fail_timeout, memcached_upstream_max_fails и
6254        memcached_upstream_fail_timeout больше не поддерживаются.
6255 
6256     *) Добавление: директива server в блоке upstream поддерживает параметры
6257        max_fails, fail_timeout и down.
6258 
6259     *) Добавление: директива ip_hash в блоке upstream.
6260 
6261     *) Добавление: статус WAIT в строке "Auth-Status" в заголовке ответа
6262        сервера аутентификации IMAP/POP3 прокси.
6263 
6264     *) Исправление: nginx не собирался на 64-битных платформах; ошибка
6265        появилась в 0.4.14.
6266 
6267 
6268 Изменения в nginx 0.4.14                                          27.11.2006
6269 
6270     *) Добавление: директива proxy_pass_error_message в IMAP/POP3 прокси.
6271 
6272     *) Добавление: теперь configure определяет библиотеку PCRE на FreeBSD,
6273        Linux и NetBSD.
6274 
6275     *) Исправление: ngx_http_perl_module не работал с перлом, собранным с
6276        поддержкой потоков; ошибка появилась в 0.3.38.
6277 
6278     *) Исправление: ngx_http_perl_module не работал корректно, если перл
6279        вызывался рекурсивно.
6280 
6281     *) Исправление: nginx игнорировал имя сервера в строке запроса.
6282 
6283     *) Исправление: если FastCGI сервер передавал много в stderr, то рабочий
6284        процесс мог зациклиться.
6285 
6286     *) Исправление: при изменении системного времени переменная
6287        $upstream_response_time могла быть отрицательной.
6288 
6289     *) Исправление: при использовании POP3 серверу аутентификации IMAP/POP3
6290        прокси не передавался параметр Auth-Login-Attempt.
6291 
6292     *) Исправление: при ошибке соединения с сервером аутентификации
6293        IMAP/POP3 прокси мог произойти segmentation fault.
6294 
6295 
6296 Изменения в nginx 0.4.13                                          15.11.2006
6297 
6298     *) Добавление: директиву proxy_pass можно использовать внутри блока
6299        limit_except.
6300 
6301     *) Добавление: директива limit_except поддерживает все WebDAV методы.
6302 
6303     *) Исправление: при использовании директивы add_before_body без
6304        директивы add_after_body ответ передавался не полностью.
6305 
6306     *) Исправление: большое тело запроса не принималось, если использовались
6307        метод epoll и deferred accept().
6308 
6309     *) Исправление: для ответов модуля ngx_http_autoindex_module не
6310        выставлялась кодировка; ошибка появилась в 0.3.50.
6311 
6312     *) Исправление: ошибки "[alert] zero size buf" при работе с
6313        FastCGI-сервером;
6314 
6315     *) Исправление: параметр конфигурации --group= игнорировался.
6316        Спасибо Thomas Moschny.
6317 
6318     *) Исправление: 50-й подзапрос в SSI ответе не работал; ошибка появилась
6319        в 0.3.50.
6320 
6321 
6322 Изменения в nginx 0.4.12                                          31.10.2006
6323 
6324     *) Добавление: модуль ngx_http_perl_module поддерживает метод
6325        $r->variable.
6326 
6327     *) Исправление: при включении в ответ большого статического файла с
6328        помощью SSI ответ мог передаваться не полностью.
6329 
6330     *) Исправление: nginx не убирал "#fragment" в URI.
6331 
6332 
6333 Изменения в nginx 0.4.11                                          25.10.2006
6334 
6335     *) Добавление: POP3 прокси поддерживает AUTH LOGIN PLAIN и CRAM-MD5.
6336 
6337     *) Добавление: модуль ngx_http_perl_module поддерживает метод
6338        $r->allow_ranges.
6339 
6340     *) Исправление: при включённой поддержке команды APOP в POP3 прокси
6341        могли не работать команды USER/PASS; ошибка появилась в 0.4.10.
6342 
6343 
6344 Изменения в nginx 0.4.10                                          23.10.2006
6345 
6346     *) Добавление: POP3 прокси поддерживает APOP.
6347 
6348     *) Исправление: при использовании методов select, poll и /dev/poll во
6349        время ожидания ответа от сервера аутентификации IMAP/POP3 прокси
6350        нагружал процессор.
6351 
6352     *) Исправление: при использовании переменной $server_addr в директиве
6353        map мог произойти segmentation fault.
6354 
6355     *) Исправление: модуль ngx_http_flv_module не поддерживал byte ranges
6356        для полных ответов; ошибка появилась в 0.4.7.
6357 
6358     *) Исправление: nginx не собирался на Debian amd64; ошибка появилась в
6359        0.4.9.
6360 
6361 
6362 Изменения в nginx 0.4.9                                           13.10.2006
6363 
6364     *) Добавление: параметр set в команде SSI include.
6365 
6366     *) Добавление: модуль ngx_http_perl_module теперь проверяет версию
6367        модуля nginx.pm.
6368 
6369 
6370 Изменения в nginx 0.4.8                                           11.10.2006
6371 
6372     *) Исправление: если до команды SSI include с параметром wait
6373        выполнялась ещё одна команда SSI include, то параметр wait мог не
6374        работать.
6375 
6376     *) Исправление: модуль ngx_http_flv_module добавлял FLV-заголовок для
6377        полных ответов.
6378        Спасибо Алексею Ковырину.
6379 
6380 
6381 Изменения в nginx 0.4.7                                           10.10.2006
6382 
6383     *) Добавление: модуль ngx_http_flv_module.
6384 
6385     *) Добавление: переменная $request_body_file.
6386 
6387     *) Добавление: директивы charset и source_charset поддерживают
6388        переменные.
6389 
6390     *) Исправление: если до команды SSI include с параметром wait
6391        выполнялась ещё одна команда SSI include, то параметр wait мог не
6392        работать.
6393 
6394     *) Исправление: при использовании директивы "proxy_buffering off" или
6395        при работе с memcached соединения могли не закрываться по таймауту.
6396 
6397     *) Исправление: nginx не запускался на 64-битных платформах, отличных от
6398        amd64, sparc64 и ppc64.
6399 
6400 
6401 Изменения в nginx 0.4.6                                           06.10.2006
6402 
6403     *) Исправление: nginx не запускался на 64-битных платформах, отличных от
6404        amd64, sparc64 и ppc64.
6405 
6406     *) Исправление: при запросе версии HTTP/1.1 nginx передавал ответ
6407        chunk'ами, если длина ответа в методе
6408        $r->headers_out("Content-Length", ...) была задана текстовой строкой.
6409 
6410     *) Исправление: после перенаправления ошибки с помощью директивы
6411        error_page любая директива модуля ngx_http_rewrite_module возвращала
6412        эту ошибку; ошибка появилась в 0.4.4.
6413 
6414 
6415 Изменения в nginx 0.4.5                                           02.10.2006
6416 
6417     *) Исправление: nginx не собирался на Linux и Solaris; ошибка появилась
6418        в 0.4.4.
6419 
6420 
6421 Изменения в nginx 0.4.4                                           02.10.2006
6422 
6423     *) Добавление: переменная $scheme.
6424 
6425     *) Добавление: директива expires поддерживает параметр max.
6426 
6427     *) Добавление: директива include поддерживает маску "*".
6428        Спасибо Jonathan Dance.
6429 
6430     *) Исправление: директива return всегда изменяла код ответа,
6431        перенаправленного директивой error_page.
6432 
6433     *) Исправление: происходил segmentation fault, если в методе PUT
6434        передавалось тело нулевой длины.
6435 
6436     *) Исправление: при использовании переменных в директиве proxy_redirect
6437        редирект изменялся неверно.
6438 
6439 
6440 Изменения в nginx 0.4.3                                           26.09.2006
6441 
6442     *) Изменение: ошибку 499 теперь нельзя перенаправить с помощью директивы
6443        error_page.
6444 
6445     *) Добавление: поддержка Solaris 10 event ports.
6446 
6447     *) Добавление: модуль ngx_http_browser_module.
6448 
6449     *) Исправление: при перенаправлении ошибки 400 проксированному серверу
6450        помощью директивы error_page мог произойти segmentation fault.
6451 
6452     *) Исправление: происходил segmentation fault, если в директиве
6453        proxy_pass использовался unix domain сокет; ошибка появилась в
6454        0.3.47.
6455 
6456     *) Исправление: SSI не работал с ответами memcached и
6457        небуферизированными проксированными ответами.
6458 
6459     *) Изменение: обход ошибки PAUSE hardware capability в Sun Studio.
6460 
6461 
6462 Изменения в nginx 0.4.2                                           14.09.2006
6463 
6464     *) Исправление: убрана поддержка флага O_NOATIME на Linux; ошибка
6465        появилась в 0.4.1.
6466 
6467 
6468 Изменения в nginx 0.4.1                                           14.09.2006
6469 
6470     *) Исправление: совместимость с DragonFlyBSD.
6471        Спасибо Павлу Назарову.
6472 
6473     *) Изменение: обход ошибки в sendfile() в 64-битном Linux при передаче
6474        файлов больше 2G.
6475 
6476     *) Добавление: теперь на Linux nginx для статических запросов использует
6477        флаг O_NOATIME.
6478        Спасибо Yusuf Goolamabbas.
6479 
6480 
6481 Изменения в nginx 0.4.0                                           30.08.2006
6482 
6483     *) Изменение во внутреннем API: инициализация модулей HTTP перенесена из
6484        фазы init module в фазу HTTP postconfiguration.
6485 
6486     *) Изменение: теперь тело запроса в модуле ngx_http_perl_module не
6487        считывается заранее: нужно явно инициировать чтение с помощью метода
6488        $r->has_request_body.
6489 
6490     *) Добавление: модуль ngx_http_perl_module поддерживает код возврата
6491        DECLINED.
6492 
6493     *) Добавление: модуль ngx_http_dav_module поддерживает входящую строку
6494        заголовка "Date" для метода PUT.
6495 
6496     *) Добавление: директива ssi работает внутри блока if.
6497 
6498     *) Исправление: происходил segmentation fault, если в директиве index
6499        использовалась переменные и при этом первое имя индексного файла было
6500        без переменных; ошибка появилась в 0.1.29.
6501 
6502 
6503 Изменения в nginx 0.3.61                                          28.08.2006
6504 
6505     *) Изменение: директива tcp_nodelay теперь по умолчанию включена.
6506 
6507     *) Добавление: директива msie_refresh.
6508 
6509     *) Добавление: директива recursive_error_pages.
6510 
6511     *) Исправление: директива rewrite возвращала неправильный редирект, если
6512        редирект включал в себя выделенные закодированные символы из
6513        оригинального URI.
6514 
6515 
6516 Изменения в nginx 0.3.60                                          18.08.2006
6517 
6518     *) Исправление: во время перенаправления ошибки рабочий процесс мог
6519        зациклиться; ошибка появилась в 0.3.59.
6520 
6521 
6522 Изменения в nginx 0.3.59                                          16.08.2006
6523 
6524     *) Добавление: теперь можно делать несколько перенаправлений через
6525        директиву error_page.
6526 
6527     *) Исправление: директива dav_access не поддерживала три параметра.
6528 
6529     *) Исправление: директива error_page не изменяла строку "Content-Type"
6530        после перенаправления с помощью "X-Accel-Redirect"; ошибка появилась
6531        в 0.3.58.
6532 
6533 
6534 Изменения в nginx 0.3.58                                          14.08.2006
6535 
6536     *) Добавление: директива error_page поддерживает переменные.
6537 
6538     *) Изменение: теперь на Linux используется интерфейс procfs вместо
6539        sysctl.
6540 
6541     *) Изменение: теперь при использовании "X-Accel-Redirect" строка
6542        "Content-Type" наследуется из первоначального ответа.
6543 
6544     *) Исправление: директива error_page не перенаправляла ошибку 413.
6545 
6546     *) Исправление: завершающий "?" не удалял старые аргументы, если в
6547        переписанном URI не было новых аргументов.
6548 
6549     *) Исправление: nginx не запускался на 64-битной FreeBSD 7.0-CURRENT.
6550 
6551 
6552 Изменения в nginx 0.3.57                                          09.08.2006
6553 
6554     *) Добавление: переменная $ssl_client_serial.
6555 
6556     *) Исправление: в операторе "!-e" в директиве if.
6557        Спасибо Андриану Буданцову.
6558 
6559     *) Исправление: при проверке клиентского сертификата nginx не передавал
6560        клиенту информацию о требуемых сертификатах.
6561 
6562     *) Исправление: переменная $document_root не поддерживала переменные в
6563        директиве root.
6564 
6565 
6566 Изменения в nginx 0.3.56                                          04.08.2006
6567 
6568     *) Добавление: директива dav_access.
6569 
6570     *) Добавление: директива if поддерживает операторы "-d", "!-d", "-e",
6571        "!-e", "-x" и "!-x".
6572 
6573     *) Исправление: при записи в access_log некоторых передаваемых клиенту
6574        строк заголовков происходил segmentation fault, если запрос возвращал
6575        редирект.
6576 
6577 
6578 Изменения в nginx 0.3.55                                          28.07.2006
6579 
6580     *) Добавление: параметр stub в команде SSI include.
6581 
6582     *) Добавление: команда SSI block.
6583 
6584     *) Добавление: скрипт unicode2nginx добавлен в contrib.
6585 
6586     *) Исправление: если root был задан только переменной, то корень
6587        задавался относительно префикса сервера.
6588 
6589     *) Исправление: если в запросе был "//" или "/.", и после этого
6590        закодированные символы в виде "%XX", то проксируемый запрос
6591        передавался незакодированным.
6592 
6593     *) Исправление: метод $r->header_in("Cookie") модуля
6594        ngx_http_perl_module теперь возвращает все строки "Cookie" в
6595        заголовке запроса.
6596 
6597     *) Исправление: происходил segmentation fault, если использовался
6598        "client_body_in_file_only on" и делался переход к следующему бэкенду.
6599 
6600     *) Исправление: при некоторых условиях во время переконфигурации коды
6601        символов внутри директивы charset_map могли считаться неверными;
6602        ошибка появилась в 0.3.50.
6603 
6604 
6605 Изменения в nginx 0.3.54                                          11.07.2006
6606 
6607     *) Добавление: nginx теперь записывает в лог информацию о подзапросах.
6608 
6609     *) Добавление: директивы proxy_next_upstream, fastcgi_next_upstream и
6610        memcached_next_upstream поддерживают параметр off.
6611 
6612     *) Добавление: директива debug_connection поддерживает запись адресов в
6613        формате CIDR.
6614 
6615     *) Исправление: при перекодировании ответа проксированного сервера или
6616        сервера FastCGI в UTF-8 или наоборот ответ мог передаваться не
6617        полностью.
6618 
6619     *) Исправление: переменная $upstream_response_time содержала время
6620        только первого обращения к бэкенду.
6621 
6622     *) Исправление: nginx не собирался на платформе amd64; ошибка появилась
6623        в 0.3.53.
6624 
6625 
6626 Изменения в nginx 0.3.53                                          07.07.2006
6627 
6628     *) Изменение: директива add_header добавляет строки в ответы с кодом
6629        204, 301 и 302.
6630 
6631     *) Добавление: директива server в блоке upstream поддерживает параметр
6632        weight.
6633 
6634     *) Добавление: директива server_name поддерживает маску "*".
6635 
6636     *) Добавление: nginx поддерживает тело запроса больше 2G.
6637 
6638     *) Исправление: если при использовании "satisfy_any on" клиент успешно
6639        проходил аутентификацию, в лог всё равно записалоcь сообщение "access
6640        forbidden by rule".
6641 
6642     *) Исправление: метод PUT мог ошибочно не создать файл и вернуть код
6643        409.
6644 
6645     *) Исправление: если во время аутентификации IMAP/POP3 бэкенд возвращал
6646        ошибку, nginx продолжал проксирование.
6647 
6648 
6649 Изменения в nginx 0.3.52                                          03.07.2006
6650 
6651     *) Изменение: восстановлено поведение модуля ngx_http_index_module для
6652        запросов "POST /": как в версии до 0.3.40, модуль теперь не выдаёт
6653        ошибку 405.
6654 
6655     *) Исправление: при использовании ограничения скорости рабочий процесс
6656        мог зациклиться; ошибка появилась в 0.3.37.
6657 
6658     *) Исправление: модуль ngx_http_charset_module записывал в лог ошибку
6659        "unknown charset", даже если перекодировка не требовалась; ошибка
6660        появилась в 0.3.50.
6661 
6662     *) Исправление: если в результате запроса PUT возвращался код 409, то
6663        временный файл не удалялся.
6664 
6665 
6666 Изменения в nginx 0.3.51                                          30.06.2006
6667 
6668     *) Исправление: при некоторых условиях в SSI мог пропадать символы "<";
6669        ошибка появилась в 0.3.50.
6670 
6671 
6672 Изменения в nginx 0.3.50                                          28.06.2006
6673 
6674     *) Изменение: директивы proxy_redirect_errors и fastcgi_redirect_errors
6675        переименованы соответственно в proxy_intercept_errors и
6676        fastcgi_intercept_errors.
6677 
6678     *) Добавление: модуль ngx_http_charset_module поддерживает
6679        перекодирование из однобайтных кодировок в UTF-8 и обратно.
6680 
6681     *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка
6682        "X-Accel-Charset" в ответе бэкенда.
6683 
6684     *) Исправление: символ "\" в парах "\"" и "\'" в SSI командах убирался,
6685        только если также использовался символ "$".
6686 
6687     *) Исправление: при некоторых условиях в SSI после вставки могла быть
6688        добавлена строка "<!--".
6689 
6690     *) Исправление: если в заголовке ответа была строка "Content-Length: 0",
6691        то при использовании небуферизированного проксировании не закрывалось
6692        соединение с клиентом.
6693 
6694 
6695 Изменения в nginx 0.3.49                                          31.05.2006
6696 
6697     *) Исправление: в директиве set.
6698 
6699     *) Исправление: при включении в ssi двух и более подзапросов,
6700        обрабатываемых через FastCGI, вместо вывода второго и остальных
6701        подзапросов в ответ включался вывод первого подзапроса.
6702 
6703 
6704 Изменения в nginx 0.3.48                                          29.05.2006
6705 
6706     *) Изменение: теперь модуль ngx_http_charset_module работает для
6707        подзапросов, в ответах которых нет строки заголовка "Content-Type".
6708 
6709     *) Исправление: если в директиве proxy_pass не было URI, то директива
6710        "proxy_redirect default" добавляла в переписанный редирект в начало
6711        лишний слэш.
6712 
6713     *) Исправление: внутренний редирект всегда превращал любой HTTP-метод в
6714        GET, теперь это делается только для редиректов, выполняемых с помощью
6715        X-Accel-Redirect, и у которых метод не равен HEAD; ошибка появилась в
6716        0.3.42.
6717 
6718     *) Исправление: модуль ngx_http_perl_module не собирался, если перл был
6719        с поддержкой потоков; ошибка появилась в 0.3.46.
6720 
6721 
6722 Изменения в nginx 0.3.47                                          23.05.2006
6723 
6724     *) Добавление: директива upstream.
6725 
6726     *) Изменение: символ "\" в парах "\"" и "\'" в SSI командах теперь
6727        всегда убирается.
6728 
6729 
6730 Изменения в nginx 0.3.46                                          11.05.2006
6731 
6732     *) Добавление: директивы proxy_hide_header, proxy_pass_header,
6733        fastcgi_hide_header и fastcgi_pass_header.
6734 
6735     *) Изменение: директивы proxy_pass_x_powered_by, fastcgi_x_powered_by и
6736        proxy_pass_server упразднены.
6737 
6738     *) Добавление: в режиме прокси поддерживается строка заголовка
6739        "X-Accel-Buffering" в ответе бэкенда.
6740 
6741     *) Исправление: ошибок и утечек памяти при переконфигурации в модуле
6742        ngx_http_perl_module.
6743 
6744 
6745 Изменения в nginx 0.3.45                                          06.05.2006
6746 
6747     *) Добавление: директивы ssl_verify_client, ssl_verify_depth и
6748        ssl_client_certificate.
6749 
6750     *) Изменение: теперь переменная $request_method возвращает метод только
6751        основного запроса.
6752 
6753     *) Изменение: в таблице перекодировки koi-win изменены коды символа
6754        &deg;.
6755 
6756     *) Добавление: в таблицу перекодировки koi-win добавлены символы евро и
6757        номера.
6758 
6759     *) Исправление: если nginx распределял запросы на несколько машин, то
6760        при падении одной из них запросы, предназначенные для этой машины,
6761        перенаправлялись только на одну машину вместо того, чтобы равномерно
6762        распределяться между остальными.
6763 
6764 
6765 Изменения в nginx 0.3.44                                          04.05.2006
6766 
6767     *) Добавление: параметр wait в команде SSI include.
6768 
6769     *) Добавление: в таблицу перекодировки koi-win добавлены украинские и
6770        белорусские символы.
6771 
6772     *) Исправление: в SSI.
6773 
6774 
6775 Изменения в nginx 0.3.43                                          26.04.2006
6776 
6777     *) Исправление: в SSI.
6778 
6779 
6780 Изменения в nginx 0.3.42                                          26.04.2006
6781 
6782     *) Добавление: параметр bind в директиве listen в IMAP/POP3 прокси.
6783 
6784     *) Исправление: ошибки при использовании в директиве rewrite одного и
6785        того же выделения более одного раза.
6786 
6787     *) Исправление: в лог не записывались переменные
6788        $sent_http_content_type, $sent_http_content_length,
6789        $sent_http_last_modified, $sent_http_connection,
6790        $sent_http_keep_alive и $sent_http_transfer_encoding.
6791 
6792     *) Исправление: переменная $sent_http_cache_control возвращала
6793        содержимое только одной строки "Cache-Control" в заголовке ответа.
6794 
6795 
6796 Изменения в nginx 0.3.41                                          21.04.2006
6797 
6798     *) Добавление: ключ -v.
6799 
6800     *) Исправление: при включении в SSI удалённых подзапросов мог произойти
6801        segmentation fault.
6802 
6803     *) Исправление: в обработке FastCGI.
6804 
6805     *) Исправление: если путь к перловым модулям не был указан с помощью
6806        --with-perl_modules_path=PATH или директивы perl_modules, то на
6807        старте происходил segmentation fault.
6808 
6809 
6810 Изменения в nginx 0.3.40                                          19.04.2006
6811 
6812     *) Добавление: модуль ngx_http_dav_module поддерживает метод MKCOL.
6813 
6814     *) Добавление: директива create_full_put_path.
6815 
6816     *) Добавление: переменная $limit_rate.
6817 
6818 
6819 Изменения в nginx 0.3.39                                          17.04.2006
6820 
6821     *) Добавление: директива uninitialized_variable_warn; уровень
6822        логгирования сообщения о неинициализированной переменной понижен с
6823        уровня alert на warn.
6824 
6825     *) Добавление: директива override_charset.
6826 
6827     *) Изменение: при использовании неизвестной переменной в SSI-командах
6828        echo и if expr='$name' теперь не записывается в лог сообщение о
6829        неизвестной переменной.
6830 
6831     *) Исправление: счётчик активных соединений рос при превышении лимита
6832        соединений, заданного директивой worker_connections; ошибка появилась
6833        в 0.2.0.
6834 
6835     *) Исправление: при некоторых условия ограничение скорости соединения
6836        могло не работать; ошибка появилась в 0.3.38.
6837 
6838 
6839 Изменения в nginx 0.3.38                                          14.04.2006
6840 
6841     *) Добавление: модуль ngx_http_dav_module.
6842 
6843     *) Изменение: оптимизация модуля ngx_http_perl_module.
6844        Спасибо Сергею Скворцову.
6845 
6846     *) Добавление: модуль ngx_http_perl_module поддерживает метод
6847        $r->request_body_file.
6848 
6849     *) Добавление: директива client_body_in_file_only.
6850 
6851     *) Изменение: теперь при переполнении диска nginx пытается писать
6852        access_log'и только раз в секунду.
6853        Спасибо Антону Южанинову и Максиму Дунину.
6854 
6855     *) Исправление: теперь директива limit_rate точнее ограничивает скорость
6856        при значениях больше 100 Kbyte/s.
6857        Спасибо ForJest.
6858 
6859     *) Исправление: IMAP/POP3 прокси теперь передаёт серверу авторизации
6860        символы "\r" и "\n" в логине и пароле в закодированном виде.
6861        Спасибо Максиму Дунину.
6862 
6863 
6864 Изменения в nginx 0.3.37                                          07.04.2006
6865 
6866     *) Добавление: директива limit_except.
6867 
6868     *) Добавление: директива if поддерживает операторы "!~", "!~*", "-f" и
6869        "!-f".
6870 
6871     *) Добавление: модуль ngx_http_perl_module поддерживает метод
6872        $r->request_body.
6873 
6874     *) Исправление: в модуле ngx_http_addition_filter_module.
6875 
6876 
6877 Изменения в nginx 0.3.36                                          05.04.2006
6878 
6879     *) Добавление: модуль ngx_http_addition_filter_module.
6880 
6881     *) Добавление: директивы proxy_pass и fastcgi_pass можно использовать
6882        внутри блока if.
6883 
6884     *) Добавление: директивы proxy_ignore_client_abort и
6885        fastcgi_ignore_client_abort.
6886 
6887     *) Добавление: переменная $request_completion.
6888 
6889     *) Добавление: модуль ngx_http_perl_module поддерживает методы
6890        $r->request_method и $r->remote_addr.
6891 
6892     *) Добавление: модуль ngx_http_ssi_module поддерживает команду elif.
6893 
6894     *) Исправление: строка "\/" в начале выражения команды if модуля
6895        ngx_http_ssi_module воспринималась неверно.
6896 
6897     *) Исправление: в использовании регулярных выражениях в команде if
6898        модуля ngx_http_ssi_module.
6899 
6900     *) Исправление: при задании относительного пути в директивах
6901        client_body_temp_path, proxy_temp_path, fastcgi_temp_path и
6902        perl_modules использовался каталог относительно текущего каталога, а
6903        не относительно префикса сервера.
6904 
6905 
6906 Изменения в nginx 0.3.35                                          22.03.2006
6907 
6908     *) Исправление: accept-фильтр и TCP_DEFER_ACCEPT устанавливались только
6909        для первой директивы listen; ошибка появилась в 0.3.31.
6910 
6911     *) Исправление: в директиве proxy_pass без URI при использовании в
6912        подзапросе.
6913 
6914 
6915 Изменения в nginx 0.3.34                                          21.03.2006
6916 
6917     *) Добавление: директива add_header поддерживает переменные.
6918 
6919 
6920 Изменения в nginx 0.3.33                                          15.03.2006
6921 
6922     *) Добавление: параметр http_503 в директивах proxy_next_upstream или
6923        fastcgi_next_upstream.
6924 
6925     *) Исправление: ngx_http_perl_module не работал со встроенным в
6926        конфигурационный файл кодом, если он не начинался сразу же с "sub".
6927 
6928     *) Исправление: в директиве post_action.
6929 
6930 
6931 Изменения в nginx 0.3.32                                          11.03.2006
6932 
6933     *) Исправление: удаление отладочного логгирования на старте и при
6934        переконфигурации; ошибка появилась в 0.3.31.
6935 
6936 
6937 Изменения в nginx 0.3.31                                          10.03.2006
6938 
6939     *) Изменение: теперь nginx передаёт неверные ответы проксированного
6940        бэкенда.
6941 
6942     *) Добавление: директивы listen поддерживают адрес в виде "*:порт".
6943 
6944     *) Добавление: поддержка EVFILER_TIMER в MacOSX 10.4.
6945 
6946     *) Изменение: обход ошибки обработки миллисекундных таймаутов kqueue в
6947        64-битном ядре MacOSX.
6948        Спасибо Андрею Нигматулину.
6949 
6950     *) Исправление: если внутри одного сервера описаны несколько директив
6951        listen, слушающих на разных адресах, то имена серверов вида
6952        "*.domain.tld" работали только для первого адреса; ошибка появилась в
6953        0.3.18.
6954 
6955     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
6956        не передавались запросы с телом, записанным во временный файл.
6957 
6958     *) Исправление: совместимость с perl 5.8.8.
6959 
6960 
6961 Изменения в nginx 0.3.30                                          22.02.2006
6962 
6963     *) Изменение: уровень записи в лог ошибки ECONNABORTED изменён на error
6964        с уровня crit.
6965 
6966     *) Исправление: модуль ngx_http_perl_module не собирался без модуля
6967        ngx_http_ssi_filter_module.
6968 
6969     *) Исправление: nginx не собирался на i386 платформе, если использовался
6970        PIC; ошибка появилась в 0.3.27.
6971 
6972 
6973 Изменения в nginx 0.3.29                                          20.02.2006
6974 
6975     *) Добавление: теперь nginx использует меньше памяти, если PHP в режиме
6976        FastCGI передаёт большое количество предупреждений перед ответом.
6977 
6978     *) Исправление: в ответах 204 для запросов версии HTTP/1.1 выдавалась
6979        строка заголовка "Transfer-Encoding: chunked".
6980 
6981     *) Исправление: nginx возвращал 502 код ответа, если FastCGI сервер
6982        передавал полные строки заголовка ответа в отдельных FastCGI записях.
6983 
6984     *) Исправление: если в директиве post_action был указан проксируемый
6985        URI, то он выполнялся только после успешного завершения запроса.
6986 
6987 
6988 Изменения в nginx 0.3.28                                          16.02.2006
6989 
6990     *) Добавление: директива restrict_host_names упразднена.
6991 
6992     *) Добавление: параметр конфигурации --with-cpu-opt=ppc64.
6993 
6994     *) Исправление: при некоторых условиях проксированное соединение с
6995        клиентом завершалось преждевременно.
6996        Спасибо Владимиру Шутову.
6997 
6998     *) Исправление: строка заголовка "X-Accel-Limit-Rate" не учитывалась для
6999        запросов, перенаправленных с помощью строки "X-Accel-Redirect".
7000 
7001     *) Исправление: директива post_action работала только после успешного
7002        завершения запроса.
7003 
7004     *) Исправление: тело проксированного ответа, создаваемого директивой
7005        post_action, передавалось клиенту.
7006 
7007 
7008 Изменения в nginx 0.3.27                                          08.02.2006
7009 
7010     *) Изменение: директивы variables_hash_max_size и
7011        variables_hash_bucket_size.
7012 
7013     *) Добавление: переменная $body_bytes_sent доступна не только в
7014        директиве log_format.
7015 
7016     *) Добавление: переменные $ssl_protocol и $ssl_cipher.
7017 
7018     *) Добавление: определение размера строки кэша распространённых
7019        процессоров при старте.
7020 
7021     *) Добавление: директива accept_mutex теперь поддерживается посредством
7022        fcntl(2) на платформах, отличных от i386, amd64, sparc64 и ppc.
7023 
7024     *) Добавление: директива lock_file и параметр автоконфигурации
7025        --with-lock-path=PATH.
7026 
7027     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
7028        не передавались запросы с телом.
7029 
7030 
7031 Изменения в nginx 0.3.26                                          03.02.2006
7032 
7033     *) Изменение: директива optimize_host_names переименована в
7034        optimize_server_names.
7035 
7036     *) Исправление: при проксировании подзапроса в SSI бэкенду передавался
7037        URI основного запроса, если в директиве proxy_pass отсутствовал URI.
7038 
7039 
7040 Изменения в nginx 0.3.25                                          01.02.2006
7041 
7042     *) Исправление: при неверной конфигурации на старте или во время
7043        переконфигурации происходил segmentation fault; ошибка появилась в
7044        0.3.24.
7045 
7046 
7047 Изменения в nginx 0.3.24                                          01.02.2006
7048 
7049     *) Изменение: обход ошибки в kqueue во FreeBSD.
7050 
7051     *) Исправление: ответ, создаваемый директивой post_action, теперь не
7052        передаётся клиенту.
7053 
7054     *) Исправление: при использовании большого количества лог-файлов
7055        происходила утечка памяти.
7056 
7057     *) Исправление: внутри одного location работала только первая директива
7058        proxy_redirect.
7059 
7060     *) Исправление: на 64-битных платформах при старте мог произойти
7061        segmentation fault, если использовалось большое количество имён в
7062        директивах server_name; ошибка появилась в 0.3.18.
7063 
7064 
7065 Изменения в nginx 0.3.23                                          24.01.2006
7066 
7067     *) Добавление: директива optimize_host_names.
7068 
7069     *) Исправление: ошибки при использовании переменных в директивах path и
7070        alias.
7071 
7072     *) Исправление: модуль ngx_http_perl_module неправильно собирался на
7073        Linux и Solaris.
7074 
7075 
7076 Изменения в nginx 0.3.22                                          17.01.2006
7077 
7078     *) Добавление: модуль ngx_http_perl_module поддерживает методы $r->args
7079        и $r->unescape.
7080 
7081     *) Добавление: метод $r->query_string в модуле ngx_http_perl_module
7082        упразднён.
7083 
7084     *) Исправление: если в директиве valid_referers указаны только none или
7085        blocked, то происходил segmentation fault; ошибка появилась в 0.3.18.
7086 
7087 
7088 Изменения в nginx 0.3.21                                          16.01.2006
7089 
7090     *) Добавление: модуль ngx_http_perl_module.
7091 
7092     *) Изменение: директива valid_referers разрешает использовать рефереры
7093        совсем без URI.
7094 
7095 
7096 Изменения в nginx 0.3.20                                          11.01.2006
7097 
7098     *) Исправление: ошибки в обработке SSI.
7099 
7100     *) Исправление: модуль ngx_http_memcached_module не поддерживал ключи в
7101        виде /uri?args.
7102 
7103 
7104 Изменения в nginx 0.3.19                                          28.12.2005
7105 
7106     *) Добавление: директивы path и alias поддерживают переменные.
7107 
7108     *) Изменение: теперь директива valid_referers опять учитывает URI.
7109 
7110     *) Исправление: ошибки в обработке SSI.
7111 
7112 
7113 Изменения в nginx 0.3.18                                          26.12.2005
7114 
7115     *) Добавление: директива server_names поддерживает имена вида
7116        ".domain.tld".
7117 
7118     *) Добавление: директива server_names использует хэш для имён вида
7119        "*.domain.tld" и более эффективный хэш для обычных имён.
7120 
7121     *) Изменение: директивы server_names_hash_max_size и
7122        server_names_hash_bucket_size.
7123 
7124     *) Изменение: директивы server_names_hash и server_names_hash_threshold
7125        упразднены.
7126 
7127     *) Добавление: директива valid_referers использует хэш для имён сайтов.
7128 
7129     *) Изменение: теперь директива valid_referers проверяет только имена
7130        сайтов без учёта URI.
7131 
7132     *) Исправление: некоторые имена вида ".domain.tld" неверно
7133        обрабатывались модулем ngx_http_map_module.
7134 
7135     *) Исправление: если конфигурационного файла не было, то происходил
7136        segmentation fault; ошибка появилась в 0.3.12.
7137 
7138     *) Исправление: на 64-битных платформах при старте мог произойти
7139        segmentation fault; ошибка появилась в 0.3.16.
7140 
7141 
7142 Изменения в nginx 0.3.17                                          18.12.2005
7143 
7144     *) Изменение: на Linux configure теперь проверяет наличие epoll и
7145        sendfile64() в ядре.
7146 
7147     *) Добавление: директива map поддерживает доменные имена в формате
7148        ".domain.tld".
7149 
7150     *) Исправление: во время SSL handshake не иcпользовались таймауты;
7151        ошибка появилась в 0.2.4.
7152 
7153     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
7154 
7155     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
7156        по умолчанию использовался порт 80.
7157 
7158 
7159 Изменения в nginx 0.3.16                                          16.12.2005
7160 
7161     *) Добавление: модуль ngx_http_map_module.
7162 
7163     *) Добавление: директивы types_hash_max_size и types_hash_bucket_size.
7164 
7165     *) Добавление: директива ssi_value_length.
7166 
7167     *) Добавление: директива worker_rlimit_core.
7168 
7169     *) Изменение: при сборке компиляторами icc 8.1 и 9.0 с оптимизацией для
7170        Pentium 4 номер соединения в логах всегда был равен 1.
7171 
7172     *) Исправление: команда config timefmt в SSI задавала неверный формат
7173        времени.
7174 
7175     *) Исправление: nginx не закрывал соединения с IMAP/POP3 бэкендом при
7176        использовании SSL соединений; ошибка появилась в 0.3.13.
7177        Спасибо Rob Mueller.
7178 
7179     *) Исправление: segmentation fault мог произойти во время SSL shutdown;
7180        ошибка появилась в 0.3.13.
7181 
7182 
7183 Изменения в nginx 0.3.15                                          07.12.2005
7184 
7185     *) Добавление: новой код 444 в директиве return для закрытия соединения.
7186 
7187     *) Добавление: директива so_keepalive в IMAP/POP3 прокси.
7188 
7189     *) Исправление: nginx теперь вызывает abort() при обнаружении незакрытых
7190        соединений только при плавном выходе и включённой директиве
7191        debug_points.
7192 
7193 
7194 Изменения в nginx 0.3.14                                          05.12.2005
7195 
7196     *) Исправление: в ответе 304 передавалось тело ответа; ошибка появилась
7197        в 0.3.13.
7198 
7199 
7200 Изменения в nginx 0.3.13                                          05.12.2005
7201 
7202     *) Добавление: IMAP/POP3 прокси поддерживает STARTTLS и STLS.
7203 
7204     *) Исправление: IMAP/POP3 прокси не работала с методами select, poll и
7205        /dev/poll.
7206 
7207     *) Исправление: ошибки в обработке SSI.
7208 
7209     *) Исправление: sendfilev() в Solaris теперь не используется при
7210        передаче тела запроса FastCGI-серверу через unix domain сокет.
7211 
7212     *) Исправление: директива auth_basic не запрещала аутентификацию; ошибка
7213        появилась в 0.3.11.
7214 
7215 
7216 Изменения в nginx 0.3.12                                          26.11.2005
7217 
7218     *) Безопасность: если nginx был собран с модулем ngx_http_realip_module,
7219        то при использовании директивы "satisfy_any on" директивы доступа и
7220        аутентификации не работали. Модуль ngx_http_realip_module не
7221        собирался и не собирается по умолчанию.
7222 
7223     *) Изменение: имя переменной "$time_gmt" изменено на "$time_local".
7224 
7225     *) Изменение: директивы proxy_header_buffer_size и
7226        fastcgi_header_buffer_size переименованы соответственно в
7227        proxy_buffer_size и fastcgi_buffer_size.
7228 
7229     *) Добавление: модуль ngx_http_memcached_module.
7230 
7231     *) Добавление: директива proxy_buffering.
7232 
7233     *) Исправление: изменение в работе с accept mutex при использовании
7234        метода rtsig; ошибка появилась в 0.3.0.
7235 
7236     *) Исправление: если клиент передал строку "Transfer-Encoding: chunked"
7237        в заголовке запроса, то nginx теперь выдаёт ошибку 411.
7238 
7239     *) Исправление: при наследовании директивы auth_basic с уровня http в
7240        строке "WWW-Authenticate" заголовка ответа выводился realm без текста
7241        "Basic realm".
7242 
7243     *) Исправление: если в директиве access_log был явно указан формат
7244        combined, то в лог записывались пустые строки; ошибка появилась в
7245        0.3.8.
7246 
7247     *) Исправление: nginx не работал на платформе sparc под любыми OS, кроме
7248        Solaris.
7249 
7250     *) Исправление: в директиве if теперь не нужно разделять пробелом строку
7251        в кавычках и закрывающую скобку.
7252 
7253 
7254 Изменения в nginx 0.3.11                                          15.11.2005
7255 
7256     *) Исправление: nginx не передавал при проксировании тело запроса и
7257        строки заголовка клиента; ошибка появилась в 0.3.10.
7258 
7259 
7260 Изменения в nginx 0.3.10                                          15.11.2005
7261 
7262     *) Изменение: директива valid_referers и переменная $invalid_referer
7263        перенесены из модуля ngx_http_rewrite_module в новый модуль
7264        ngx_http_referer_module.
7265 
7266     *) Изменение: имя переменной "$apache_bytes_sent" изменено на
7267        "$body_bytes_sent".
7268 
7269     *) Добавление: переменные "$sent_http_...".
7270 
7271     *) Добавление: директива if поддерживает операции "=" и "!=".
7272 
7273     *) Добавление: директива proxy_pass поддерживает протокол HTTPS.
7274 
7275     *) Добавление: директива proxy_set_body.
7276 
7277     *) Добавление: директива post_action.
7278 
7279     *) Добавление: модуль ngx_http_empty_gif_module.
7280 
7281     *) Добавление: директива worker_cpu_affinity для Linux.
7282 
7283     *) Исправление: директива rewrite не раскодировала символы в редиректах
7284        в URI, теперь символы раскодируются, кроме символов %00-%25 и
7285        %7F-%FF.
7286 
7287     *) Исправление: nginx не собирался компилятором icc 9.0.
7288 
7289     *) Исправление: если для статического файла нулевого размера был
7290        разрешён SSI, то ответ передавался неверно при кодировании chunk'ами.
7291 
7292 
7293 Изменения в nginx 0.3.9                                           10.11.2005
7294 
7295     *) Исправление: nginx считал небезопасными URI, в которых между двумя
7296        слэшами находилось два любых символа; ошибка появилась в 0.3.8.
7297 
7298 
7299 Изменения в nginx 0.3.8                                           09.11.2005
7300 
7301     *) Безопасность: nginx теперь проверят URI, полученные от бэкенда в
7302        строке "X-Accel-Redirect" в заголовке ответа, или в SSI файле на
7303        наличие путей "/../" и нулей.
7304 
7305     *) Изменение: nginx теперь не воспринимает пустое имя как правильное в
7306        строке "Authorization" в заголовке запроса.
7307 
7308     *) Добавление: директива ssl_session_timeout модулей ngx_http_ssl_module
7309        и ngx_imap_ssl_module.
7310 
7311     *) Добавление: директива auth_http_header модуля
7312        ngx_imap_auth_http_module.
7313 
7314     *) Добавление: директива add_header.
7315 
7316     *) Добавление: модуль ngx_http_realip_module.
7317 
7318     *) Добавление: новые переменные для использования в директиве
7319        log_format: $bytes_sent, $apache_bytes_sent, $status, $time_gmt,
7320        $uri, $request_time, $request_length, $upstream_status,
7321        $upstream_response_time, $gzip_ratio, $uid_got, $uid_set,
7322        $connection, $pipe и $msec. Параметры в виде "%name" скоро будут
7323        упразднены.
7324 
7325     *) Изменение: в директиве "if" ложными значениями переменных теперь
7326        являются пустая строка "" и строки, начинающиеся на "0".
7327 
7328     *) Исправление: при работает с проксированными или FastCGI-серверами
7329        nginx мог оставлять открытыми соединения и временные файлы с
7330        запросами клиентов.
7331 
7332     *) Исправление: рабочие процессы не сбрасывали буферизированные логи при
7333        плавном выходе.
7334 
7335     *) Исправление: если URI запроса изменялось с помощью rewrite, а затем
7336        запрос проксировался в location, заданном регулярным выражением, то
7337        бэкенду передавался неверный запрос; ошибка появилась в 0.2.6.
7338 
7339     *) Исправление: директива expires не удаляла уже установленную строку
7340        заголовка "Expires".
7341 
7342     *) Исправление: при использовании метода rtsig и нескольких рабочих
7343        процессах nginx мог перестать принимать запросы.
7344 
7345     *) Исправление: в SSI командах неверно обрабатывались строки "\"" и
7346        "\'".
7347 
7348     *) Исправление: если ответ заканчивался сразу же после SSI команды, то
7349        при использовании сжатия ответ передавался не до конца или не
7350        передавался вообще.
7351 
7352 
7353 Изменения в nginx 0.3.7                                           27.10.2005
7354 
7355     *) Добавление: директива access_log поддерживает параметр buffer=.
7356 
7357     *) Исправление: nginx не собирался на платформах, отличных от i386,
7358        amd64, sparc и ppc; ошибка появилась в 0.3.2.
7359 
7360 
7361 Изменения в nginx 0.3.6                                           24.10.2005
7362 
7363     *) Изменение: IMAP/POP3 прокси теперь не передаёт серверу авторизации
7364        пустой логин.
7365 
7366     *) Добавление: директива log_format поддерживает переменные в виде
7367        $name.
7368 
7369     *) Исправление: если хотя бы в одном сервере не было описано ни одной
7370        директивы listen, то nginx не слушал на 80 порту; ошибка появилась в
7371        0.3.3.
7372 
7373     *) Исправление: если в директиве proxy_pass отсутствовал URI, то всегда
7374        использовался порт 80.
7375 
7376 
7377 Изменения в nginx 0.3.5                                           21.10.2005
7378 
7379     *) Исправление: если логин IMAP/POP3 менялся сервером авторизации, то
7380        мог произойти segmentation fault; ошибка появилась в 0.2.2.
7381 
7382     *) Исправление: accept mutex не работал, все соединения обрабатывались
7383        одним рабочим процессом; ошибка появилась в 0.3.3.
7384 
7385     *) Исправление: при использовании метода rtsig и директивы
7386        timer_resolution не работали таймауты.
7387 
7388 
7389 Изменения в nginx 0.3.4                                           19.10.2005
7390 
7391     *) Исправление: nginx не собирался на Linux 2.4+ и MacOS X; ошибка
7392        появилась в 0.3.3.
7393 
7394 
7395 Изменения в nginx 0.3.3                                           19.10.2005
7396 
7397     *) Изменение: параметры "bl" и "af" директивы listen переименованы в
7398        "backlog" и "accept_filter".
7399 
7400     *) Добавление: параметры "rcvbuf" и "sndbuf" в директиве listen.
7401 
7402     *) Изменение: параметр лога $msec теперь не требует дополнительного
7403        системного вызова gettimeofday().
7404 
7405     *) Добавление: ключ -t теперь проверяет директивы listen.
7406 
7407     *) Исправление: если в директиве listen был указан неверный адрес, то
7408        nginx после сигнала -HUP оставлял открытый сокет в состоянии CLOSED.
7409 
7410     *) Исправление: для индексных файлов, содержащих в имени переменную, мог
7411        неверно выставляться тип mime по умолчанию; ошибка появилась в 0.3.0.
7412 
7413     *) Добавление: директива timer_resolution.
7414 
7415     *) Добавление: параметр лога $upstream_response_time в миллисекундах.
7416 
7417     *) Исправление: временный файл с телом запроса клиента теперь удаляется
7418        сразу после того, как клиенту передан заголовок ответа.
7419 
7420     *) Исправление: совместимость с OpenSSL 0.9.6.
7421 
7422     *) Исправление: пути к файлам с SSL сертификатом и ключом не могли быть
7423        относительными.
7424 
7425     *) Исправление: директива ssl_prefer_server_ciphers не работала для
7426        модуля ngx_imap_ssl_module.
7427 
7428     *) Исправление: директива ssl_protocols позволяла задать только один
7429        протокол.
7430 
7431 
7432 Изменения в nginx 0.3.2                                           12.10.2005
7433 
7434     *) Добавление: поддержка Sun Studio 10 C compiler.
7435 
7436     *) Добавление: директивы proxy_upstream_max_fails,
7437        proxy_upstream_fail_timeout, fastcgi_upstream_max_fails и
7438        fastcgi_upstream_fail_timeout.
7439 
7440 
7441 Изменения в nginx 0.3.1                                           10.10.2005
7442 
7443     *) Исправление: во время переполнения очереди сигналов при использовании
7444        метода rtsig происходил segmentation fault; ошибка появилась в 0.2.0.
7445 
7446     *) Изменение: корректная обработка пар "\\", "\"", "\'" и "\$" в SSI.
7447 
7448 
7449 Изменения в nginx 0.3.0                                           07.10.2005
7450 
7451     *) Изменение: убрано десятидневное ограничение времени работы рабочего
7452        процесса. Ограничение было введено из-за переполнения миллисекундных
7453        таймеров.
7454 
7455 
7456 Изменения в nginx 0.2.6                                           05.10.2005
7457 
7458     *) Изменение: с 60 до 10 секунд уменьшено время повторного обращения к
7459        бэкенду при использовании распределения нагрузки.
7460 
7461     *) Изменение: директива proxy_pass_unparsed_uri упразднена, оригинальный
7462        запрос теперь передаётся, если в директиве proxy_pass отсутствует
7463        URI.
7464 
7465     *) Добавление: директива error_page поддерживает редиректы и позволяет
7466        более гибко менять код ошибки.
7467 
7468     *) Изменение: в проксированных подзапросах теперь игнорируется
7469        переданный charset.
7470 
7471     *) Исправление: если после изменения URI в блоке if для запроса не
7472        находилась новая конфигурация, то правила модуля
7473        ngx_http_rewrite_module выполнялись снова.
7474 
7475     *) Исправление: если директива set устанавливала переменную модуля
7476        ngx_http_geo_module в какой-либо части конфигурации, то эта
7477        переменная не была доступна в других частях конфигурации и выдавалась
7478        ошибка "using uninitialized variable"; ошибка появилась в 0.2.2.
7479 
7480 
7481 Изменения в nginx 0.2.5                                           04.10.2005
7482 
7483     *) Изменение: дублирующее значение переменной модуля ngx_http_geo_module
7484        теперь выдаёт предупреждение и изменяет старое значение.
7485 
7486     *) Добавление: модуль ngx_http_ssi_module поддерживает команду set.
7487 
7488     *) Добавление: модуль ngx_http_ssi_module поддерживает параметр file в
7489        команде include.
7490 
7491     *) Добавление: модуль ngx_http_ssi_module поддерживает подстановку
7492        значений переменных в выражениях команды if.
7493 
7494 
7495 Изменения в nginx 0.2.4                                           03.10.2005
7496 
7497     *) Добавление: модуль ngx_http_ssi_module поддерживает выражения
7498        "$var=text", "$var!=text", "$var=/text/" и "$var!=/text/" в команде
7499        if.
7500 
7501     *) Исправление: ошибки при проксировании location без слэша в конце;
7502        ошибка появилась в 0.1.44.
7503 
7504     *) Исправление: при использовании метода rtsig мог произойти
7505        segmentation fault; ошибка появилась в 0.2.0.
7506 
7507 
7508 Изменения в nginx 0.2.3                                           30.09.2005
7509 
7510     *) Исправление: nginx не собирался без параметра --with-debug; ошибка
7511        появилась в 0.2.2.
7512 
7513 
7514 Изменения в nginx 0.2.2                                           30.09.2005
7515 
7516     *) Добавление: команда config errmsg в модуле ngx_http_ssi_module.
7517 
7518     *) Изменение: переменные модуля ngx_http_geo_module можно переопределять
7519        директивой set.
7520 
7521     *) Добавление: директивы ssl_protocols и ssl_prefer_server_ciphers
7522        модулей ngx_http_ssl_module и ngx_imap_ssl_module.
7523 
7524     *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе
7525        длинных имён файлов;
7526 
7527     *) Исправление: модуль ngx_http_autoindex_module теперь не показывает
7528        файлы, начинающиеся на точку.
7529 
7530     *) Исправление: если SSL handshake завершался с ошибкой, то это могло
7531        привести также к закрытию другого соединения.
7532        Спасибо Rob Mueller.
7533 
7534     *) Исправление: экспортные версии MSIE 5.x не могли соединиться по
7535        HTTPS.
7536 
7537 
7538 Изменения в nginx 0.2.1                                           23.09.2005
7539 
7540     *) Исправление: если все бэкенды, используемые для балансировки
7541        нагрузки, оказывались в нерабочем состоянии после одной ошибки, то
7542        nginx мог зациклится; ошибка появилась в 0.2.0.
7543 
7544 
7545 Изменения в nginx 0.2.0                                           23.09.2005
7546 
7547     *) Изменились имена pid-файлов, используемые во время обновления
7548        исполняемого файла. Ручное переименование теперь не нужно. Старый
7549        основной процесс добавляет к своему pid-файл суффикс ".oldbin" и
7550        запускает новый исполняемый файл. Новый основной процесс создаёт
7551        обычный pid-файл без суффикса ".newbin". Если новый основной процесс
7552        выходит, то старый процесс переименовывает свой pid-файл c суффиксом
7553        ".oldbin" в pid-файл без суффикса. При обновлении с версии 0.1.х до
7554        0.2.0 нужно учитывать, что оба процесса - старый 0.1.x и новый
7555        0.2.0 - используют pid-файл без суффиксов.
7556 
7557     *) Изменение: директива worker_connections, новое название директивы
7558        connections; директива теперь задаёт максимальное число соединений, а
7559        не максимально возможный номер дескриптора для сокета.
7560 
7561     *) Добавление: SSL поддерживает кэширование сессий в пределах одного
7562        рабочего процесса.
7563 
7564     *) Добавление: директива satisfy_any.
7565 
7566     *) Изменение: модули ngx_http_access_module и ngx_http_auth_basic_module
7567        не работают для подзапросов.
7568 
7569     *) Добавление: директивы worker_rlimit_nofile и
7570        worker_rlimit_sigpending.
7571 
7572     *) Исправление: если все бэкенды, используемые для балансировки
7573        нагрузки, оказывались в нерабочем состоянии после одной ошибки, то
7574        nginx не обращался к ним в течение 60 секунд.
7575 
7576     *) Исправление: в парсинге аргументов IMAP/POP3 команд.
7577        Спасибо Rob Mueller.
7578 
7579     *) Исправление: ошибки при использовании SSL в IMAP/POP3 прокси.
7580 
7581     *) Исправление: ошибки при использовании SSI и сжатия.
7582 
7583     *) Исправление: в ответах 304 не добавлялись строки заголовка ответа
7584        "Expires" и "Cache-Control".
7585        Спасибо Александру Кукушкину.
7586 
7587 
7588 Изменения в nginx 0.1.45                                          08.09.2005
7589 
7590     *) Изменение: директива ssl_engine упразднена в модуле
7591        ngx_http_ssl_module и перенесена на глобальный уровень.
7592 
7593     *) Исправление: ответы с подзапросами, включённые с помощью SSI, не
7594        передавались через SSL соединение.
7595 
7596     *) Разные исправления в IMAP/POP3 прокси.
7597 
7598 
7599 Изменения в nginx 0.1.44                                          06.09.2005
7600 
7601     *) Добавление: IMAP/POP3 прокси поддерживает SSL.
7602 
7603     *) Добавление: директива proxy_timeout модуля ngx_imap_proxy_module.
7604 
7605     *) Добавление: директива userid_mark.
7606 
7607     *) Добавление: значение переменной $remote_user определяется независимо
7608        от того, используется ли авторизация или нет.
7609 
7610 
7611 Изменения в nginx 0.1.43                                          30.08.2005
7612 
7613     *) Добавление: listen(2) backlog в директиве listen можно менять по
7614        сигналу -HUP.
7615 
7616     *) Добавление: скрипт geo2nginx.pl добавлен в contrib.
7617 
7618     *) Изменение: параметры FastCGI с пустым значениями теперь передаются
7619        серверу.
7620 
7621     *) Исправление: если в ответе проксированного сервера или FastCGI
7622        сервера была строка "Cache-Control", то при использовании директивы
7623        expires происходил segmentation fault или рабочий процесс мог
7624        зациклится; в режиме прокси ошибка появилась в 0.1.29.
7625 
7626 
7627 Изменения в nginx 0.1.42                                          23.08.2005
7628 
7629     *) Исправление: если URI запроса получался нулевой длины после обработки
7630        модулем ngx_http_rewrite_module, то в модуле ngx_http_proxy_module
7631        происходил segmentation fault или bus error.
7632 
7633     *) Исправление: директива limit_rate не работала внутри блока if; ошибка
7634        появилась в 0.1.38.
7635 
7636 
7637 Изменения в nginx 0.1.41                                          25.07.2005
7638 
7639     *) Исправление: если переменная использовалась в файле конфигурации, то
7640        она не могла использоваться в SSI.
7641 
7642 
7643 Изменения в nginx 0.1.40                                          22.07.2005
7644 
7645     *) Исправление: если клиент слал очень длинную строку заголовка, то в
7646        логе не помещалась информация, связанная с этим запросом.
7647 
7648     *) Исправление: при использовании "X-Accel-Redirect" не передавалась
7649        строка "Set-Cookie"; ошибка появилась в 0.1.39.
7650 
7651     *) Исправление: при использовании "X-Accel-Redirect" не передавалась
7652        строка "Content-Disposition".
7653 
7654     *) Исправление: по сигналу SIGQUIT основной процесс не закрывал сокеты,
7655        на которых он слушал.
7656 
7657     *) Исправление: после обновления исполняемого файла на лету на Linux и
7658        Solaris название процесса в команде ps становилось короче.
7659 
7660 
7661 Изменения в nginx 0.1.39                                          14.07.2005
7662 
7663     *) Изменения в модуле ngx_http_charset_module: директива default_charset
7664        упразднена; директива charset задаёт кодировку ответа; директива
7665        source_charset задаёт только исходную кодировку.
7666 
7667     *) Исправление: при перенаправлении ошибки 401, полученной от бэкенда,
7668        не передавалась строка заголовка "WWW-Authenticate".
7669 
7670     *) Исправление: модули ngx_http_proxy_module и ngx_http_fastcgi_module
7671        могли закрыть соединение до того, как что-нибудь было передано
7672        клиенту; ошибка появилась в 0.1.38.
7673 
7674     *) Изменение: обработка ошибки инициализации в crypt_r() в Linux glibc.
7675 
7676     *) Исправление: модуль ngx_http_ssi_module не поддерживал относительные
7677        URI в команде include virtual.
7678 
7679     *) Исправление: если в строке заголовка ответа бэкенда была строка
7680        "Location", которую nginx не должен был изменять, то в ответе
7681        передавалось тело 500 ошибки; ошибка появилась в 0.1.29.
7682 
7683     *) Исправление: некоторые директивы модулей ngx_http_proxy_module и
7684        ngx_http_fastcgi_module не наследовались с уровня server на уровень
7685        location; ошибка появилась в 0.1.29.
7686 
7687     *) Исправление: модуль ngx_http_ssl_module не поддерживал цепочки
7688        сертификатов.
7689 
7690     *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе
7691        длинных имён файлов; ошибка появилась в 0.1.38.
7692 
7693     *) Исправления в IMAP/POP3 прокси при взаимодействии с бэкендом на
7694        стадии login.
7695 
7696 
7697 Изменения в nginx 0.1.38                                          08.07.2005
7698 
7699     *) Добавление: директива limit_rate поддерживается в режиме прокси и
7700        FastCGI.
7701 
7702     *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка
7703        "X-Accel-Limit-Rate" в ответе бэкенда.
7704 
7705     *) Добавление: директива break.
7706 
7707     *) Добавление: директива log_not_found.
7708 
7709     *) Исправление: при перенаправлении запроса с помощью строки заголовка
7710        "X-Accel-Redirect" не изменялся код ответа.
7711 
7712     *) Исправление: переменные, установленные директивой set не могли
7713        использоваться в SSI.
7714 
7715     *) Исправление: при включении в SSI более одного удалённого подзапроса
7716        мог произойти segmentation fault.
7717 
7718     *) Исправление: если статусная строка в ответе бэкенда передавалась в
7719        двух пакетах, то nginx считал ответ неверным; ошибка появилась в
7720        0.1.29.
7721 
7722     *) Добавление: директива ssi_types.
7723 
7724     *) Добавление: директива autoindex_exact_size.
7725 
7726     *) Исправление: модуль ngx_http_autoindex_module не поддерживал длинные
7727        имена файлов в UTF-8.
7728 
7729     *) Добавление: IMAP/POP3 прокси.
7730 
7731 
7732 Изменения в nginx 0.1.37                                          23.06.2005
7733 
7734     *) Изменение: в конце файла nginx.pid теперь добавляется "\n".
7735 
7736     *) Исправление: при включении большого количества вставок или нескольких
7737        больших вставок с помощью SSI ответ мог передаваться не полностью.
7738 
7739     *) Исправление: если все бэкенды возвращали ответ 404, то при
7740        использовании параметра http_404 в директивах proxy_next_upstream или
7741        fastcgi_next_upstream, nginx начинал запрашивать все бэкенды снова.
7742 
7743 
7744 Изменения в nginx 0.1.36                                          15.06.2005
7745 
7746     *) Изменение: если в заголовке запроса есть дублирующиеся строки "Host",
7747        "Connection", "Content-Length" и "Authorization", то nginx теперь
7748        выдаёт ошибку 400.
7749 
7750     *) Изменение: директива post_accept_timeout упразднена.
7751 
7752     *) Добавление: параметры default, af=, bl=, deferred и bind в директиве
7753        listen.
7754 
7755     *) Добавление: поддержка accept фильтров во FreeBSD.
7756 
7757     *) Добавление: поддержка TCP_DEFER_ACCEPT в Linux.
7758 
7759     *) Исправление: модуль ngx_http_autoindex_module не поддерживал имена
7760        файлов в UTF-8.
7761 
7762     *) Исправление: после добавления новый лог-файл ротация этого лога по
7763        сигналу -USR1 выполнялась, только если переконфигурировать nginx два
7764        раза по сигналу -HUP.
7765 
7766 
7767 Изменения в nginx 0.1.35                                          07.06.2005
7768 
7769     *) Добавление: директива working_directory.
7770 
7771     *) Добавление: директива port_in_redirect.
7772 
7773     *) Исправление: если заголовок ответа бэкенда не помещался в один пакет,
7774        то происходил segmentation fault; ошибка появилась в 0.1.29.
7775 
7776     *) Исправление: если было сконфигурировано более 10 серверов или в
7777        сервере не описана директива "listen", то при запуске мог произойти
7778        segmentation fault.
7779 
7780     *) Исправление: если ответ не помещался во временный файл, то мог
7781        произойти segmentation fault.
7782 
7783     *) Исправление: nginx возвращал ошибку 400 на запросы вида
7784        "GET http://www.domain.com/uri HTTP/1.0"; ошибка появилась в 0.1.28.
7785 
7786 
7787 Изменения в nginx 0.1.34                                          26.05.2005
7788 
7789     *) Исправление: при включении больших ответов с помощью SSI рабочий
7790        процесс мог зациклиться.
7791 
7792     *) Исправление: переменные, устанавливаемые директивой "set", не были
7793        доступны в SSI.
7794 
7795     *) Добавление: директива autoindex_localtime.
7796 
7797     *) Исправление: пустое значение в директиве proxy_set_header запрещает
7798        передачу заголовка.
7799 
7800 
7801 Изменения в nginx 0.1.33                                          23.05.2005
7802 
7803     *) Исправление: nginx не собирался с параметром --without-pcre; ошибка
7804        появилась в 0.1.29.
7805 
7806     *) Исправление: 3, 5, 7 и 8 директив proxy_set_header на одном уровне
7807        вызывали bus fault при запуске.
7808 
7809     *) Исправление: в редиректах внутри HTTPS сервера был указан протокол
7810        HTTP.
7811 
7812     *) Исправление: если директива rewrite использовала выделения внутри
7813        директивы if, то возвращалась ошибка 500.
7814 
7815 
7816 Изменения в nginx 0.1.32                                          19.05.2005
7817 
7818     *) Исправление: в редиректах, выдаваемых с помощью директивы rewrite, не
7819        передавались аргументы; ошибка появилась в 0.1.29.
7820 
7821     *) Добавление: директива if поддерживает выделения в регулярных
7822        выражениях.
7823 
7824     *) Добавление: директива set поддерживает переменные и выделения из
7825        регулярных выражений.
7826 
7827     *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка
7828        "X-Accel-Redirect" в ответе бэкенда.
7829 
7830 
7831 Изменения в nginx 0.1.31                                          16.05.2005
7832 
7833     *) Исправление: при использовании SSL ответ мог передаваться не до
7834        конца.
7835 
7836     *) Исправление: ошибки при обработке SSI в ответе, полученного от
7837        FastCGI-сервера.
7838 
7839     *) Исправление: ошибки при использовании SSI и сжатия.
7840 
7841     *) Исправление: редирект с кодом 301 передавался без тела ответа; ошибка
7842        появилась в 0.1.30.
7843 
7844 
7845 Изменения в nginx 0.1.30                                          14.05.2005
7846 
7847     *) Исправление: при использовании SSI рабочий процесс мог зациклиться.
7848 
7849     *) Исправление: при использовании SSL ответ мог передаваться не до
7850        конца.
7851 
7852     *) Исправление: если длина части ответа, полученного за один раз от
7853        проксируемого или FastCGI сервера была равна 500 байт, то nginx
7854        возвращал код ответа 500; в режиме прокси ошибка появилась только в
7855        0.1.29.
7856 
7857     *) Исправление: nginx не считал неверными директивы с 8-ю или 9-ю
7858        параметрами.
7859 
7860     *) Добавление: директива return может возвращать код ответа 204.
7861 
7862     *) Добавление: директива ignore_invalid_headers.
7863 
7864 
7865 Изменения в nginx 0.1.29                                          12.05.2005
7866 
7867     *) Добавление: модуль ngx_http_ssi_module поддерживает команду include
7868        virtual.
7869 
7870     *) Добавление: модуль ngx_http_ssi_module поддерживает условную команду
7871        вида 'if expr="$NAME"' и команды else и endif. Допускается только
7872        один уровень вложенности.
7873 
7874     *) Добавление: модуль ngx_http_ssi_module поддерживает две переменные
7875        DATE_LOCAL и DATE_GMT и команду config timefmt.
7876 
7877     *) Добавление: директива ssi_ignore_recycled_buffers.
7878 
7879     *) Исправление: если переменная QUERY_STRING не была определена, то в
7880        команде echo не ставилось значение по умолчанию.
7881 
7882     *) Изменение: модуль ngx_http_proxy_module полностью переписан.
7883 
7884     *) Добавление: директивы proxy_redirect, proxy_pass_request_headers,
7885        proxy_pass_request_body и proxy_method.
7886 
7887     *) Добавление: директива proxy_set_header. Директива proxy_x_var
7888        упразднена и должна быть заменена директивой proxy_set_header.
7889 
7890     *) Изменение: директива proxy_preserve_host упразднена и должна быть
7891        заменена директивами "proxy_set_header Host $host" и "proxy_redirect
7892        off" или директивой "proxy_set_header Host $host:$proxy_port" и
7893        соответствующими ей директивами proxy_redirect.
7894 
7895     *) Изменение: директива proxy_set_x_real_ip упразднена и должна быть
7896        заменена директивой "proxy_set_header X-Real-IP $remote_addr".
7897 
7898     *) Изменение: директива proxy_add_x_forwarded_for упразднена и должна
7899        быть заменена директивой
7900        "proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for".
7901 
7902     *) Изменение: директива proxy_set_x_url упразднена и должна быть
7903        заменена директивой
7904        "proxy_set_header X-URL http://$host:$server_port$request_uri".
7905 
7906     *) Добавление: директива fastcgi_param.
7907 
7908     *) Изменение: директивы fastcgi_root, fastcgi_set_var и fastcgi_params
7909        упразднены и должны быть замены директивами fastcgi_param.
7910 
7911     *) Добавление: директива index может использовать переменные.
7912 
7913     *) Добавление: директива index может быть указана на уровне http и
7914        server.
7915 
7916     *) Изменение: только последний параметр в директиве index может быть
7917        абсолютным.
7918 
7919     *) Добавление: в директиве rewrite могут использоваться переменные.
7920 
7921     *) Добавление: директива internal.
7922 
7923     *) Добавление: переменные CONTENT_LENGTH, CONTENT_TYPE, REMOTE_PORT,
7924        SERVER_ADDR, SERVER_PORT, SERVER_PROTOCOL, DOCUMENT_ROOT,
7925        SERVER_NAME, REQUEST_METHOD, REQUEST_URI и REMOTE_USER.
7926 
7927     *) Изменение: nginx теперь передаёт неверные строки в заголовках запроса
7928        клиента и ответа бэкенда.
7929 
7930     *) Исправление: если бэкенд долго не передавал ответ и send_timeout был
7931        меньше, чем proxy_read_timeout, то клиенту возвращался ответ 408.
7932 
7933     *) Исправление: если бэкенд передавал неверную строку в заголовке
7934        ответа, то происходил segmentation fault; ошибка появилась в 0.1.26.
7935 
7936     *) Исправление: при использовании отказоустойчивой конфигурации в
7937        FastCGI мог происходить segmentation fault.
7938 
7939     *) Исправление: директива expires не удаляла уже установленные строки
7940        заголовка "Expires" и "Cache-Control".
7941 
7942     *) Исправление: nginx не учитывал завершающую точку в строке заголовка
7943        запроса "Host".
7944 
7945     *) Исправление: модуль ngx_http_auth_module не работал на Linux.
7946 
7947     *) Исправление: директива rewrite неверно работала, если в запросе
7948        присутствовали аргументы.
7949 
7950     *) Исправление: nginx не собирался на MacOS X.
7951 
7952 
7953 Изменения в nginx 0.1.28                                          08.04.2005
7954 
7955     *) Исправление: при проксировании больших файлов nginx сильно нагружал
7956        процессор.
7957 
7958     *) Исправление: nginx не собирался gcc 4.0 на Linux.
7959 
7960 
7961 Изменения в nginx 0.1.27                                          28.03.2005
7962 
7963     *) Добавление: параметр blocked в директиве valid_referers.
7964 
7965     *) Изменение: ошибки обработки заголовка запроса теперь записываются на
7966        уровне info, в лог также записывается имя сервера и строки заголовка
7967        запроса "Host" и "Referer".
7968 
7969     *) Изменение: при записи ошибок в лог записывается также строка
7970        заголовка запроса "Host".
7971 
7972     *) Добавление: директива proxy_pass_unparsed_uri. Специальная обработка
7973        символов "://" в URI, введённая в версии 0.1.11, теперь упразднена.
7974 
7975     *) Исправление: nginx не собирался на FreeBSD и Linux, если был указан
7976        параметр конфигурации --without-ngx_http_auth_basic_module.
7977 
7978 
7979 Изменения в nginx 0.1.26                                          22.03.2005
7980 
7981     *) Изменение: неверные строки заголовка, переданные клиентом, теперь
7982        игнорируется и записываются в error_log на уровне info.
7983 
7984     *) Изменение: при записи ошибок в лог записывается также имя сервера,
7985        при обращении к которому произошла ошибка.
7986 
7987     *) Добавление: модуль ngx_http_auth_basic_module и директивы auth_basic
7988        и auth_basic_user_file.
7989 
7990 
7991 Изменения в nginx 0.1.25                                          19.03.2005
7992 
7993     *) Исправление: nginx не работал на Linux parisc.
7994 
7995     *) Добавление: nginx теперь не запускается под FreeBSD, если значение
7996        sysctl kern.ipc.somaxconn слишком большое.
7997 
7998     *) Исправление: если модуль ngx_http_index_module делал внутреннее
7999        перенаправление запроса в модули ngx_http_proxy_module или
8000        ngx_http_fastcgi_module, то файл индекса не закрывался после
8001        обслуживания запроса.
8002 
8003     *) Добавление: директива proxy_pass может использоваться в location,
8004        заданных регулярным выражением.
8005 
8006     *) Добавление: модуль ngx_http_rewrite_filter_module поддерживает
8007        условия вида "if ($HTTP_USER_AGENT ~ MSIE)".
8008 
8009     *) Исправление: nginx очень медленно запускался при большом количестве
8010        адресов и использовании текстовых значений в директиве geo.
8011 
8012     *) Изменение: имя переменной в директиве geo нужно указывать, как $name.
8013        Прежний вариант без "$" пока работает, но вскоре будет убран.
8014 
8015     *) Добавление: параметр лога "%{VARIABLE}v".
8016 
8017     *) Добавление: директива "set $name value".
8018 
8019     *) Исправление: совместимость с gcc 4.0.
8020 
8021     *) Добавление: параметр автоконфигурации --with-openssl-opt=OPTIONS.
8022 
8023 
8024 Изменения в nginx 0.1.24                                          04.03.2005
8025 
8026     *) Добавление: модуль ngx_http_ssi_filter_module поддерживает переменные
8027        QUERY_STRING и DOCUMENT_URI.
8028 
8029     *) Исправление: модуль ngx_http_autoindex_module мог выдавать ответ 404
8030        на существующий каталог, если этот каталог был указан как alias.
8031 
8032     *) Исправление: модуль ngx_http_ssi_filter_module неправильно работал
8033        при больших ответах.
8034 
8035     *) Исправление: отсутствие строки заголовка "Referer" всегда считалось
8036        правильным referrer'ом.
8037 
8038 
8039 Изменения в nginx 0.1.23                                          01.03.2005
8040 
8041     *) Добавление: модуль ngx_http_ssi_filter_module и директивы ssi,
8042        ssi_silent_errors и ssi_min_file_chunk. Поддерживаются команды 'echo
8043        var="HTTP_..." default=""' и 'echo var="REMOTE_ADDR"'.
8044 
8045     *) Добавление: параметр лога %request_time.
8046 
8047     *) Добавление: если запрос пришёл без строки заголовка "Host", то
8048        директива proxy_preserve_host устанавливает в качестве этого
8049        заголовка первое имя сервера из директивы server_name.
8050 
8051     *) Исправление: nginx не собирался на платформах, отличных от i386,
8052        amd64, sparc и ppc; ошибка появилась в 0.1.22.
8053 
8054     *) Исправление: модуль ngx_http_autoindex_module теперь показывает
8055        информацию не о символическом линке, а о файле или каталоге, на
8056        который он указывает.
8057 
8058     *) Исправление: если клиенту ничего не передавалось, то параметр
8059        %apache_length записывал в лог отрицательную длину заголовка ответа.
8060 
8061 
8062 Изменения в nginx 0.1.22                                          22.02.2005
8063 
8064     *) Исправление: модуль ngx_http_stub_status_module показывал неверную
8065        статистику для обработанных соединений, если использовалось
8066        проксирование или FastCGI-сервер.
8067 
8068     *) Исправление: на Linux и Solaris установочные пути были неверно
8069        заключены в кавычки; ошибка появилась в 0.1.21.
8070 
8071 
8072 Изменения в nginx 0.1.21                                          22.02.2005
8073 
8074     *) Исправление: модуль ngx_http_stub_status_module показывал неверную
8075        статистику при использовании метода rtsig или при использовании
8076        нескольких рабочих процессов на SMP машине.
8077 
8078     *) Исправление: nginx не собирался компилятором icc под Линуксом или
8079        если библиотека zlib-1.2.x собиралась из исходных текстов.
8080 
8081     *) Исправление: nginx не собирался под NetBSD 2.0.
8082 
8083 
8084 Изменения в nginx 0.1.20                                          17.02.2005
8085 
8086     *) Добавление: новые параметры script_filename и remote_port в директиве
8087        fastcgi_params.
8088 
8089     *) Исправление: неправильно обрабатывался поток stderr от
8090        FastCGI-сервера.
8091 
8092 
8093 Изменения в nginx 0.1.19                                          16.02.2005
8094 
8095     *) Исправление: если в запросе есть нуль, то для локальных запросов
8096        теперь возвращается ошибка 404.
8097 
8098     *) Исправление: nginx не собирался под NetBSD 2.0.
8099 
8100     *) Исправление: во время чтения тела запроса клиента в SSL соединении
8101        мог произойти таймаут.
8102 
8103 
8104 Изменения в nginx 0.1.18                                          09.02.2005
8105 
8106     *) Изменение: для совместимости с Solaris 10 в директивах devpoll_events
8107        и devpoll_changes значения по умолчанию уменьшены с 512 до 32.
8108 
8109     *) Исправление: директивы proxy_set_x_var и fastcgi_set_var не
8110        наследовались.
8111 
8112     *) Исправление: в директиве rewrite, возвращающей редирект, аргументы
8113        присоединялись к URI через символ "&" вместо "?".
8114 
8115     *) Исправление: строки для модуля ngx_http_geo_module без символа ";" во
8116        включённом файле игнорировались.
8117 
8118     *) Добавление: модуль ngx_http_stub_status_module.
8119 
8120     *) Исправление: неизвестный формат лог-файла в директиве access_log
8121        вызывал segmentation fault.
8122 
8123     *) Добавление: новый параметр document_root в директиве fastcgi_params.
8124 
8125     *) Добавление: директива fastcgi_redirect_errors.
8126 
8127     *) Добавление: новый модификатор break в директиве rewrite позволяет
8128        прекратить цикл rewrite/location и устанавливает текущую конфигурацию
8129        для запроса.
8130 
8131 
8132 Изменения в nginx 0.1.17                                          03.02.2005
8133 
8134     *) Изменение: модуль ngx_http_rewrite_module полностью переписан. Теперь
8135        можно делать редиректы, возвращать коды ошибок и проверять переменные
8136        и рефереры. Эти директивы можно использовать внутри location.
8137        Директива redirect упразднена.
8138 
8139     *) Добавление: модуль ngx_http_geo_module.
8140 
8141     *) Добавление: директивы proxy_set_x_var и fastcgi_set_var.
8142 
8143     *) Исправление: конфигурация location с модификатором "=" могла
8144        использоваться в другом location.
8145 
8146     *) Исправление: правильный тип ответа выставлялся только для запросов, у
8147        которых в расширении были только маленькие буквы.
8148 
8149     *) Исправление: если для location установлен proxy_pass или
8150        fastcgi_pass, и доступ к нему запрещался, а ошибка перенаправлялась
8151        на статическую страницу, то происходил segmentation fault.
8152 
8153     *) Исправление: если в проксированном ответе в заголовке "Location"
8154        передавался относительный URL, то к нему добавлялось имя хоста и
8155        слэш; ошибка появилась в 0.1.14.
8156 
8157     *) Исправление: на Linux в лог не записывался текст системной ошибки.
8158 
8159 
8160 Изменения в nginx 0.1.16                                          25.01.2005
8161 
8162     *) Исправление: если ответ передавался chunk'ами, то при запросе HEAD
8163        выдавался завершающий chunk.
8164 
8165     *) Исправление: заголовок "Connection: keep-alive" выдавался, даже если
8166        директива keepalive_timeout запрещала использование keep-alive.
8167 
8168     *) Исправление: ошибки в модуле ngx_http_fastcgi_module вызывали
8169        segmentation fault.
8170 
8171     *) Исправление: при использовании SSL сжатый ответ мог передаваться не
8172        до конца.
8173 
8174     *) Исправление: опции TCP_NODELAY, TCP_NOPUSH и TCP_CORK, специфичные
8175        для TCP сокетов, не используются для unix domain сокетов.
8176 
8177     *) Добавление: директива rewrite поддерживает перезаписывание
8178        аргументов.
8179 
8180     *) Исправление: на запрос POST с заголовком "Content-Length: 0"
8181        возвращался ответ 400; ошибка появилась в 0.1.14.
8182 
8183 
8184 Изменения в nginx 0.1.15                                          19.01.2005
8185 
8186     *) Исправление: ошибка соединения с FastCGI-сервером вызывала
8187        segmentation fault.
8188 
8189     *) Исправление: корректная обработка регулярного выражения, в котором
8190        число выделенных частей не совпадает с числом подстановок.
8191 
8192     *) Добавление: location, который передаётся FastCGI-серверу, может быть
8193        задан с помощью регулярного выражения.
8194 
8195     *) Исправление: параметр FastCGI REQUEST_URI теперь передаётся вместе с
8196        аргументами и в том виде, в котором был получен от клиента.
8197 
8198     *) Исправление: для использования регулярных выражений в location нужно
8199        было собирать nginx вместе с ngx_http_rewrite_module.
8200 
8201     *) Исправление: если бэкенд слушал на 80-ом порту, то при использовании
8202        директивы "proxy_preserve_host on" в заголовке "Host" указывался
8203        также порт 80; ошибка появилась в 0.1.14.
8204 
8205     *) Исправление: если задать одинаковые пути в параметрах
8206        автоконфигурации --http-client-body-temp-path=PATH и
8207        --http-proxy-temp-path=PATH или --http-client-body-temp-path=PATH и
8208        --http-fastcgi-temp-path=PATH, то происходил segmentation fault.
8209 
8210 
8211 Изменения в nginx 0.1.14                                          18.01.2005
8212 
8213     *) Добавление: параметры автоконфигурации
8214        --http-client-body-temp-path=PATH, --http-proxy-temp-path=PATH и
8215        --http-fastcgi-temp-path=PATH
8216 
8217     *) Изменение: имя каталога с временными файлами, содержащие тело запроса
8218        клиента, задаётся директивой client_body_temp_path, по умолчанию
8219        <prefix>/client_body_temp.
8220 
8221     *) Добавление: модуль ngx_http_fastcgi_module и директивы fastcgi_pass,
8222        fastcgi_root, fastcgi_index, fastcgi_params, fastcgi_connect_timeout,
8223        fastcgi_send_timeout, fastcgi_read_timeout, fastcgi_send_lowat,
8224        fastcgi_header_buffer_size, fastcgi_buffers,
8225        fastcgi_busy_buffers_size, fastcgi_temp_path,
8226        fastcgi_max_temp_file_size, fastcgi_temp_file_write_size,
8227        fastcgi_next_upstream и fastcgi_x_powered_by.
8228 
8229     *) Исправление: ошибка "[alert] zero size buf"; ошибка появилась в
8230        0.1.3.
8231 
8232     *) Изменение: в директиве proxy_pass нужно обязательно указывать URI
8233        после имени хоста.
8234 
8235     *) Изменение: если в URI встречался символ %3F, то он считался началом
8236        строки аргументов.
8237 
8238     *) Добавление: поддержка unix domain сокетов в модуле
8239        ngx_http_proxy_module.
8240 
8241     *) Добавление: директивы ssl_engine и ssl_ciphers.
8242        Спасибо Сергею Скворцову за SSL-акселератор.
8243 
8244 
8245 Изменения в nginx 0.1.13                                          21.12.2004
8246 
8247     *) Добавление: директивы server_names_hash и
8248        server_names_hash_threshold.
8249 
8250     *) Исправление: имена *.domain.tld в директиве server_name не работали.
8251 
8252     *) Исправление: параметр лога %request_length записывал неверную длину.
8253 
8254 
8255 Изменения в nginx 0.1.12                                          06.12.2004
8256 
8257     *) Добавление: параметр лога %request_length.
8258 
8259     *) Исправление: при использовании /dev/poll, select и poll на
8260        платформах, где возможны ложные срабатывания указанных методов, могли
8261        быть длительные задержки при обработке запроса по keep-alive
8262        соединению. Наблюдалось по крайней мере на Solaris с использованием
8263        /dev/poll.
8264 
8265     *) Исправление: директива send_lowat игнорируется на Linux, так как
8266        Linux не поддерживает опцию SO_SNDLOWAT.
8267 
8268 
8269 Изменения в nginx 0.1.11                                          02.12.2004
8270 
8271     *) Добавление: директива worker_priority.
8272 
8273     *) Изменение: под FreeBSD директивы tcp_nopush и tcp_nodelay вместе
8274        влияют на передачу ответа.
8275 
8276     *) Исправление: nginx не вызывал initgroups().
8277        Спасибо Андрею Ситникову и Андрею Нигматулину.
8278 
8279     *) Изменение: ngx_http_auto_index_module теперь выдаёт размер файлов в
8280        байтах.
8281 
8282     *) Исправление: ngx_http_auto_index_module возвращал ошибку 500, если в
8283        каталоге есть битый symlink.
8284 
8285     *) Исправление: файлы больше 4G не передавались с использованием
8286        sendfile.
8287 
8288     *) Исправление: если бэкенд резолвился в несколько адресов и при
8289        ожидании от него ответа происходила ошибка, то процесс зацикливался.
8290 
8291     *) Исправление: при использовании метода /dev/poll рабочий процесс мог
8292        завершиться с сообщением "unknown cycle".
8293 
8294     *) Исправление: ошибки "close() channel failed".
8295 
8296     *) Исправление: автоматическое определение групп nobody и nogroup.
8297 
8298     *) Исправление: директива send_lowat не работала на Linux.
8299 
8300     *) Исправление: если в конфигурации не было раздела events, то
8301        происходил segmentation fault.
8302 
8303     *) Исправление: nginx не собирался под OpenBSD.
8304 
8305     *) Исправление: двойные слэшы в "://" в URI превращались в ":/".
8306 
8307 
8308 Изменения в nginx 0.1.10                                          26.11.2004
8309 
8310     *) Исправление: если в запросе без аргументов есть "//", "/./", "/../"
8311        или "%XX", то терялся последний символ в строке запроса; ошибка
8312        появилась в 0.1.9.
8313 
8314     *) Исправление: исправление в версии 0.1.9 для файлов больше 2G на Linux
8315        не работало.
8316 
8317 
8318 Изменения в nginx 0.1.9                                           25.11.2004
8319 
8320     *) Исправление: если в запросе есть "//", "/./", "/../" или "%XX", то
8321        проксируемый запрос передавался без аргументов.
8322 
8323     *) Исправление: при сжатии больших ответов иногда они передавались не
8324        полностью.
8325 
8326     *) Исправление: не передавались файлы больше 2G на Linux,
8327        неподдерживающем sendfile64().
8328 
8329     *) Исправление: на Linux при конфигурации сборки нужно было обязательно
8330        использовать параметр --with-poll_module; ошибка появилась в 0.1.8.
8331 
8332 
8333 Изменения в nginx 0.1.8                                           20.11.2004
8334 
8335     *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе
8336        длинных имён файлов.
8337 
8338     *) Добавление: модификатор "^~" в директиве location.
8339 
8340     *) Добавление: директива proxy_max_temp_file_size.
8341 
8342 
8343 Изменения в nginx 0.1.7                                           12.11.2004
8344 
8345     *) Исправление: при использовании sendfile, если передаваемый файл
8346        менялся, то мог произойти segmentation fault на FreeBSD; ошибка
8347        появилась в 0.1.5.
8348 
8349 
8350 Изменения в nginx 0.1.6                                           11.11.2004
8351 
8352     *) Исправление: при некоторых комбинациях директив location c
8353        регулярными выражениями использовалась конфигурация не из того
8354        location.
8355 
8356 
8357 Изменения в nginx 0.1.5                                           11.11.2004
8358 
8359     *) Исправление: на Solaris и Linux могло быть очень много сообщений
8360        "recvmsg() returned not enough data".
8361 
8362     *) Исправление: в режиме прокси без использования sendfile на Solaris
8363        возникала ошибка "writev() failed (22: Invalid argument)". На других
8364        платформах, не поддерживающих sendfile, процесс зацикливался.
8365 
8366     *) Исправление: при использовании sendfile в режиме прокси на Solaris
8367        возникал segmentation fault.
8368 
8369     *) Исправление: segmentation fault на Solaris.
8370 
8371     *) Исправление: обновление исполняемого файла на лету не работало на
8372        Linux.
8373 
8374     *) Исправление: в списке файлов, выдаваемом модулем
8375        ngx_http_autoindex_module, не перекодировались пробелы, кавычки и
8376        знаки процента.
8377 
8378     *) Изменение: уменьшение операций копирования.
8379 
8380     *) Добавление: директива userid_p3p.
8381 
8382 
8383 Изменения в nginx 0.1.4                                           26.10.2004
8384 
8385     *) Исправление: ошибка в модуле ngx_http_autoindex_module.
8386 
8387 
8388 Изменения в nginx 0.1.3                                           25.10.2004
8389 
8390     *) Добавление: модуль ngx_http_autoindex_module и директива autoindex.
8391 
8392     *) Добавление: директива proxy_set_x_url.
8393 
8394     *) Исправление: модуль проксировании мог привести к зацикливанию, если
8395        не использовался sendfile.
8396 
8397 
8398 Изменения в nginx 0.1.2                                           21.10.2004
8399 
8400     *) Добавление: параметры --user=USER, --group=GROUP и
8401        --with-ld-opt=OPTIONS в configure.
8402 
8403     *) Добавление: директива server_name поддерживает *.domain.tld.
8404 
8405     *) Исправление: улучшена переносимость на неизвестные платформы.
8406 
8407     *) Исправление: нельзя переконфигурировать nginx, если конфигурационный
8408        файл указан в командной строке; ошибка появилась в 0.1.1.
8409 
8410     *) Исправление: модуль проксировании мог привести к зацикливанию, если
8411        не использовался sendfile.
8412 
8413     *) Исправление: при использовании sendfile текст ответа не
8414        перекодировался согласно директивам модуля charset; ошибка появилась
8415        в 0.1.1.
8416 
8417     *) Исправление: очень редкая ошибка при обработке kqueue.
8418 
8419     *) Исправление: модуль сжатия сжимал уже сжатые ответы, полученные при
8420        проксировании.
8421 
8422 
8423 Изменения в nginx 0.1.1                                           11.10.2004
8424 
8425     *) Добавление: директива gzip_types.
8426 
8427     *) Добавление: директива tcp_nodelay.
8428 
8429     *) Добавление: директива send_lowat работает не только на платформах,
8430        поддерживающих kqueue NOTE_LOWAT, но и на всех, поддерживающих
8431        SO_SNDLOWAT.
8432 
8433     *) Добавление: эмуляция setproctitle() для Linux и Solaris.
8434 
8435     *) Исправление: ошибка при переписывании заголовка "Location" при
8436        проксировании.
8437 
8438     *) Исправление: ошибка в модуле ngx_http_chunked_module, приводившая к
8439        зацикливанию.
8440 
8441     *) Исправление: ошибки в модуле /dev/poll.
8442 
8443     *) Исправление: при проксировании и использовании временных файлов
8444        ответы портились.
8445 
8446     *) Исправление: бэкенду передавались запросы с неперекодированными
8447        символами.
8448 
8449     *) Исправление: на Linux 2.4 при конфигурации сборки нужно было
8450        обязательно использовать параметр --with-poll_module.
8451 
8452 
8453 Изменения в nginx 0.1.0                                           04.10.2004
8454 
8455     *) Первая публично доступная версия.
8456