Update and clean Tomato RAF files
[tomato.git] / release / src / router / nginx / CHANGES.ru
blobcb961d08bccdbca9b2daf8caf2144fd022f142d6
2 Изменения в nginx 1.4.0                                           24.04.2013
4     *) Исправление: nginx не собирался с модулем ngx_http_perl_module, если
5        использовался параметр --with-openssl; ошибка появилась в 1.3.16.
7     *) Исправление: в работе с телом запроса из модуля ngx_http_perl_module;
8        ошибка появилась в 1.3.9.
11 Изменения в nginx 1.3.16                                          16.04.2013
13     *) Исправление: в рабочем процессе мог произойти segmentation fault,
14        если использовались подзапросы; ошибка появилась в 1.3.9.
16     *) Исправление: директива tcp_nodelay вызывала ошибку при проксировании
17        WebSocket-соединений в unix domain сокет.
19     *) Исправление: переменная $upstream_response_length возвращала значение
20        "0", если не использовалась буферизация.
21        Спасибо Piotr Sikora.
23     *) Исправление: в методах обработки соединений eventport и /dev/poll.
26 Изменения в nginx 1.3.15                                          26.03.2013
28     *) Изменение: открытие и закрытие соединения без отправки в нём
29        каких-либо данных больше не записывается в access_log с кодом ошибки
30        400.
32     *) Добавление: модуль ngx_http_spdy_module.
33        Спасибо Automattic за спонсирование разработки.
35     *) Добавление: директивы limit_req_status и limit_conn_status.
36        Спасибо Nick Marden.
38     *) Добавление: директива image_filter_interlace.
39        Спасибо Ивану Боброву.
41     *) Добавление: переменная $connections_waiting в модуле
42        ngx_http_stub_status_module.
44     *) Добавление: теперь почтовый прокси-сервер поддерживает IPv6-бэкенды.
46     *) Исправление: при повторной отправке запроса на бэкенд тело запроса
47        могло передаваться неправильно; ошибка появилась в 1.3.9.
48        Спасибо Piotr Sikora.
50     *) Исправление: в директиве client_body_in_file_only; ошибка появилась в
51        1.3.9.
53     *) Исправление: ответы могли зависать, если использовались подзапросы и
54        при обработке подзапроса происходила DNS-ошибка.
55        Спасибо Lanshun Zhou.
57     *) Исправление: в процедуре учёта использования бэкендов.
60 Изменения в nginx 1.3.14                                          05.03.2013
62     *) Добавление: переменные $connections_active, $connections_reading и
63        $connections_writing в модуле ngx_http_stub_status_module.
65     *) Добавление: поддержка WebSocket-соединений в модулях
66        ngx_http_uwsgi_module и ngx_http_scgi_module.
68     *) Исправление: в обработке виртуальных серверов при использовании SNI.
70     *) Исправление: при использовании директивы "ssl_session_cache shared"
71        новые сессии могли не сохраняться, если заканчивалось место в
72        разделяемой памяти.
73        Спасибо Piotr Sikora.
75     *) Исправление: несколько заголовков X-Forwarded-For обрабатывались
76        неправильно.
77        Спасибо Neal Poole за спонсирование разработки.
79     *) Исправление: в модуле ngx_http_mp4_module.
80        Спасибо Gernot Vormayr.
83 Изменения в nginx 1.3.13                                          19.02.2013
85     *) Изменение: теперь для сборки по умолчанию используется компилятор с
86        именем "cc".
88     *) Добавление: поддержка проксирования WebSocket-соединений.
89        Спасибо Apcera и CloudBees за спонсирование разработки.
91     *) Добавление: директива auth_basic_user_file поддерживает шифрование
92        паролей методом "{SHA}".
93        Спасибо Louis Opter.
96 Изменения в nginx 1.3.12                                          05.02.2013
98     *) Добавление: директивы proxy_bind, fastcgi_bind, memcached_bind,
99        scgi_bind и uwsgi_bind поддерживают переменные.
101     *) Добавление: переменные $pipe, $request_length, $time_iso8601 и
102        $time_local теперь можно использовать не только в директиве
103        log_format.
104        Спасибо Kiril Kalchev.
106     *) Добавление: поддержка IPv6 в модуле ngx_http_geoip_module.
107        Спасибо Gregor Kališnik.
109     *) Исправление: директива proxy_method работала неверно, если была
110        указана на уровне http.
112     *) Исправление: в рабочем процессе мог произойти segmentation fault,
113        если использовался resolver и метод poll.
115     *) Исправление: nginx мог нагружать процессор во время SSL handshake с
116        бэкендом при использовании методов обработки соединений select, poll
117        и /dev/poll.
119     *) Исправление: ошибка "[crit] SSL_write() failed (SSL:)".
121     *) Исправление: в директиве client_body_in_file_only; ошибка появилась в
122        1.3.9.
124     *) Исправление: в директиве fastcgi_keep_conn.
127 Изменения в nginx 1.3.11                                          10.01.2013
129     *) Исправление: при записи в лог мог происходить segmentation fault;
130        ошибка появилась в 1.3.10.
132     *) Исправление: директива proxy_pass не работала с IP-адресами без
133        явного указания порта; ошибка появилась в 1.3.10.
135     *) Исправление: на старте или во время переконфигурации происходил
136        segmentation fault, если директива keepalive была указана несколько
137        раз в одном блоке upstream.
139     *) Исправление: параметр default директивы geo не определял значение по
140        умолчанию для IPv6-адресов.
143 Изменения в nginx 1.3.10                                          25.12.2012
145     *) Изменение: для указанных в конфигурационном файле доменных имён
146        теперь используются не только IPv4, но и IPv6 адреса.
148     *) Изменение: теперь при использовании директивы include с маской на
149        Unix-системах включаемые файлы сортируются в алфавитном порядке.
151     *) Изменение: директива add_header добавляет строки в ответы с кодом
152        201.
154     *) Добавление: директива geo теперь поддерживает IPv6 адреса в формате
155        CIDR.
157     *) Добавление: параметры flush и gzip в директиве access_log.
159     *) Добавление: директива auth_basic поддерживает переменные.
161     *) Исправление: nginx в некоторых случаях не собирался с модулем
162        ngx_http_perl_module.
164     *) Исправление: в рабочем процессе мог произойти segmentation fault,
165        если использовался модуль ngx_http_xslt_module.
167     *) Исправление: nginx мог не собираться на MacOSX.
168        Спасибо Piotr Sikora.
170     *) Исправление: при использовании директивы limit_rate с большими
171        значениями скорости на 32-битных системах ответ мог возвращаться не
172        целиком.
173        Спасибо Алексею Антропову.
175     *) Исправление: в рабочем процессе мог произойти segmentation fault,
176        если использовалась директива if.
177        Спасибо Piotr Sikora.
179     *) Исправление: ответ "100 Continue" выдавался вместе с ответом "413
180        Request Entity Too Large".
182     *) Исправление: директивы image_filter, image_filter_jpeg_quality и
183        image_filter_sharpen могли наследоваться некорректно.
184        Спасибо Ивану Боброву.
186     *) Исправление: при использовании директивы auth_basic под Linux могли
187        возникать ошибки "crypt_r() failed".
189     *) Исправление: в обработке backup-серверов.
190        Спасибо Thomas Chen.
192     *) Исправление: при проксировании HEAD-запросов мог возвращаться
193        некорректный ответ, если использовалась директива gzip.
196 Изменения в nginx 1.3.9                                           27.11.2012
198     *) Добавление: поддержка chunked transfer encoding при получении тела
199        запроса.
201     *) Добавление: переменные $request_time и $msec теперь можно
202        использовать не только в директиве log_format.
204     *) Исправление: cache manager и cache loader могли не запускаться, если
205        использовалось более 512 listen-сокетов.
207     *) Исправление: в модуле ngx_http_dav_module.
210 Изменения в nginx 1.3.8                                           30.10.2012
212     *) Добавление: параметр optional_no_ca директивы ssl_verify_client.
213        Спасибо Михаилу Казанцеву и Eric O'Connor.
215     *) Добавление: переменные $bytes_sent, $connection и
216        $connection_requests теперь можно использовать не только в директиве
217        log_format.
218        Спасибо Benjamin Grössing.
220     *) Добавление: параметр auto директивы worker_processes.
222     *) Исправление: сообщения "cache file ... has md5 collision".
224     *) Исправление: в модуле ngx_http_gunzip_filter_module.
226     *) Исправление: в директиве ssl_stapling.
229 Изменения в nginx 1.3.7                                           02.10.2012
231     *) Добавление: поддержка OCSP stapling.
232        Спасибо Comodo, DigiCert и GlobalSign за спонсирование разработки.
234     *) Добавление: директива ssl_trusted_certificate.
236     *) Добавление: теперь resolver случайным образом меняет порядок
237        возвращаемых закэшированных адресов.
238        Спасибо Антону Жулину.
240     *) Исправление: совместимость с OpenSSL 0.9.7.
243 Изменения в nginx 1.3.6                                           12.09.2012
245     *) Добавление: модуль ngx_http_gunzip_filter_module.
247     *) Добавление: директива memcached_gzip_flag.
249     *) Добавление: параметр always директивы gzip_static.
251     *) Исправление: в директиве "limit_req"; ошибка появилась в 1.1.14.
252        Спасибо Charles Chen.
254     *) Исправление: nginx не собирался gcc 4.7 с оптимизацией -O2 если
255        использовался параметр --with-ipv6.
258 Изменения в nginx 1.3.5                                           21.08.2012
260     *) Изменение: модуль ngx_http_mp4_module больше не отфильтровывает
261        дорожки в форматах, отличных от H.264 и AAC.
263     *) Исправление: в рабочем процессе мог произойти segmentation fault,
264        если в директиве map в качестве значений использовались переменные.
266     *) Исправление: в рабочем процессе мог произойти segmentation fault при
267        использовании директивы geo с параметром ranges, но без параметра
268        default; ошибка появилась в 0.8.43.
269        Спасибо Zhen Chen и Weibin Yao.
271     *) Исправление: в обработке параметра командной строки -p.
273     *) Исправление: в почтовом прокси-сервере.
275     *) Исправление: незначительных потенциальных ошибок.
276        Спасибо Coverity.
278     *) Исправление: nginx/Windows не собирался с Visual Studio 2005 Express.
279        Спасибо HAYASHI Kentaro.
282 Изменения в nginx 1.3.4                                           31.07.2012
284     *) Изменение: теперь на слушающих IPv6-сокетах параметр ipv6only включён
285        по умолчанию.
287     *) Добавление: поддержка компилятора Clang.
289     *) Исправление: могли создаваться лишние слушающие сокеты.
290        Спасибо Роману Одайскому.
292     *) Исправление: nginx/Windows мог нагружать процессор, если при запуске
293        рабочего процесса происходила ошибка.
294        Спасибо Ricardo Villalobos Guevara.
296     *) Исправление: директивы proxy_pass_header, fastcgi_pass_header,
297        scgi_pass_header, uwsgi_pass_header, proxy_hide_header,
298        fastcgi_hide_header, scgi_hide_header и uwsgi_hide_header могли
299        наследоваться некорректно.
302 Изменения в nginx 1.3.3                                           10.07.2012
304     *) Добавление: поддержка entity tags и директива etag.
306     *) Исправление: при использовании директивы map с параметром hostnames
307        не игнорировалась конечная точка в исходном значении.
309     *) Исправление: для обработки запроса мог использоваться неверный
310        location, если переход в именованный location происходил после
311        изменения URI с помощью директивы rewrite.
314 Изменения в nginx 1.3.2                                           26.06.2012
316     *) Изменение: параметр single директивы keepalive теперь игнорируется.
318     *) Изменение: сжатие SSL теперь отключено в том числе при использовании
319        OpenSSL cтарее 1.0.0.
321     *) Добавление: директиву "ip_hash" теперь можно использовать для
322        балансировки IPv6 клиентов.
324     *) Добавление: переменную $status теперь можно использовать не только в
325        директиве log_format.
327     *) Исправление: при завершении рабочего процесса мог произойти
328        segmentation fault, если использовалась директива resolver.
330     *) Исправление: в рабочем процессе мог произойти segmentation fault,
331        если использовался модуль ngx_http_mp4_module.
333     *) Исправление: в модуле ngx_http_mp4_module.
335     *) Исправление: в рабочем процессе мог произойти segmentation fault,
336        если использовались конфликтующие имена серверов с масками.
338     *) Исправление: на платформе ARM nginx мог аварийно завершаться по
339        сигналу SIGBUS.
341     *) Исправление: во время переконфигурации на HP-UX в лог записывался
342        alert "sendmsg() failed (9: Bad file number)".
345 Изменения в nginx 1.3.1                                           05.06.2012
347     *) Безопасность: теперь nginx/Windows игнорирует точку в конце
348        компонента URI и не разрешает URI, содержащие последовательность
349        ":$".
350        Спасибо Владимиру Кочеткову, Positive Research Center.
352     *) Добавление: директивы proxy_pass, fastcgi_pass, scgi_pass, uwsgi_pass
353        и директива server в блоке upstream теперь поддерживают IPv6-адреса.
355     *) Добавление: в директиве resolver теперь можно указывать порт и
356        задавать IPv6-адреса DNS-серверов.
358     *) Добавление: директива least_conn в блоке upstream.
360     *) Добавление: при использовании директивы ip_hash теперь можно задавать
361        веса серверов.
363     *) Исправление: в рабочем процессе мог произойти segmentation fault,
364        если использовалась директива image_filter; ошибка появилась в 1.3.0.
366     *) Исправление: nginx не собирался с модулем ngx_cpp_test_module; ошибка
367        появилась в 1.1.12.
369     *) Исправление: доступ к переменным из SSI и встроенного перла мог не
370        работать после переконфигурации.
371        Спасибо Yichun Zhang.
373     *) Исправление: в модуле ngx_http_xslt_filter_module.
374        Спасибо Kuramoto Eiji.
376     *) Исправление: утечки памяти при использовании переменной $geoip_org.
377        Спасибо Денису Латыпову.
379     *) Исправление: в директивах proxy_cookie_domain и proxy_cookie_path.
382 Изменения в nginx 1.3.0                                           15.05.2012
384     *) Добавление: директива debug_connection теперь поддерживает
385        IPv6-адреса и параметр "unix:".
387     *) Добавление: директива set_real_ip_from и параметр proxy директивы geo
388        теперь поддерживают IPv6-адреса.
390     *) Добавление: директивы real_ip_recursive, geoip_proxy и
391        geoip_proxy_recursive.
393     *) Добавление: параметр proxy_recursive директивы geo.
395     *) Исправление: в рабочем процессе мог произойти segmentation fault,
396        если использовалась директива resolver.
398     *) Исправление: в рабочем процессе мог произойти segmentation fault,
399        если использовались директивы fastcgi_pass, scgi_pass или uwsgi_pass
400        и бэкенд возвращал некорректный ответ.
402     *) Исправление: в рабочем процессе мог произойти segmentation fault,
403        если использовалась директива rewrite и в новых аргументах запроса в
404        строке замены использовались переменные.
406     *) Исправление: nginx мог нагружать процессор, если было достигнуто
407        ограничение на количество открытых файлов.
409     *) Исправление: при использовании директивы proxy_next_upstream с
410        параметром http_404 nginx мог бесконечно перебирать бэкенды, если в
411        блоке upstream был хотя бы один сервер с флагом backup.
413     *) Исправление: при использовании директивы ip_hash установка параметра
414        down директивы server могла приводить к ненужному перераспределению
415        клиентов между бэкендами.
417     *) Исправление: утечки сокетов.
418        Спасибо Yichun Zhang.
420     *) Исправление: в модуле ngx_http_fastcgi_module.
423 Изменения в nginx 1.2.0                                           23.04.2012
425     *) Исправление: в рабочем процессе мог произойти segmentation fault,
426        если использовалась директива try_files; ошибка появилась в 1.1.19.
428     *) Исправление: ответ мог быть передан не полностью, если использовалось
429        больше IOV_MAX буферов.
431     *) Исправление: в работе параметра crop директивы image_filter.
432        Спасибо Maxim Bublis.
435 Изменения в nginx 1.1.19                                          12.04.2012
437     *) Безопасность: при обработке специально созданного mp4 файла модулем
438        ngx_http_mp4_module могли перезаписываться области памяти рабочего
439        процесса, что могло приводить к выполнению произвольного кода
440        (CVE-2012-2089).
441        Спасибо Matthew Daley.
443     *) Исправление: nginx/Windows мог завершаться аварийно.
444        Спасибо Vincent Lee.
446     *) Исправление: nginx нагружал процессор, если все серверы в upstream'е
447        были помечены флагом backup.
449     *) Исправление: директивы allow и deny могли наследоваться некорректно,
450        если в них использовались IPv6 адреса.
452     *) Исправление: директивы modern_browser и ancient_browser могли
453        наследоваться некорректно.
455     *) Исправление: таймауты могли работать некорректно на Solaris/SPARC.
457     *) Исправление: в модуле ngx_http_mp4_module.
460 Изменения в nginx 1.1.18                                          28.03.2012
462     *) Изменение: теперь keepalive соединения не запрещены для Safari по
463        умолчанию.
465     *) Добавление: переменная $connection_requests.
467     *) Добавление: переменные $tcpinfo_rtt, $tcpinfo_rttvar,
468        $tcpinfo_snd_cwnd и $tcpinfo_rcv_space.
470     *) Добавление: директива worker_cpu_affinity теперь работает на FreeBSD.
472     *) Добавление: директивы xslt_param и xslt_string_param.
473        Спасибо Samuel Behan.
475     *) Исправление: в configure.
476        Спасибо Piotr Sikora.
478     *) Исправление: в модуле ngx_http_xslt_filter_module.
480     *) Исправление: nginx не собирался на Debian GNU/Hurd.
483 Изменения в nginx 1.1.17                                          15.03.2012
485     *) Безопасность: содержимое ранее освобождённой памяти могло быть
486        отправлено клиенту, если бэкенд возвращал специально созданный ответ.
487        Спасибо Matthew Daley.
489     *) Исправление: при использовании встроенного перла из SSI.
490        Спасибо Matthew Daley.
492     *) Исправление: в модуле ngx_http_uwsgi_module.
495 Изменения в nginx 1.1.16                                          29.02.2012
497     *) Изменение: ограничение на количество одновременных подзапросов
498        поднято до 200.
500     *) Добавление: параметр from в директиве disable_symlinks.
502     *) Добавление: директивы return и error_page теперь могут использоваться
503        для возврата перенаправлений с кодом 307.
505     *) Исправление: в рабочем процессе мог произойти segmentation fault,
506        если использовалась директива resolver и на глобальном уровне не была
507        задана директива error_log.
508        Спасибо Роману Арутюняну.
510     *) Исправление: в рабочем процессе мог произойти segmentation fault,
511        если использовались директивы "proxy_http_version 1.1" или
512        "fastcgi_keep_conn on".
514     *) Исправление: утечек памяти.
515        Спасибо Lanshun Zhou.
517     *) Исправление: в директиве disable_symlinks.
519     *) Исправление: при использовании ZFS размер кэша на диске мог считаться
520        некорректно; ошибка появилась в 1.0.1.
522     *) Исправление: nginx не собирался компилятором icc 12.1.
524     *) Исправление: nginx не собирался gcc на Solaris; ошибка появилась в
525        1.1.15.
528 Изменения в nginx 1.1.15                                          15.02.2012
530     *) Добавление: директива disable_symlinks.
532     *) Добавление: директивы proxy_cookie_domain и proxy_cookie_path.
534     *) Исправление: nginx мог некорректно сообщать об ошибке "upstream
535        prematurely closed connection" вместо "upstream sent too big header".
536        Спасибо Feibo Li.
538     *) Исправление: nginx не собирался с модулем ngx_http_perl_module, если
539        использовался параметр --with-openssl.
541     *) Исправление: количество внутренних перенаправлений в именованные
542        location'ы не ограничивалось.
544     *) Исправление: вызов $r->flush() несколько раз подряд мог приводить к
545        ошибкам в модуле ngx_http_gzip_filter_module.
547     *) Исправление: при использовании директивы proxy_store с
548        SSI-подзапросами временные файлы могли не удаляться.
550     *) Исправление: в некоторых случаях некэшируемые переменные (такие, как
551        $args) возвращали старое пустое закэшированное значение.
553     *) Исправление: в рабочем процессе мог произойти segmentation fault,
554        если одновременно создавалось слишком много SSI-подзапросов; ошибка
555        появилась в 0.7.25.
558 Изменения в nginx 1.1.14                                          30.01.2012
560     *) Добавление: теперь можно указать несколько ограничений limit_req
561        одновременно.
563     *) Исправление: в обработке ошибок при соединении с бэкендом.
564        Спасибо Piotr Sikora.
566     *) Исправление: в обработке ошибок при использовании AIO на FreeBSD.
568     *) Исправление: в инициализации библиотеки OpenSSL.
570     *) Исправление: директивы proxy_redirect могли наследоваться
571        некорректно.
573     *) Исправление: утечки памяти при переконфигурации, если использовалась
574        директива pcre_jit.
577 Изменения в nginx 1.1.13                                          16.01.2012
579     *) Добавление: параметры TLSv1.1 и TLSv1.2 в директиве ssl_protocols.
581     *) Исправление: параметры директивы limit_req наследовались некорректно;
582        ошибка появилась в 1.1.12.
584     *) Исправление: директива proxy_redirect некорректно обрабатывала
585        заголовок Refresh при использовании регулярных выражений.
587     *) Исправление: директива proxy_cache_use_stale с параметром error не
588        возвращала ответ из кэша, если все бэкенды были признаны
589        неработающими.
591     *) Исправление: директива worker_cpu_affinity могла не работать.
593     *) Исправление: nginx не собирался на Solaris; ошибка появилась в
594        1.1.12.
596     *) Исправление: в модуле ngx_http_mp4_module.
599 Изменения в nginx 1.1.12                                          26.12.2011
601     *) Изменение: после перенаправления запроса с помощью директивы
602        error_page директива proxy_pass без URI теперь использует изменённый
603        URI.
604        Спасибо Lanshun Zhou.
606     *) Добавление: директивы proxy/fastcgi/scgi/uwsgi_cache_lock,
607        proxy/fastcgi/scgi/uwsgi_cache_lock_timeout.
609     *) Добавление: директива pcre_jit.
611     *) Добавление: SSI команда if поддерживает выделения в регулярных
612        выражениях.
614     *) Исправление: SSI команда if не работала внутри команды block.
616     *) Исправление: директивы limit_conn_log_level и limit_req_log_level
617        могли не работать.
619     *) Исправление: директива limit_rate не позволяла передавать на полной
620        скорости, даже если был указан очень большой лимит.
622     *) Исправление: директива sendfile_max_chunk не работала, если
623        использовалась директива limit_rate.
625     *) Исправление: если в директиве proxy_pass использовались переменные и
626        не был указан URI, всегда использовался URI исходного запроса.
628     *) Исправление: после перенаправления запроса с помощью директивы
629        try_files директива proxy_pass без URI могла использовать URI
630        исходного запроса.
631        Спасибо Lanshun Zhou.
633     *) Исправление: в модуле ngx_http_scgi_module.
635     *) Исправление: в модуле ngx_http_mp4_module.
637     *) Исправление: nginx не собирался на Solaris; ошибка появилась в 1.1.9.
640 Изменения в nginx 1.1.11                                          12.12.2011
642     *) Добавление: параметр so_keepalive в директиве listen.
643        Спасибо Всеволоду Стахову.
645     *) Добавление: параметр if_not_empty в директивах
646        fastcgi/scgi/uwsgi_param.
648     *) Добавление: переменная $https.
650     *) Добавление: директива proxy_redirect поддерживает переменные в первом
651        параметре.
653     *) Добавление: директива proxy_redirect поддерживает регулярные
654        выражения.
656     *) Исправление: переменная $sent_http_cache_control могла содержать
657        неверное значение при использовании директивы expires.
658        Спасибо Yichun Zhang.
660     *) Исправление: директива read_ahead могла не работать при использовании
661        совместно с try_files и open_file_cache.
663     *) Исправление: если в параметре inactive директивы proxy_cache_path
664        было указано малое время, в рабочем процессе мог произойти
665        segmentation fault.
667     *) Исправление: ответы из кэша могли зависать.
670 Изменения в nginx 1.1.10                                          30.11.2011
672     *) Исправление: при использовании AIO на Linux в рабочем процессе
673        происходил segmentation fault; ошибка появилась в 1.1.9.
676 Изменения в nginx 1.1.9                                           28.11.2011
678     *) Изменение: теперь двойные кавычки экранируется при выводе
679        SSI-командой echo.
680        Спасибо Зауру Абасмирзоеву.
682     *) Добавление: параметр valid в директиве resolver. По умолчанию теперь
683        используется TTL, возвращённый DNS-сервером.
684        Спасибо Кириллу Коринскому.
686     *) Исправление: nginx мог перестать отвечать, если рабочий процесс
687        завершался аварийно.
689     *) Исправление: в рабочем процессе мог произойти segmentation fault,
690        если использовалось SNI; ошибка появилась в 1.1.2.
692     *) Исправление: в директиве keepalive_disable; ошибка появилась в 1.1.8.
693        Спасибо Александру Усову.
695     *) Исправление: сигнал SIGWINCH переставал работать после первого
696        обновления исполняемого файла; ошибка появилась в 1.1.1.
698     *) Исправление: теперь ответы бэкендов, длина которых не соответствует
699        заголовку Content-Length, не кэширутся.
701     *) Исправление: в директиве scgi_param при использовании составных
702        параметров.
704     *) Исправление: в методе epoll.
705        Спасибо Yichun Zhang.
707     *) Исправление: в модуле ngx_http_flv_module.
708        Спасибо Piotr Sikora.
710     *) Исправление: в модуле ngx_http_mp4_module.
712     *) Исправление: теперь nginx понимает IPv6-адреса в строке запроса и в
713        заголовке Host.
715     *) Исправление: директивы add_header и expires не работали для ответов с
716        кодом 206, если запрос проксировался.
718     *) Исправление: nginx не собирался на FreeBSD 10.
720     *) Исправление: nginx не собирался на AIX.
723 Изменения в nginx 1.1.8                                           14.11.2011
725     *) Изменение: модуль ngx_http_limit_zone_module переименован в
726        ngx_http_limit_conn_module.
728     *) Изменение: директива limit_zone заменена директивой limit_conn_zone с
729        новым синтаксисом.
731     *) Добавление: поддержка ограничения по нескольким limit_conn на одном
732        уровне.
734     *) Добавление: директива image_filter_sharpen.
736     *) Исправление: в рабочем процессе мог произойти segmentation fault,
737        если resolver получил большой DNS-ответ.
738        Спасибо Ben Hawkes.
740     *) Исправление: в вычислении ключа для кэширования, если использовалась
741        внутренняя реализация MD5; ошибка появилась в 1.0.4.
743     *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в
744        заголовке запроса клиента могли передаваться бэкенду при кэшировании;
745        или не передаваться при выключенном кэшировании, если кэширование
746        было включено в другой части конфигурации.
748     *) Исправление: модуль ngx_http_mp4_module выдавал неверную строку
749        "Content-Length" в заголовке ответа, использовался аргумент start.
750        Спасибо Piotr Sikora.
753 Изменения в nginx 1.1.7                                           31.10.2011
755     *) Добавление: поддержка нескольких DNS серверов в директиве "resolver".
756        Спасибо Кириллу Коринскому.
758     *) Исправление: на старте или во время переконфигурации происходил
759        segmentation fault, если директива ssl использовалась на уровне http
760        и не был указан ssl_certificate.
762     *) Исправление: уменьшено потребление памяти при проксировании больших
763        файлов, если они буферизировались на диск.
765     *) Исправление: в рабочем процессе мог произойти segmentation fault,
766        если использовалась директива "proxy_http_version 1.1".
768     *) Исправление: в директиве "expires @time".
771 Изменения в nginx 1.1.6                                           17.10.2011
773     *) Изменение во внутреннем API: теперь при внутреннем редиректе в
774        именованный location контексты модулей очищаются.
775        По запросу Yichun Zhang.
777     *) Изменение: теперь если сервер, описанный в блоке upstream, был
778        признан неработающим, то после истечения fail_timeout на него будет
779        отправлен только один запрос; сервер будет считаться работающим, если
780        успешно ответит на этот запрос.
782     *) Изменение: теперь символы 0x7F-0xFF в access_log записываются в виде
783        \xXX.
785     *) Добавление: директивы "proxy/fastcgi/scgi/uwsgi_ignore_headers"
786        теперь поддерживают значения X-Accel-Limit-Rate, X-Accel-Buffering и
787        X-Accel-Charset.
789     *) Добавление: уменьшение потребления памяти при использовании SSL.
791     *) Исправление: некоторые UTF-8 символы обрабатывались неправильно.
792        Спасибо Алексею Куцу.
794     *) Исправление: директивы модуля ngx_http_rewrite_module, заданные на
795        уровне server, применялись повторно, если для запроса не находилось
796        ни одного location'а.
798     *) Исправление: при использовании "aio sendfile" могла происходить
799        утечка сокетов.
801     *) Исправление: при использовании файлового AIO соединения с быстрыми
802        клиентами могли быть закрыты по истечению send_timeout.
804     *) Исправление: в модуле ngx_http_autoindex_module.
806     *) Исправление: модуль ngx_http_mp4_module не поддерживал перемотку на
807        32-битных платформах.
810 Изменения в nginx 1.1.5                                           05.10.2011
812     *) Добавление: директивы uwsgi_buffering и scgi_buffering.
813        Спасибо Peter Smit.
815     *) Исправление: при использовании proxy_cache_bypass могли быть
816        закэшированы некэшируемые ответы.
817        Спасибо John Ferlito.
819     *) Исправление: в модуле ngx_http_proxy_module при работе с бэкендами по
820        HTTP/1.1.
822     *) Исправление: закэшированные ответы с пустым телом возвращались
823        некорректно; ошибка появилась в 0.8.31.
825     *) Исправление: ответы с кодом 201 модуля ngx_http_dav_module были
826        некорректны; ошибка появилась в 0.8.32.
828     *) Исправление: в директиве return.
830     *) Исправление: при использовании директивы "ssl_session_cache builtin"
831        происходил segmentation fault; ошибка появилась в 1.1.1.
834 Изменения в nginx 1.1.4                                           20.09.2011
836     *) Добавление: модуль ngx_http_upstream_keepalive.
838     *) Добавление: директива proxy_http_version.
840     *) Добавление: директива fastcgi_keep_conn.
842     *) Добавление: директива worker_aio_requests.
844     *) Исправление: если nginx был собран с файловым AIO, он не мог
845        запускаться на Linux без поддержки AIO.
847     *) Исправление: в обработке ошибок при работе с Linux AIO.
848        Спасибо Hagai Avrahami.
850     *) Исправление: уменьшено потребление памяти для долгоживущих запросов.
852     *) Исправление: модуль ngx_http_mp4_module не поддерживал 64-битный
853        MP4-атом co64.
856 Изменения в nginx 1.1.3                                           14.09.2011
858     *) Добавление: модуль ngx_http_mp4_module.
860     *) Исправление: в Linux AIO, используемым совместно с open_file_cache.
862     *) Исправление: open_file_cache не обновлял информацию о файле, если
863        файл был изменён не атомарно.
865     *) Исправление: nginx не собирался на MacOSX 10.7.
868 Изменения в nginx 1.1.2                                           05.09.2011
870     *) Изменение: теперь, если суммарный размер всех диапазонов больше
871        размера исходного ответа, то nginx возвращает только исходный ответ,
872        не обрабатывая диапазоны.
874     *) Добавление: директива max_ranges.
876     *) Исправление: директивы ssl_verify_client, ssl_verify_depth и
877        ssl_prefer_server_cipher могли работать некорректно, если
878        использовался SNI.
880     *) Исправление: в директивах proxy/fastcgi/scgi/
881        uwsgi_ignore_client_abort.
884 Изменения в nginx 1.1.1                                           22.08.2011
886     *) Изменение: теперь загрузчик кэша за каждую итерацию либо обрабатывает
887        число файлов, указанное в параметре load_files, либо работает не
888        дольше времени, указанного в параметре loader_threshold.
890     *) Изменение: SIGWINCH сигнал теперь работает только в режиме демона.
892     *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX
893        на Solaris.
894        Спасибо Денису Иванову.
896     *) Добавление: теперь на NetBSD поддерживаются accept фильтры.
898     *) Исправление: nginx не собирался на Linux 3.0.
900     *) Исправление: в некоторых случаях nginx не использовал сжатие; ошибка
901        появилась в 1.1.0.
903     *) Исправление: обработка тела запроса могла быть неверной, если клиент
904        использовал pipelining.
906     *) Исправление: в директиве request_body_in_single_buf.
908     *) Исправление: в директивах proxy_set_body и proxy_pass_request_body
909        при использовании SSL-соединения с бэкендом.
911     *) Исправление: nginx нагружал процессор, если все серверы в upstream'е
912        были помечены флагом down.
914     *) Исправление: при переконфигурации мог произойти segmentation fault,
915        если в предыдущей конфигурации был определён, но не использовался
916        ssl_session_cache.
918     *) Исправление: при использовании большого количества backup-серверов в
919        рабочем процессе мог произойти segmentation fault.
921     *) Исправление: при использовании директив fastcgi/scgi/uwsgi_param со
922        значениями, начинающимися со строки "HTTP_", в рабочем процессе мог
923        произойти segmentation fault; ошибка появилась в 0.8.40.
926 Изменения в nginx 1.1.0                                           01.08.2011
928     *) Добавление: уменьшение времени работы загрузчика кэша.
930     *) Добавление: параметры loader_files, loader_sleep и loader_threshold
931        директив proxy/fastcgi/scgi/uwsgi_cache_path.
933     *) Добавление: уменьшение времени загрузки конфигураций с большим
934        количеством HTTPS серверов.
936     *) Добавление: теперь nginx поддерживает шифры с обменом ECDHE-ключами.
937        Спасибо Adrian Kotelba.
939     *) Добавление: директива lingering_close.
940        Спасибо Максиму Дунину.
942     *) Исправление: закрытия соединения для pipelined-запросов.
943        Спасибо Максиму Дунину.
945     *) Исправление: nginx не запрещал сжатие при получении значения
946        "gzip;q=0" в строке "Accept-Encoding" в заголовке запроса клиента.
948     *) Исправление: таймаута при небуферизированном проксировании.
949        Спасибо Максиму Дунину.
951     *) Исправление: утечки памяти при использовании переменных в директиве
952        proxy_pass при работе с бэкендом по HTTPS.
953        Спасибо Максиму Дунину.
955     *) Исправление: в проверке параметра директивы proxy_pass, заданного
956        переменными.
957        Спасибо Lanshun Zhou.
959     *) Исправление: SSL не работал на QNX.
960        Спасибо Максиму Дунину.
962     *) Исправление: SSL модули не собирались gcc 4.6 без параметра
963        --with-debug.
966 Изменения в nginx 1.0.5                                           19.07.2011
968     *) Изменение: теперь по умолчанию используются следующие шифры SSL:
969        "HIGH:!aNULL:!MD5".
970        Спасибо Rob Stradling.
972     *) Добавление: директивы referer_hash_max_size и
973        referer_hash_bucket_size.
974        Спасибо Witold Filipczyk.
976     *) Добавление: переменная $uid_reset.
978     *) Исправление: при использовании кэширования в рабочем процессе мог
979        произойти segmentation fault.
980        Спасибо Lanshun Zhou.
982     *) Исправление: при использовании кэширования рабочие процессы могли
983        зациклиться во время переконфигурации; ошибка появилась в 0.8.48.
984        Спасибо Максиму Дунину.
986     *) Исправление: сообщения "stalled cache updating".
987        Спасибо Максиму Дунину.
990 Изменения в nginx 1.0.4                                           01.06.2011
992     *) Изменение: теперь в регулярных выражениях в директиве map можно
993        задать чувствительность к регистру с помощью префиксов "~" и "~*".
995     *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX
996        на Linux.
997        Спасибо Денису Латыпову.
999     *) Исправление: сообщения "stalled cache updating".
1001     *) Исправление: nginx не собирался с параметром
1002        --without-http_auth_basic_module; ошибка появилась в 1.0.3.
1005 Изменения в nginx 1.0.3                                           25.05.2011
1007     *) Добавление: директива auth_basic_user_file поддерживает шифрование
1008        пароля методами "$apr1", "{PLAIN}" и "{SSHA}".
1009        Спасибо Максиму Дунину.
1011     *) Добавление: директива geoip_org и переменная $geoip_org.
1012        Спасибо Александру Ускову, Arnaud Granal и Денису Латыпову.
1014     *) Добавление: модули ngx_http_geo_module и ngx_http_geoip_module
1015        поддерживают адреса IPv4, отображённые на IPv6 адреса.
1017     *) Исправление: при проверке адреса IPv4, отображённого на адрес IPv6, в
1018        рабочем процессе происходил segmentation fault, если директивы access
1019        или deny были определены только для адресов IPv6; ошибка появилась в
1020        0.8.22.
1022     *) Исправление: закэшированный ответ мог быть испорчен, если значения
1023        директив proxy/fastcgi/scgi/uwsgi_cache_bypass и proxy/fastcgi/scgi/
1024        uwsgi_no_cache были разными; ошибка появилась в 0.8.46.
1027 Изменения в nginx 1.0.2                                           10.05.2011
1029     *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX.
1031     *) Исправление: в работе параметра rotate директивы image_filter.
1032        Спасибо Adam Bocim.
1034     *) Исправление: nginx не собирался на Solaris; ошибка появилась в 1.0.1.
1037 Изменения в nginx 1.0.1                                           03.05.2011
1039     *) Изменение: теперь директива split_clients использует алгоритм
1040        MurmurHash2 из-за лучшего распределения.
1041        Спасибо Олегу Мамонтову.
1043     *) Изменение: теперь длинные строки, начинающиеся с нуля, не считаются
1044        ложными значениями.
1045        Спасибо Максиму Дунину.
1047     *) Изменение: теперь по умолчанию nginx использует значение 511 для
1048        listen backlog на Linux.
1050     *) Добавление: переменные $upstream_... можно использовать в SSI и
1051        перловом модулях.
1053     *) Исправление: теперь nginx лучше ограничивает размер кэша на диске.
1054        Спасибо Олегу Мамонтову.
1056     *) Исправление: при парсинге неправильного IPv4 адреса мог произойти
1057        segmentation fault; ошибка появилась в 0.8.22.
1058        Спасибо Максиму Дунину.
1060     *) Исправление: nginx не собирался gcc 4.6 без параметра --with-debug.
1062     *) Исправление: nginx не собирался на Solaris 9 и более ранних; ошибка
1063        появилась в 0.9.3.
1064        Спасибо Dagobert Michelsen.
1066     *) Исправление: переменная $request_time имела неверные значения, если
1067        использовались подзапросы; ошибка появилась в 0.8.47.
1068        Спасибо Игорю А. Валькову.
1071 Изменения в nginx 1.0.0                                           12.04.2011
1073     *) Исправление: cache manager мог нагружать процессор после
1074        переконфигурации.
1075        Спасибо Максиму Дунину.
1077     *) Исправление: директива "image_filter crop" неправильно работала в
1078        сочетании с "image_filter rotate 180".
1080     *) Исправление: директива "satisfy any" запрещала выдачу
1081        пользовательской страницы для 401 кода.
1084 Изменения в nginx 0.9.7                                           04.04.2011
1086     *) Добавление: теперь соединения в состоянии keepalive могут быть
1087        закрыты преждевременно, если у воркера нет свободных соединений.
1088        Спасибо Максиму Дунину.
1090     *) Добавление: параметр rotate директивы image_filter.
1091        Спасибо Adam Bocim.
1093     *) Исправление: ситуации, когда бэкенд в директивах fastcgi_pass,
1094        scgi_pass или uwsgi_pass задан выражением и ссылается на описанный
1095        upstream.
1098 Изменения в nginx 0.9.6                                           21.03.2011
1100     *) Добавление: директива map поддерживает регулярные выражения в
1101        качестве значения первого параметра.
1103     *) Добавление: переменная $time_iso8601 для access_log.
1104        Спасибо Michael Lustfield.
1107 Изменения в nginx 0.9.5                                           21.02.2011
1109     *) Изменение: теперь по умолчанию nginx использует значение -1 для
1110        listen backlog на Linux.
1111        Спасибо Андрею Нигматулину.
1113     *) Добавление: параметр utf8 в директивах geoip_country и geoip_city.
1114        Спасибо Денису Латыпову.
1116     *) Исправление: исправление в умолчательной директиве proxy_redirect,
1117        если в директиве proxy_pass не был описан URI.
1118        Спасибо Максиму Дунину.
1120     *) Исправление: директива error_page не работала с нестандартными кодами
1121        ошибок; ошибка появилась в 0.8.53.
1122        Спасибо Максиму Дунину.
1125 Изменения в nginx 0.9.4                                           21.01.2011
1127     *) Добавление: директива server_name поддерживает переменную $hostname.
1129     *) Добавление: 494 код для ошибки "Request Header Too Large".
1132 Изменения в nginx 0.9.3                                           13.12.2010
1134     *) Исправление: если для пары IPv6-адрес:порт описан только один сервер,
1135        то выделения в регулярных выражениях в директиве server_name не
1136        работали.
1138     *) Исправление: nginx не собирался под Solaris; ошибка появилась в
1139        0.9.0.
1142 Изменения в nginx 0.9.2                                           06.12.2010
1144     *) Добавление: поддержка строки "If-Unmodified-Since" в заголовке
1145        запросе клиента.
1147     *) Изменение: использование accept(), если accept4() не реализован;
1148        ошибка появилась в 0.9.0.
1150     *) Исправление: nginx не собирался под Cygwin; ошибка появилась в 0.9.0.
1152     *) Исправление: уязвимости в OpenSSL CVE-2010-4180.
1153        Спасибо Максиму Дунину.
1156 Изменения в nginx 0.9.1                                           30.11.2010
1158     *) Исправление: директивы вида "return CODE message" не работали; ошибка
1159        появилась в 0.9.0.
1162 Изменения в nginx 0.9.0                                           29.11.2010
1164     *) Добавление: директива keepalive_disable.
1166     *) Добавление: директива map поддерживает переменные в качестве значения
1167        определяемой переменной.
1169     *) Добавление: директива map поддерживает пустые строки в качестве
1170        значения первого параметра.
1172     *) Добавление: директива map поддерживает выражения в первом параметре.
1174     *) Добавление: страница руководства nginx(8).
1175        Спасибо Сергею Осокину.
1177     *) Добавление: поддержка accept4() в Linux.
1178        Спасибо Simon Liu.
1180     *) Изменение: устранение предупреждения линкера о "sys_errlist" и
1181        "sys_nerr" под Linux; предупреждение появилось в 0.8.35.
1183     *) Исправление: при использовании директивы auth_basic в рабочем
1184        процессе мог произойти segmentation fault.
1185        Спасибо Михаилу Лалетину.
1187     *) Исправление: совместимость с модулем ngx_http_eval_module; ошибка
1188        появилась в 0.8.42.
1191 Изменения в nginx 0.8.53                                          18.10.2010
1193     *) Добавление: теперь директива error_page позволяет менять код статуса
1194        у редиректа.
1196     *) Добавление: директива gzip_disable поддерживает специальную маску
1197        degradation.
1199     *) Исправление: при использовании файлового AIO могла происходить утечка
1200        сокетов.
1201        Спасибо Максиму Дунину.
1203     *) Исправление: если в первом сервере не была описана директива listen и
1204        нигде явно не описан сервер по умолчанию, то сервером по умолчанию
1205        становился следующий сервер с директивой listen; ошибка появилась в
1206        0.8.21.
1209 Изменения в nginx 0.8.52                                          28.09.2010
1211     *) Исправление: nginx использовал режим SSL для listen сокета, если для
1212        него был установлен любой listen-параметр; ошибка появилась в 0.8.51.
1215 Изменения в nginx 0.8.51                                          27.09.2010
1217     *) Изменение: директива secure_link_expires упразднена.
1219     *) Изменение: уровень логгирования ошибок resolver'а понижен с уровня
1220        alert на error.
1222     *) Добавление: теперь параметр "ssl" listen-сокета можно устанавливать
1223        несколько раз.
1226 Изменения в nginx 0.8.50                                          02.09.2010
1228     *) Добавление: директивы secure_link, secure_link_md5 и
1229        secure_link_expires модуля ngx_http_secure_link_module.
1231     *) Добавление: ключ -q.
1232        Спасибо Геннадию Махомеду.
1234     *) Исправление: при использовании кэширования рабочие процессы и могли
1235        зациклиться во время переконфигурации; ошибка появилась в 0.8.48.
1237     *) Исправление: в директиве gzip_disable.
1238        Спасибо Derrick Petzold.
1240     *) Исправление: nginx/Windows не мог посылать сигналы stop, quit,
1241        reopen, reload процессу, запущенному в другой сессии.
1244 Изменения в nginx 0.8.49                                          09.08.2010
1246     *) Добавление: директива image_filter_jpeg_quality поддерживает
1247        переменные.
1249     *) Исправление: при использовании переменной $geoip_region_name в
1250        рабочем процессе мог произойти segmentation fault; ошибка появилась в
1251        0.8.48.
1253     *) Исправление: ошибки, перехваченные error_page, кэшировались только до
1254        следующего запроса; ошибка появилась в 0.8.48.
1257 Изменения в nginx 0.8.48                                          03.08.2010
1259     *) Изменение: теперь по умолчанию директива server_name имеет значение
1260        пустое имя "".
1261        Спасибо Геннадию Махомеду.
1263     *) Изменение: теперь по умолчанию директива server_name_in_redirect
1264        имеет значение off.
1266     *) Добавление: переменные $geoip_dma_code, $geoip_area_code и
1267        $geoip_region_name.
1268        Спасибо Christine McGonagle.
1270     *) Исправление: директивы proxy_pass, fastcgi_pass, uwsgi_pass и
1271        scgi_pass не наследовались в блоки limit_except.
1273     *) Исправление: директивы proxy_cache_min_uses, fastcgi_cache_min_uses
1274        uwsgi_cache_min_uses и scgi_cache_min_uses не работали; ошибка
1275        появилась в 0.8.46.
1277     *) Исправление: директива fastcgi_split_path_info неверно использовала
1278        выделения, если в выделения попадала только часть URI.
1279        Спасибо Юрию Тарадаю и Frank Enderle.
1281     *) Исправление: директива rewrite не экранировала символ ";" при
1282        копировании из URI в аргументы.
1283        Спасибо Daisuke Murase.
1285     *) Исправление: модуль ngx_http_image_filter_module закрывал соединение,
1286        если изображение было больше размера image_filter_buffer.
1289 Изменения в nginx 0.8.47                                          28.07.2010
1291     *) Исправление: переменная $request_time имела неверные значения для
1292        подзапросов.
1294     *) Исправление: ошибки, перехваченные error_page, не кэшировались.
1296     *) Исправление: если использовался параметр max_size, то cache manager
1297        мог зациклиться; ошибка появилась в 0.8.46.
1300 Изменения в nginx 0.8.46                                          19.07.2010
1302     *) Изменение: директивы proxy_no_cache, fastcgi_no_cache, uwsgi_no_cache
1303        и scgi_no_cache теперь влияют только на сохранение закэшированного
1304        ответа.
1306     *) Добавление: директивы proxy_cache_bypass, fastcgi_cache_bypass,
1307        uwsgi_cache_bypass и scgi_cache_bypass.
1309     *) Исправление: nginx не освобождал память в keys_zone кэшей в случае
1310        ошибки работы с бэкендом: память освобождалась только по истечении
1311        времени неактивности или при недостатке памяти.
1314 Изменения в nginx 0.8.45                                          13.07.2010
1316     *) Добавление: улучшения в модуле ngx_http_xslt_filter.
1317        Спасибо Laurence Rowe.
1319     *) Исправление: ответ SSI модуля мог передаваться не полностью после
1320        команды include с параметром wait="yes"; ошибка появилась в 0.7.25.
1321        Спасибо Максиму Дунину.
1323     *) Исправление: директива listen не поддерживала параметр setfib=0.
1326 Изменения в nginx 0.8.44                                          05.07.2010
1328     *) Изменение: теперь nginx по умолчанию не кэширует ответы бэкендов, в
1329        заголовке которых есть строка "Set-Cookie".
1331     *) Добавление: директива listen поддерживает параметр setfib.
1332        Спасибо Андрею Филонову.
1334     *) Исправление: директива sub_filter могла изменять регистр букв при
1335        частичном совпадении.
1337     *) Исправление: совместимость с HP/UX.
1339     *) Исправление: совместимость с компилятором AIX xlC_r.
1341     *) Исправление: nginx считал большие пакеты SSLv2 как обычные текстовые
1342        запросы.
1343        Спасибо Miroslaw Jaworski.
1346 Изменения в nginx 0.8.43                                          30.06.2010
1348     *) Добавление: ускорение загрузки больших баз geo-диапазонов.
1350     *) Исправление: перенаправление ошибки в "location /zero {return 204;}"
1351        без изменения кода ответа оставляло тело ошибки; ошибка появилась в
1352        0.8.42.
1354     *) Исправление: nginx мог закрывать IPv6 listen сокет во время
1355        переконфигурации.
1356        Спасибо Максиму Дунину.
1358     *) Исправление: переменную $uid_set можно использовать на любой стадии
1359        обработки запроса.
1362 Изменения в nginx 0.8.42                                          21.06.2010
1364     *) Изменение: теперь nginx проверяет location'ы, заданные регулярными
1365        выражениями, если запрос полностью совпал с location'ом, заданным
1366        строкой префикса. Предыдущее поведение появилось в 0.7.1.
1368     *) Добавление: модуль ngx_http_scgi_module.
1369        Спасибо Manlio Perillo.
1371     *) Добавление: в директиве return можно добавлять текст ответа.
1374 Изменения в nginx 0.8.41                                          15.06.2010
1376     *) Безопасность: рабочий процесс nginx/Windows мог завершаться аварийно
1377        при запросе файла с неверной кодировкой UTF-8.
1379     *) Изменение: теперь nginx разрешает использовать пробелы в строке
1380        запроса.
1382     *) Исправление: директива proxy_redirect неправильно изменяла строку
1383        "Refresh" в заголовке ответа бэкенда.
1384        Спасибо Андрею Андрееву и Максиму Согину.
1386     *) Исправление: nginx не поддерживал путь без имени хоста в строке
1387        "Destination" в заголовке запроса.
1390 Изменения в nginx 0.8.40                                          07.06.2010
1392     *) Безопасность: теперь nginx/Windows игнорирует имя потока файла по
1393        умолчанию.
1394        Спасибо Jose Antonio Vazquez Gonzalez.
1396     *) Добавление: модуль ngx_http_uwsgi_module.
1397        Спасибо Roberto De Ioris.
1399     *) Добавление: директива fastcgi_param со значением, начинающимся со
1400        строки "HTTP_", изменяет строку заголовка в запросе клиента.
1402     *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в
1403        заголовке запроса клиента передавались FastCGI-серверу при
1404        кэшировании.
1406     *) Исправление: listen unix domain сокет нельзя было изменить во время
1407        переконфигурации.
1408        Спасибо Максиму Дунину.
1411 Изменения в nginx 0.8.39                                          31.05.2010
1413     *) Исправление: наследуемая директива alias неправильно работала во
1414        вложенном location'е.
1416     *) Исправление: в комбинации директив alias с переменными и try_files;
1418     *) Исправление: listen unix domain и IPv6 сокеты не наследовались во
1419        время обновления без перерыва.
1420        Спасибо Максиму Дунину.
1423 Изменения в nginx 0.8.38                                          24.05.2010
1425     *) Добавление: директивы proxy_no_cache и fastcgi_no_cache.
1427     *) Добавление: теперь при использовании переменной $scheme в директиве
1428        rewrite автоматически делается редирект.
1429        Спасибо Piotr Sikora.
1431     *) Исправление: теперь задержки в директиве limit_req соответствует
1432        описанному алгоритму.
1433        Спасибо Максиму Дунину.
1435     *) Исправление: переменную $uid_got нельзя было использовать в SSI и
1436        перловом модулях.
1439 Изменения в nginx 0.8.37                                          17.05.2010
1441     *) Добавление: модуль ngx_http_split_clients_module.
1443     *) Добавление: директива map поддерживает ключи больше 255 символов.
1445     *) Исправление: nginx игнорировал значения "private" и "no-store" в
1446        строке "Cache-Control" в заголовке ответа бэкенда.
1448     *) Исправление: параметр stub в SSI-директиве include не использовался,
1449        если пустой ответ имел код 200.
1451     *) Исправление: если проксированный или FastCGI запрос внутренне
1452        перенаправлялся в другой проксированный или FastCGI location, то в
1453        рабочем процессе мог произойти segmentation fault; ошибка появилась в
1454        0.8.33.
1455        Спасибо Yichun Zhang.
1457     *) Исправление: соединения IMAP к серверу Zimbra могло зависнуть до
1458        таймаута.
1459        Спасибо Alan Batie.
1462 Изменения в nginx 0.8.36                                          22.04.2010
1464     *) Исправление: модуль ngx_http_dav_module неправильно обрабатывал
1465        методы DELETE, COPY и MOVE для симлинков.
1467     *) Исправление: модуль SSI в подзапросах использовал закэшированные в
1468        основном запросе значения переменных $query_string, $arg_... и им
1469        подобных.
1471     *) Исправление: значение переменной повторно экранировалось после
1472        каждого вывода SSI-команды echo; ошибка появилась в 0.6.14.
1474     *) Исправление: рабочий процесс зависал при запросе файла FIFO.
1475        Спасибо Vicente Aguilar и Максиму Дунину.
1477     *) Исправление: совместимость с OpenSSL-1.0.0 на 64-битном Linux.
1478        Спасибо Максиму Дунину.
1480     *) Исправление: nginx не собирался с параметром --without-http-cache;
1481        ошибка появилась в 0.8.35.
1484 Изменения в nginx 0.8.35                                          01.04.2010
1486     *) Изменение: теперь charset-фильтр работает до SSI-фильтра.
1488     *) Добавление: директива chunked_transfer_encoding.
1490     *) Исправление: символ "&" при копировании в аргументы в правилах
1491        rewrite не экранировался.
1493     *) Исправление: nginx мог завершаться аварийно во время обработки
1494        сигнала или при использовании директивы timer_resolution на
1495        платформах, не поддерживающих методы kqueue или eventport.
1496        Спасибо George Xie и Максиму Дунину.
1498     *) Исправление: если временные файлы и постоянное место хранения
1499        располагались на разных файловых системах, то у постоянных файлов
1500        время изменения было неверным.
1501        Спасибо Максиму Дунину.
1503     *) Исправление: модуль ngx_http_memcached_module мог выдавать ошибку
1504        "memcached sent invalid trailer".
1505        Спасибо Максиму Дунину.
1507     *) Исправление: nginx не мог собрать библиотеку zlib-1.2.4 из исходных
1508        текстов.
1509        Спасибо Максиму Дунину.
1511     *) Исправление: в рабочем процессе происходил segmentation fault, если
1512        перед ответом FastCGI-сервера было много вывода в stderr; ошибка
1513        появилась в 0.8.34.
1514        Спасибо Максиму Дунину.
1517 Изменения в nginx 0.8.34                                          03.03.2010
1519     *) Исправление: nginx не поддерживал все шифры, используемые в
1520        клиентских сертификатах.
1521        Спасибо Иннокентию Еникееву.
1523     *) Исправление: nginx неправильно кэшировал FastCGI-ответы, если перед
1524        ответом было много вывода в stderr.
1526     *) Исправление: nginx не поддерживал HTTPS-рефереры.
1528     *) Исправление: nginx/Windows мог не находить файлы, если путь в
1529        конфигурации был задан в другом регистре; ошибка появилась в 0.8.33.
1531     *) Исправление: переменная $date_local выдавала неверное время, если
1532        использовался формат "%s".
1533        Спасибо Максиму Дунину.
1535     *) Исправление: если ssl_session_cache не был установлен или установлен
1536        в none, то при проверке клиентского сертификаты могла происходить
1537        ошибка "session id context uninitialized"; ошибка появилась в 0.7.1.
1539     *) Исправление: geo-диапазон возвращал значение по умолчанию, если
1540        диапазон включал в себя одну и более сетей размером /16 и не
1541        начинался на границе сети размером /16.
1543     *) Исправление: блок, используемый в параметре stub в SSI-директиве
1544        include, выводился с MIME-типом "text/plain".
1546     *) Исправление: $r->sleep() не работал; ошибка появилась в 0.8.11.
1549 Изменения в nginx 0.8.33                                          01.02.2010
1551     *) Безопасность: теперь nginx/Windows игнорирует пробелы в конце URI.
1552        Спасибо Dan Crowley, Core Security Technologies.
1554     *) Безопасность: теперь nginx/Windows игнорирует короткие имена файлов.
1555        Спасибо Dan Crowley, Core Security Technologies.
1557     *) Изменение: теперь keepalive соединения после запросов POST не
1558        запрещаются для MSIE 7.0+.
1559        Спасибо Adam Lounds.
1561     *) Изменение: теперь keepalive соединения запрещены для Safari.
1562        Спасибо Joshua Sierles.
1564     *) Исправление: если проксированный или FastCGI запрос внутренне
1565        перенаправлялся в другой проксированный или FastCGI location, то
1566        переменная $upstream_response_time могла иметь ненормально большое
1567        значение; ошибка появилась в 0.8.7.
1569     *) Исправление: в рабочем процессе мог произойти segmentation fault при
1570        отбрасывания тела запроса; ошибка появилась в 0.8.11.
1573 Изменения в nginx 0.8.32                                          11.01.2010
1575     *) Исправление: ошибки при использовании кодировки UTF-8 в
1576        ngx_http_autoindex_module.
1577        Спасибо Максиму Дунину.
1579     *) Исправление: именованные выделения в регулярных выражениях работали
1580        только для двух переменных.
1581        Спасибо Максиму Дунину.
1583     *) Исправление: теперь в строке заголовка запроса "Host" используется
1584        имя "localhost", если в директиве auth_http указан unix domain сокет.
1585        Спасибо Максиму Дунину.
1587     *) Исправление: nginx не поддерживал передачу chunk'ами для 201-ых
1588        ответов.
1589        Спасибо Julian Reich.
1591     *) Исправление: если директива "expires modified" выставляла дату в
1592        прошлом, то в строке заголовка ответа "Cache-Control" выдавалось
1593        отрицательное число.
1594        Спасибо Алексею Капранову.
1597 Изменения в nginx 0.8.31                                          23.12.2009
1599     *) Добавление: теперь директива error_page может перенаправлять ответы
1600        со статусом 301 и 302.
1602     *) Добавление: переменные $geoip_city_continent_code, $geoip_latitude и
1603        $geoip_longitude.
1604        Спасибо Arvind Sundararajan.
1606     *) Добавление: модуль ngx_http_image_filter_module теперь всегда удаляет
1607        EXIF и другие данные, если они занимают больше 5% в JPEG-файле.
1609     *) Исправление: nginx закрывал соединение при запросе закэшированного
1610        ответа с пустым телом.
1611        Спасибо Piotr Sikora.
1613     *) Исправление: nginx мог не собираться gcc 4.x при использовании
1614        оптимизации -O2 и выше.
1615        Спасибо Максиму Дунину и Денису Латыпову.
1617     *) Исправление: регулярные выражения в location всегда тестировались с
1618        учётом регистра; ошибка появилась в 0.8.25.
1620     *) Исправление: nginx кэшировал 304 ответ, если в заголовке
1621        проксируемого запроса была строка "If-None-Match".
1622        Спасибо Tim Dettrick и David Kostal.
1624     *) Исправление: nginx/Windows пытался дважды удалить временный файл при
1625        перезаписи уже существующего файла.
1628 Изменения в nginx 0.8.30                                          15.12.2009
1630     *) Изменение: теперь по умолчанию размер буфера директивы
1631        large_client_header_buffers равен 8K.
1632        Спасибо Andrew Cholakian.
1634     *) Добавление: файл conf/fastcgi.conf для простых конфигураций FastCGI.
1636     *) Исправление: nginx/Windows пытался дважды переименовать временный
1637        файл при перезаписи уже существующего файла.
1639     *) Исправление: ошибки double free or corruption, возникающей, если имя
1640        хоста не было найдено; ошибка появилась в 0.8.22.
1641        Спасибо Константину Свисту.
1643     *) Исправление: в использовании libatomic на некоторых платформах.
1644        Спасибо W-Mark Kubacki.
1647 Изменения в nginx 0.8.29                                          30.11.2009
1649     *) Изменение: теперь для проксируемых ответов HTTP/0.9 в лог пишется код
1650        ответа "009".
1652     *) Добавление: директивы addition_types, charset_types, gzip_types,
1653        ssi_types, sub_filter_types и xslt_types поддерживают параметр "*".
1655     *) Добавление: использование встроенных атомарных операций GCC 4.1+.
1656        Спасибо W-Mark Kubacki.
1658     *) Добавление: параметр --with-libatomic[=DIR] в configure.
1659        Спасибо W-Mark Kubacki.
1661     *) Исправление: listen unix domain сокет имели ограниченные права
1662        доступа.
1664     *) Исправление: закэшированные ответы ответов HTTP/0.9 неправильно
1665        обрабатывались.
1667     *) Исправление: именованные выделения в регулярных выражениях, заданные
1668        как "?P<...>", не работали в директиве server_name.
1669        Спасибо Максиму Дунину.
1672 Изменения в nginx 0.8.28                                          23.11.2009
1674     *) Исправление: nginx не собирался с параметром --without-pcre; ошибка
1675        появилась в 0.8.25.
1678 Изменения в nginx 0.8.27                                          17.11.2009
1680     *) Исправление: регулярные выражения не работали в nginx/Windows; ошибка
1681        появилась в 0.8.25.
1684 Изменения в nginx 0.8.26                                          16.11.2009
1686     *) Исправление: ошибки при использовании выделений в директиве rewrite;
1687        ошибка появилась в 0.8.25.
1689     *) Исправление: nginx не собирался без параметра --with-debug; ошибка
1690        появилась в 0.8.25.
1693 Изменения в nginx 0.8.25                                          16.11.2009
1695     *) Изменение: теперь в лог ошибок не пишется сообщение, если переменная
1696        не найдена с помощью метода $r->variable().
1698     *) Добавление: модуль ngx_http_degradation_module.
1700     *) Добавление: именованные выделения в регулярных выражениях.
1702     *) Добавление: теперь при использовании переменных в директиве
1703        proxy_pass не требуется задавать URI.
1705     *) Добавление: теперь директива msie_padding работает и для Chrome.
1707     *) Исправление: в рабочем процессе происходил segmentation fault при
1708        недостатке памяти; ошибка появилась в 0.8.18.
1710     *) Исправление: nginx передавал сжатые ответы клиентам, не
1711        поддерживающим сжатие, при настройках gzip_static on и gzip_vary off;
1712        ошибка появилась в 0.8.16.
1715 Изменения в nginx 0.8.24                                          11.11.2009
1717     *) Исправление: nginx всегда добавлял строку "Content-Encoding: gzip" в
1718        заголовок 304-ых ответов модуля ngx_http_gzip_static_module.
1720     *) Исправление: nginx не собирался без параметра --with-debug; ошибка
1721        появилась в 0.8.23.
1723     *) Исправление: параметр "unix:" в директиве set_real_ip_from
1724        неправильно наследовался с предыдущего уровня.
1726     *) Исправление: в resolver'е при определении пустого имени.
1729 Изменения в nginx 0.8.23                                          11.11.2009
1731     *) Безопасность: теперь SSL/TLS renegotiation запрещён.
1732        Спасибо Максиму Дунину.
1734     *) Исправление: listen unix domain сокет не наследовался во время
1735        обновления без перерыва.
1737     *) Исправление: параметр "unix:" в директиве set_real_ip_from не работал
1738        без ещё одной директивы с любым IP-адресом.
1740     *) Исправление: segmentation fault и зацикливания в resolver'е.
1742     *) Исправление: в resolver'е.
1743        Спасибо Артёму Бохану.
1746 Изменения в nginx 0.8.22                                          03.11.2009
1748     *) Добавление: директивы proxy_bind, fastcgi_bind и memcached_bind.
1750     *) Добавление: директивы access и deny поддерживают IPv6.
1752     *) Добавление: директива set_real_ip_from поддерживает IPv6 адреса в
1753        заголовках запроса.
1755     *) Добавление: параметр "unix:" в директиве set_real_ip_from.
1757     *) Исправление: nginx не удалял unix domain сокет после тестирования
1758        конфигурации.
1760     *) Исправление: nginx удалял unix domain сокет во время обновления без
1761        перерыва.
1763     *) Исправление: оператор "!-x" не работал.
1764        Спасибо Максиму Дунину.
1766     *) Исправление: в рабочем процессе мог произойти segmentation fault при
1767        использовании limit_rate в HTTPS сервере.
1768        Спасибо Максиму Дунину.
1770     *) Исправление: при записи в лог переменной $limit_rate в рабочем
1771        процессе происходил segmentation fault.
1772        Спасибо Максиму Дунину.
1774     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1775        если внутри блока server не было директивы listen; ошибка появилась в
1776        0.8.21.
1779 Изменения в nginx 0.8.21                                          26.10.2009
1781     *) Добавление: теперь ключ -V показывает статус поддержки TLS SNI.
1783     *) Добавление: директива listen модуля HTTP поддерживает unix domain
1784        сокеты.
1785        Спасибо Hongli Lai.
1787     *) Добавление: параметр "default_server" в директиве listen.
1789     *) Добавление: теперь параметр "default" не обязателен для установки
1790        параметров listen-сокета.
1792     *) Исправление: nginx не поддерживал даты в 2038 году на 32-битных
1793        платформах;
1795     *) Исправление: утечки сокетов; ошибка появилась в 0.8.11.
1798 Изменения в nginx 0.8.20                                          14.10.2009
1800     *) Изменение: теперь по умолчанию используются следующие шифры SSL:
1801        "HIGH:!ADH:!MD5".
1803     *) Исправление: модуль ngx_http_autoindex_module не показывал последний
1804        слэш для линков на каталоги; ошибка появилась в 0.7.15.
1806     *) Исправление: nginx не закрывал лог, заданный параметром конфигурации
1807        --error-log-path; ошибка появилась в 0.7.53.
1809     *) Исправление: nginx не считал запятую разделителем в строке
1810        "Cache-Control" в заголовке ответа бэкенда.
1812     *) Исправление: nginx/Windows мог не создать временный файл, файл в кэше
1813        или файл с помощью директив proxy/fastcgi_store, если рабочий процесс
1814        не имел достаточно прав для работы с каталогами верхнего уровня.
1816     *) Исправление: строки "Set-Cookie" и "P3P" в заголовке ответа
1817        FastCGI-сервера не скрывались при кэшировании, если не использовались
1818        директивы fastcgi_hide_header с любыми параметрами.
1820     *) Исправление: nginx неверно считал размер кэша на диске.
1823 Изменения в nginx 0.8.19                                          06.10.2009
1825     *) Изменение: теперь протокол SSLv2 по умолчанию запрещён.
1827     *) Изменение: теперь по умолчанию используются следующие шифры SSL:
1828        "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM".
1830     *) Исправление: директива limit_req не работала; ошибка появилась в
1831        0.8.18.
1834 Изменения в nginx 0.8.18                                          06.10.2009
1836     *) Добавление: директива read_ahead.
1838     *) Добавление: теперь можно использовать несколько директив
1839        perl_modules.
1841     *) Добавление: директивы limit_req_log_level и limit_conn_log_level.
1843     *) Исправление: теперь директива limit_req соответствует алгоритму leaky
1844        bucket.
1845        Спасибо Максиму Дунину.
1847     *) Исправление: nginx не работал на Linux/sparc.
1848        Спасибо Marcus Ramberg.
1850     *) Исправление: nginx слал символ '\0' в строке "Location" в заголовке в
1851        ответе на запрос MKCOL.
1852        Спасибо Xie Zhenye.
1854     *) Исправление: вместо кода ответа 499 в лог записывался код 0; ошибка
1855        появилась в 0.8.11.
1857     *) Исправление: утечки сокетов; ошибка появилась в 0.8.11.
1860 Изменения в nginx 0.8.17                                          28.09.2009
1862     *) Безопасность: теперь символы "/../" запрещены в строке "Destination"
1863        в заголовке запроса.
1865     *) Изменение: теперь значение переменной $host всегда в нижнем регистре.
1867     *) Добавление: переменная $ssl_session_id.
1869     *) Исправление: утечки сокетов; ошибка появилась в 0.8.11.
1872 Изменения в nginx 0.8.16                                          22.09.2009
1874     *) Добавление: директива image_filter_transparency.
1876     *) Исправление: директива "addition_types" была неверно названа
1877        "addtion_types".
1879     *) Исправление: порчи кэша resolver'а.
1880        Спасибо Matthew Dempsky.
1882     *) Исправление: утечки памяти в resolver'е.
1883        Спасибо Matthew Dempsky.
1885     *) Исправление: неверная строка запроса в переменной $request
1886        записывалась в access_log только при использовании error_log на
1887        уровне info или debug.
1889     *) Исправление: в поддержке альфа-канала PNG в модуле
1890        ngx_http_image_filter_module.
1892     *) Исправление: nginx всегда добавлял строку "Vary: Accept-Encoding" в
1893        заголовок ответа, если обе директивы gzip_static и gzip_vary были
1894        включены.
1896     *) Исправление: в поддержке кодировки UTF-8 директивой try_files в
1897        nginx/Windows.
1899     *) Исправление: ошибки при использовании post_action; ошибка появилась в
1900        0.8.11.
1901        Спасибо Игорю Артемьеву.
1904 Изменения в nginx 0.8.15                                          14.09.2009
1906     *) Безопасность: при обработке специально созданного запроса в рабочем
1907        процессе мог произойти segmentation fault.
1908        Спасибо Chris Ries.
1910     *) Исправление: если были описаны имена .domain.tld, .sub.domain.tld и
1911        .domain-some.tld, то имя .sub.domain.tld попадало под маску
1912        .domain.tld.
1914     *) Исправление: в поддержке прозрачности в модуле
1915        ngx_http_image_filter_module.
1917     *) Исправление: в файловом AIO.
1919     *) Исправление: ошибки при использовании X-Accel-Redirect; ошибка
1920        появилась в 0.8.11.
1922     *) Исправление: ошибки при использовании встроенного перла; ошибка
1923        появилась в 0.8.11.
1926 Изменения в nginx 0.8.14                                          07.09.2009
1928     *) Исправление: устаревший закэшированный запрос мог залипнуть в
1929        состоянии "UPDATING".
1931     *) Исправление: при использовании error_log на уровне info или debug в
1932        рабочем процессе мог произойти segmentation fault.
1933        Спасибо Сергею Боченкову.
1935     *) Исправление: ошибки при использовании встроенного перла; ошибка
1936        появилась в 0.8.11.
1938     *) Исправление: директива error_page не перенаправляла ошибку 413;
1939        ошибка появилась в 0.6.10.
1942 Изменения в nginx 0.8.13                                          31.08.2009
1944     *) Исправление: в директиве "aio sendfile"; ошибка появилась в 0.8.12.
1946     *) Исправление: nginx не собирался без параметра --with-file-aio на
1947        FreeBSD; ошибка появилась в 0.8.12.
1950 Изменения в nginx 0.8.12                                          31.08.2009
1952     *) Добавление: параметр sendfile в директиве aio во FreeBSD.
1954     *) Исправление: ошибки при использовании try_files; ошибка появилась в
1955        0.8.11.
1957     *) Исправление: ошибки при использовании memcached; ошибка появилась в
1958        0.8.11.
1961 Изменения в nginx 0.8.11                                          28.08.2009
1963     *) Изменение: теперь директива "gzip_disable msie6" не запрещает сжатие
1964        для MSIE 6.0 SV1.
1966     *) Добавление: поддержка файлового AIO во FreeBSD и Linux.
1968     *) Добавление: директива directio_alignment.
1971 Изменения в nginx 0.8.10                                          24.08.2009
1973     *) Исправление: утечек памяти при использовании базы GeoIP City.
1975     *) Исправление: ошибки при копировании временных файлов в постоянное
1976        место хранения; ошибка появилась в 0.8.9.
1979 Изменения в nginx 0.8.9                                           17.08.2009
1981     *) Добавление: теперь стартовый загрузчик кэша работает в отдельном
1982        процесс; это должно улучшить обработку больших кэшей.
1984     *) Добавление: теперь временные файлы и постоянное место хранения могут
1985        располагаться на разных файловых системах.
1988 Изменения в nginx 0.8.8                                           10.08.2009
1990     *) Исправление: в обработке заголовков ответа, разделённых в
1991        FastCGI-записях.
1993     *) Исправление: если запрос обрабатывался в двух проксированных или
1994        FastCGI location'ах и в первом из них использовалось кэширование, то
1995        в рабочем процессе происходил segmentation fault; ошибка появилась в
1996        0.8.7.
1999 Изменения в nginx 0.8.7                                           27.07.2009
2001     *) Изменение: минимальная поддерживаемая версия OpenSSL - 0.9.7.
2003     *) Изменение: параметр ask директивы ssl_verify_client изменён на
2004        параметр optional и теперь он проверяет клиентский сертификат, если
2005        он был предложен.
2006        Спасибо Brice Figureau.
2008     *) Добавление: переменная $ssl_client_verify.
2009        Спасибо Brice Figureau.
2011     *) Добавление: директива ssl_crl.
2012        Спасибо Brice Figureau.
2014     *) Добавление: параметр proxy директивы geo.
2016     *) Добавление: директива image_filter поддерживает переменные для
2017        задания размеров.
2019     *) Исправление: использование переменной $ssl_client_cert портило
2020        память; ошибка появилась в 0.7.7.
2021        Спасибо Сергею Журавлёву.
2023     *) Исправление: директивы proxy_pass_header и fastcgi_pass_header" не
2024        передавали клиенту строки "X-Accel-Redirect", "X-Accel-Limit-Rate",
2025        "X-Accel-Buffering" и "X-Accel-Charset" из заголовка ответа бэкенда.
2026        Спасибо Максиму Дунину.
2028     *) Исправление: в обработке строк "Last-Modified" и "Accept-Ranges" в
2029        заголовке ответа бэкенда; ошибка появилась в 0.7.44.
2030        Спасибо Максиму Дунину.
2032     *) Исправление: ошибки "[alert] zero size buf" при получении пустых
2033        ответы в подзапросах; ошибка появилась в 0.8.5.
2036 Изменения в nginx 0.8.6                                           20.07.2009
2038     *) Добавление: модуль ngx_http_geoip_module.
2040     *) Исправление: XSLT-фильтр мог выдавать ошибку "not well formed XML
2041        document" для правильного документа.
2042        Спасибо Kuramoto Eiji.
2044     *) Исправление: в MacOSX, Cygwin и nginx/Windows при проверке
2045        location'ов, заданных регулярным выражением, теперь всегда делается
2046        сравнение без учёта регистра символов.
2048     *) Исправление: теперь nginx/Windows игнорирует точки в конце URI.
2049        Спасибо Hugo Leisink.
2051     *) Исправление: имя файла указанного в --conf-path игнорировалось при
2052        установке; ошибка появилась в 0.6.6.
2053        Спасибо Максиму Дунину.
2056 Изменения в nginx 0.8.5                                           13.07.2009
2058     *) Исправление: теперь nginx разрешает подчёркивания в методе запроса.
2060     *) Исправление: при использовании HTTP Basic-аутентификации на Windows
2061        для неверных имени/пароля возвращалась 500-ая ошибка.
2063     *) Исправление: ответы модуля ngx_http_perl_module не работали в
2064        подзапросах.
2066     *) Исправление: в модуле ngx_http_limit_req_module.
2067        Спасибо Максиму Дунину.
2070 Изменения в nginx 0.8.4                                           22.06.2009
2072     *) Исправление: nginx не собирался с параметром --without-http-cache;
2073        ошибка появилась в 0.8.3.
2076 Изменения в nginx 0.8.3                                           19.06.2009
2078     *) Добавление: переменная $upstream_cache_status.
2080     *) Исправление: nginx не собирался на MacOSX 10.6.
2082     *) Исправление: nginx не собирался с параметром --without-http-cache;
2083        ошибка появилась в 0.8.2.
2085     *) Исправление: если использовался перехват 401 ошибки от бэкенда и
2086        бэкенд не возвращал строку "WWW-Authenticate" в заголовке ответа, то
2087        в рабочем процессе происходил segmentation fault.
2088        Спасибо Евгению Мычло.
2091 Изменения в nginx 0.8.2                                           15.06.2009
2093     *) Исправление: во взаимодействии open_file_cache и proxy/fastcgi кэша
2094        на старте.
2096     *) Исправление: open_file_cache мог кэшировать открытые файлы очень
2097        долго; ошибка появилась в 0.7.4.
2100 Изменения в nginx 0.8.1                                           08.06.2009
2102     *) Добавление: параметр updating в директивах proxy_cache_use_stale и
2103        fastcgi_cache_use_stale.
2105     *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в
2106        заголовке запроса клиента передавались бэкенду при кэшировании, если
2107        не использовалась директива proxy_set_header с любыми параметрами.
2109     *) Исправление: строки "Set-Cookie" и "P3P" в заголовке ответа бэкенда
2110        не скрывались при кэшировании, если не использовались директивы
2111        proxy_hide_header/fastcgi_hide_header с любыми параметрами.
2113     *) Исправление: модуль ngx_http_image_filter_module не понимал формат
2114        GIF87a.
2115        Спасибо Денису Ильиных.
2117     *) Исправление: nginx не собирался на Solaris 10 и более ранних; ошибка
2118        появилась в 0.7.56.
2121 Изменения в nginx 0.8.0                                           02.06.2009
2123     *) Добавление: директива keepalive_requests.
2125     *) Добавление: директива limit_rate_after.
2126        Спасибо Ivan Debnar.
2128     *) Исправление: XSLT-фильтр не работал в подзапросах.
2130     *) Исправление: обработке относительных путей в nginx/Windows.
2132     *) Исправление: в proxy_store, fastcgi_store, proxy_cache и
2133        fastcgi_cache в nginx/Windows.
2135     *) Исправление: в обработке ошибок выделения памяти.
2136        Спасибо Максиму Дунину и Кириллу Коринскому.
2139 Изменения в nginx 0.7.59                                          25.05.2009
2141     *) Добавление: директивы proxy_cache_methods и fastcgi_cache_methods.
2143     *) Исправление: утечки сокетов; ошибка появилась в 0.7.25.
2144        Спасибо Максиму Дунину.
2146     *) Исправление: при использовании переменной $request_body в рабочем
2147        процессе происходил segmentation fault, если в запросе не было тела;
2148        ошибка появилась в 0.7.58.
2150     *) Исправление: SSL-модули могли не собираться на Solaris и Linux;
2151        ошибка появилась в 0.7.56.
2153     *) Исправление: ответы модуля ngx_http_xslt_filter_module не
2154        обрабатывались SSI-, charset- и gzip-фильтрами.
2156     *) Исправление: директива charset не ставила кодировку для ответов
2157        модуля ngx_http_gzip_static_module.
2160 Изменения в nginx 0.7.58                                          18.05.2009
2162     *) Добавление: директива listen почтового прокси-сервера поддерживает
2163        IPv6.
2165     *) Добавление: директива image_filter_jpeg_quality.
2167     *) Добавление: директива client_body_in_single_buffer.
2169     *) Добавление: переменная $request_body.
2171     *) Исправление: в модуле ngx_http_autoindex_module в ссылках на имена
2172        файлов, содержащих символ ":".
2174     *) Исправление: процедура "make upgrade" не работала; ошибка появилась в
2175        0.7.53.
2176        Спасибо Денису Латыпову.
2179 Изменения в nginx 0.7.57                                          12.05.2009
2181     *) Исправление: при перенаправлении ошибок модуля
2182        ngx_http_image_filter_module в именованный location в рабочем
2183        процессе происходил floating-point fault; ошибка появилась в 0.7.56.
2186 Изменения в nginx 0.7.56                                          11.05.2009
2188     *) Добавление: nginx/Windows поддерживает IPv6 в директиве listen модуля
2189        HTTP.
2191     *) Исправление: в модуле ngx_http_image_filter_module.
2194 Изменения в nginx 0.7.55                                          06.05.2009
2196     *) Исправление: параметры http_XXX в директивах proxy_cache_use_stale и
2197        fastcgi_cache_use_stale не работали.
2199     *) Исправление: fastcgi кэш не кэшировал ответы, состоящие только из
2200        заголовка.
2202     *) Исправление: ошибки "select() failed (9: Bad file descriptor)" в
2203        nginx/Unix и "select() failed (10038: ...)" в nginx/Windows.
2205     *) Исправление: при использовании директивы debug_connection в рабочем
2206        процессе мог произойти segmentation fault; ошибка появилась в 0.7.54.
2208     *) Исправление: в сборке модуля ngx_http_image_filter_module.
2210     *) Исправление: файлы больше 2G не передавались с использованием
2211        $r->sendfile.
2212        Спасибо Максиму Дунину.
2215 Изменения в nginx 0.7.54                                          01.05.2009
2217     *) Добавление: модуль ngx_http_image_filter_module.
2219     *) Добавление: директивы proxy_ignore_headers и fastcgi_ignore_headers.
2221     *) Исправление: при использовании переменных "open_file_cache_errors on"
2222        в рабочем процессе мог произойти segmentation fault; ошибка появилась
2223        в 0.7.53.
2225     *) Исправление: директива "port_in_redirect off" не работала; ошибка
2226        появилась в 0.7.39.
2228     *) Исправление: улучшение обработки ошибок метода select.
2230     *) Исправление: ошибки "select() failed (10022: ...)" в nginx/Windows.
2232     *) Исправление: в текстовых сообщениях об ошибках в nginx/Windows;
2233        ошибка появилась в 0.7.53.
2236 Изменения в nginx 0.7.53                                          27.04.2009
2238     *) Изменение: теперь лог, указанный в --error-log-path, создаётся с
2239        самого начала работы.
2241     *) Добавление: теперь ошибки и предупреждения при старте записываются в
2242        error_log и выводятся на stderr.
2244     *) Добавление: при сборке с пустым параметром --prefix= nginx использует
2245        как префикс каталог, в котором он был запущен.
2247     *) Добавление: ключ -p.
2249     *) Добавление: ключ -s на Unix-платформах.
2251     *) Добавление: ключи -? и -h.
2252        Спасибо Jerome Loyet.
2254     *) Добавление: теперь ключи можно задавать в сжатой форме.
2256     *) Исправление: nginx/Windows не работал, если файл конфигурации был
2257        задан ключом -c.
2259     *) Исправление: при использовании директив proxy_store, fastcgi_store,
2260        proxy_cache или fastcgi_cache временные файлы могли не удаляться.
2261        Спасибо Максиму Дунину.
2263     *) Исправление: в заголовке Auth-Method запроса серверу аутентификации
2264        почтового прокси-сервера передавалось неверное значение; ошибка
2265        появилась в 0.7.34.
2266        Спасибо Simon Lecaille.
2268     *) Исправление: при логгировании на Linux не писались текстовые описания
2269        системных ошибок; ошибка появилась в 0.7.45.
2271     *) Исправление: директива fastcgi_cache_min_uses не работала.
2272        Спасибо Андрею Воробьёву.
2275 Изменения в nginx 0.7.52                                          20.04.2009
2277     *) Добавление: первая бинарная версия под Windows.
2279     *) Исправление: корректная обработка метода HEAD при кэшировании.
2281     *) Исправление: корректная обработка строк "If-Modified-Since",
2282        "If-Range" и им подобных в заголовке запроса клиента при кэшировании.
2284     *) Исправление: теперь строки "Set-Cookie" и "P3P" скрываются в
2285        заголовке ответа для закэшированных ответов.
2287     *) Исправление: если nginx был собран с модулем ngx_http_perl_module и
2288        perl поддерживал потоки, то при выходе основного процесса могла
2289        выдаваться ошибка "panic: MUTEX_LOCK".
2291     *) Исправление: nginx не собирался с параметром --without-http-cache;
2292        ошибка появилась в 0.7.48.
2294     *) Исправление: nginx не собирался на платформах, отличных от i386,
2295        amd64, sparc и ppc; ошибка появилась в 0.7.42.
2298 Изменения в nginx 0.7.51                                          12.04.2009
2300     *) Добавление: директива try_files поддерживает код ответа в последнем
2301        параметре.
2303     *) Добавление: теперь в директиве return можно использовать любой код
2304        ответа.
2306     *) Исправление: директива error_page делала внешний редирект без строки
2307        запроса; ошибка появилась в 0.7.44.
2309     *) Исправление: если сервера слушали на нескольких явно описанных
2310        адресах, то виртуальные сервера могли не работать; ошибка появилась в
2311        0.7.39.
2314 Изменения в nginx 0.7.50                                          06.04.2009
2316     *) Исправление: переменные $arg_... не работали; ошибка появилась в
2317        0.7.49.
2320 Изменения в nginx 0.7.49                                          06.04.2009
2322     *) Исправление: при использовании переменных $arg_... в рабочем процессе
2323        мог произойти segmentation fault; ошибка появилась в 0.7.48.
2326 Изменения в nginx 0.7.48                                          06.04.2009
2328     *) Добавление: директива proxy_cache_key.
2330     *) Исправление: теперь nginx учитывает при кэшировании строки
2331        "X-Accel-Expires", "Expires" и "Cache-Control" в заголовке ответа
2332        бэкенда.
2334     *) Исправление: теперь nginx кэширует только ответы на запросы GET.
2336     *) Исправление: директива fastcgi_cache_key не наследовалась.
2338     *) Исправление: переменные $arg_... не работали с SSI-подзапросами.
2339        Спасибо Максиму Дунину.
2341     *) Исправление: nginx не собирался с библиотекой uclibc.
2342        Спасибо Timothy Redaelli.
2344     *) Исправление: nginx не собирался на OpenBSD; ошибка появилась
2345        в 0.7.46.
2348 Изменения в nginx 0.7.47                                          01.04.2009
2350     *) Исправление: nginx не собирался на FreeBSD 6 и более ранних версиях;
2351        ошибка появилась в 0.7.46.
2353     *) Исправление: nginx не собирался на MacOSX; ошибка появилась в 0.7.46.
2355     *) Исправление: если использовался параметр max_size, то cache manager
2356        мог удалить весь кэш; ошибка появилась в 0.7.46.
2358     *) Изменение: в рабочем процессе мог произойти segmentation fault, если
2359        директивы proxy_cache/fastcgi_cache и proxy_cache_valid/
2360        fastcgi_cache_valid не были заданы на одном уровне; ошибка появилась
2361        в 0.7.46.
2363     *) Исправление: в рабочем процессе мог произойти segmentation fault при
2364        перенаправлении запроса проксированному или FastCGI-серверу с помощью
2365        error_page или try_files; ошибка появилась в 0.7.44.
2368 Изменения в nginx 0.7.46                                          30.03.2009
2370     *) Исправление: архив предыдущего релиза был неверным.
2373 Изменения в nginx 0.7.45                                          30.03.2009
2375     *) Изменение: теперь директивы proxy_cache и proxy_cache_valid можно
2376        задавать на разных уровнях.
2378     *) Изменение: параметр clean_time в директиве proxy_cache_path удалён.
2380     *) Добавление: параметр max_size в директиве proxy_cache_path.
2382     *) Добавление: предварительная поддержка кэширования в модуле
2383        ngx_http_fastcgi_module.
2385     *) Добавление: теперь при ошибках выделения в разделяемой памяти в логе
2386        указываются названия директивы и зоны.
2388     *) Исправление: директива "add_header last-modified ''" не удаляла в
2389        заголовке ответа строку "Last-Modified"; ошибка появилась в 0.7.44.
2391     *) Исправление: в директиве auth_basic_user_file не работал
2392        относительный путь, заданный строкой без переменных; ошибка появилась
2393        в 0.7.44.
2394        Спасибо Jerome Loyet.
2396     *) Исправление: в директиве alias, заданной переменными без ссылок на
2397        выделения в регулярных выражениях; ошибка появилась в 0.7.42.
2400 Изменения в nginx 0.7.44                                          23.03.2009
2402     *) Добавление: предварительная поддержка кэширования в модуле
2403        ngx_http_proxy_module.
2405     *) Добавление: параметр --with-pcre в configure.
2407     *) Добавление: теперь директива try_files может быть использована на
2408        уровне server.
2410     *) Исправление: директива try_files неправильно обрабатывала строку
2411        запроса в последнем параметре.
2413     *) Исправление: директива try_files могла неверно тестировать каталоги.
2415     *) Исправление: если для пары адрес:порт описан только один сервер, то
2416        выделения в регулярных выражениях в директиве server_name не
2417        работали.
2420 Изменения в nginx 0.7.43                                          18.03.2009
2422     *) Исправление: запрос обрабатывался неверно, если директива root
2423        использовала переменные; ошибка появилась в 0.7.42.
2425     *) Исправление: если сервер слушал на адресах типа "*", то значение
2426        переменной $server_addr было "0.0.0.0"; ошибка появилась в 0.7.36.
2429 Изменения в nginx 0.7.42                                          16.03.2009
2431     *) Изменение: ошибка "Invalid argument", возвращаемая
2432        setsockopt(TCP_NODELAY) на Solaris, теперь игнорируется.
2434     *) Изменение: при отсутствии файла, указанного в директиве
2435        auth_basic_user_file, теперь возвращается ошибка 403 вместо 500.
2437     *) Добавление: директива auth_basic_user_file поддерживает переменные.
2438        Спасибо Кириллу Коринскому.
2440     *) Добавление: директива listen поддерживает параметр ipv6only.
2441        Спасибо Zhang Hua.
2443     *) Исправление: в директиве alias со ссылками на выделения в регулярных
2444        выражениях; ошибка появилась в 0.7.40.
2446     *) Исправление: совместимость с Tru64 UNIX.
2447        Спасибо Dustin Marquess.
2449     *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась
2450        в 0.7.41.
2453 Изменения в nginx 0.7.41                                          11.03.2009
2455     *) Исправление: в рабочем процессе мог произойти segmentation fault,
2456        если в server_name или location были выделения в регулярных
2457        выражениях; ошибка появилась в 0.7.40.
2458        Спасибо Владимиру Сопоту.
2461 Изменения в nginx 0.7.40                                          09.03.2009
2463     *) Добавление: директива location поддерживает выделения в регулярных
2464        выражениях.
2466     *) Добавление: директиву alias с ссылками на выделения в регулярных
2467        выражениях можно использовать внутри location'а, заданного регулярным
2468        выражением с выделениями.
2470     *) Добавление: директива server_name поддерживает выделения в регулярных
2471        выражениях.
2473     *) Изменение: модуль ngx_http_autoindex_module не показывал последний
2474        слэш для каталогов на файловой системе XFS; ошибка появилась в
2475        0.7.15.
2476        Спасибо Дмитрию Кузьменко.
2479 Изменения в nginx 0.7.39                                          02.03.2009
2481     *) Исправление: при включённом сжатии большие ответы с использованием
2482        SSI могли зависать; ошибка появилась в 0.7.28.
2483        Спасибо Артёму Бохану.
2485     *) Исправление: при использовании коротких статических вариантов в
2486        директиве try_files в рабочем процессе мог произойти segmentation
2487        fault.
2490 Изменения в nginx 0.7.38                                          23.02.2009
2492     *) Добавление: логгирование ошибок аутентификации.
2494     *) Исправление: имя/пароль, заданные в auth_basic_user_file,
2495        игнорировались после нечётного числа пустых строк.
2496        Спасибо Александру Загребину.
2498     *) Исправление: при использовании длинного пути в unix domain сокете в
2499        главном процессе происходил segmentation fault; ошибка появилась в
2500        0.7.36.
2503 Изменения в nginx 0.7.37                                          21.02.2009
2505     *) Исправление: директивы, использующие upstream'ы, не работали; ошибка
2506        появилась в 0.7.36.
2509 Изменения в nginx 0.7.36                                          21.02.2009
2511     *) Добавление: предварительная поддержка IPv6; директива listen модуля
2512        HTTP поддерживает IPv6.
2514     *) Исправление: переменная $ancient_browser не работала для браузеров,
2515        заданных директивами modern_browser.
2518 Изменения в nginx 0.7.35                                          16.02.2009
2520     *) Исправление: директива ssl_engine не использовала SSL-акселератор для
2521        асимметричных шифров.
2522        Спасибо Marcin Gozdalik.
2524     *) Исправление: директива try_files выставляла MIME-type, исходя из
2525        расширения первоначального запроса.
2527     *) Исправление: в директивах server_name, valid_referers и map
2528        неправильно обрабатывались имена вида "*domain.tld", если
2529        использовались маски вида ".domain.tld" и ".subdomain.domain.tld";
2530        ошибка появилась в 0.7.9.
2533 Изменения в nginx 0.7.34                                          10.02.2009
2535     *) Добавление: параметр off в директиве if_modified_since.
2537     *) Добавление: теперь после команды XCLIENT nginx посылает команду
2538        HELO/EHLO.
2539        Спасибо Максиму Дунину.
2541     *) Добавление: поддержка Microsoft-специфичного режима
2542        "AUTH LOGIN with User Name" в почтовом прокси-сервере.
2543        Спасибо Максиму Дунину.
2545     *) Исправление: в директиве rewrite, возвращающей редирект, старые
2546        аргументы присоединялись к новым через символ "?" вместо "&";
2547        ошибка появилась в 0.1.18.
2548        Спасибо Максиму Дунину.
2550     *) Исправление: nginx не собирался на AIX.
2553 Изменения в nginx 0.7.33                                          02.02.2009
2555     *) Исправление: если на запрос с телом возвращался редирект, то ответ
2556        мог быть двойным при использовании методов epoll или rtsig.
2557        Спасибо Eden Li.
2559     *) Исправление: для некоторых типов редиректов в переменной
2560        $sent_http_location было пустое значение.
2562     *) Исправление: при использовании директивы resolver в SMTP
2563        прокси-сервере в рабочем процессе мог произойти segmentation fault.
2566 Изменения в nginx 0.7.32                                          26.01.2009
2568     *) Добавление: теперь в директиве try_files можно явно указать проверку
2569        каталога.
2571     *) Исправление: fastcgi_store не всегда сохранял файлы.
2573     *) Исправление: в гео-диапазонах.
2575     *) Исправление: ошибки выделения больших блоков в разделяемой памяти,
2576        если nginx был собран без отладки.
2577        Спасибо Андрею Квасову.
2580 Изменения в nginx 0.7.31                                          19.01.2009
2582     *) Изменение: теперь директива try_files проверяет только файлы,
2583        игнорируя каталоги.
2585     *) Добавление: директива fastcgi_split_path_info.
2587     *) Исправления в поддержке строки "Expect" в заголовке запроса.
2589     *) Исправления в гео-диапазонах.
2591     *) Исправление: при отсутствии ответа ngx_http_memcached_module
2592        возвращал в теле ответа строку "END" вместо 404-ой страницы по
2593        умолчанию; ошибка появилась в 0.7.18.
2594        Спасибо Максиму Дунину.
2596     *) Исправление: при проксировании SMPT nginx выдавал сообщение
2597        "250 2.0.0 OK" вместо "235 2.0.0 OK"; ошибка появилась в 0.7.22.
2598        Спасибо Максиму Дунину.
2601 Изменения в nginx 0.7.30                                          24.12.2008
2603     *) Исправление: в рабочем процессе происходил segmentation fault, если в
2604        директивах fastcgi_pass или proxy_pass использовались переменные и
2605        имя хоста должно было резолвиться; ошибка появилась в 0.7.29.
2608 Изменения в nginx 0.7.29                                          24.12.2008
2610     *) Исправление: директивы fastcgi_pass и proxy_pass не поддерживали
2611        переменные при использовании unix domain сокетов.
2613     *) Исправления в обработке подзапросов; ошибки появились в 0.7.25.
2615     *) Исправление: ответ "100 Continue" выдавался для запросов версии
2616        HTTP/1.0;
2617        Спасибо Максиму Дунину.
2619     *) Исправление: в выделении памяти в модуле ngx_http_gzip_filter_module
2620        под Cygwin.
2623 Изменения в nginx 0.7.28                                          22.12.2008
2625     *) Изменение: в выделении памяти в модуле ngx_http_gzip_filter_module.
2627     *) Изменение: значения по умолчанию для директивы gzip_buffers изменены
2628        с 4 4k/8k на 32 4k или 16 8k.
2631 Изменения в nginx 0.7.27                                          15.12.2008
2633     *) Добавление: директива try_files.
2635     *) Добавление: директива fastcgi_pass поддерживает переменные.
2637     *) Добавление: теперь директива geo может брать адрес из переменной.
2638        Спасибо Андрею Нигматулину.
2640     *) Добавление: теперь модификатор location'а можно указывать без пробела
2641        перед названием.
2643     *) Добавление: переменная $upstream_response_length.
2645     *) Исправление: теперь директива add_header не добавляет пустое
2646        значение.
2648     *) Исправление: при запросе файла нулевой длины nginx закрывал
2649        соединение, ничего не передав; ошибка появилась в 0.7.25.
2651     *) Исправление: метод MOVE не мог перемещать файл в несуществующий
2652        каталог.
2654     *) Исправление: если в сервере не был описан ни один именованный
2655        location, но такой location использовался в директиве error_page, то
2656        в рабочем процессе происходил segmentation fault.
2657        Спасибо Сергею Боченкову.
2660 Изменения в nginx 0.7.26                                          08.12.2008
2662     *) Исправление: в обработке подзапросов; ошибка появилась в 0.7.25.
2665 Изменения в nginx 0.7.25                                          08.12.2008
2667     *) Изменение: в обработке подзапросов.
2669     *) Изменение: теперь разрешаются POST'ы без строки "Content-Length" в
2670        заголовке запроса.
2672     *) Исправление: теперь директивы limit_req и limit_conn указывают
2673        причину запрета запроса.
2675     *) Исправление: в параметре delete директивы geo.
2678 Изменения в nginx 0.7.24                                          01.12.2008
2680     *) Добавление: директива if_modified_since.
2682     *) Исправление: nginx не обрабатывал ответ FastCGI-сервера, если перед
2683        ответом сервер передавал много сообщений в stderr.
2685     *) Исправление: переменные "$cookie_..." не работали в SSI and в
2686        перловом модуле.
2689 Изменения в nginx 0.7.23                                          27.11.2008
2691     *) Добавление: параметры delete и ranges в директиве geo.
2693     *) Добавление: ускорение загрузки geo-базы с большим числом значений.
2695     *) Добавление: уменьшение памяти, необходимой для загрузки geo-базы.
2698 Изменения в nginx 0.7.22                                          20.11.2008
2700     *) Добавление: параметр none в директиве smtp_auth.
2701        Спасибо Максиму Дунину.
2703     *) Добавление: переменные "$cookie_...".
2705     *) Исправление: директива directio не работала с файловой системой XFS.
2707     *) Исправление: resolver не понимал большие DNS-ответы.
2708        Спасибо Zyb.
2711 Изменения в nginx 0.7.21                                          11.11.2008
2713     *) Изменения в модуле ngx_http_limit_req_module.
2715     *) Добавление: поддержка EXSLT в модуле ngx_http_xslt_module.
2716        Спасибо Денису Латыпову.
2718     *) Изменение: совместимость с glibc 2.3.
2719        Спасибо Eric Benson и Максиму Дунину.
2721     *) Исправление: nginx не запускался на MacOSX 10.4 и более ранних;
2722        ошибка появилась в 0.7.6.
2725 Изменения в nginx 0.7.20                                          10.11.2008
2727     *) Изменения в модуле ngx_http_gzip_filter_module.
2729     *) Добавление: модуль ngx_http_limit_req_module.
2731     *) Исправление: на платформах sparc и ppc рабочие процессы могли
2732        выходить по сигналу SIGBUS; ошибка появилась в 0.7.3.
2733        Спасибо Максиму Дунину.
2735     *) Исправление: директивы вида "proxy_pass http://host/some:uri" не
2736        работали; ошибка появилась в 0.7.12.
2738     *) Исправление: при использовании HTTPS запросы могли завершаться с
2739        ошибкой "bad write retry".
2741     *) Исправление: модуль ngx_http_secure_link_module не работал внутри
2742        location'ов с именами меньше 3 символов.
2744     *) Исправление: переменная $server_addr могла не иметь значения.
2747 Изменения в nginx 0.7.19                                          13.10.2008
2749     *) Исправление: обновление номера версии.
2752 Изменения в nginx 0.7.18                                          13.10.2008
2754     *) Изменение: директива underscores_in_headers; теперь nginx по
2755        умолчанию не разрешает подчёркивания в именах строк в заголовке
2756        запроса клиента.
2758     *) Добавление: модуль ngx_http_secure_link_module.
2760     *) Добавление: директива real_ip_header поддерживает любой заголовок.
2762     *) Добавление: директива log_subrequest.
2764     *) Добавление: переменная $realpath_root.
2766     *) Добавление: параметры http_502 и http_504 в директиве
2767        proxy_next_upstream.
2769     *) Исправление: параметр http_503 в директивах proxy_next_upstream или
2770        fastcgi_next_upstream не работал.
2772     *) Исправление: nginx мог выдавать строку "Transfer-Encoding: chunked"
2773        для запросов HEAD.
2775     *) Исправление: теперь accept-лимит зависит от числа worker_connections.
2778 Изменения в nginx 0.7.17                                          15.09.2008
2780     *) Добавление: директива directio теперь работает на Linux.
2782     *) Добавление: переменная $pid.
2784     *) Исправление: оптимизация directio, появившаяся в 0.7.15, не работала
2785        при использовании open_file_cache.
2787     *) Исправление: access_log с переменными не работал на Linux; ошибка
2788        появилась в 0.7.7.
2790     *) Исправление: модуль ngx_http_charset_module не понимал название
2791        кодировки в кавычках, полученное от бэкенда.
2794 Изменения в nginx 0.7.16                                          08.09.2008
2796     *) Исправление: nginx не собирался на 64-битных платформах; ошибка
2797        появилась в 0.7.15.
2800 Изменения в nginx 0.7.15                                          08.09.2008
2802     *) Добавление: модуль ngx_http_random_index_module.
2804     *) Добавление: директива directio оптимизирована для запросов файлов,
2805        начинающихся с произвольной позиции.
2807     *) Добавление: директива directio при необходимости запрещает
2808        использование sendfile.
2810     *) Добавление: теперь nginx разрешает подчёркивания в именах строк в
2811        заголовке запроса клиента.
2814 Изменения в nginx 0.7.14                                          01.09.2008
2816     *) Изменение: теперь директивы ssl_certificate и ssl_certificate_key не
2817        имеют значений по умолчанию.
2819     *) Добавление: директива listen поддерживает параметр ssl.
2821     *) Добавление: теперь при переконфигурации nginx учитывает изменение
2822        временной зоны на FreeBSD и Linux.
2824     *) Исправление: параметры директивы listen, такие как backlog, rcvbuf и
2825        прочие, не устанавливались, если сервером по умолчанию был не первый
2826        сервер.
2828     *) Исправление: при использовании в качестве аргументов части URI,
2829        выделенного с помощью директивы rewrite, эти аргументы не
2830        экранировались.
2832     *) Исправление: улучшения тестирования правильности конфигурационного
2833        файла.
2836 Изменения в nginx 0.7.13                                          26.08.2008
2838     *) Исправление: nginx не собирался на Linux и Solaris; ошибка появилась
2839        в 0.7.12.
2842 Изменения в nginx 0.7.12                                          26.08.2008
2844     *) Добавление: директива server_name поддерживает пустое имя "".
2846     *) Добавление: директива gzip_disable поддерживает специальную маску
2847        msie6.
2849     *) Исправление: при использовании параметра max_fails=0 в upstream'е с
2850        несколькими серверами рабочий процесс выходил по сигналу SIGFPE.
2851        Спасибо Максиму Дунину.
2853     *) Исправление: при перенаправлении запроса с помощью директивы
2854        error_page терялось тело запроса.
2856     *) Исправление: при перенаправлении запроса с методом HEAD с помощью
2857        директивы error_page возвращался полный ответ.
2859     *) Исправление: метод $r->header_in() не возвращал значения строк
2860        "Host", "User-Agent", и "Connection" из заголовка запроса; ошибка
2861        появилась в 0.7.0.
2864 Изменения в nginx 0.7.11                                          18.08.2008
2866     *) Изменение: теперь ngx_http_charset_module по умолчанию не работает
2867        MIME-типом text/css.
2869     *) Добавление: теперь nginx возвращает код 405 для метода POST при
2870        запросе статического файла, только если файл существует.
2872     *) Добавление: директива proxy_ssl_session_reuse.
2874     *) Исправление: после перенаправления запроса с помощью
2875        "X-Accel-Redirect" директива proxy_pass без URI могла использовать
2876        оригинальный запрос.
2878     *) Исправление: если у каталога были права доступа только на поиск
2879        файлов и первый индексный файл отсутствовал, то nginx возвращал
2880        ошибку 500.
2882     *) Исправление: ошибок во вложенных location'ах; ошибки появились в
2883        0.7.1.
2886 Изменения в nginx 0.7.10                                          13.08.2008
2888     *) Исправление: ошибок в директивах addition_types, charset_types,
2889        gzip_types, ssi_types, sub_filter_types и xslt_types; ошибки
2890        появились в 0.7.9.
2892     *) Исправление: рекурсивной error_page для 500 ошибки.
2894     *) Исправление: теперь модуль ngx_http_realip_module устанавливает адрес
2895        не для всего keepalive соединения, а для каждого запроса по этому
2896        соединению.
2899 Изменения в nginx 0.7.9                                           12.08.2008
2901     *) Изменение: теперь ngx_http_charset_module по умолчанию работает со
2902        следующими MIME-типами: text/html, text/css, text/xml, text/plain,
2903        text/vnd.wap.wml, application/x-javascript и application/rss+xml.
2905     *) Добавление: директивы charset_types и addition_types.
2907     *) Добавление: теперь директивы gzip_types, ssi_types и sub_filter_types
2908        используют хэш.
2910     *) Добавление: модуль ngx_cpp_test_module.
2912     *) Добавление: директива expires поддерживает суточное время.
2914     *) Добавление: улучшения и исправления в модуле ngx_http_xslt_module.
2915        Спасибо Денису Латыпову и Максиму Дунину.
2917     *) Исправление: директива log_not_found не работала при поиске индексных
2918        файлов.
2920     *) Исправление: HTTPS-соединения могли зависнуть, если использовались
2921        методы kqueue, epoll, rtsig или eventport; ошибка появилась в 0.7.7.
2923     *) Исправление: если в директивах server_name, valid_referers и map
2924        использовалась маска вида "*.domain.tld" и при этом полное имя вида
2925        "domain.tld" не было описано, то это имя попадало под маску; ошибка
2926        появилась в 0.3.18.
2929 Изменения в nginx 0.7.8                                           04.08.2008
2931     *) Добавление: модуль ngx_http_xslt_module.
2933     *) Добавление: переменные "$arg_...".
2935     *) Добавление: поддержка directio в Solaris.
2936        Спасибо Ivan Debnar.
2938     *) Исправление: теперь, если FastCGI-сервер присылает строку "Location"
2939        в заголовке ответа без строки статуса, то nginx использует код
2940        статуса 302.
2941        Спасибо Максиму Дунину.
2944 Изменения в nginx 0.7.7                                           30.07.2008
2946     *) Изменение: теперь ошибка EAGAIN при вызове connect() не считается
2947        временной.
2949     *) Изменение: значением переменной $ssl_client_cert теперь является
2950        сертификат, перед каждой строкой которого, кроме первой, вставляется
2951        символ табуляции; неизменённый сертификат доступен через переменную
2952        $ssl_client_raw_cert.
2954     *) Добавление: параметр ask директивы ssl_verify_client.
2956     *) Добавление: улучшения в обработке byte-range.
2957        Спасибо Максиму Дунину.
2959     *) Добавление: директива directio.
2960        Спасибо Jiang Hong.
2962     *) Добавление: поддержка sendfile() в MacOSX 10.5.
2964     *) Исправление: в MacOSX и Cygwin при проверке location'ов теперь
2965        делается сравнение без учёта регистра символов; однако, сравнение
2966        ограничено только однобайтными locale'ями.
2968     *) Исправление: соединения почтового прокси-сервера зависали в режиме
2969        SSL, если использовались методы select, poll или /dev/poll.
2971     *) Исправление: ошибки при использовании кодировки UTF-8 в
2972        ngx_http_autoindex_module.
2975 Изменения в nginx 0.7.6                                           07.07.2008
2977     *) Исправление: теперь при использовании переменных в директиве
2978        access_log всегда проверяется существовании root'а для запроса.
2980     *) Исправление: модуль ngx_http_flv_module не поддерживал несколько
2981        значений в аргументах запроса.
2984 Изменения в nginx 0.7.5                                           01.07.2008
2986     *) Исправления в поддержке переменных в директиве access_log; ошибки
2987        появились в 0.7.4.
2989     *) Исправление: nginx не собирался с параметром
2990        --without-http_gzip_module; ошибка появилась в 0.7.3.
2991        Спасибо Кириллу Коринскому.
2993     *) Исправление: при совместном использовании sub_filter и SSI ответы
2994        могли передаваться неверно.
2997 Изменения в nginx 0.7.4                                           30.06.2008
2999     *) Добавление: директива access_log поддерживает переменные.
3001     *) Добавление: директива open_log_file_cache.
3003     *) Добавление: ключ -g.
3005     *) Добавление: поддержка строки "Expect" в заголовке запроса.
3007     *) Исправление: большие включения в SSI могли передавались не полностью.
3010 Изменения в nginx 0.7.3                                           23.06.2008
3012     *) Изменение: MIME-тип для расширения rss изменён на
3013        "application/rss+xml".
3015     *) Изменение: теперь директива "gzip_vary on" выдаёт строку
3016        "Vary: Accept-Encoding" в заголовке ответа и для несжатых ответов.
3018     *) Добавление: теперь при использовании протокола "https://" в директиве
3019        rewrite автоматически делается редирект.
3021     *) Исправление: директива proxy_pass не работала с протоколом HTTPS;
3022        ошибка появилась в 0.6.9.
3025 Изменения в nginx 0.7.2                                           16.06.2008
3027     *) Добавление: теперь nginx поддерживает шифры с обменом EDH-ключами.
3029     *) Добавление: директива ssl_dhparam.
3031     *) Добавление: переменная $ssl_client_cert.
3032        Спасибо Manlio Perillo.
3034     *) Исправление: после изменения URI с помощью директивы rewrite nginx не
3035        искал новый location; ошибка появилась в 0.7.1.
3036        Спасибо Максиму Дунину.
3038     *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась
3039        в 0.7.1.
3041     *) Исправление: при редиректе запроса к каталогу с добавлением слэша
3042        nginx не добавлял аргументы из оригинального запроса.
3045 Изменения в nginx 0.7.1                                           26.05.2008
3047     *) Изменение: теперь поиск location'а делается с помощью дерева.
3049     *) Изменение: директива optimize_server_names упразднена в связи с
3050        появлением директивы server_name_in_redirect.
3052     *) Изменение: некоторые давно устаревшие директивы больше не
3053        поддерживаются.
3055     *) Изменение: параметр "none" в директиве ssl_session_cache; теперь этот
3056        параметр используется по умолчанию.
3057        Спасибо Rob Mueller.
3059     *) Исправление: рабочие процессы могли не реагировать на сигналы
3060        переконфигурации и ротации логов.
3062     *) Исправление: nginx не собирался на последних Fedora 9 Linux.
3063        Спасибо Roxis.
3066 Изменения в nginx 0.7.0                                           19.05.2008
3068     *) Изменение: теперь символы 0x00-0x1F, '"' и '\' в access_log
3069        записываются в виде \xXX.
3070        Спасибо Максиму Дунину.
3072     *) Изменение: теперь nginx разрешает несколько строк "Host" в заголовке
3073        запроса.
3075     *) Добавление: директива expires поддерживает флаг modified.
3077     *) Добавление: переменные $uid_got и $uid_set можно использовать на
3078        любой стадии обработки запроса.
3080     *) Добавление: переменная $hostname.
3081        Спасибо Андрею Нигматулину.
3083     *) Добавление: поддержка DESTDIR.
3084        Спасибо Todd A. Fisher и Andras Voroskoi.
3086     *) Исправление: при использовании keepalive на Linux в рабочем процессе
3087        мог произойти segmentation fault.
3090 Изменения в nginx 0.6.31                                          12.05.2008
3092     *) Исправление: nginx не обрабатывал ответ FastCGI-сервера, если строка
3093        заголовка ответ была в конце записи FastCGI; ошибка появилась в
3094        0.6.2.
3095        Спасибо Сергею Серову.
3097     *) Исправление: при удалении файла и использовании директивы
3098        open_file_cache_errors off в рабочем процессе мог произойти
3099        segmentation fault.
3102 Изменения в nginx 0.6.30                                          29.04.2008
3104     *) Изменение: теперь, если маске, заданной в директиве include, не
3105        соответствует ни один файл, то nginx не выдаёт ошибку.
3107     *) Добавление: теперь время в директивах можно задавать без пробела,
3108        например, "1h50m".
3110     *) Исправление: утечек памяти, если директива ssl_verify_client имела
3111        значение on.
3112        Спасибо Chavelle Vincent.
3114     *) Исправление: директива sub_filter могла вставлять заменяемый текст в
3115        вывод.
3117     *) Исправление: директива error_page не воспринимала параметры в
3118        перенаправляемом URI.
3120     *) Исправление: теперь при сборке с Cygwin nginx всегда открывает файлы
3121        в бинарном режиме.
3123     *) Исправление: nginx не собирался под OpenBSD; ошибка появилась в
3124        0.6.15.
3127 Изменения в nginx 0.6.29                                          18.03.2008
3129     *) Добавление: модуль ngx_google_perftools_module.
3131     *) Исправление: модуль ngx_http_perl_module не собирался на 64-битных
3132        платформах; ошибка появилась в 0.6.27.
3135 Изменения в nginx 0.6.28                                          13.03.2008
3137     *) Исправление: метод rtsig не собирался; ошибка появилась в 0.6.27.
3140 Изменения в nginx 0.6.27                                          12.03.2008
3142     *) Изменение: теперь на Linux 2.6.18+ по умолчанию не собирается метод
3143        rtsig.
3145     *) Изменение: теперь при перенаправлении запроса в именованный location
3146        с помощью директивы error_page метод запроса не изменяется.
3148     *) Добавление: директивы resolver и resolver_timeout в SMTP
3149        прокси-сервере.
3151     *) Добавление: директива post_action поддерживает именованные
3152        location'ы.
3154     *) Исправление: при перенаправлении запроса из location'а c обработчиком
3155        proxy, FastCGI или memcached в именованный location со статическим
3156        обработчиком в рабочем процессе происходил segmentation fault.
3158     *) Исправление: браузеры не повторяли SSL handshake, если при первом
3159        handshake не оказалось правильного клиентского сертификата.
3160        Спасибо Александру Инюхину.
3162     *) Исправление: при перенаправлении ошибок 495-497 с помощью директивы
3163        error_page без изменения кода ошибки nginx пытался выделить очень
3164        много памяти.
3166     *) Исправление: утечки памяти в долгоживущих небуфферизированных
3167        соединениях.
3169     *) Исправление: утечки памяти в resolver'е.
3171     *) Исправление: при перенаправлении запроса из location'а c обработчиком
3172        proxy в другой location с обработчиком proxy в рабочем процессе
3173        происходил segmentation fault.
3175     *) Исправление: ошибки в кэшировании переменных $proxy_host и
3176        $proxy_port.
3177        Спасибо Сергею Боченкову.
3179     *) Исправление: директива proxy_pass с переменными использовала порт,
3180        описанной в другой директиве proxy_pass без переменных, но с таким же
3181        именем хоста.
3182        Спасибо Сергею Боченкову.
3184     *) Исправление: во время переконфигурации на некоторых 64-битном
3185        платформах в лог записывался alert "sendmsg() failed (9: Bad file
3186        descriptor)".
3188     *) Исправление: при повторном использовании в SSI пустого block'а в
3189        качестве заглушки в рабочем процессе происходил segmentation fault.
3191     *) Исправление: ошибки при копировании части URI, содержащего
3192        экранированные символы, в аргументы.
3195 Изменения в nginx 0.6.26                                          11.02.2008
3197     *) Исправление: директивы proxy_store и fastcgi_store не проверяли длину
3198        ответа.
3200     *) Исправление: при использовании большого значения в директиве expires
3201        в рабочем процессе происходил segmentation fault.
3202        Спасибо Joaquin Cuenca Abela.
3204     *) Исправление: nginx неверно определял длину строки кэша на Pentium 4.
3205        Спасибо Геннадию Махомеду.
3207     *) Исправление: в проксированных подзапросах и подзапросах к
3208        FastCGI-серверу вместо метода GET использовался оригинальный метод
3209        клиента.
3211     *) Исправление: утечки сокетов в режиме HTTPS при использовании
3212        отложенного accept'а.
3213        Спасибо Ben Maurer.
3215     *) Исправление: nginx выдавал ошибочное сообщение "SSL_shutdown() failed
3216        (SSL: )"; ошибка появилась в 0.6.23.
3218     *) Исправление: при использовании HTTPS запросы могли завершаться с
3219        ошибкой "bad write retry"; ошибка появилась в 0.6.23.
3222 Изменения в nginx 0.6.25                                          08.01.2008
3224     *) Изменение: вместо специального параметра "*" в директиве server_name
3225        теперь используется директива server_name_in_redirect.
3227     *) Изменение: в качестве основного имени в директиве server_name теперь
3228        можно использовать имена с масками и регулярными выражениями.
3230     *) Изменение: директива satisfy_any заменена директивой satisfy.
3232     *) Изменение: после переконфигурации старые рабочие процесс могли сильно
3233        нагружать процессор при запуске под Linux OpenVZ.
3235     *) Добавление: директива min_delete_depth.
3237     *) Исправление: методы COPY и MOVE не работали с одиночными файлами.
3239     *) Исправление: модуль ngx_http_gzip_static_module не позволял работать
3240        модулю ngx_http_dav_module; ошибка появилась в 0.6.23.
3242     *) Исправление: утечки сокетов в режиме HTTPS при использовании
3243        отложенного accept'а.
3244        Спасибо Ben Maurer.
3246     *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась
3247        в 0.6.23.
3250 Изменения в nginx 0.6.24                                          27.12.2007
3252     *) Исправление: при использовании HTTPS в рабочем процессе мог произойти
3253        segmentation fault; ошибка появилась в 0.6.23.
3256 Изменения в nginx 0.6.23                                          27.12.2007
3258     *) Изменение: параметр "off" в директиве ssl_session_cache; теперь этот
3259        параметр используется по умолчанию.
3261     *) Изменение: директива open_file_cache_retest переименована в
3262        open_file_cache_valid.
3264     *) Добавление: директива open_file_cache_min_uses.
3266     *) Добавление: модуль ngx_http_gzip_static_module.
3268     *) Добавление: директива gzip_disable.
3270     *) Добавление: директиву memcached_pass можно использовать внутри блока
3271        if.
3273     *) Исправление: если внутри одного location'а использовались директивы
3274        "memcached_pass" и "if", то в рабочем процессе происходил
3275        segmentation fault.
3277     *) Исправление: если при использовании директивы satisfy_any on" были
3278        заданы директивы не всех модулей доступа, то заданные директивы не
3279        проверялись.
3281     *) Исправление: параметры, заданные регулярным выражением в директиве
3282        valid_referers, не наследовалась с предыдущего уровня.
3284     *) Исправление: директива post_action не работала, если запрос
3285        завершался с кодом 499.
3287     *) Исправление: оптимизация использования 16K буфера для SSL-соединения.
3288        Спасибо Ben Maurer.
3290     *) Исправление: STARTTLS в режиме SMTP не работал.
3291        Спасибо Олегу Мотиенко.
3293     *) Исправление: при использовании HTTPS запросы могли завершаться с
3294        ошибкой "bad write retry"; ошибка появилась в 0.5.13.
3297 Изменения в nginx 0.6.22                                          19.12.2007
3299     *) Изменение: теперь все методы модуля ngx_http_perl_module возвращают
3300        значения, скопированные в память, выделенную perl'ом.
3302     *) Исправление: если nginx был собран с модулем ngx_http_perl_module,
3303        использовался perl до версии 5.8.6 и perl поддерживал потоки, то во
3304        время переконфигурации основной процесс аварийно выходил; ошибка
3305        появилась в 0.5.9.
3306        Спасибо Борису Жмурову.
3308     *) Исправление: в методы модуля ngx_http_perl_module могли передаваться
3309        неверные результаты выделения в регулярных выражениях.
3311     *) Исправление: если метод $r->has_request_body() вызывался для запроса,
3312        у которого небольшое тело запроса было уже полностью получено, то в
3313        рабочем процессе происходил segmentation fault.
3315     *) Исправление: large_client_header_buffers не освобождались перед
3316        переходом в состояние keep-alive.
3317        Спасибо Олександру Штепе.
3319     *) Исправление: в переменной $upstream_addr не записывался последний
3320        адрес; ошибка появилась в 0.6.18.
3322     *) Исправление: директива fastcgi_catch_stderr не возвращала ошибку;
3323        теперь она возвращает ошибку 502, которую можно направить на
3324        следующий сервер с помощью "fastcgi_next_upstream invalid_header".
3326     *) Исправление: при использовании директивы fastcgi_catch_stderr в
3327        основном процессе происходил segmentation fault; ошибка появилась в
3328        0.6.10.
3329        Спасибо Manlio Perillo.
3332 Изменения в nginx 0.6.21                                          03.12.2007
3334     *) Изменение: если в значениях переменных директивы proxy_pass
3335        используются только IP-адреса, то указывать resolver не нужно.
3337     *) Исправление: при использовании директивы proxy_pass c URI-частью в
3338        рабочем процессе мог произойти segmentation fault; ошибка появилась в
3339        0.6.19.
3341     *) Исправление: если resolver использовался на платформах, не
3342        поддерживающих метод kqueue, то nginx выдавал alert "name is out of
3343        response".
3344        Спасибо Андрею Нигматулину.
3346     *) Исправление: При использовании переменной $server_protocol в
3347        FastCGI-параметрах и запросе, длина которого была близка к значению
3348        директивы client_header_buffer_size, nginx выдавал alert "fastcgi:
3349        the request record is too big".
3351     *) Исправление: при обычном запросе версии HTTP/0.9 к HTTPS серверу
3352        nginx возвращал обычный ответ.
3355 Изменения в nginx 0.6.20                                          28.11.2007
3357     *) Исправление: при использовании директивы proxy_pass c URI-частью в
3358        рабочем процессе мог произойти segmentation fault; ошибка появилась в
3359        0.6.19.
3362 Изменения в nginx 0.6.19                                          27.11.2007
3364     *) Исправление: версия 0.6.18 не собиралась.
3367 Изменения в nginx 0.6.18                                          27.11.2007
3369     *) Изменение: теперь модуль ngx_http_userid_module в поле куки с номером
3370        процесса добавляет микросекунды на время старта.
3372     *) Изменение: в error_log теперь записывается полная строка запроса
3373        вместо только URI.
3375     *) Добавление: директива proxy_pass поддерживает переменные.
3377     *) Добавление: директивы resolver и resolver_timeout.
3379     *) Добавление: теперь директива "add_header last-modified ''" удаляет в
3380        заголовке ответа строку "Last-Modified".
3382     *) Исправление: директива limit_rate не позволяла передавать на полной
3383        скорости, даже если был указан очень большой лимит.
3386 Изменения в nginx 0.6.17                                          15.11.2007
3388     *) Добавление: поддержка строки "If-Range" в заголовке запроса.
3389        Спасибо Александру Инюхину.
3391     *) Исправление: при использовании директивы msie_refresh повторно
3392        экранировались уже экранированные символы; ошибка появилась в 0.6.4.
3394     *) Исправление: директива autoindex не работала при использовании "alias
3395        /".
3397     *) Исправление: при использовании подзапросов в рабочем процессе мог
3398        произойти segmentation fault.
3400     *) Исправление: при использовании SSL и gzip большие ответы могли
3401        передаваться не полностью.
3403     *) Исправление: если ответ проксированного сервера был версии HTTP/0.9,
3404        то переменная $status была равна 0.
3407 Изменения в nginx 0.6.16                                          29.10.2007
3409     *) Изменение: теперь на Linux используется uname(2) вместо procfs.
3410        Спасибо Илье Новикову.
3412     *) Исправление: если в директиве error_page использовался символ "?", то
3413        он экранировался при проксировании запроса; ошибка появилась в
3414        0.6.11.
3416     *) Исправление: совместимость с mget.
3419 Изменения в nginx 0.6.15                                          22.10.2007
3421     *) Добавление: совместимость с Cygwin.
3422        Спасибо Владимиру Кутакову.
3424     *) Добавление: директива merge_slashes.
3426     *) Добавление: директива gzip_vary.
3428     *) Добавление: директива server_tokens.
3430     *) Исправление: nginx не раскодировал URI в команде SSI include.
3432     *) Исправление: при использовании переменной в директивах charset или
3433        source_charset на старте или во время переконфигурации происходил
3434        segmentation fault,
3436     *) Исправление: nginx возвращал ошибку 400 на запросы вида
3437        "GET http://www.domain.com HTTP/1.0".
3438        Спасибо James Oakley.
3440     *) Исправление: после перенаправления запроса с телом запроса с помощью
3441        директивы error_page nginx пытался снова прочитать тело запроса;
3442        ошибка появилась в 0.6.7.
3444     *) Исправление: в рабочем процессе происходил segmentation fault, если у
3445        сервера, обрабатывающему запрос, не был явно определён server_name;
3446        ошибка появилась в 0.6.7.
3449 Изменения в nginx 0.6.14                                          15.10.2007
3451     *) Изменение: теперь по умолчанию команда SSI echo использует
3452        кодирование entity.
3454     *) Добавление: параметр encoding в команде SSI echo.
3456     *) Добавление: директиву access_log можно использовать внутри блока
3457        limit_except.
3459     *) Исправление: если все сервера апстрима оказывались недоступными, то
3460        до восстановления работоспособности у всех серверов вес становился
3461        равным одному; ошибка появилась в 0.6.6.
3463     *) Исправление: при использовании переменных $date_local и $date_gmt вне
3464        модуля ngx_http_ssi_filter_module в рабочем процессе происходил
3465        segmentation fault.
3467     *) Исправление: при использовании включённом отладочном логе в рабочем
3468        процессе мог произойти segmentation fault.
3469        Спасибо Андрею Нигматулину.
3471     *) Исправление: ngx_http_memcached_module не устанавливал
3472        $upstream_response_time.
3473        Спасибо Максиму Дунину.
3475     *) Исправление: рабочий процесс мог зациклиться при использовании
3476        memcached.
3478     *) Исправление: nginx распознавал параметры "close" и "keep-alive" в
3479        строке "Connection" в заголовке запроса только, если они были в
3480        нижнем регистре; ошибка появилась в 0.6.11.
3482     *) Исправление: sub_filter не работал с пустой строкой замены.
3484     *) Исправление: в парсинге sub_filter.
3487 Изменения в nginx 0.6.13                                          24.09.2007
3489     *) Исправление: nginx не закрывал файл каталога для запроса HEAD, если
3490        использовался autoindex
3491        Спасибо Arkadiusz Patyk.
3494 Изменения в nginx 0.6.12                                          21.09.2007
3496     *) Изменение: почтовый прокси-сервер разделён на три модуля: pop3, imap
3497        и smtp.
3499     *) Добавление: параметры конфигурации --without-mail_pop3_module,
3500        --without-mail_imap_module и --without-mail_smtp_module.
3502     *) Добавление: директивы smtp_greeting_delay и smtp_client_buffer модуля
3503        ngx_mail_smtp_module.
3505     *) Исправление: wildcard в конце имени сервера не работали; ошибка
3506        появилась в 0.6.9.
3508     *) Исправление: при использовании разделяемой библиотеки PCRE,
3509        расположенной в нестандартном месте, nginx не запускался на Solaris.
3511     *) Исправление: директивы proxy_hide_header и fastcgi_hide_header не
3512        скрывали строки заголовка ответа с именем больше 32 символов.
3513        Спасибо Manlio Perillo.
3516 Изменения в nginx 0.6.11                                          11.09.2007
3518     *) Исправление: счётчик активных соединений всегда рос при использовании
3519        почтового прокси-сервера.
3521     *) Исправление: если бэкенд возвращал только заголовок ответа при
3522        небуферизированном проксировании, то nginx закрывал соединение с
3523        бэкендом по таймауту.
3525     *) Исправление: nginx не поддерживал несколько строк "Connection" в
3526        заголовке запроса.
3528     *) Исправление: если в сервере апстрима был задан max_fails, то после
3529        первой же неудачной попытки вес сервера навсегда становился равным
3530        одному; ошибка появилась в 0.6.6.
3533 Изменения в nginx 0.6.10                                          03.09.2007
3535     *) Добавление: директивы open_file_cache, open_file_cache_retest и
3536        open_file_cache_errors.
3538     *) Исправление: утечки сокетов; ошибка появилась в 0.6.7.
3540     *) Исправление: В строку заголовка ответа "Content-Type", указанную в
3541        методе $r->send_http_header(), не добавлялась кодировка, указанная в
3542        директиве charset.
3544     *) Исправление: при использовании метода /dev/poll в рабочем процессе
3545        мог произойти segmentation fault.
3548 Изменения в nginx 0.6.9                                           28.08.2007
3550     *) Исправление: рабочий процесс мог зациклиться при использовании
3551        протокола HTTPS; ошибка появилась в 0.6.7.
3553     *) Исправление: если сервер слушал на двух адресах или портах, то nginx
3554        не запускался при использовании wildcard в конце имени сервера.
3556     *) Исправление: директива ip_hash могла неверно помечать сервера как
3557        нерабочие.
3559     *) Исправление: nginx не собирался на amd64; ошибка появилась в 0.6.8.
3562 Изменения в nginx 0.6.8                                           20.08.2007
3564     *) Изменение: теперь nginx пытается установить директивы
3565        worker_priority, worker_rlimit_nofile, worker_rlimit_core,
3566        worker_rlimit_sigpending без привилегий root'а.
3568     *) Изменение: теперь nginx экранирует символы пробела и "%" при передаче
3569        запроса серверу аутентификации почтового прокси-сервера.
3571     *) Изменение: теперь nginx экранирует символ "%" в переменной
3572        $memcached_key.
3574     *) Исправление: при указании относительного пути к конфигурационному
3575        файлу в качестве параметра ключа -c nginx определял путь относительно
3576        конфигурационного префикса; ошибка появилась в 0.6.6.
3578     *) Исправление: nginx не работал на FreeBSD/sparc64.
3581 Изменения в nginx 0.6.7                                           15.08.2007
3583     *) Изменение: теперь пути, указанные в директивах include,
3584        auth_basic_user_file, perl_modules, ssl_certificate,
3585        ssl_certificate_key и ssl_client_certificate, определяются
3586        относительно каталога конфигурационного файла nginx.conf, а не
3587        относительно префикса.
3589     *) Изменение: параметр --sysconfdir=PATH в configure упразднён.
3591     *) Изменение: для обновления на лету версий 0.1.x создан специальный
3592        сценарий make upgrade1.
3594     *) Добавление: директивы server_name и valid_referers поддерживают
3595        регулярные выражения.
3597     *) Добавление: директива server в блоке upstream поддерживает параметр
3598        backup.
3600     *) Добавление: модуль ngx_http_perl_module поддерживает метод
3601        $r->discard_request_body.
3603     *) Добавление: директива "add_header Last-Modified ..." меняет строку
3604        "Last-Modified" в заголовке ответа.
3606     *) Исправление: если на запрос с телом возвращался ответ с кодом HTTP
3607        отличным от 200, и после этого запроса соединение переходило в
3608        состояние keep-alive, то на следующий запрос nginx возвращал 400.
3610     *) Исправление: если в директиве auth_http был задан неправильный адрес,
3611        то в рабочем процессе происходил segmentation fault.
3613     *) Исправление: теперь по умолчанию nginx использует значение 511 для
3614        listen backlog на всех платформах, кроме FreeBSD.
3615        Спасибо Jiang Hong.
3617     *) Исправление: рабочий процесс мог зациклиться, если server в блоке
3618        upstream был помечен как down; ошибка появилась в 0.6.6.
3620     *) Исправление: sendfilev() в Solaris теперь не используется при
3621        передаче тела запроса FastCGI-серверу через unix domain сокет.
3624 Изменения в nginx 0.6.6                                           30.07.2007
3626     *) Добавление: параметр --sysconfdir=PATH в configure.
3628     *) Добавление: именованные location'ы.
3630     *) Добавление: переменную $args можно устанавливать с помощью set.
3632     *) Добавление: переменная $is_args.
3634     *) Исправление: равномерное распределение запросов к апстримам с
3635        большими весами.
3637     *) Исправление: если клиент в почтовом прокси-сервере закрывал
3638        соединение, то nginx мог не закрывать соединение с бэкендом.
3640     *) Исправление: при использовании одного хоста в качестве бэкендов для
3641        протоколов HTTP и HTTPS без явного указания портов, nginx использовал
3642        только один порт - 80 или 443.
3644     *) Исправление: nginx не собирался на Solaris/amd64 Sun Studio 11 и
3645        более ранними версиями; ошибка появилась в 0.6.4.
3648 Изменения в nginx 0.6.5                                           23.07.2007
3650     *) Добавление: переменная $nginx_version.
3651        Спасибо Николаю Гречуху.
3653     *) Добавление: почтовый прокси-сервер поддерживает AUTHENTICATE в режиме
3654        IMAP.
3655        Спасибо Максиму Дунину.
3657     *) Добавление: почтовый прокси-сервер поддерживает STARTTLS в режиме
3658        SMTP.
3659        Спасибо Максиму Дунину.
3661     *) Исправление: теперь nginx экранирует пробел в переменной
3662        $memcached_key.
3664     *) Исправление: nginx неправильно собирался Sun Studio на Solaris/amd64.
3665        Спасибо Jiang Hong.
3667     *) Исправление: незначительных потенциальных ошибок.
3668        Спасибо Coverity's Scan.
3671 Изменения в nginx 0.6.4                                           17.07.2007
3673     *) Безопасность: при использовании директивы msie_refresh был возможен
3674        XSS.
3675        Спасибо Максиму Богуку.
3677     *) Изменение: директивы proxy_store и fastcgi_store изменены.
3679     *) Добавление: директивы proxy_store_access и fastcgi_store_access.
3681     *) Исправление: nginx не работал на Solaris/sparc64, если был собран Sun
3682        Studio.
3683        Спасибо Андрею Нигматулину.
3685     *) Изменение: обход ошибки в Sun Studio 12.
3686        Спасибо Jiang Hong.
3689 Изменения в nginx 0.6.3                                           12.07.2007
3691     *) Добавление: директивы proxy_store и fastcgi_store.
3693     *) Исправление: при использовании директивы auth_http_header в рабочем
3694        процессе мог произойти segmentation fault.
3695        Спасибо Максиму Дунину.
3697     *) Исправление: если использовался метод аутентификации CRAM-MD5, но он
3698        не был разрешён, то в рабочем процессе происходил segmentation fault.
3700     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
3701        в рабочем процессе мог произойти segmentation fault.
3703     *) Исправление: в рабочем процессе мог произойти segmentation fault,
3704        если использовался метод eventport.
3706     *) Исправление: директивы proxy_ignore_client_abort и
3707        fastcgi_ignore_client_abort не работали; ошибка появилась в 0.5.13.
3710 Изменения в nginx 0.6.2                                           09.07.2007
3712     *) Исправление: если заголовок ответа был разделён в FastCGI-записях, то
3713        nginx передавал клиенту мусор в таких заголовках.
3716 Изменения в nginx 0.6.1                                           17.06.2007
3718     *) Исправление: в парсинге SSI.
3720     *) Исправление: при использовании удалённого подзапроса в SSI
3721        последующий подзапрос локального файла мог отдаваться клиенту в
3722        неверном порядке.
3724     *) Исправление: большие включения в SSI, сохранённые во временные файлы,
3725        передавались не полностью.
3727     *) Исправление: значение perl'овой переменной $$ модуля
3728        ngx_http_perl_module было равно номеру главного процесса.
3731 Изменения в nginx 0.6.0                                           14.06.2007
3733     *) Добавление: директивы "server_name", "map", and "valid_referers"
3734        поддерживают маски вида "www.example.*".
3737 Изменения в nginx 0.5.25                                          11.06.2007
3739     *) Исправление: nginx не собирался с параметром
3740        --without-http_rewrite_module; ошибка появилась в 0.5.24.
3743 Изменения в nginx 0.5.24                                          06.06.2007
3745     *) Безопасность: директива ssl_verify_client не работала, если запрос
3746        выполнялся по протоколу HTTP/0.9.
3748     *) Исправление: при использовании сжатия часть ответа могла передаваться
3749        несжатой; ошибка появилась в 0.5.23.
3752 Изменения в nginx 0.5.23                                          04.06.2007
3754     *) Добавление: модуль ngx_http_ssl_module поддерживает расширение TLS
3755        Server Name Indication.
3757     *) Добавление: директива fastcgi_catch_stderr.
3758        Спасибо Николаю Гречуху, проект OWOX.
3760     *) Исправление: на Линуксе в основном процессе происходил segmentation
3761        fault, если два виртуальных сервера должны bind()ится к
3762        пересекающимся портам.
3764     *) Исправление: если nginx был собран с модулем ngx_http_perl_module и
3765        perl поддерживал потоки, то во время второй переконфигурации
3766        выдавались ошибки "panic: MUTEX_LOCK" и "perl_parse() failed".
3768     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
3771 Изменения в nginx 0.5.22                                          29.05.2007
3773     *) Исправление: большое тело запроса могло не передаваться бэкенду;
3774        ошибка появилась в 0.5.21.
3777 Изменения в nginx 0.5.21                                          28.05.2007
3779     *) Исправление: если внутри сервера описано больше примерно десяти
3780        location'ов, то location'ы, заданные с помощью регулярного выражения,
3781        могли выполняться не в том, порядке, в каком они описаны.
3783     *) Исправление: на 64-битной платформе рабочий процесс мог зациклиться,
3784        если 33-тий по счёту или последующий бэкенд упал.
3785        Спасибо Антону Поварову.
3787     *) Исправление: при использовании библиотеки PCRE на Solaris/sparc64 мог
3788        произойти bus error.
3789        Спасибо Андрею Нигматулину.
3791     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
3794 Изменения в nginx 0.5.20                                          07.05.2007
3796     *) Добавление: директива sendfile_max_chunk.
3798     *) Добавление: переменные "$http_...", "$sent_http_..." и
3799        "$upstream_http_..." можно менять директивой set.
3801     *) Исправление: при использовании SSI-команды 'if expr="$var = /"' в
3802        рабочем процессе мог произойти segmentation fault.
3804     *) Исправление: завершающая строка multipart range ответа передавалась
3805        неверно.
3806        Спасибо Evan Miller.
3808     *) Исправление: nginx не работал на Solaris/sparc64, если был собран Sun
3809        Studio.
3810        Спасибо Андрею Нигматулину.
3812     *) Исправление: модуль ngx_http_perl_module не собирался make в Solaris.
3813        Спасибо Андрею Нигматулину.
3816 Изменения в nginx 0.5.19                                          24.04.2007
3818     *) Изменение: значение переменной $request_time теперь записывается с
3819        точностью до миллисекунд.
3821     *) Изменение: метод $r->rflush в модуле ngx_http_perl_module
3822        переименован в $r->flush.
3824     *) Добавление: переменная $upstream_addr.
3826     *) Добавление: директивы proxy_headers_hash_max_size и
3827        proxy_headers_hash_bucket_size.
3828        Спасибо Володымыру Костырко.
3830     *) Исправление: при использовании sendfile и limit_rate на 64-битных
3831        платформах нельзя было передавать файлы больше 2G.
3833     *) Исправление: при использовании sendfile на 64-битном Linux нельзя
3834        было передавать файлы больше 2G.
3837 Изменения в nginx 0.5.18                                          19.04.2007
3839     *) Добавление: модуль ngx_http_sub_filter_module.
3841     *) Добавление: переменные "$upstream_http_...".
3843     *) Добавление: теперь переменные $upstream_status и
3844        $upstream_response_time содержат данные о всех обращениях к
3845        апстримам, сделанным до X-Accel-Redirect.
3847     *) Исправление: если nginx был собран с модулем ngx_http_perl_module и
3848        perl не поддерживал multiplicity, то после первой переконфигурации и
3849        после получения любого сигнала в основном процессе происходил
3850        segmentation fault; ошибка появилась в 0.5.9.
3852     *) Исправление: если perl не поддерживал multiplicity, то после
3853        переконфигурации перловый код не работал; ошибка появилась в 0.3.38.
3856 Изменения в nginx 0.5.17                                          02.04.2007
3858     *) Изменение: теперь nginx для метода TRACE всегда возвращает код 405.
3860     *) Добавление: теперь nginx поддерживает директиву include внутри блока
3861        types.
3863     *) Исправление: использование переменной $document_root в директиве root
3864        и alias запрещено: оно вызывало рекурсивное переполнение стека.
3866     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
3868     *) Исправление: в некоторых случаях некэшируемые переменные (такие, как
3869        $uri) возвращали старое закэшированное значение.
3872 Изменения в nginx 0.5.16                                          26.03.2007
3874     *) Исправление: в качестве ключа для хэша в директиве ip_hash не
3875        использовалась сеть класса С.
3876        Спасибо Павлу Ярковому.
3878     *) Исправление: если в строке "Content-Type" в заголовке ответа бэкенда
3879        был указан charset и строка завершалась символом ";", то в рабочем
3880        процессе мог произойти segmentation fault; ошибка появилась в 0.3.50.
3882     *) Исправление: ошибки "[alert] zero size buf" при работе с
3883        FastCGI-сервером, если тело запроса, записанное во временный файл,
3884        было кратно 32K.
3886     *) Исправление: nginx не собирался на Solaris без параметра
3887        --with-debug; ошибка появилась в 0.5.15.
3890 Изменения в nginx 0.5.15                                          19.03.2007
3892     *) Добавление: почтовый прокси-сервер поддерживает аутентифицированное
3893        SMTP-проксирование и директивы smtp_auth, smtp_capablities и xclient.
3894        Спасибо Антону Южанинову и Максиму Дунину.
3896     *) Добавление: теперь keep-alive соединения закрываются сразу же по
3897        получении сигнала переконфигурации.
3899     *) Изменение: директивы imap и auth переименованы соответственно в mail
3900        и pop3_auth.
3902     *) Исправление: если использовался метод аутентификации CRAM-MD5 и не
3903        был разрешён метод APOP, то в рабочем процессе происходил
3904        segmentation fault.
3906     *) Исправление: при использовании директивы starttls only в протоколе
3907        POP3 nginx разрешал аутентификацию без перехода в режим SSL.
3909     *) Исправление: рабочие процессы не выходили после переконфигурации и не
3910        переоткрывали логи, если использовался метод eventport.
3912     *) Исправление: при использовании директивы ip_hash рабочий процесс мог
3913        зациклиться.
3915     *) Исправление: теперь nginx не пишет в лог некоторые alert'ы, если
3916        используются методы eventport или /dev/poll.
3919 Изменения в nginx 0.5.14                                          23.02.2007
3921     *) Исправление: nginx игнорировал лишние закрывающие скобки "}" в конце
3922        конфигурационного файла.
3925 Изменения в nginx 0.5.13                                          19.02.2007
3927     *) Добавление: методы COPY и MOVE.
3929     *) Исправление: модуль ngx_http_realip_module устанавливал мусор для
3930        запросов, переданных по keep-alive соединению.
3932     *) Исправление: nginx не работал на 64-битном big-endian Linux.
3933        Спасибо Андрею Нигматулину.
3935     *) Исправление: при получении слишком длинной команды IMAP/POP3-прокси
3936        теперь сразу закрывает соединение, а не по таймауту.
3938     *) Исправление: если при использовании метода epoll клиент закрывал
3939        преждевременно соединение со своей стороны, то nginx закрывал это
3940        соединение только по истечении таймаута на передачу.
3942     *) Исправление: nginx не собирался на платформах, отличных от i386,
3943        amd64, sparc и ppc; ошибка появилась в 0.5.8.
3946 Изменения в nginx 0.5.12                                          12.02.2007
3948     *) Исправление: nginx не собирался на платформах, отличных от i386,
3949        amd64, sparc и ppc; ошибка появилась в 0.5.8.
3951     *) Исправление: при использовании временных файлов в время работы с
3952        FastCGI-сервером в рабочем процессе мог произойти segmentation fault;
3953        ошибка появилась в 0.5.8.
3955     *) Исправление: если переменная $fastcgi_script_name записывалась в лог,
3956        то в рабочем процессе мог произойти segmentation fault.
3958     *) Исправление: ngx_http_perl_module не собирался на Solaris.
3961 Изменения в nginx 0.5.11                                          05.02.2007
3963     *) Добавление: теперь configure определяет библиотеку PCRE в MacPorts.
3964        Спасибо Chris McGrath.
3966     *) Исправление: ответ был неверным, если запрашивалось несколько
3967        диапазонов; ошибка появилась в 0.5.6.
3969     *) Исправление: директива create_full_put_path не могла создавать
3970        промежуточные каталоги, если не была установлена директива
3971        dav_access.
3972        Спасибо Evan Miller.
3974     *) Исправление: вместо кодов ошибок "400" и "408" в access_log мог
3975        записываться код "0".
3977     *) Исправление: при сборке с оптимизацией -O2 в рабочем процессе мог
3978        произойти segmentation fault.
3981 Изменения в nginx 0.5.10                                          26.01.2007
3983     *) Исправление: во время обновления исполняемого файла новый процесс не
3984        наследовал слушающие сокеты; ошибка появилась в 0.5.9.
3986     *) Исправление: при сборке с оптимизацией -O2 в рабочем процессе мог
3987        произойти segmentation fault; ошибка появилась в 0.5.1.
3990 Изменения в nginx 0.5.9                                           25.01.2007
3992     *) Изменение: модуль ngx_http_memcached_module теперь в качестве ключа
3993        использует значение переменной $memcached_key.
3995     *) Добавление: переменная $memcached_key.
3997     *) Добавление: параметр clean в директиве client_body_in_file_only.
3999     *) Добавление: директива env.
4001     *) Добавление: директива sendfile работает внутри блока if.
4003     *) Добавление: теперь при ошибке записи в access_log nginx записывает
4004        сообщение в error_log, но не чаще одного раза в минуту.
4006     *) Исправление: директива "access_log off" не всегда запрещала запись в
4007        лог.
4010 Изменения в nginx 0.5.8                                           19.01.2007
4012     *) Исправление: если использовалась директива
4013        "client_body_in_file_only on" и тело запроса было небольшое, то мог
4014        произойти segmentation fault.
4016     *) Исправление: происходил segmentation fault, если использовались
4017        директивы "client_body_in_file_only on" и
4018        "proxy_pass_request_body off" или "fastcgi_pass_request_body off", и
4019        делался переход к следующему бэкенду.
4021     *) Исправление: если при использовании директивы "proxy_buffering off"
4022        соединение с клиентом было неактивно, то оно закрывалось по таймауту,
4023        заданному директивой send_timeout; ошибка появилась в 0.4.7.
4025     *) Исправление: если при использовании метода epoll клиент закрывал
4026        преждевременно соединение со своей стороны, то nginx закрывал это
4027        соединение только по истечении таймаута на передачу.
4029     *) Исправление: ошибки "[alert] zero size buf" при работе с
4030        FastCGI-сервером.
4032     *) Исправление ошибок в директиве limit_zone.
4035 Изменения в nginx 0.5.7                                           15.01.2007
4037     *) Добавление: оптимизация использования памяти в ssl_session_cache.
4039     *) Исправление ошибок в директивах ssl_session_cache и limit_zone.
4041     *) Исправление: на старте или во время переконфигурации происходил
4042        segmentation fault, если директивы ssl_session_cache или limit_zone
4043        использовались на 64-битных платформах.
4045     *) Исправление: при использовании директив add_before_body или
4046        add_after_body происходил segmentation fault, если в заголовке ответа
4047        нет строки "Content-Type".
4049     *) Исправление: библиотека OpenSSL всегда собиралась с поддержкой
4050        потоков.
4051        Спасибо Дену Иванову.
4053     *) Исправление: совместимость библиотеки PCRE-6.5+ и компилятора icc.
4056 Изменения в nginx 0.5.6                                           09.01.2007
4058     *) Изменение: теперь модуль ngx_http_index_module игнорирует все методы,
4059        кроме GET, HEAD и POST.
4061     *) Добавление: модуль ngx_http_limit_zone_module.
4063     *) Добавление: переменная $binary_remote_addr.
4065     *) Добавление: директивы ssl_session_cache модулей ngx_http_ssl_module и
4066        ngx_imap_ssl_module.
4068     *) Добавление: метод DELETE поддерживает рекурсивное удаление.
4070     *) Исправление: при использовании $r->sendfile() byte-ranges
4071        передавались неверно.
4074 Изменения в nginx 0.5.5                                           24.12.2006
4076     *) Изменение: ключ -v больше не выводит информацию о компиляторе.
4078     *) Добавление: ключ -V.
4080     *) Добавление: директива worker_rlimit_core поддерживает указание
4081        размера в K, M и G.
4083     *) Исправление: модуль nginx.pm теперь может устанавливаться
4084        непривилегированным пользователем.
4086     *) Исправление: при использовании методов $r->request_body или
4087        $r->request_body_file мог произойти segmentation fault.
4089     *) Исправление: ошибок, специфичных для платформы ppc.
4092 Изменения в nginx 0.5.4                                           15.12.2006
4094     *) Добавление: директиву perl можно использовать внутри блока
4095        limit_except.
4097     *) Исправление: модуль ngx_http_dav_module требовал строку "Date" в
4098        заголовке запроса для метода DELETE.
4100     *) Исправление: при использовании одного параметра в директиве
4101        dav_access nginx мог сообщить об ошибке в конфигурации.
4103     *) Исправление: при использовании переменной $host мог произойти
4104        segmentation fault; ошибка появилась в 0.4.14.
4107 Изменения в nginx 0.5.3                                           13.12.2006
4109     *) Добавление: модуль ngx_http_perl_module поддерживает методы
4110        $r->status, $r->log_error и $r->sleep.
4112     *) Добавление: метод $r->variable поддерживает переменные, неописанные в
4113        конфигурации nginx'а.
4115     *) Исправление: метод $r->has_request_body не работал.
4118 Изменения в nginx 0.5.2                                           11.12.2006
4120     *) Исправление: если в директивах proxy_pass использовалось имя,
4121        указанное в upstream, то nginx пытался найти IP-адрес этого имени;
4122        ошибка появилась в 0.5.1.
4125 Изменения в nginx 0.5.1                                           11.12.2006
4127     *) Исправление: директива post_action могла не работать после неудачного
4128        завершения запроса.
4130     *) Изменение: обход ошибки в Eudora для Mac; ошибка появилась в 0.4.11.
4131        Спасибо Bron Gondwana.
4133     *) Исправление: при указании в директиве fastcgi_pass имени описанного
4134        upstream'а выдавалось сообщение "no port in upstream"; ошибка
4135        появилась в 0.5.0.
4137     *) Исправление: если в директивах proxy_pass и fastcgi_pass
4138        использовались одинаковых имена серверов, но с разными портами, то
4139        эти директивы использовали первый описанный порт; ошибка появилась в
4140        0.5.0.
4142     *) Исправление: если в директивах proxy_pass и fastcgi_pass
4143        использовались unix domain сокеты, то эти директивы использовали
4144        первый описанный сокет; ошибка появилась в 0.5.0.
4146     *) Исправление: ngx_http_auth_basic_module игнорировал пользователя,
4147        если он был указан в последней строке файла паролей и после пароля не
4148        было перевода строки, возврата каретки или символа ":".
4150     *) Исправление: переменная $upstream_response_time могла быть равна
4151        "0.000", хотя время обработки было больше 1 миллисекунды.
4154 Изменения в nginx 0.5.0                                           04.12.2006
4156     *) Изменение: параметры в виде "%name" в директиве log_format больше не
4157        поддерживаются.
4159     *) Изменение: директивы proxy_upstream_max_fails,
4160        proxy_upstream_fail_timeout, fastcgi_upstream_max_fails, и
4161        fastcgi_upstream_fail_timeout, memcached_upstream_max_fails и
4162        memcached_upstream_fail_timeout больше не поддерживаются.
4164     *) Добавление: директива server в блоке upstream поддерживает параметры
4165        max_fails, fail_timeout и down.
4167     *) Добавление: директива ip_hash в блоке upstream.
4169     *) Добавление: статус WAIT в строке "Auth-Status" в заголовка ответа
4170        сервера аутентификации IMAP/POP3 прокси.
4172     *) Исправление: nginx не собирался на 64-битных платформах; ошибка
4173        появилась в 0.4.14.
4176 Изменения в nginx 0.4.14                                          27.11.2006
4178     *) Добавление: директива proxy_pass_error_message в IMAP/POP3 прокси.
4180     *) Добавление: теперь configure определяет библиотеку PCRE на FreeBSD,
4181        Linux и NetBSD.
4183     *) Исправление: ngx_http_perl_module не работал с перлом, собранным с
4184        поддержкой потоков; ошибка появилась в 0.3.38.
4186     *) Исправление: ngx_http_perl_module не работал корректно, если перл
4187        вызывался рекурсивно.
4189     *) Исправление: nginx игнорировал имя сервера в строке запроса.
4191     *) Исправление: если FastCGI сервер передавал много в stderr, то рабочий
4192        процесс мог зациклиться.
4194     *) Исправление: при изменении системного времени переменная
4195        $upstream_response_time могла быть отрицательной.
4197     *) Исправление: при использовании POP3 серверу аутентификации IMAP/POP3
4198        прокси не передавался параметр Auth-Login-Attempt.
4200     *) Исправление: при ошибке соединения с сервером аутентификации
4201        IMAP/POP3 прокси мог произойти segmentation fault.
4204 Изменения в nginx 0.4.13                                          15.11.2006
4206     *) Добавление: директиву proxy_pass можно использовать внутри блока
4207        limit_except.
4209     *) Добавление: директива limit_except поддерживает все WebDAV методы.
4211     *) Исправление: при использовании директивы add_before_body без
4212        директивы add_after_body ответ передавался не полностью.
4214     *) Исправление: большое тело запроса не принималось, если использовались
4215        метод epoll и deferred accept().
4217     *) Исправление: для ответов модуля ngx_http_autoindex_module не
4218        выставлялась кодировка; ошибка появилась в 0.3.50.
4220     *) Исправление: ошибки "[alert] zero size buf" при работе с
4221        FastCGI-сервером;
4223     *) Исправление: параметр конфигурации --group= игнорировался.
4224        Спасибо Thomas Moschny.
4226     *) Исправление: 50-й подзапрос в SSI ответе не работал; ошибка появилась
4227        в 0.3.50.
4230 Изменения в nginx 0.4.12                                          31.10.2006
4232     *) Добавление: модуль ngx_http_perl_module поддерживает метод
4233        $r->variable.
4235     *) Исправление: при включении в ответ большого статического файла с
4236        помощью SSI ответ мог передаваться не полностью.
4238     *) Исправление: nginx не убирал "#fragment" в URI.
4241 Изменения в nginx 0.4.11                                          25.10.2006
4243     *) Добавление: POP3 прокси поддерживает AUTH LOIGN PLAIN и CRAM-MD5.
4245     *) Добавление: модуль ngx_http_perl_module поддерживает метод
4246        $r->allow_ranges.
4248     *) Исправление: при включённой поддержке команды APOP в POP3 прокси
4249        могли не работать команды USER/PASS; ошибка появилась в 0.4.10.
4252 Изменения в nginx 0.4.10                                          23.10.2006
4254     *) Добавление: POP3 прокси поддерживает APOP.
4256     *) Исправление: при использовании методов select, poll и /dev/poll во
4257        время ожидания ответа от сервера аутентификации IMAP/POP3 прокси
4258        нагружал процессор.
4260     *) Исправление: при использовании переменной $server_addr в директиве
4261        map мог произойти segmentation fault.
4263     *) Исправление: модуль ngx_http_flv_module не поддерживал byte ranges
4264        для полных ответов; ошибка появилась в 0.4.7.
4266     *) Исправление: nginx не собирался на Debian amd64; ошибка появилась в
4267        0.4.9.
4270 Изменения в nginx 0.4.9                                           13.10.2006
4272     *) Добавление: параметр set в команде SSI include.
4274     *) Добавление: модуль ngx_http_perl_module теперь проверяет версию
4275        модуля nginx.pm.
4278 Изменения в nginx 0.4.8                                           11.10.2006
4280     *) Исправление: если до команды SSI include с параметром wait
4281        выполнялась ещё одна команда SSI include, то параметр wait мог не
4282        работать.
4284     *) Исправление: модуль ngx_http_flv_module добавлял FLV-заголовок для
4285        полных ответов.
4286        Спасибо Алексею Ковырину.
4289 Изменения в nginx 0.4.7                                           10.10.2006
4291     *) Добавление: модуль ngx_http_flv_module.
4293     *) Добавление: переменная $request_body_file.
4295     *) Добавление: директивы charset и source_charset поддерживают
4296        переменные.
4298     *) Исправление: если до команды SSI include с параметром wait
4299        выполнялась ещё одна команда SSI include, то параметр wait мог не
4300        работать.
4302     *) Исправление: при использовании директивы "proxy_buffering off" или
4303        при работе с memcached соединения могли не закрываться по таймауту.
4305     *) Исправление: nginx не запускался на 64-битных платформах, отличных от
4306        amd64, sparc64 и ppc64.
4309 Изменения в nginx 0.4.6                                           06.10.2006
4311     *) Исправление: nginx не запускался на 64-битных платформах, отличных от
4312        amd64, sparc64 и ppc64.
4314     *) Исправление: при запросе версии HTTP/1.1 nginx передавал ответ
4315        chunk'ами, если длина ответа в методе
4316        $r->headers_out("Content-Length", ...) была задана текстовой строкой.
4318     *) Исправление: после перенаправления ошибки с помощью директивы
4319        error_page любая директива модуля ngx_http_rewrite_module возвращала
4320        эту ошибку; ошибка появилась в 0.4.4.
4323 Изменения в nginx 0.4.5                                           02.10.2006
4325     *) Исправление: nginx не собирался на Linux и Solaris; ошибка появилась
4326        в 0.4.4.
4329 Изменения в nginx 0.4.4                                           02.10.2006
4331     *) Добавление: переменная $scheme.
4333     *) Добавление: директива expires поддерживает параметр max.
4335     *) Добавление: директива include поддерживает маску "*".
4336        Спасибо Jonathan Dance.
4338     *) Исправление: директива return всегда изменяла код ответа,
4339        перенаправленного директивой error_page.
4341     *) Исправление: происходил segmentation fault, если в методе PUT
4342        передавалось тело нулевой длины.
4344     *) Исправление: при использовании переменных в директиве proxy_redirect
4345        редирект изменялся неверно.
4348 Изменения в nginx 0.4.3                                           26.09.2006
4350     *) Изменение: ошибку 499 теперь нельзя перенаправить с помощью директивы
4351        error_page.
4353     *) Добавление: поддержка Solaris 10 event ports.
4355     *) Добавление: модуль ngx_http_browser_module.
4357     *) Исправление: при перенаправлении ошибки 400 проксированному серверу
4358        помощью директивы error_page мог произойти segmentation fault.
4360     *) Исправление: происходил segmentation fault, если в директиве
4361        proxy_pass использовался unix domain сокет; ошибка появилась в
4362        0.3.47.
4364     *) Исправление: SSI не работал с ответами memcached и
4365        небуферизированными проксированными ответами.
4367     *) Изменение: обход ошибки PAUSE hardware capability в Sun Studio.
4370 Изменения в nginx 0.4.2                                           14.09.2006
4372     *) Исправление: убрана поддержка флага O_NOATIME на Linux; ошибка
4373        появилась в 0.4.1.
4376 Изменения в nginx 0.4.1                                           14.09.2006
4378     *) Исправление: совместимость с DragonFlyBSD.
4379        Спасибо Павлу Назарову.
4381     *) Изменение: обход ошибки в sendfile() в 64-битном Linux при передаче
4382        файлов больше 2G.
4384     *) Добавление: теперь на Linux nginx для статических запросов использует
4385        флаг O_NOATIME.
4386        Спасибо Yusuf Goolamabbas.
4389 Изменения в nginx 0.4.0                                           30.08.2006
4391     *) Изменение во внутреннем API: инициализация модулей HTTP перенесена из
4392        фазы init module в фазу HTTP postconfiguration.
4394     *) Изменение: теперь тело запроса в модуле ngx_http_perl_module не
4395        считывается заранее: нужно явно инициировать чтение с помощью метода
4396        $r->has_request_body.
4398     *) Добавление: модуль ngx_http_perl_module поддерживает код возврата
4399        DECLINED.
4401     *) Добавление: модуль ngx_http_dav_module поддерживает входящую строку
4402        заголовка "Date" для метода PUT.
4404     *) Добавление: директива ssi работает внутри блока if.
4406     *) Исправление: происходил segmentation fault, если в директиве index
4407        использовалась переменные и при этом первое имя индексного файла было
4408        без переменных; ошибка появилась в 0.1.29.
4411 Изменения в nginx 0.3.61                                          28.08.2006
4413     *) Изменение: директива tcp_nodelay теперь по умолчанию включена.
4415     *) Добавление: директива msie_refresh.
4417     *) Добавление: директива recursive_error_pages.
4419     *) Исправление: директива rewrite возвращала неправильный редирект, если
4420        редирект включал в себя выделенные закодированные символы из
4421        оригинального URI.
4424 Изменения в nginx 0.3.60                                          18.08.2006
4426     *) Исправление: во время перенаправления ошибки рабочий процесс мог
4427        зациклиться; ошибка появилась в 0.3.59.
4430 Изменения в nginx 0.3.59                                          16.08.2006
4432     *) Добавление: теперь можно делать несколько перенаправлений через
4433        директиву error_page.
4435     *) Исправление: директива dav_access не поддерживала три параметра.
4437     *) Исправление: директива error_page не изменяла строку "Content-Type"
4438        после перенаправления с помощью "X-Accel-Redirect"; ошибка появилась
4439        в 0.3.58.
4442 Изменения в nginx 0.3.58                                          14.08.2006
4444     *) Добавление: директива error_page поддерживает переменные.
4446     *) Изменение: теперь на Linux используется интерфейс procfs вместо
4447        sysctl.
4449     *) Изменение: теперь при использовании "X-Accel-Redirect" строка
4450        "Content-Type" наследуется из первоначального ответа.
4452     *) Исправление: директива error_page не перенаправляла ошибку 413.
4454     *) Исправление: завершающий "?" не удалял старые аргументы, если в
4455        переписанном URI не было новых аргументов.
4457     *) Исправление: nginx не запускался на 64-битной FreeBSD 7.0-CURRENT.
4460 Изменения в nginx 0.3.57                                          09.08.2006
4462     *) Добавление: переменная $ssl_client_serial.
4464     *) Исправление: в операторе "!-e" в директиве if.
4465        Спасибо Андриану Буданцову.
4467     *) Исправление: при проверке клиентского сертификата nginx не передавал
4468        клиенту информацию о требуемых сертификатах.
4470     *) Исправление: переменная $document_root не поддерживала переменные в
4471        директиве root.
4474 Изменения в nginx 0.3.56                                          04.08.2006
4476     *) Добавление: директива dav_access.
4478     *) Добавление: директива if поддерживает операторы "-d", "!-d", "-e",
4479        "!-e", "-x" и "!-x".
4481     *) Исправление: при записи в access_log некоторых передаваемых клиенту
4482        строк заголовков происходил segmentation fault, если запрос возвращал
4483        редирект.
4486 Изменения в nginx 0.3.55                                          28.07.2006
4488     *) Добавление: параметр stub в команде SSI include.
4490     *) Добавление: команда SSI block.
4492     *) Добавление: скрипт unicode2nginx добавлен в contrib.
4494     *) Исправление: если root был задан только переменной, то корень
4495        задавался относительно префикса сервера.
4497     *) Исправление: если в запросе был "//" или "/.", и после этого
4498        закодированные символы в виде "%XX", то проксируемый запрос
4499        передавался незакодированным.
4501     *) Исправление: метод $r->header_in("Cookie") модуля
4502        ngx_http_perl_module теперь возвращает все строки "Cookie" в
4503        заголовке запроса.
4505     *) Исправление: происходил segmentation fault, если использовался
4506        "client_body_in_file_only on" и делался переход к следующему бэкенду.
4508     *) Исправление: при некоторых условиях во время переконфигурации коды
4509        символов внутри директивы charset_map могли считаться неверными;
4510        ошибка появилась в 0.3.50.
4513 Изменения в nginx 0.3.54                                          11.07.2006
4515     *) Добавление: nginx теперь записывает в лог информацию о подзапросах.
4517     *) Добавление: директивы proxy_next_upstream, fastcgi_next_upstream и
4518        memcached_next_upstream поддерживают параметр off.
4520     *) Добавление: директива debug_connection поддерживает запись адресов в
4521        формате CIDR.
4523     *) Исправление: при перекодировании ответа проксированного сервера или
4524        сервера FastCGI в UTF-8 или наоборот ответ мог передаваться не
4525        полностью.
4527     *) Исправление: переменная $upstream_response_time содержала время
4528        только первого обращения к бэкенду.
4530     *) Исправление: nginx не собирался на платформе amd64; ошибка появилась
4531        в 0.3.53.
4534 Изменения в nginx 0.3.53                                          07.07.2006
4536     *) Изменение: директива add_header добавляет строки в ответы с кодом
4537        204, 301 и 302.
4539     *) Добавление: директива server в блоке upstream поддерживает параметр
4540        weight.
4542     *) Добавление: директива server_name поддерживает маску "*".
4544     *) Добавление: nginx поддерживает тело запроса больше 2G.
4546     *) Исправление: если при использовании "satisfy_any on" клиент успешно
4547        проходил аутентификацию, в лог всё равно записалоcь сообщение "access
4548        forbidden by rule".
4550     *) Исправление: метод PUT мог ошибочно не создать файл и вернуть код
4551        409.
4553     *) Исправление: если во время аутентификации IMAP/POP3 бэкенд возвращал
4554        ошибку, nginx продолжал проксирование.
4557 Изменения в nginx 0.3.52                                          03.07.2006
4559     *) Изменение: восстановлено поведение модуля ngx_http_index_module для
4560        запросов "POST /": как в версии до 0.3.40, модуль теперь не выдаёт
4561        ошибку 405.
4563     *) Исправление: при использовании ограничения скорости рабочий процесс
4564        мог зациклиться; ошибка появилась в 0.3.37.
4566     *) Исправление: модуль ngx_http_charset_module записывал в лог ошибку
4567        "unknown charset", даже если перекодировка не требовалась; ошибка
4568        появилась в 0.3.50.
4570     *) Исправление: если в результате запроса PUT возвращался код 409, то
4571        временный файл не удалялся.
4574 Изменения в nginx 0.3.51                                          30.06.2006
4576     *) Исправление: при некоторых условиях в SSI мог пропадать символы "<";
4577        ошибка появилась в 0.3.50.
4580 Изменения в nginx 0.3.50                                          28.06.2006
4582     *) Изменение: директивы proxy_redirect_errors и fastcgi_redirect_errors
4583        переименованы соответственно в proxy_intercept_errors и
4584        fastcgi_intercept_errors.
4586     *) Добавление: модуль ngx_http_charset_module поддерживает
4587        перекодирование из однобайтных кодировок в UTF-8 и обратно.
4589     *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка
4590        "X-Accel-Charset" в ответе бэкенда.
4592     *) Исправление: символ "\" в парах "\"" и "\'" в SSI командах убирался,
4593        только если также использовался символ "$".
4595     *) Исправление: при некоторых условиях в SSI после вставки могла быть
4596        добавлена строка "<!--".
4598     *) Исправление: если в заголовке ответа была строка "Content-Length: 0",
4599        то при использовании небуферизированного проксировании не закрывалось
4600        соединение с клиентом.
4603 Изменения в nginx 0.3.49                                          31.05.2006
4605     *) Исправление: в директиве set.
4607     *) Исправление: при включении в ssi двух и более подзапросов,
4608        обрабатываемых через FastCGI, вместо вывода второго и остальных
4609        подзапросов в ответ включался вывод первого подзапроса.
4612 Изменения в nginx 0.3.48                                          29.05.2006
4614     *) Изменение: теперь модуль ngx_http_charset_module работает для
4615        подзапросов, в ответах которых нет строки заголовка "Content-Type".
4617     *) Исправление: если в директиве proxy_pass не было URI, то директива
4618        "proxy_redirect default" добавляла в переписанный редирект в начало
4619        лишний слэш.
4621     *) Исправление: внутренний редирект всегда превращал любой HTTP-метод в
4622        GET, теперь это делается только для редиректов, выполняемых с помощью
4623        X-Accel-Redirect, и у которых метод не равен HEAD; ошибка появилась в
4624        0.3.42.
4626     *) Исправление: модуль ngx_http_perl_module не собирался, если перл был
4627        с поддержкой потоков; ошибка появилась в 0.3.46.
4630 Изменения в nginx 0.3.47                                          23.05.2006
4632     *) Добавление: директива upstream.
4634     *) Изменение: символ "\" в парах "\"" и "\'" в SSI командах теперь
4635        всегда убирается.
4638 Изменения в nginx 0.3.46                                          11.05.2006
4640     *) Добавление: директивы proxy_hide_header, proxy_pass_header,
4641        fastcgi_hide_header и fastcgi_pass_header.
4643     *) Изменение: директивы proxy_pass_x_powered_by, fastcgi_x_powered_by и
4644        proxy_pass_server упразднены.
4646     *) Добавление: в режиме прокси поддерживается строка заголовка
4647        "X-Accel-Buffering" в ответе бэкенда.
4649     *) Исправление: ошибок и утечек памяти при переконфигурации в модуле
4650        ngx_http_perl_module.
4653 Изменения в nginx 0.3.45                                          06.05.2006
4655     *) Добавление: директивы ssl_verify_client, ssl_verify_depth и
4656        ssl_client_certificate.
4658     *) Изменение: теперь переменная $request_method возвращает метод только
4659        основного запроса.
4661     *) Изменение: в таблице перекодировки koi-win изменены коды символа
4662        &deg;.
4664     *) Добавление: в таблицу перекодировки koi-win добавлены символы евро и
4665        номера.
4667     *) Исправление: если nginx распределял запросы на несколько машин, то
4668        при падении одной из них запросы, предназначенные для этой машины,
4669        перенаправлялись только на одну машину вместо того, чтобы равномерно
4670        распределяться между остальными.
4673 Изменения в nginx 0.3.44                                          04.05.2006
4675     *) Добавление: параметр wait в команде SSI include.
4677     *) Добавление: в таблицу перекодировки koi-win добавлены украинские и
4678        белорусские символы.
4680     *) Исправление: в SSI.
4683 Изменения в nginx 0.3.43                                          26.04.2006
4685     *) Исправление: в SSI.
4688 Изменения в nginx 0.3.42                                          26.04.2006
4690     *) Добавление: параметр bind в директиве listen в IMAP/POP3 прокси.
4692     *) Исправление: ошибки при использовании в директиве rewrite одного и
4693        того же выделения более одного раза.
4695     *) Исправление: в лог не записывались переменные
4696        $sent_http_content_type, $sent_http_content_length,
4697        $sent_http_last_modified, $sent_http_connection,
4698        $sent_http_keep_alive и $sent_http_transfer_encoding.
4700     *) Исправление: переменная $sent_http_cache_control возвращала
4701        содержимое только одной строки "Cache-Control" в заголовке ответа.
4704 Изменения в nginx 0.3.41                                          21.04.2006
4706     *) Добавление: ключ -v.
4708     *) Исправление: при включении в SSI удалённых подзапросов мог произойти
4709        segmentation fault.
4711     *) Исправление: в обработке FastCGI.
4713     *) Исправление: если путь к перловым модулям не был указан с помощью
4714        --with-perl_modules_path=PATH или директивы perl_modules, то на
4715        старте происходил segmentation fault.
4718 Изменения в nginx 0.3.40                                          19.04.2006
4720     *) Добавление: модуль ngx_http_dav_module поддерживает метод MKCOL.
4722     *) Добавление: директива create_full_put_path.
4724     *) Добавление: переменная $limit_rate.
4727 Изменения в nginx 0.3.39                                          17.04.2006
4729     *) Добавление: директива uninitialized_variable_warn; уровень
4730        логгирования сообщения о неинициализированной переменной понижен с
4731        уровня alert на warn.
4733     *) Добавление: директива override_charset.
4735     *) Изменение: при использовании неизвестной переменной в SSI-командах
4736        echo и if expr='$name' теперь не записывается в лог сообщение о
4737        неизвестной переменной.
4739     *) Исправление: счётчик активных соединений рос при превышении лимита
4740        соединений, заданного директивой worker_connections; ошибка появилась
4741        в 0.2.0.
4743     *) Исправление: при некоторых условия ограничение скорости соединения
4744        могло не работать; ошибка появилась в 0.3.38.
4747 Изменения в nginx 0.3.38                                          14.04.2006
4749     *) Добавление: модуль ngx_http_dav_module.
4751     *) Изменение: оптимизация модуля ngx_http_perl_module.
4752        Спасибо Сергею Скворцову.
4754     *) Добавление: модуль ngx_http_perl_module поддерживает метод
4755        $r->request_body_file.
4757     *) Добавление: директива client_body_in_file_only.
4759     *) Изменение: теперь при переполнении диска nginx пытается писать
4760        access_log'и только раз в секунду.
4761        Спасибо Антону Южанинову и Максиму Дунину.
4763     *) Исправление: теперь директива limit_rate точнее ограничивает скорость
4764        при значениях больше 100 Kbyte/s.
4765        Спасибо ForJest.
4767     *) Исправление: IMAP/POP3 прокси теперь передаёт серверу авторизации
4768        символы "\r" и "\n" в логине и пароле в закодированном виде.
4769        Спасибо Максиму Дунину.
4772 Изменения в nginx 0.3.37                                          07.04.2006
4774     *) Добавление: директива limit_except.
4776     *) Добавление: директива if поддерживает операторы "!~", "!~*", "-f" и
4777        "!-f".
4779     *) Добавление: модуль ngx_http_perl_module поддерживает метод
4780        $r->request_body.
4782     *) Исправление: в модуле ngx_http_addition_filter_module.
4785 Изменения в nginx 0.3.36                                          05.04.2006
4787     *) Добавление: модуль ngx_http_addition_filter_module.
4789     *) Добавление: директивы proxy_pass и fastcgi_pass можно использовать
4790        внутри блока if.
4792     *) Добавление: директивы proxy_ignore_client_abort и
4793        fastcgi_ignore_client_abort.
4795     *) Добавление: переменная $request_completion.
4797     *) Добавление: модуль ngx_http_perl_module поддерживает методы
4798        $r->request_method и $r->remote_addr.
4800     *) Добавление: модуль ngx_http_ssi_module поддерживает команду elif.
4802     *) Исправление: строка "\/" в начале выражения команды if модуля
4803        ngx_http_ssi_module воспринималась неверно.
4805     *) Исправление: в использовании регулярных выражениях в команде if
4806        модуля ngx_http_ssi_module.
4808     *) Исправление: при задании относительного пути в директивах
4809        client_body_temp_path, proxy_temp_path, fastcgi_temp_path и
4810        perl_modules использовался каталог относительно текущего каталога, а
4811        не относительно префикса сервера.
4814 Изменения в nginx 0.3.35                                          22.03.2006
4816     *) Исправление: accept-фильтр и TCP_DEFER_ACCEPT устанавливались только
4817        для первой директивы listen; ошибка появилась в 0.3.31.
4819     *) Исправление: в директиве proxy_pass без URI при использовании в
4820        подзапросе.
4823 Изменения в nginx 0.3.34                                          21.03.2006
4825     *) Добавление: директива add_header поддерживает переменные.
4828 Изменения в nginx 0.3.33                                          15.03.2006
4830     *) Добавление: параметр http_503 в директивах proxy_next_upstream или
4831        fastcgi_next_upstream.
4833     *) Исправление: ngx_http_perl_module не работал со встроенным в
4834        конфигурационный файл кодом, если он не начинался сразу же с "sub".
4836     *) Исправление: в директиве post_action.
4839 Изменения в nginx 0.3.32                                          11.03.2006
4841     *) Исправление: удаление отладочного логгирования на старте и при
4842        переконфигурации; ошибка появилась в 0.3.31.
4845 Изменения в nginx 0.3.31                                          10.03.2006
4847     *) Изменение: теперь nginx передаёт неверные ответы проксированного
4848        бэкенда.
4850     *) Добавление: директивы listen поддерживают адрес в виде "*:порт".
4852     *) Добавление: поддержка EVFILER_TIMER в MacOSX 10.4.
4854     *) Изменение: обход ошибки обработки миллисекундных таймаутов kqueue в
4855        64-битном ядре MacOSX.
4856        Спасибо Андрею Нигматулину.
4858     *) Исправление: если внутри одного сервера описаны несколько директив
4859        listen, слушающих на разных адресах, то имена серверов вида
4860        "*.domain.tld" работали только для первого адреса; ошибка появилась в
4861        0.3.18.
4863     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
4864        не передавались запросы с телом, записанным во временный файл.
4866     *) Исправление: совместимость с perl 5.8.8.
4869 Изменения в nginx 0.3.30                                          22.02.2006
4871     *) Изменение: уровень записи в лог ошибки ECONNABORTED изменён на error
4872        с уровня crit.
4874     *) Исправление: модуль ngx_http_perl_module не собирался без модуля
4875        ngx_http_ssi_filter_module.
4877     *) Исправление: nginx не собирался на i386 платформе, если использовался
4878        PIC; ошибка появилась в 0.3.27.
4881 Изменения в nginx 0.3.29                                          20.02.2006
4883     *) Добавление: теперь nginx использует меньше памяти, если PHP в режиме
4884        FastCGI передаёт большое количество предупреждений перед ответом.
4886     *) Исправление: в ответах 204 для запросов версии HTTP/1.1 выдавалась
4887        строка заголовка "Transfer-Encoding: chunked".
4889     *) Исправление: nginx возвращал 502 код ответа, если FastCGI сервер
4890        передавал полные строки заголовка ответа в отдельных FastCGI записях.
4892     *) Исправление: если в директиве post_action был указан проксируемый
4893        URI, то он выполнялся только после успешного завершения запроса.
4896 Изменения в nginx 0.3.28                                          16.02.2006
4898     *) Добавление: директива restrict_host_names упразднена.
4900     *) Добавление: параметр конфигурации --with-cpu-opt=ppc64.
4902     *) Исправление: при некоторых условиях проксированное соединение с
4903        клиентом завершалось преждевременно.
4904        Спасибо Владимиру Шутову.
4906     *) Исправление: строка заголовка "X-Accel-Limit-Rate" не учитывалась для
4907        запросов, перенаправленных с помощью строки "X-Accel-Redirect".
4909     *) Исправление: директива post_action работала только после успешного
4910        завершения запроса.
4912     *) Исправление: тело проксированного ответа, создаваемого директивой
4913        post_action, передавалось клиенту.
4916 Изменения в nginx 0.3.27                                          08.02.2006
4918     *) Изменение: директивы variables_hash_max_size и
4919        variables_hash_bucket_size.
4921     *) Добавление: переменная $body_bytes_sent доступна не только в
4922        директиве log_format.
4924     *) Добавление: переменные $ssl_protocol и $ssl_cipher.
4926     *) Добавление: определение размера строки кэша распространённых
4927        процессоров при старте.
4929     *) Добавление: директива accept_mutex теперь поддерживается посредством
4930        fcntl(2) на платформах, отличных от i386, amd64, sparc64 и ppc.
4932     *) Добавление: директива lock_file и параметр автоконфигурации
4933        --with-lock-path=PATH.
4935     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
4936        не передавались запросы с телом.
4939 Изменения в nginx 0.3.26                                          03.02.2006
4941     *) Изменение: директива optimize_host_names переименована в
4942        optimize_server_names.
4944     *) Исправление: при проксировании подзапроса в SSI бэкенду передавался
4945        URI основного запроса, если в директиве proxy_pass отсутствовал URI.
4948 Изменения в nginx 0.3.25                                          01.02.2006
4950     *) Исправление: при неверной конфигурации на старте или во время
4951        переконфигурации происходил segmentation fault; ошибка появилась в
4952        0.3.24.
4955 Изменения в nginx 0.3.24                                          01.02.2006
4957     *) Изменение: обход ошибки в kqueue во FreeBSD.
4959     *) Исправление: ответ, создаваемый директивой post_action, теперь не
4960        передаётся клиенту.
4962     *) Исправление: при использовании большого количества лог-файлов
4963        происходила утечка памяти.
4965     *) Исправление: внутри одного location работала только первая директива
4966        proxy_redirect.
4968     *) Исправление: на 64-битных платформах при старте мог произойти
4969        segmentation fault, если использовалось большое количество имён в
4970        директивах server_name; ошибка появилась в 0.3.18.
4973 Изменения в nginx 0.3.23                                          24.01.2006
4975     *) Добавление: директива optimize_host_names.
4977     *) Исправление: ошибки при использовании переменных в директивах path и
4978        alias.
4980     *) Исправление: модуль ngx_http_perl_module неправильно собирался на
4981        Linux и Solaris.
4984 Изменения в nginx 0.3.22                                          17.01.2006
4986     *) Добавление: модуль ngx_http_perl_module поддерживает методы $r->args
4987        и $r->unescape.
4989     *) Добавление: метод $r->query_string в модуле ngx_http_perl_module
4990        упразднён.
4992     *) Исправление: если в директиве valid_referers указаны только none или
4993        blocked, то происходил segmentation fault; ошибка появилась в 0.3.18.
4996 Изменения в nginx 0.3.21                                          16.01.2006
4998     *) Добавление: модуль ngx_http_perl_module.
5000     *) Изменение: директива valid_referers разрешает использовать рефереры
5001        совсем без URI.
5004 Изменения в nginx 0.3.20                                          11.01.2006
5006     *) Исправление: ошибки в обработке SSI.
5008     *) Исправление: модуль ngx_http_memcached_module не поддерживал ключи в
5009        виде /uri?args.
5012 Изменения в nginx 0.3.19                                          28.12.2005
5014     *) Добавление: директивы path и alias поддерживают переменные.
5016     *) Изменение: теперь директива valid_referers опять учитывает URI.
5018     *) Исправление: ошибки в обработке SSI.
5021 Изменения в nginx 0.3.18                                          26.12.2005
5023     *) Добавление: директива server_names поддерживает имена вида
5024        ".domain.tld".
5026     *) Добавление: директива server_names использует хэш для имён вида
5027        "*.domain.tld" и более эффективный хэш для обычных имён.
5029     *) Изменение: директивы server_names_hash_max_size и
5030        server_names_hash_bucket_size.
5032     *) Изменение: директивы server_names_hash и server_names_hash_threshold
5033        упразднены.
5035     *) Добавление: директива valid_referers использует хэш для имён сайтов.
5037     *) Изменение: теперь директива valid_referers проверяет только имена
5038        сайтов без учёта URI.
5040     *) Исправление: некоторые имена вида ".domain.tld" неверно
5041        обрабатывались модулем ngx_http_map_module.
5043     *) Исправление: если конфигурационного файла не было, то происходил
5044        segmentation fault; ошибка появилась в 0.3.12.
5046     *) Исправление: на 64-битных платформах при старте мог произойти
5047        segmentation fault; ошибка появилась в 0.3.16.
5050 Изменения в nginx 0.3.17                                          18.12.2005
5052     *) Изменение: на Linux configure теперь проверяет наличие epoll и
5053        sendfile64() в ядре.
5055     *) Добавление: директива map поддерживает доменные имена в формате
5056        ".domain.tld".
5058     *) Исправление: во время SSL handshake не иcпользовались таймауты;
5059        ошибка появилась в 0.2.4.
5061     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
5063     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
5064        по умолчанию использовался порт 80.
5067 Изменения в nginx 0.3.16                                          16.12.2005
5069     *) Добавление: модуль ngx_http_map_module.
5071     *) Добавление: директивы types_hash_max_size и types_hash_bucket_size.
5073     *) Добавление: директива ssi_value_length.
5075     *) Добавление: директива worker_rlimit_core.
5077     *) Изменение: при сборке компиляторами icc 8.1 и 9.0 с оптимизацией для
5078        Pentium 4 номер соединения в логах всегда был равен 1.
5080     *) Исправление: команда config timefmt в SSI задавала неверный формат
5081        времени.
5083     *) Исправление: nginx не закрывал соединения с IMAP/POP3 бэкендом при
5084        использовании SSL соединений; ошибка появилась в 0.3.13.
5085        Спасибо Rob Mueller.
5087     *) Исправление: segmentation fault мог произойти во время SSL shutdown;
5088        ошибка появилась в 0.3.13.
5091 Изменения в nginx 0.3.15                                          07.12.2005
5093     *) Добавление: новой код 444 в директиве return для закрытия соединения.
5095     *) Добавление: директива so_keepalive в IMAP/POP3 прокси.
5097     *) Исправление: nginx теперь вызывает abort() при обнаружении незакрытых
5098        соединений только при планом выходе и включённой директиве
5099        debug_points.
5102 Изменения в nginx 0.3.14                                          05.12.2005
5104     *) Исправление: в ответе 304 передавалось тело ответа; ошибка появилась
5105        в 0.3.13.
5108 Изменения в nginx 0.3.13                                          05.12.2005
5110     *) Добавление: IMAP/POP3 прокси поддерживает STARTTLS и STLS.
5112     *) Исправление: IMAP/POP3 прокси не работала с методами select, poll и
5113        /dev/poll.
5115     *) Исправление: ошибки в обработке SSI.
5117     *) Исправление: sendfilev() в Solaris теперь не используется при
5118        передаче тела запроса FastCGI-серверу через unix domain сокет.
5120     *) Исправление: директива auth_basic не запрещала аутентификацию; ошибка
5121        появилась в 0.3.11.
5124 Изменения в nginx 0.3.12                                          26.11.2005
5126     *) Безопасность: если nginx был собран с модулем ngx_http_realip_module,
5127        то при использовании директивы "satisfy_any on" директивы доступа и
5128        аутентификации не работали. Модуль ngx_http_realip_module не
5129        собирался и не собирается по умолчанию.
5131     *) Изменение: имя переменной "$time_gmt" изменено на "$time_local".
5133     *) Изменение: директивы proxy_header_buffer_size и
5134        fastcgi_header_buffer_size переименованы соответственно в
5135        proxy_buffer_size и fastcgi_buffer_size.
5137     *) Добавление: модуль ngx_http_memcached_module.
5139     *) Добавление: директива proxy_buffering.
5141     *) Исправление: изменение в работе с accept mutex при использовании
5142        метода rtsig; ошибка появилась в 0.3.0.
5144     *) Исправление: если клиент передал строку "Transfer-Encoding: chunked"
5145        в заголовке запроса, то nginx теперь выдаёт ошибку 411.
5147     *) Исправление: при наследовании директивы auth_basic с уровня http в
5148        строке "WWW-Authenticate" заголовка ответа выводился realm без текста
5149        "Basic realm".
5151     *) Исправление: если в директиве access_log был явно указан формат
5152        combined, то в лог записывались пустые строки; ошибка появилась в
5153        0.3.8.
5155     *) Исправление: nginx не работал на платформе sparc под любыми OS, кроме
5156        Solaris.
5158     *) Исправление: в директиве if теперь не нужно разделять пробелом строку
5159        в кавычках и закрывающую скобку.
5162 Изменения в nginx 0.3.11                                          15.11.2005
5164     *) Исправление: nginx не передавал при проксировании тело запроса и
5165        строки заголовка клиента; ошибка появилась в 0.3.10.
5168 Изменения в nginx 0.3.10                                          15.11.2005
5170     *) Изменение: директива valid_referers и переменная $invalid_referer
5171        перенесены из модуля ngx_http_rewrite_module в новый модуль
5172        ngx_http_referer_module.
5174     *) Изменение: имя переменной "$apache_bytes_sent" изменено на
5175        "$body_bytes_sent".
5177     *) Добавление: переменные "$sent_http_...".
5179     *) Добавление: директива if поддерживает операции "=" и "!=".
5181     *) Добавление: директива proxy_pass поддерживает протокол HTTPS.
5183     *) Добавление: директива proxy_set_body.
5185     *) Добавление: директива post_action.
5187     *) Добавление: модуль ngx_http_empty_gif_module.
5189     *) Добавление: директива worker_cpu_affinity для Linux.
5191     *) Исправление: директива rewrite не раскодировала символы в редиректах
5192        в URI, теперь символы раскодируются, кроме символов %00-%25 и
5193        %7F-%FF.
5195     *) Исправление: nginx не собирался компилятором icc 9.0.
5197     *) Исправление: если для статического файла нулевого размера был
5198        разрешён SSI, то ответ передавался неверно при кодировании chunk'ами.
5201 Изменения в nginx 0.3.9                                           10.11.2005
5203     *) Исправление: nginx считал небезопасными URI, в которых между двумя
5204        слэшами находилось два любых символа; ошибка появилась в 0.3.8.
5207 Изменения в nginx 0.3.8                                           09.11.2005
5209     *) Безопасность: nginx теперь проверят URI, полученные от бэкенда в
5210        строке "X-Accel-Redirect" в заголовке ответа, или в SSI файле на
5211        наличие путей "/../" и нулей.
5213     *) Изменение: nginx теперь не воспринимает пустое имя как правильное в
5214        строке "Authorization" в заголовке запроса.
5216     *) Добавление: директива ssl_session_timeout модулей ngx_http_ssl_module
5217        и ngx_imap_ssl_module.
5219     *) Добавление: директива auth_http_header модуля
5220        ngx_imap_auth_http_module.
5222     *) Добавление: директива add_header.
5224     *) Добавление: модуль ngx_http_realip_module.
5226     *) Добавление: новые переменные для использования в директиве
5227        log_format: $bytes_sent, $apache_bytes_sent, $status, $time_gmt,
5228        $uri, $request_time, $request_length, $upstream_status,
5229        $upstream_response_time, $gzip_ratio, $uid_got, $uid_set,
5230        $connection, $pipe и $msec. Параметры в виде "%name" скоро будут
5231        упразднены.
5233     *) Изменение: в директиве "if" ложными значениями переменных теперь
5234        являются пустая строка "" и строки, начинающиеся на "0".
5236     *) Исправление: при работает с проксированными или FastCGI-серверами
5237        nginx мог оставлять открытыми соединения и временные файлы с
5238        запросами клиентов.
5240     *) Исправление: рабочие процессы не сбрасывали буферизированные логи при
5241        плавном выходе.
5243     *) Исправление: если URI запроса изменялось с помощью rewrite, а затем
5244        запрос проксировался в location, заданном регулярным выражением, то
5245        бэкенду передавался неверный запрос; ошибка появилась в 0.2.6.
5247     *) Исправление: директива expires не удаляла уже установленную строку
5248        заголовка "Expires".
5250     *) Исправление: при использовании метода rtsig и нескольких рабочих
5251        процессах nginx мог перестать принимать запросы.
5253     *) Исправление: в SSI командах неверно обрабатывались строки "\"" и
5254        "\'".
5256     *) Исправление: если ответ заканчивался сразу же после SSI команды, то
5257        при использовании сжатия ответ передавался не до конца или не
5258        передавался вообще.
5261 Изменения в nginx 0.3.7                                           27.10.2005
5263     *) Добавление: директива access_log поддерживает параметр buffer=.
5265     *) Исправление: nginx не собирался на платформах, отличных от i386,
5266        amd64, sparc и ppc; ошибка появилась в 0.3.2.
5269 Изменения в nginx 0.3.6                                           24.10.2005
5271     *) Изменение: IMAP/POP3 прокси теперь не передаёт серверу авторизации
5272        пустой логин.
5274     *) Добавление: директива log_format поддерживает переменные в виде
5275        $name.
5277     *) Исправление: если хотя бы в одном сервере не было описано ни одной
5278        директивы listen, то nginx не слушал на 80 порту; ошибка появилась в
5279        0.3.3.
5281     *) Исправление: если в директиве proxy_pass отсутствовал URI, то всегда
5282        использовался порт 80.
5285 Изменения в nginx 0.3.5                                           21.10.2005
5287     *) Исправление: если логин IMAP/POP3 менялся сервером авторизации, то
5288        мог произойти segmentation fault; ошибка появилась в 0.2.2.
5290     *) Исправление: accept mutex не работал, все соединения обрабатывались
5291        одним рабочим процессом; ошибка появилась в 0.3.3.
5293     *) Исправление: при использовании метода rtsig и директивы
5294        timer_resolution не работали таймауты.
5297 Изменения в nginx 0.3.4                                           19.10.2005
5299     *) Исправление: nginx не собирался на Linux 2.4+ и MacOS X; ошибка
5300        появилась в 0.3.3.
5303 Изменения в nginx 0.3.3                                           19.10.2005
5305     *) Изменение: параметры "bl" и "af" директивы listen переименованы в
5306        "backlog" и "accept_filter".
5308     *) Добавление: параметры "rcvbuf" и "sndbuf" в директиве listen.
5310     *) Изменение: параметр лога $msec теперь не требует дополнительного
5311        системного вызова gettimeofday().
5313     *) Добавление: ключ -t теперь проверяет директивы listen.
5315     *) Исправление: если в директиве listen был указан неверный адрес, то
5316        nginx после сигнала -HUP оставлял открытый сокет в состоянии CLOSED.
5318     *) Исправление: для индексных файлов, содержащих в имени переменную, мог
5319        неверно выставляться тип mime по умолчанию; ошибка появилась в 0.3.0.
5321     *) Добавление: директива timer_resolution.
5323     *) Добавление: параметр лога $upstream_response_time в миллисекундах.
5325     *) Исправление: временный файл с телом запроса клиента теперь удаляется
5326        сразу после того, как клиенту передан заголовок ответа.
5328     *) Исправление: совместимость с OpenSSL 0.9.6.
5330     *) Исправление: пути к файлам с SSL сертификатом и ключом не могли быть
5331        относительными.
5333     *) Исправление: директива ssl_prefer_server_ciphers не работала для
5334        модуля ngx_imap_ssl_module.
5336     *) Исправление: директива ssl_protocols позволяла задать только один
5337        протокол.
5340 Изменения в nginx 0.3.2                                           12.10.2005
5342     *) Добавление: поддержка Sun Studio 10 C compiler.
5344     *) Добавление: директивы proxy_upstream_max_fails,
5345        proxy_upstream_fail_timeout, fastcgi_upstream_max_fails и
5346        fastcgi_upstream_fail_timeout.
5349 Изменения в nginx 0.3.1                                           10.10.2005
5351     *) Исправление: во время переполнения очереди сигналов при использовании
5352        метода rtsig происходил segmentation fault; ошибка появилась в 0.2.0.
5354     *) Изменение: корректная обработка пар "\\", "\"", "\'" и "\$" в SSI.
5357 Изменения в nginx 0.3.0                                           07.10.2005
5359     *) Изменение: убрано десятидневное ограничение времени работы рабочего
5360        процесса. Ограничение было введено из-за переполнения миллисекундных
5361        таймеров.
5364 Изменения в nginx 0.2.6                                           05.10.2005
5366     *) Изменение: с 60 до 10 секунд уменьшено время повторного обращения к
5367        бэкенду при использовании распределения нагрузки.
5369     *) Изменение: директива proxy_pass_unparsed_uri упразднена, оригинальный
5370        запрос теперь передаётся, если в директиве proxy_pass отсутствует
5371        URI.
5373     *) Добавление: директива error_page поддерживает редиректы и позволяет
5374        более гибко менять код ошибки.
5376     *) Изменение: в проксированных подзапросах теперь игнорируется
5377        переданный charset.
5379     *) Исправление: если после изменения URI в блоке if для запроса не
5380        находилась новая конфигурация, то правила модуля
5381        ngx_http_rewrite_module выполнялись снова.
5383     *) Исправление: если директива set устанавливала переменную модуля
5384        ngx_http_geo_module в какой-либо части конфигурации, то эта
5385        переменная не была доступна в других частях конфигурации и выдавалась
5386        ошибка "using uninitialized variable"; ошибка появилась в 0.2.2.
5389 Изменения в nginx 0.2.5                                           04.10.2005
5391     *) Изменение: дублирующее значение переменной модуля ngx_http_geo_module
5392        теперь выдаёт предупреждение и изменяет старое значение.
5394     *) Добавление: модуль ngx_http_ssi_module поддерживает команду set.
5396     *) Добавление: модуль ngx_http_ssi_module поддерживает параметр file в
5397        команде include.
5399     *) Добавление: модуль ngx_http_ssi_module поддерживает подстановку
5400        значений переменных в выражениях команды if.
5403 Изменения в nginx 0.2.4                                           03.10.2005
5405     *) Добавление: модуль ngx_http_ssi_module поддерживает выражения
5406        "$var=text", "$var!=text", "$var=/text/" и "$var!=/text/" в команде
5407        if.
5409     *) Исправление: ошибки при проксировании location без слэша в конце;
5410        ошибка появилась в 0.1.44.
5412     *) Исправление: при использовании метода rtsig мог произойти
5413        segmentation fault; ошибка появилась в 0.2.0.
5416 Изменения в nginx 0.2.3                                           30.09.2005
5418     *) Исправление: nginx не собирался без параметра --with-debug; ошибка
5419        появилась в 0.2.2.
5422 Изменения в nginx 0.2.2                                           30.09.2005
5424     *) Добавление: команда config errmsg в модуле ngx_http_ssi_module.
5426     *) Изменение: переменные модуля ngx_http_geo_module можно переопределять
5427        директивой set.
5429     *) Добавление: директивы ssl_protocols и ssl_prefer_server_ciphers
5430        модулей ngx_http_ssl_module и ngx_imap_ssl_module.
5432     *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе
5433        длинных имён файлов;
5435     *) Исправление: модуль ngx_http_autoindex_module теперь не показывает
5436        файлы, начинающиеся на точку.
5438     *) Исправление: если SSL handshake завершался с ошибкой, то это могло
5439        привести также к закрытию другого соединения.
5440        Спасибо Rob Mueller.
5442     *) Исправление: экспортные версии MSIE 5.x не могли соединиться по
5443        HTTPS.
5446 Изменения в nginx 0.2.1                                           23.09.2005
5448     *) Исправление: если все бэкенды, используемые для балансировки
5449        нагрузки, оказывались в нерабочем состоянии после одной ошибки, то
5450        nginx мог зациклится; ошибка появилась в 0.2.0.
5453 Изменения в nginx 0.2.0                                           23.09.2005
5455     *) Изменились имена pid-файлов, используемые во время обновления
5456        исполняемого файла. Ручное переименование теперь не нужно. Старый
5457        основной процесс добавляет к своему pid-файл суффикс ".oldbin" и
5458        запускает новый исполняемый файл. Новый основной процесс создаёт
5459        обычный pid-файл без суффикса ".newbin". Если новый основной процесс
5460        выходит, то старый процесс переименовывает свой pid-файл c суффиксом
5461        ".oldbin" в pid-файл без суффикса. При обновлении с версии 0.1.х до
5462        0.2.0 нужно учитывать, что оба процесса - старый 0.1.x и новый
5463        0.2.0 - используют pid-файл без суффиксов.
5465     *) Изменение: директива worker_connections, новое название директивы
5466        connections; директива теперь задаёт максимальное число соединений, а
5467        не максимально возможный номер дескриптора для сокета.
5469     *) Добавление: SSL поддерживает кэширование сессий в пределах одного
5470        рабочего процесса.
5472     *) Добавление: директива satisfy_any.
5474     *) Изменение: модули ngx_http_access_module и ngx_http_auth_basic_module
5475        не работают для подзапросов.
5477     *) Добавление: директивы worker_rlimit_nofile и
5478        worker_rlimit_sigpending.
5480     *) Исправление: если все бэкенды, используемые для балансировки
5481        нагрузки, оказывались в нерабочем состоянии после одной ошибки, то
5482        nginx не обращался к ним в течение 60 секунд.
5484     *) Исправление: в парсинге аргументов IMAP/POP3 команд.
5485        Спасибо Rob Mueller.
5487     *) Исправление: ошибки при использовании SSL в IMAP/POP3 прокси.
5489     *) Исправление: ошибки при использовании SSI и сжатия.
5491     *) Исправление: в ответах 304 не добавлялись строки заголовка ответа
5492        "Expires" и "Cache-Control".
5493        Спасибо Александру Кукушкину.
5496 Изменения в nginx 0.1.45                                          08.09.2005
5498     *) Изменение: директива ssl_engine упразднена в модуле
5499        ngx_http_ssl_module и перенесена на глобальный уровень.
5501     *) Исправление: ответы с подзапросами, включённые с помощью SSI, не
5502        передавались через SSL соединение.
5504     *) Разные исправления в IMAP/POP3 прокси.
5507 Изменения в nginx 0.1.44                                          06.09.2005
5509     *) Добавление: IMAP/POP3 прокси поддерживает SSL.
5511     *) Добавление: директива proxy_timeout модуля ngx_imap_proxy_module.
5513     *) Добавление: директива userid_mark.
5515     *) Добавление: значение переменной $remote_user определяется независимо
5516        от того, используется ли авторизация или нет.
5519 Изменения в nginx 0.1.43                                          30.08.2005
5521     *) Добавление: listen(2) backlog в директиве listen можно менять по
5522        сигналу -HUP.
5524     *) Добавление: скрипт geo2nginx.pl добавлен в contrib.
5526     *) Изменение: параметры FastCGI с пустым значениями теперь передаются
5527        серверу.
5529     *) Исправление: если в ответе проксированного сервера или FastCGI
5530        сервера была строка "Cache-Control", то при использовании директивы
5531        expires происходил segmentation fault или рабочий процесс мог
5532        зациклится; в режиме прокси ошибка появилась в 0.1.29.
5535 Изменения в nginx 0.1.42                                          23.08.2005
5537     *) Исправление: если URI запроса получался нулевой длины после обработки
5538        модулем ngx_http_rewrite_module, то в модуле ngx_http_proxy_module
5539        происходил segmentation fault или bus error.
5541     *) Исправление: директива limit_rate не работала внутри блока if; ошибка
5542        появилась в 0.1.38.
5545 Изменения в nginx 0.1.41                                          25.07.2005
5547     *) Исправление: если переменная использовалась в файле конфигурации, то
5548        она не могла использоваться в SSI.
5551 Изменения в nginx 0.1.40                                          22.07.2005
5553     *) Исправление: если клиент слал очень длинную строку заголовка, то в
5554        логе не помещалась информация, связанная с этим запросом.
5556     *) Исправление: при использовании "X-Accel-Redirect" не передавалась
5557        строка "Set-Cookie"; ошибка появилась в 0.1.39.
5559     *) Исправление: при использовании "X-Accel-Redirect" не передавалась
5560        строка "Content-Disposition".
5562     *) Исправление: по сигналу SIGQUIT основной процесс не закрывал сокеты,
5563        на которых он слушал.
5565     *) Исправление: после обновления исполняемого файла на лету на Linux и
5566        Solaris название процесса в команде ps становилось короче.
5569 Изменения в nginx 0.1.39                                          14.07.2005
5571     *) Изменения в модуле ngx_http_charset_module: директива default_charset
5572        упразднена; директива charset задаёт кодировку ответа; директива
5573        source_charset задаёт только исходную кодировку.
5575     *) Исправление: при перенаправлении ошибки 401, полученной от бэкенда,
5576        не передавалась строка заголовка "WWW-Authenticate".
5578     *) Исправление: модули ngx_http_proxy_module и ngx_http_fastcgi_module
5579        могли закрыть соединение до того, как что-нибудь было передано
5580        клиенту; ошибка появилась в 0.1.38.
5582     *) Изменение: обработка ошибки инициализации в crypt_r() в Linux glibc.
5584     *) Исправление: модуль ngx_http_ssi_module не поддерживал относительные
5585        URI в команде include virtual.
5587     *) Исправление: если в строке заголовка ответа бэкенда была строка
5588        "Location", которую nginx не должен был изменять, то в ответе
5589        передавалось тело 500 ошибки; ошибка появилась в 0.1.29.
5591     *) Исправление: некоторые директивы модулей ngx_http_proxy_module и
5592        ngx_http_fastcgi_module не наследовались с уровня server на уровень
5593        location; ошибка появилась в 0.1.29.
5595     *) Исправление: модуль ngx_http_ssl_module не поддерживал цепочки
5596        сертификатов.
5598     *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе
5599        длинных имён файлов; ошибка появилась в 0.1.38.
5601     *) Исправления в IMAP/POP3 прокси при взаимодействии с бэкендом на
5602        стадии login.
5605 Изменения в nginx 0.1.38                                          08.07.2005
5607     *) Добавление: директива limit_rate поддерживается в режиме прокси и
5608        FastCGI.
5610     *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка
5611        "X-Accel-Limit-Rate" в ответе бэкенда.
5613     *) Добавление: директива break.
5615     *) Добавление: директива log_not_found.
5617     *) Исправление: при перенаправлении запроса с помощью строки заголовка
5618        "X-Accel-Redirect" не изменялся код ответа.
5620     *) Исправление: переменные, установленные директивой set не могли
5621        использоваться в SSI.
5623     *) Исправление: при включении в SSI более одного удалённого подзапроса
5624        мог произойти segmentation fault.
5626     *) Исправление: если статусная строка в ответе бэкенда передавалась в
5627        двух пакетах, то nginx считал ответ неверным; ошибка появилась в
5628        0.1.29.
5630     *) Добавление: директива ssi_types.
5632     *) Добавление: директива autoindex_exact_size.
5634     *) Исправление: модуль ngx_http_autoindex_module не поддерживал длинные
5635        имена файлов в UTF-8.
5637     *) Добавление: IMAP/POP3 прокси.
5640 Изменения в nginx 0.1.37                                          23.06.2005
5642     *) Изменение: в конце файла nginx.pid теперь добавляется "\n".
5644     *) Исправление: при включении большого количества вставок или нескольких
5645        больших вставок с помощью SSI ответ мог передаваться не полностью.
5647     *) Исправление: если все бэкенды возвращали ответ 404, то при
5648        использовании параметра http_404 в директивах proxy_next_upstream или
5649        fastcgi_next_upstream, nginx начинал запрашивать все бэкенды снова.
5652 Изменения в nginx 0.1.36                                          15.06.2005
5654     *) Изменение: если в заголовке запросе есть дублирующиеся строки "Host",
5655        "Connection", "Content-Length" и "Authorization", то nginx теперь
5656        выдаёт ошибку 400.
5658     *) Изменение: директива post_accept_timeout упразднена.
5660     *) Добавление: параметры default, af=, bl=, deferred и bind в директиве
5661        listen.
5663     *) Добавление: поддержка accept фильтров во FreeBSD.
5665     *) Добавление: поддержка TCP_DEFER_ACCEPT в Linux.
5667     *) Исправление: модуль ngx_http_autoindex_module не поддерживал имена
5668        файлов в UTF-8.
5670     *) Исправление: после добавления новый лог-файл ротация этого лога по
5671        сигналу -USR1 выполнялась, только если переконфигурировать nginx два
5672        раза по сигналу -HUP.
5675 Изменения в nginx 0.1.35                                          07.06.2005
5677     *) Добавление: директива working_directory.
5679     *) Добавление: директива port_in_redirect.
5681     *) Исправление: если заголовок ответа бэкенда не помещался в один пакет,
5682        то происходил segmentation fault; ошибка появилась в 0.1.29.
5684     *) Исправление: если было сконфигурировано более 10 серверов или в
5685        сервере не описана директива "listen", то при запуске мог произойти
5686        segmentation fault.
5688     *) Исправление: если ответ не помещался во временный файл, то мог
5689        произойти segmentation fault.
5691     *) Исправление: nginx возвращал ошибку 400 на запросы вида
5692        "GET http://www.domain.com/uri HTTP/1.0"; ошибка появилась в 0.1.28.
5695 Изменения в nginx 0.1.34                                          26.05.2005
5697     *) Исправление: при включении больших ответов с помощью SSI рабочий
5698        процесс мог зациклиться.
5700     *) Исправление: переменные, устанавливаемые директивой "set", не были
5701        доступны в SSI.
5703     *) Добавление: директива autoindex_localtime.
5705     *) Исправление: пустое значение в директиве proxy_set_header запрещает
5706        передачу заголовка.
5709 Изменения в nginx 0.1.33                                          23.05.2005
5711     *) Исправление: nginx не собирался с параметром --without-pcre; ошибка
5712        появилась в 0.1.29.
5714     *) Исправление: 3, 5, 7 и 8 директив proxy_set_header на одном уровне
5715        вызывали bus fault при запуске.
5717     *) Исправление: в редиректах внутри HTTPS сервера был указан протокол
5718        HTTP.
5720     *) Исправление: если директива rewrite использовала выделения внутри
5721        директивы if, то возвращалась ошибка 500.
5724 Изменения в nginx 0.1.32                                          19.05.2005
5726     *) Исправление: в редиректах, выдаваемых с помощью директивы rewrite, не
5727        передавались аргументы; ошибка появилась в 0.1.29.
5729     *) Добавление: директива if поддерживает выделения в регулярных
5730        выражениях.
5732     *) Добавление: директива set поддерживает переменные и выделения из
5733        регулярных выражений.
5735     *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка
5736        "X-Accel-Redirect" в ответе бэкенда.
5739 Изменения в nginx 0.1.31                                          16.05.2005
5741     *) Исправление: при использовании SSL ответ мог передаваться не до
5742        конца.
5744     *) Исправление: ошибки при обработке SSI в ответе, полученного от
5745        FastCGI-сервера.
5747     *) Исправление: ошибки при использовании SSI и сжатия.
5749     *) Исправление: редирект с кодом 301 передавался без тела ответа; ошибка
5750        появилась в 0.1.30.
5753 Изменения в nginx 0.1.30                                          14.05.2005
5755     *) Исправление: при использовании SSI рабочий процесс мог зациклиться.
5757     *) Исправление: при использовании SSL ответ мог передаваться не до
5758        конца.
5760     *) Исправление: если длина части ответа, полученного за один раз от
5761        проксируемого или FastCGI сервера была равна 500 байт, то nginx
5762        возвращал код ответа 500; в режиме прокси ошибка появилась только в
5763        0.1.29.
5765     *) Исправление: nginx не считал неверными директивы с 8-ю или 9-ю
5766        параметрами.
5768     *) Добавление: директива return может возвращать код ответа 204.
5770     *) Добавление: директива ignore_invalid_headers.
5773 Изменения в nginx 0.1.29                                          12.05.2005
5775     *) Добавление: модуль ngx_http_ssi_module поддерживает команду include
5776        virtual.
5778     *) Добавление: модуль ngx_http_ssi_module поддерживает условную команду
5779        вида 'if expr="$NAME"' и команды else и endif. Допускается только
5780        один уровень вложенности.
5782     *) Добавление: модуль ngx_http_ssi_module поддерживает две переменные
5783        DATE_LOCAL и DATE_GMT и команду config timefmt.
5785     *) Добавление: директива ssi_ignore_recycled_buffers.
5787     *) Исправление: если переменная QUERY_STRING не была определена, то в
5788        команде echo не ставилось значение по умолчанию.
5790     *) Изменение: модуль ngx_http_proxy_module полностью переписан.
5792     *) Добавление: директивы proxy_redirect, proxy_pass_request_headers,
5793        proxy_pass_request_body и proxy_method.
5795     *) Добавление: директива proxy_set_header. Директива proxy_x_var
5796        упразднена и должна быть заменена директивой proxy_set_header.
5798     *) Изменение: директива proxy_preserve_host упразднена и должна быть
5799        заменена директивами "proxy_set_header Host $host" и "proxy_redirect
5800        off" или директивой "proxy_set_header Host $host:$proxy_port" и
5801        соответствующими ей директивами proxy_redirect.
5803     *) Изменение: директива proxy_set_x_real_ip упразднена и должна быть
5804        заменена директивой "proxy_set_header X-Real-IP $remote_addr".
5806     *) Изменение: директива proxy_add_x_forwarded_for упразднена и должна
5807        быть заменена директивой
5808        "proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for".
5810     *) Изменение: директива proxy_set_x_url упразднена и должна быть
5811        заменена директивой
5812        "proxy_set_header X-URL http://$host:$server_port$request_uri".
5814     *) Добавление: директива fastcgi_param.
5816     *) Изменение: директивы fastcgi_root, fastcgi_set_var и fastcgi_params
5817        упразднены и должны быть замены директивами fastcgi_param.
5819     *) Добавление: директива index может использовать переменные.
5821     *) Добавление: директива index может быть указана на уровне http и
5822        server.
5824     *) Изменение: только последний параметр в директиве index может быть
5825        абсолютным.
5827     *) Добавление: в директиве rewrite могут использоваться переменные.
5829     *) Добавление: директива internal.
5831     *) Добавление: переменные CONTENT_LENGTH, CONTENT_TYPE, REMOTE_PORT,
5832        SERVER_ADDR, SERVER_PORT, SERVER_PROTOCOL, DOCUMENT_ROOT,
5833        SERVER_NAME, REQUEST_METHOD, REQUEST_URI и REMOTE_USER.
5835     *) Изменение: nginx теперь передаёт неверные строки в заголовках запроса
5836        клиента и ответа бэкенда.
5838     *) Исправление: если бэкенд долго не передавал ответ и send_timeout был
5839        меньше, чем proxy_read_timeout, то клиенту возвращался ответ 408.
5841     *) Исправление: если бэкенд передавал неверную строку в заголовке
5842        ответа, то происходил segmentation fault; ошибка появилась в 0.1.26.
5844     *) Исправление: при использовании отказоустойчивой конфигурации в
5845        FastCGI мог происходить segmentation fault.
5847     *) Исправление: директива expires не удаляла уже установленные строки
5848        заголовка "Expires" и "Cache-Control".
5850     *) Исправление: nginx не учитывал завершающую точку в строке заголовка
5851        запроса "Host".
5853     *) Исправление: модуль ngx_http_auth_module не работал на Linux.
5855     *) Исправление: директива rewrite неверно работала, если в запросе
5856        присутствовали аргументы.
5858     *) Исправление: nginx не собирался на MacOS X.
5861 Изменения в nginx 0.1.28                                          08.04.2005
5863     *) Исправление: при проксировании больших файлов nginx сильно нагружал
5864        процессор.
5866     *) Исправление: nginx не собирался gcc 4.0 на Linux.
5869 Изменения в nginx 0.1.27                                          28.03.2005
5871     *) Добавление: параметр blocked в директиве valid_referers.
5873     *) Изменение: ошибки обработки заголовка запроса теперь записываются на
5874        уровне info, в лог также записывается имя сервера и строки заголовка
5875        запроса "Host" и "Referer".
5877     *) Изменение: при записи ошибок в лог записывается также строка
5878        заголовка запроса "Host".
5880     *) Добавление: директива proxy_pass_unparsed_uri. Специальная обработка
5881        символов "://" в URI, введённая в версии 0.1.11, теперь упразднена.
5883     *) Исправление: nginx не собирался на FreeBSD и Linux, если был указан
5884        параметр конфигурации --without-ngx_http_auth_basic_module.
5887 Изменения в nginx 0.1.26                                          22.03.2005
5889     *) Изменение: неверные строки заголовка, переданные клиентом, теперь
5890        игнорируется и записываются в error_log на уровне info.
5892     *) Изменение: при записи ошибок в лог записывается также имя сервера,
5893        при обращении к которому произошла ошибка.
5895     *) Добавление: модуль ngx_http_auth_basic_module и директивы auth_basic
5896        и auth_basic_user_file.
5899 Изменения в nginx 0.1.25                                          19.03.2005
5901     *) Исправление: nginx не работал на Linux parisc.
5903     *) Добавление: nginx теперь не запускается под FreeBSD, если значение
5904        sysctl kern.ipc.somaxconn слишком большое.
5906     *) Исправление: если модуль ngx_http_index_module делал внутреннее
5907        перенаправление запроса в модули ngx_http_proxy_module или
5908        ngx_http_fastcgi_module, то файл индекса не закрывался после
5909        обслуживания запроса.
5911     *) Добавление: директива proxy_pass может использоваться в location,
5912        заданных регулярным выражением.
5914     *) Добавление: модуль ngx_http_rewrite_filter_module поддерживает
5915        условия вида "if ($HTTP_USER_AGENT ~ MSIE)".
5917     *) Исправление: nginx очень медленно запускался при большом количестве
5918        адресов и использовании текстовых значений в директиве geo.
5920     *) Изменение: имя переменной в директиве geo нужно указывать, как $name.
5921        Прежний вариант без "$" пока работает, но вскоре будет убран.
5923     *) Добавление: параметр лога "%{VARIABLE}v".
5925     *) Добавление: директива "set $name value".
5927     *) Исправление: совместимость с gcc 4.0.
5929     *) Добавление: параметр автоконфигурации --with-openssl-opt=OPTIONS.
5932 Изменения в nginx 0.1.24                                          04.03.2005
5934     *) Добавление: модуль ngx_http_ssi_filter_module поддерживает переменные
5935        QUERY_STRING и DOCUMENT_URI.
5937     *) Исправление: модуль ngx_http_autoindex_module мог выдавать ответ 404
5938        на существующий каталог, если этот каталог был указан как alias.
5940     *) Исправление: модуль ngx_http_ssi_filter_module неправильно работал
5941        при больших ответах.
5943     *) Исправление: отсутствие строки заголовка "Referer" всегда считалось
5944        правильным referrer'ом.
5947 Изменения в nginx 0.1.23                                          01.03.2005
5949     *) Добавление: модуль ngx_http_ssi_filter_module и директивы ssi,
5950        ssi_silent_errors и ssi_min_file_chunk. Поддерживаются команды 'echo
5951        var="HTTP_..." default=""' и 'echo var="REMOTE_ADDR"'.
5953     *) Добавление: параметр лога %request_time.
5955     *) Добавление: если запрос пришёл без строки заголовка "Host", то
5956        директива proxy_preserve_host устанавливает в качестве этого
5957        заголовка первое имя сервера из директивы server_name.
5959     *) Исправление: nginx не собирался на платформах, отличных от i386,
5960        amd64, sparc и ppc; ошибка появилась в 0.1.22.
5962     *) Исправление: модуль ngx_http_autoindex_module теперь показывает
5963        информацию не о символическом линке, а о файле или каталоге, на
5964        который он указывает.
5966     *) Исправление: если клиенту ничего не передавалось, то параметр
5967        %apache_length записывал в лог отрицательную длину заголовка ответа.
5970 Изменения в nginx 0.1.22                                          22.02.2005
5972     *) Исправление: модуль ngx_http_stub_status_module показывал неверную
5973        статистику для обработанных соединений, если использовалось
5974        проксирование или FastCGI-сервер.
5976     *) Исправление: на Linux и Solaris установочные пути были неверно
5977        заключены в кавычки; ошибка появилась в 0.1.21.
5980 Изменения в nginx 0.1.21                                          22.02.2005
5982     *) Исправление: модуль ngx_http_stub_status_module показывал неверную
5983        статистику при использовании метода rtsig или при использовании
5984        нескольких рабочих процессов на SMP машине.
5986     *) Исправление: nginx не собирался компилятором icc под Линуксом или
5987        если библиотека zlib-1.2.x собиралась из исходных текстов.
5989     *) Исправление: nginx не собирался под NetBSD 2.0.
5992 Изменения в nginx 0.1.20                                          17.02.2005
5994     *) Добавление: новые параметры script_filename и remote_port в директиве
5995        fastcgi_params.
5997     *) Исправление: неправильно обрабатывался поток stderr от
5998        FastCGI-сервера.
6001 Изменения в nginx 0.1.19                                          16.02.2005
6003     *) Исправление: если в запросе есть нуль, то для локальных запросов
6004        теперь возвращается ошибка 404.
6006     *) Исправление: nginx не собирался под NetBSD 2.0.
6008     *) Исправление: во время чтения тела запроса клиента в SSL соединении
6009        мог произойти таймаут.
6012 Изменения в nginx 0.1.18                                          09.02.2005
6014     *) Изменение: для совместимости с Solaris 10 в директивах devpoll_events
6015        и devpoll_changes значения по умолчанию уменьшены с 512 до 32.
6017     *) Исправление: директивы proxy_set_x_var и fastcgi_set_var не
6018        наследовались.
6020     *) Исправление: в директиве rewrite, возвращающей редирект, аргументы
6021        присоединялись к URI через символ "&" вместо "?".
6023     *) Исправление: строки для модуля ngx_http_geo_module без символа ";" во
6024        включённом файле игнорировались.
6026     *) Добавление: модуль ngx_http_stub_status_module.
6028     *) Исправление: неизвестный формат лог-файла в директиве access_log
6029        вызывал segmentation fault.
6031     *) Добавление: новый параметр document_root в директиве fastcgi_params.
6033     *) Добавление: директива fastcgi_redirect_errors.
6035     *) Добавление: новый модификатор break в директиве rewrite позволяет
6036        прекратить цикл rewrite/location и устанавливает текущую конфигурацию
6037        для запроса.
6040 Изменения в nginx 0.1.17                                          03.02.2005
6042     *) Изменение: модуль ngx_http_rewrite_module полностью переписан. Теперь
6043        можно делать редиректы, возвращать коды ошибок и проверять переменные
6044        и рефереры. Эти директивы можно использовать внутри location.
6045        Директива redirect упразднена.
6047     *) Добавление: модуль ngx_http_geo_module.
6049     *) Добавление: директивы proxy_set_x_var и fastcgi_set_var.
6051     *) Исправление: конфигурация location с модификатором "=" могла
6052        использоваться в другом location.
6054     *) Исправление: правильный тип ответа выставлялся только для запросов, у
6055        которых в расширении были только маленькие буквы.
6057     *) Исправление: если для location установлен proxy_pass или
6058        fastcgi_pass, и доступ к нему запрещался, а ошибка перенаправлялась
6059        на статическую страницу, то происходил segmentation fault.
6061     *) Исправление: если в проксированном ответе в заголовке "Location"
6062        передавался относительный URL, то к нему добавлялось имя хоста и
6063        слэш; ошибка появилась в 0.1.14.
6065     *) Исправление: на Linux в лог не записывался текст системной ошибки.
6068 Изменения в nginx 0.1.16                                          25.01.2005
6070     *) Исправление: если ответ передавался chunk'ами, то при запросе HEAD
6071        выдавался завершающий chunk.
6073     *) Исправление: заголовок "Connection: keep-alive" выдавался, даже если
6074        директива keepalive_timeout запрещала использование keep-alive.
6076     *) Исправление: ошибки в модуле ngx_http_fastcgi_module вызывали
6077        segmentation fault.
6079     *) Исправление: при использовании SSL сжатый ответ мог передаваться не
6080        до конца.
6082     *) Исправление: опции TCP_NODELAY, TCP_NOPSUH и TCP_CORK, специфичные
6083        для TCP сокетов, не используются для unix domain сокетов.
6085     *) Добавление: директива rewrite поддерживает перезаписывание
6086        аргументов.
6088     *) Исправление: на запрос POST с заголовком "Content-Length: 0"
6089        возвращался ответ 400; ошибка появилась в 0.1.14.
6092 Изменения в nginx 0.1.15                                          19.01.2005
6094     *) Исправление: ошибка соединения с FastCGI-сервером вызывала
6095        segmentation fault.
6097     *) Исправление: корректная обработка регулярного выражения, в котором
6098        число выделенных частей не совпадает с числом подстановок.
6100     *) Добавление: location, который передаётся FastCGI-серверу, может быть
6101        задан с помощью регулярного выражения.
6103     *) Исправление: параметр FastCGI REQUEST_URI теперь передаётся вместе с
6104        аргументами и в том виде, в котором был получен от клиента.
6106     *) Исправление: для использования регулярных выражений в location нужно
6107        было собирать nginx вместе с ngx_http_rewrite_module.
6109     *) Исправление: если бэкенд слушал на 80-ом порту, то при использовании
6110        директивы "proxy_preserve_host on" в заголовке "Host" указывался
6111        также порт 80; ошибка появилась в 0.1.14.
6113     *) Исправление: если задать одинаковые пути в параметрах
6114        автоконфигурации --http-client-body-temp-path=PATH и
6115        --http-proxy-temp-path=PATH или --http-client-body-temp-path=PATH и
6116        --http-fastcgi-temp-path=PATH, то происходил segmentation fault.
6119 Изменения в nginx 0.1.14                                          18.01.2005
6121     *) Добавление: параметры автоконфигурации
6122        --http-client-body-temp-path=PATH, --http-proxy-temp-path=PATH и
6123        --http-fastcgi-temp-path=PATH
6125     *) Изменение: имя каталога с временными файлами, содержащие тело запроса
6126        клиента, задаётся директивой client_body_temp_path, по умолчанию
6127        <prefix>/client_body_temp.
6129     *) Добавление: модуль ngx_http_fastcgi_module и директивы fastcgi_pass,
6130        fastcgi_root, fastcgi_index, fastcgi_params, fastcgi_connect_timeout,
6131        fastcgi_send_timeout, fastcgi_read_timeout, fastcgi_send_lowat,
6132        fastcgi_header_buffer_size, fastcgi_buffers,
6133        fastcgi_busy_buffers_size, fastcgi_temp_path,
6134        fastcgi_max_temp_file_size, fastcgi_temp_file_write_size,
6135        fastcgi_next_upstream и fastcgi_x_powered_by.
6137     *) Исправление: ошибка "[alert] zero size buf"; ошибка появилась в
6138        0.1.3.
6140     *) Изменение: в директиве proxy_pass нужно обязательно указывать URI
6141        после имени хоста.
6143     *) Изменение: если в URI встречался символ %3F, то он считался началом
6144        строки аргументов.
6146     *) Добавление: поддержка unix domain сoкетов в модуле
6147        ngx_http_proxy_module.
6149     *) Добавление: директивы ssl_engine и ssl_ciphers.
6150        Спасибо Сергею Скворцову за SSL-акселератор.
6153 Изменения в nginx 0.1.13                                          21.12.2004
6155     *) Добавление: директивы server_names_hash и
6156        server_names_hash_threshold.
6158     *) Исправление: имена *.domain.tld в директиве server_name не работали.
6160     *) Исправление: параметр лога %request_length записывал неверную длину.
6163 Изменения в nginx 0.1.12                                          06.12.2004
6165     *) Добавление: параметр лога %request_length.
6167     *) Исправление: при использовании /dev/poll, select и poll на
6168        платформах, где возможны ложные срабатывания указанных методов, могли
6169        быть длительные задержки при обработке запроса по keep-alive
6170        соединению. Наблюдалось по крайней мере на Solaris с использованием
6171        /dev/poll.
6173     *) Исправление: директива send_lowat игнорируется на Linux, так как
6174        Linux не поддерживает опцию SO_SNDLOWAT.
6177 Изменения в nginx 0.1.11                                          02.12.2004
6179     *) Добавление: директива worker_priority.
6181     *) Изменение: под FreeBSD директивы tcp_nopush и tcp_nodelay вместе
6182        влияют на передачу ответа.
6184     *) Исправление: nginx не вызывал initgroups().
6185        Спасибо Андрею Ситникову и Андрею Нигматулину.
6187     *) Изменение: ngx_http_auto_index_module теперь выдаёт размер файлов в
6188        байтах.
6190     *) Исправление: ngx_http_auto_index_module возвращал ошибку 500, если в
6191        каталоге есть битый symlink.
6193     *) Исправление: файлы больше 4G не передавались с использованием
6194        sendfile.
6196     *) Исправление: если бэкенд резолвился в несколько адресов и при
6197        ожидании от него ответа происходила ошибка, то процесс зацикливался.
6199     *) Исправление: при использовании метода /dev/poll рабочий процесс мог
6200        завершиться с сообщением "unknown cycle".
6202     *) Исправление: ошибки "close() channel failed".
6204     *) Исправление: автоматическое определение групп nobody и nogroup.
6206     *) Исправление: директива send_lowat не работала на Linux.
6208     *) Исправление: если в конфигурации не было раздела events, то
6209        происходил segmentation fault.
6211     *) Исправление: nginx не собирался под OpenBSD.
6213     *) Исправление: двойные слэшы в "://" в URI превращались в ":/".
6216 Изменения в nginx 0.1.10                                          26.11.2004
6218     *) Исправление: если в запросе без аргументов есть "//", "/./", "/../"
6219        или "%XX", то терялся последний символ в строке запроса; ошибка
6220        появилась в 0.1.9.
6222     *) Исправление: исправление в версии 0.1.9 для файлов больше 2G на Linux
6223        не работало.
6226 Изменения в nginx 0.1.9                                           25.11.2004
6228     *) Исправление: если в запросе есть "//", "/./", "/../" или "%XX", то
6229        проксируемый запрос передавался без аргументов.
6231     *) Исправление: при сжатии больших ответов иногда они передавались не
6232        полностью.
6234     *) Исправление: не передавались файлы больше 2G на Linux,
6235        неподдерживающем sendfile64().
6237     *) Исправление: на Linux при конфигурации сборки нужно было обязательно
6238        использовать параметр --with-poll_module; ошибка появилась в 0.1.8.
6241 Изменения в nginx 0.1.8                                           20.11.2004
6243     *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе
6244        длинных имён файлов.
6246     *) Добавление: модификатор "^~" в директиве location.
6248     *) Добавление: директива proxy_max_temp_file_size.
6251 Изменения в nginx 0.1.7                                           12.11.2004
6253     *) Исправление: при использовании sendfile, если передаваемый файл
6254        менялся, то мог произойти segmentation fault на FreeBSD; ошибка
6255        появилась в 0.1.5.
6258 Изменения в nginx 0.1.6                                           11.11.2004
6260     *) Исправление: при некоторых комбинациях директив location c
6261        регулярными выражениями использовалась конфигурация не из того
6262        location.
6265 Изменения в nginx 0.1.5                                           11.11.2004
6267     *) Исправление: на Solaris и Linux могло быть очень много сообщений
6268        "recvmsg() returned not enough data".
6270     *) Исправление: в режиме прокси без использования sendfile на Solaris
6271        возникала ошибка "writev() failed (22: Invalid argument)". На других
6272        платформах, не поддерживающих sendfile, процесс зацикливался.
6274     *) Исправление: при использовании sendfile в режиме прокси на Solaris
6275        возникал segmentation fault.
6277     *) Исправление: segmentation fault на Solaris.
6279     *) Исправление: обновление исполняемого файла на лету не работало на
6280        Linux.
6282     *) Исправление: в списке файлов, выдаваемом модулем
6283        ngx_http_autoindex_module, не перекодировались пробелы, кавычки и
6284        знаки процента.
6286     *) Изменение: уменьшение операций копирования.
6288     *) Добавление: директива userid_p3p.
6291 Изменения в nginx 0.1.4                                           26.10.2004
6293     *) Исправление: ошибка в модуле ngx_http_autoindex_module.
6296 Изменения в nginx 0.1.3                                           25.10.2004
6298     *) Добавление: модуль ngx_http_autoindex_module и директива autoindex.
6300     *) Добавление: директива proxy_set_x_url.
6302     *) Исправление: модуль проксировании мог привести к зацикливанию, если
6303        не использовался sendfile.
6306 Изменения в nginx 0.1.2                                           21.10.2004
6308     *) Добавление: параметры --user=USER, --group=GROUP и
6309        --with-ld-opt=OPTIONS в configure.
6311     *) Добавление: директива server_name поддерживает *.domain.tld.
6313     *) Исправление: улучшена переносимость на неизвестные платформы.
6315     *) Исправление: нельзя переконфигурировать nginx, если конфигурационный
6316        файл указан в командной строке; ошибка появилась в 0.1.1.
6318     *) Исправление: модуль проксировании мог привести к зацикливанию, если
6319        не использовался sendfile.
6321     *) Исправление: при использовании sendfile текст ответа не
6322        перекодировался согласно директивам модуля charset; ошибка появилась
6323        в 0.1.1.
6325     *) Исправление: очень редкая ошибка при обработке kqueue.
6327     *) Исправление: модуль сжатия сжимал уже сжатые ответы, полученные при
6328        проксировании.
6331 Изменения в nginx 0.1.1                                           11.10.2004
6333     *) Добавление: директива gzip_types.
6335     *) Добавление: директива tcp_nodelay.
6337     *) Добавление: директива send_lowat работает не только на платформах,
6338        поддерживающих kqueue NOTE_LOWAT, но и на всех, поддерживающих
6339        SO_SNDLOWAT.
6341     *) Добавление: эмуляция setproctitle() для Linux и Solaris.
6343     *) Исправление: ошибка при переписывании заголовка "Location" при
6344        проксировании.
6346     *) Исправление: ошибка в модуле ngx_http_chunked_module, приводившая к
6347        зацикливанию.
6349     *) Исправление: ошибки в модуле /dev/poll.
6351     *) Исправление: при проксировании и использовании временных файлов
6352        ответы портились.
6354     *) Исправление: бэкенду передавались запросы с неперекодированными
6355        символами.
6357     *) Исправление: на Linux 2.4 при конфигурации сборки нужно было
6358        обязательно использовать параметр --with-poll_module.
6361 Изменения в nginx 0.1.0                                           04.10.2004
6363     *) Первая публично доступная версия.