nginx 1.1.11
[nginx.git] / CHANGES.ru
blob6b559ed99b9cc2dcbc4c3b515df3a1e4d02959ba
2 Изменения в nginx 1.1.11                                          12.12.2011
4     *) Добавление: параметр so_keepalive в директиве listen.
5        Спасибо Всеволоду Стахову.
7     *) Добавление: параметр if_not_empty в директивах
8        fastcgi/scgi/uwsgi_param.
10     *) Добавление: переменная $https.
12     *) Добавление: директива proxy_redirect поддерживает переменные в первом
13        параметре.
15     *) Добавление: директива proxy_redirect поддерживает регулярные
16        выражения.
18     *) Исправление: переменная $sent_http_cache_control могла содержать
19        неверное значение при использовании директивы expires.
20        Спасибо Yichun Zhang.
22     *) Исправление: директива read_ahead могла не работать при использовании
23        совместно с try_files и open_file_cache.
25     *) Исправление: если в параметре inactive директивы proxy_cache_path
26        было указано малое время, в рабочем процессе мог произойти
27        segmentation fault.
29     *) Исправление: ответы из кэша могли зависать.
32 Изменения в nginx 1.1.10                                          30.11.2011
34     *) Исправление: при использовании AIO на Linux в рабочем процессе
35        происходил segmentation fault; ошибка появилась в 1.1.9.
38 Изменения в nginx 1.1.9                                           28.11.2011
40     *) Изменение: теперь двойные кавычки экранируется при выводе
41        SSI-командой echo.
42        Спасибо Зауру Абасмирзоеву.
44     *) Добавление: параметр valid в директиве resolver. По умолчанию теперь
45        используется TTL, возвращённый DNS-сервером.
46        Спасибо Кириллу Коринскому.
48     *) Исправление: nginx мог перестать отвечать, если рабочий процесс
49        завершался аварийно.
51     *) Исправление: в рабочем процессе мог произойти segmentation fault,
52        если использовалось SNI; ошибка появилась в 1.1.2.
54     *) Исправление: в директиве keepalive_disable; ошибка появилась в 1.1.8.
55        Спасибо Александру Усову.
57     *) Исправление: сигнал SIGWINCH переставал работать после первого
58        обновления исполняемого файла; ошибка появилась в 1.1.1.
60     *) Исправление: теперь ответы бэкендов, длина которых не соответствует
61        заголовку Content-Length, не кэширутся.
63     *) Исправление: в директиве scgi_param при использовании составных
64        параметров.
66     *) Исправление: в методе epoll.
67        Спасибо Yichun Zhang.
69     *) Исправление: в модуле ngx_http_flv_module.
70        Спасибо Piotr Sikora.
72     *) Исправление: в модуле ngx_http_mp4_module.
74     *) Исправление: теперь nginx понимает IPv6-адреса в строке запроса и в
75        заголовке Host.
77     *) Исправление: директивы add_header и expires не работали для ответов с
78        кодом 206, если запрос проксировался.
80     *) Исправление: nginx не собирался на FreeBSD 10.
82     *) Исправление: nginx не собирался на AIX.
85 Изменения в nginx 1.1.8                                           14.11.2011
87     *) Изменение: модуль ngx_http_limit_zone_module переименован в
88        ngx_http_limit_conn_module.
90     *) Изменение: директива limit_zone заменена директивой limit_conn_zone с
91        новым синтаксисом.
93     *) Добавление: поддержка ограничения по нескольким limit_conn на одном
94        уровне.
96     *) Добавление: директива image_filter_sharpen.
98     *) Исправление: в рабочем процессе мог произойти segmentation fault,
99        если resolver получил большой DNS-ответ.
100        Спасибо Ben Hawkes.
102     *) Исправление: в вычислении ключа для кэширования, если использовалась
103        внутренняя реализация MD5; ошибка появилась в 1.0.4.
105     *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в
106        заголовке запроса клиента могли передаваться бэкенду при кэшировании;
107        или не передаваться при выключенном кэшировании, если кэширование
108        было включено в другой части конфигурации.
110     *) Исправление: модуль ngx_http_mp4_module выдавал неверную строку
111        "Content-Length" в заголовке ответа, использовался аргумент start.
112        Спасибо Piotr Sikora.
115 Изменения в nginx 1.1.7                                           31.10.2011
117     *) Добавление: поддержка нескольких DNS серверов в директиве "resolver".
118        Спасибо Кириллу Коринскому.
120     *) Исправление: на старте или во время переконфигурации происходил
121        segmentation fault, если директива ssl использовалась на уровне http
122        и не был указан ssl_certificate.
124     *) Исправление: уменьшено потребление памяти при проксировании больших
125        файлов, если они буферизировались на диск.
127     *) Исправление: в рабочем процессе мог произойти segmentation fault,
128        если использовалась директива "proxy_http_version 1.1".
130     *) Исправление: в директиве "expires @time".
133 Изменения в nginx 1.1.6                                           17.10.2011
135     *) Изменение во внутреннем API: теперь при внутреннем редиректе в
136        именованный location контексты модулей очищаются.
137        По запросу Yichun Zhang.
139     *) Изменение: теперь если сервер, описанный в блоке upstream, был
140        признан неработающим, то после истечения fail_timeout на него будет
141        отправлен только один запрос; сервер будет считаться работающим, если
142        успешно ответит на этот запрос.
144     *) Изменение: теперь символы 0x7F-0xFF в access_log записываются в виде
145        \xXX.
147     *) Добавление: директивы "proxy/fastcgi/scgi/uwsgi_ignore_headers"
148        теперь поддерживают значения X-Accel-Limit-Rate, X-Accel-Buffering и
149        X-Accel-Charset.
151     *) Добавление: уменьшение потребления памяти при использовании SSL.
153     *) Исправление: некоторые UTF-8 символы обрабатывались неправильно.
154        Спасибо Алексею Куцу.
156     *) Исправление: директивы модуля ngx_http_rewrite_module, заданные на
157        уровне server, применялись повторно, если для запроса не находилось
158        ни одного location'а.
160     *) Исправление: при использовании "aio sendfile" могла происходить
161        утечка сокетов.
163     *) Исправление: при использовании файлового AIO соединения с быстрыми
164        клиентами могли быть закрыты по истечению send_timeout.
166     *) Исправление: в модуле ngx_http_autoindex_module.
168     *) Исправление: модуль ngx_http_mp4_module не поддерживал перемотку на
169        32-битных платформах.
172 Изменения в nginx 1.1.5                                           05.10.2011
174     *) Добавление: директивы uwsgi_buffering и scgi_buffering.
175        Спасибо Peter Smit.
177     *) Исправление: при использовании proxy_cache_bypass могли быть
178        закэшированы некэшируемые ответы.
179        Спасибо John Ferlito.
181     *) Исправление: в модуле ngx_http_proxy_module при работе с бэкендами по
182        HTTP/1.1.
184     *) Исправление: закэшированные ответы с пустым телом возвращались
185        некорректно; ошибка появилась в 0.8.31.
187     *) Исправление: ответы с кодом 201 модуля ngx_http_dav_module были
188        некорректны; ошибка появилась в 0.8.32.
190     *) Исправление: в директиве return.
192     *) Исправление: при использовании директивы "ssl_session_cache builtin"
193        происходил segmentation fault; ошибка появилась в 1.1.1.
196 Изменения в nginx 1.1.4                                           20.09.2011
198     *) Добавление: модуль ngx_http_upstream_keepalive.
200     *) Добавление: директива proxy_http_version.
202     *) Добавление: директива fastcgi_keep_conn.
204     *) Добавление: директива worker_aio_requests.
206     *) Исправление: если nginx был собран с файловым AIO, он не мог
207        запускаться на Linux без поддержки AIO.
209     *) Исправление: в обработке ошибок при работе с Linux AIO.
210        Спасибо Hagai Avrahami.
212     *) Исправление: уменьшено потребление памяти для долгоживущих запросов.
214     *) Исправление: модуль ngx_http_mp4_module не поддерживал 64-битный
215        MP4-атом co64.
218 Изменения в nginx 1.1.3                                           14.09.2011
220     *) Добавление: модуль ngx_http_mp4_module.
222     *) Исправление: в Linux AIO, используемым совместно с open_file_cache.
224     *) Исправление: open_file_cache не обновлял информацию о файле, если
225        файл был изменён не атомарно.
227     *) Исправление: nginx не собирался на MacOSX 10.7.
230 Изменения в nginx 1.1.2                                           05.09.2011
232     *) Изменение: теперь, если суммарный размер всех диапазонов больше
233        размера исходного ответа, то nginx возвращает только исходный ответ,
234        не обрабатывая диапазоны.
236     *) Добавление: директива max_ranges.
238     *) Исправление: директивы ssl_verify_client, ssl_verify_depth и
239        ssl_prefer_server_cipher могли работать некорректно, если
240        использовался SNI.
242     *) Исправление: в директивах proxy/fastcgi/scgi/
243        uwsgi_ignore_client_abort.
246 Изменения в nginx 1.1.1                                           22.08.2011
248     *) Изменение: теперь загрузчик кэша за каждую итерацию либо обрабатывает
249        число файлов, указанное в параметре load_files, либо работает не
250        дольше времени, указанного в параметре loader_threshold.
252     *) Изменение: SIGWINCH сигнал теперь работает только в режиме демона.
254     *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX
255        на Solaris.
256        Спасибо Денису Иванову.
258     *) Добавление: теперь на NetBSD поддерживаются accept фильтры.
260     *) Исправление: nginx не собирался на Linux 3.0.
262     *) Исправление: в некоторых случаях nginx не использовал сжатие; ошибка
263        появилась в 1.1.0.
265     *) Исправление: обработка тела запроса могла быть неверной, если клиент
266        использовал pipelining.
268     *) Исправление: в директиве request_body_in_single_buf.
270     *) Исправление: в директивах proxy_set_body и proxy_pass_request_body
271        при использовании SSL-соединения с бэкендом.
273     *) Исправление: nginx нагружал процессор, если все серверы в upstream'е
274        были помечены флагом down.
276     *) Исправление: при переконфигурации мог произойти segmentation fault,
277        если в предыдущей конфигурации был определён, но не использовался
278        ssl_session_cache.
280     *) Исправление: при использовании большого количества backup-серверов в
281        рабочем процессе мог произойти segmentation fault.
283     *) Исправление: при использовании директив fastcgi/scgi/uwsgi_param со
284        значениями, начинающимися со строки "HTTP_", в рабочем процессе мог
285        произойти segmentation fault; ошибка появилась в 0.8.40.
288 Изменения в nginx 1.1.0                                           01.08.2011
290     *) Добавление: уменьшение времени работы загрузчика кэша.
292     *) Добавление: параметры loader_files, loader_sleep и loader_threshold
293        директив proxy/fastcgi/scgi/uwsgi_cache_path.
295     *) Добавление: уменьшение времени загрузки конфигураций с большим
296        количеством HTTPS серверов.
298     *) Добавление: теперь nginx поддерживает шифры с обменом ECDHE-ключами.
299        Спасибо Adrian Kotelba.
301     *) Добавление: директива lingering_close.
302        Спасибо Максиму Дунину.
304     *) Исправление: закрытия соединения для pipelined-запросов.
305        Спасибо Максиму Дунину.
307     *) Исправление: nginx не запрещал сжатие при получении значения
308        "gzip;q=0" в строке "Accept-Encoding" в заголовке запроса клиента.
310     *) Исправление: таймаута при небуферизированном проксировании.
311        Спасибо Максиму Дунину.
313     *) Исправление: утечки памяти при использовании переменных в директиве
314        proxy_pass при работе с бэкендом по HTTPS.
315        Спасибо Максиму Дунину.
317     *) Исправление: в проверке параметра директивы proxy_pass, заданного
318        переменными.
319        Спасибо Lanshun Zhou.
321     *) Исправление: SSL не работал на QNX.
322        Спасибо Максиму Дунину.
324     *) Исправление: SSL модули не собирались gcc 4.6 без параметра
325        --with-debug.
328 Изменения в nginx 1.0.5                                           19.07.2011
330     *) Изменение: теперь по умолчанию используются следующие шифры SSL:
331        "HIGH:!aNULL:!MD5".
332        Спасибо Rob Stradling.
334     *) Добавление: директивы referer_hash_max_size и
335        referer_hash_bucket_size.
336        Спасибо Witold Filipczyk.
338     *) Добавление: переменная $uid_reset.
340     *) Исправление: при использовании кэширования в рабочем процессе мог
341        произойти segmentation fault.
342        Спасибо Lanshun Zhou.
344     *) Исправление: при использовании кэширования рабочие процессы могли
345        зациклиться во время переконфигурации; ошибка появилась в 0.8.48.
346        Спасибо Максиму Дунину.
348     *) Исправление: сообщения "stalled cache updating".
349        Спасибо Максиму Дунину.
352 Изменения в nginx 1.0.4                                           01.06.2011
354     *) Изменение: теперь в регулярных выражениях в директиве map можно
355        задать чувствительность к регистру с помощью префиксов "~" и "~*".
357     *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX
358        на Linux.
359        Спасибо Денису Латыпову.
361     *) Исправление: сообщения "stalled cache updating".
363     *) Исправление: nginx не собирался с параметром
364        --without-http_auth_basic_module; ошибка появилась в 1.0.3.
367 Изменения в nginx 1.0.3                                           25.05.2011
369     *) Добавление: директива auth_basic_user_file поддерживает шифрование
370        пароля методами "$apr1", "{PLAIN}" и "{SSHA}".
371        Спасибо Максиму Дунину.
373     *) Добавление: директива geoip_org и переменная $geoip_org.
374        Спасибо Александру Ускову, Arnaud Granal и Денису Латыпову.
376     *) Добавление: модули ngx_http_geo_module и ngx_http_geoip_module
377        поддерживают адреса IPv4, отображённые на IPv6 адреса.
379     *) Исправление: при проверке адреса IPv4, отображённого на адрес IPv6, в
380        рабочем процессе происходил segmentation fault, если директивы access
381        или deny были определены только для адресов IPv6; ошибка появилась в
382        0.8.22.
384     *) Исправление: закэшированный ответ мог быть испорчен, если значения
385        директив proxy/fastcgi/scgi/uwsgi_cache_bypass и proxy/fastcgi/scgi/
386        uwsgi_no_cache были разными; ошибка появилась в 0.8.46.
389 Изменения в nginx 1.0.2                                           10.05.2011
391     *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX.
393     *) Исправление: в работе параметра rotate директивы image_filter.
394        Спасибо Adam Bocim.
396     *) Исправление: nginx не собирался на Solaris; ошибка появилась в 1.0.1.
399 Изменения в nginx 1.0.1                                           03.05.2011
401     *) Изменение: теперь директива split_clients использует алгоритм
402        MurmurHash2 из-за лучшего распределения.
403        Спасибо Олегу Мамонтову.
405     *) Изменение: теперь длинные строки, начинающиеся с нуля, не считаются
406        ложными значениями.
407        Спасибо Максиму Дунину.
409     *) Изменение: теперь по умолчанию nginx использует значение 511 для
410        listen backlog на Linux.
412     *) Добавление: переменные $upstream_... можно использовать в SSI и
413        перловом модулях.
415     *) Исправление: теперь nginx лучше ограничивает размер кэша на диске.
416        Спасибо Олегу Мамонтову.
418     *) Исправление: при парсинге неправильного IPv4 адреса мог произойти
419        segmentation fault; ошибка появилась в 0.8.22.
420        Спасибо Максиму Дунину.
422     *) Исправление: nginx не собирался gcc 4.6 без параметра --with-debug.
424     *) Исправление: nginx не собирался на Solaris 9 и более ранних; ошибка
425        появилась в 0.9.3.
426        Спасибо Dagobert Michelsen.
428     *) Исправление: переменная $request_time имела неверные значения, если
429        использовались подзапросы; ошибка появилась в 0.8.47.
430        Спасибо Игорю А. Валькову.
433 Изменения в nginx 1.0.0                                           12.04.2011
435     *) Исправление: cache manager мог нагружать процессор после
436        переконфигурации.
437        Спасибо Максиму Дунину.
439     *) Исправление: директива "image_filter crop" неправильно работала в
440        сочетании с "image_filter rotate 180".
442     *) Исправление: директива "satisfy any" запрещала выдачу
443        пользовательской страницы для 401 кода.
446 Изменения в nginx 0.9.7                                           04.04.2011
448     *) Добавление: теперь соединения в состоянии keepalive могут быть
449        закрыты преждевременно, если у воркера нет свободных соединений.
450        Спасибо Максиму Дунину.
452     *) Добавление: параметр rotate директивы image_filter.
453        Спасибо Adam Bocim.
455     *) Исправление: ситуации, когда бэкенд в директивах fastcgi_pass,
456        scgi_pass или uwsgi_pass задан выражением и ссылается на описанный
457        upstream.
460 Изменения в nginx 0.9.6                                           21.03.2011
462     *) Добавление: директива map поддерживает регулярные выражения в
463        качестве значения первого параметра.
465     *) Добавление: переменная $time_iso8601 для access_log.
466        Спасибо Michael Lustfield.
469 Изменения в nginx 0.9.5                                           21.02.2011
471     *) Изменение: теперь по умолчанию nginx использует значение -1 для
472        listen backlog на Linux.
473        Спасибо Андрею Нигматулину.
475     *) Добавление: параметр utf8 в директивах geoip_country и geoip_city.
476        Спасибо Денису Латыпову.
478     *) Исправление: исправление в умолчательной директиве proxy_redirect,
479        если в директиве proxy_pass не был описан URI.
480        Спасибо Максиму Дунину.
482     *) Исправление: директива error_page не работала с нестандартными кодами
483        ошибок; ошибка появилась в 0.8.53.
484        Спасибо Максиму Дунину.
487 Изменения в nginx 0.9.4                                           21.01.2011
489     *) Добавление: директива server_name поддерживает переменную $hostname.
491     *) Добавление: 494 код для ошибки "Request Header Too Large".
494 Изменения в nginx 0.9.3                                           13.12.2010
496     *) Исправление: если для пары IPv6-адрес:порт описан только один сервер,
497        то выделения в регулярных выражениях в директиве server_name не
498        работали.
500     *) Исправление: nginx не собирался под Solaris; ошибка появилась в
501        0.9.0.
504 Изменения в nginx 0.9.2                                           06.12.2010
506     *) Добавление: поддержка строки "If-Unmodified-Since" в заголовке
507        запросе клиента.
509     *) Изменение: использование accept(), если accept4() не реализован;
510        ошибка появилась в 0.9.0.
512     *) Исправление: nginx не собирался под Cygwin; ошибка появилась в 0.9.0.
514     *) Исправление: уязвимости в OpenSSL CVE-2010-4180.
515        Спасибо Максиму Дунину.
518 Изменения в nginx 0.9.1                                           30.11.2010
520     *) Исправление: директивы вида "return CODE message" не работали; ошибка
521        появилась в 0.9.0.
524 Изменения в nginx 0.9.0                                           29.11.2010
526     *) Добавление: директива keepalive_disable.
528     *) Добавление: директива map поддерживает переменные в качестве значения
529        определяемой переменной.
531     *) Добавление: директива map поддерживает пустые строки в качестве
532        значения первого параметра.
534     *) Добавление: директива map поддерживает выражения в первом параметре.
536     *) Добавление: страница руководства nginx(8).
537        Спасибо Сергею Осокину.
539     *) Добавление: поддержка accept4() в Linux.
540        Спасибо Simon Liu.
542     *) Изменение: устранение предупреждения линкера о "sys_errlist" и
543        "sys_nerr" под Linux; предупреждение появилось в 0.8.35.
545     *) Исправление: при использовании директивы auth_basic в рабочем
546        процессе мог произойти segmentation fault.
547        Спасибо Михаилу Лалетину.
549     *) Исправление: совместимость с модулем ngx_http_eval_module; ошибка
550        появилась в 0.8.42.
553 Изменения в nginx 0.8.53                                          18.10.2010
555     *) Добавление: теперь директива error_page позволяет менять код статуса
556        у редиректа.
558     *) Добавление: директива gzip_disable поддерживает специальную маску
559        degradation.
561     *) Исправление: при использовании файлового AIO могла происходить утечка
562        сокетов.
563        Спасибо Максиму Дунину.
565     *) Исправление: если в первом сервере не была описана директива listen и
566        нигде явно не описан сервер по умолчанию, то сервером по умолчанию
567        становился следующий сервер с директивой listen; ошибка появилась в
568        0.8.21.
571 Изменения в nginx 0.8.52                                          28.09.2010
573     *) Исправление: nginx использовал режим SSL для listen сокета, если для
574        него был установлен любой listen-параметр; ошибка появилась в 0.8.51.
577 Изменения в nginx 0.8.51                                          27.09.2010
579     *) Изменение: директива secure_link_expires упразднена.
581     *) Изменение: уровень логгирования ошибок resolver'а понижен с уровня
582        alert на error.
584     *) Добавление: теперь параметр "ssl" listen-сокета можно устанавливать
585        несколько раз.
588 Изменения в nginx 0.8.50                                          02.09.2010
590     *) Добавление: директивы secure_link, secure_link_md5 и
591        secure_link_expires модуля ngx_http_secure_link_module.
593     *) Добавление: ключ -q.
594        Спасибо Геннадию Махомеду.
596     *) Исправление: при использовании кэширования рабочие процессы и могли
597        зациклиться во время переконфигурации; ошибка появилась в 0.8.48.
599     *) Исправление: в директиве gzip_disable.
600        Спасибо Derrick Petzold.
602     *) Исправление: nginx/Windows не мог посылать сигналы stop, quit,
603        reopen, reload процессу, запущенному в другой сессии.
606 Изменения в nginx 0.8.49                                          09.08.2010
608     *) Добавление: директива image_filter_jpeg_quality поддерживает
609        переменные.
611     *) Исправление: при использовании переменной $geoip_region_name в
612        рабочем процессе мог произойти segmentation fault; ошибка появилась в
613        0.8.48.
615     *) Исправление: ошибки, перехваченные error_page, кэшировались только до
616        следующего запроса; ошибка появилась в 0.8.48.
619 Изменения в nginx 0.8.48                                          03.08.2010
621     *) Изменение: теперь по умолчанию директива server_name имеет значение
622        пустое имя "".
623        Спасибо Геннадию Махомеду.
625     *) Изменение: теперь по умолчанию директива server_name_in_redirect
626        имеет значение off.
628     *) Добавление: переменные $geoip_dma_code, $geoip_area_code и
629        $geoip_region_name.
630        Спасибо Christine McGonagle.
632     *) Исправление: директивы proxy_pass, fastcgi_pass, uwsgi_pass и
633        scgi_pass не наследовались в блоки limit_except.
635     *) Исправление: директивы proxy_cache_min_uses, fastcgi_cache_min_uses
636        uwsgi_cache_min_uses и scgi_cache_min_uses не работали; ошибка
637        появилась в 0.8.46.
639     *) Исправление: директива fastcgi_split_path_info неверно использовала
640        выделения, если в выделения попадала только часть URI.
641        Спасибо Юрию Тарадаю и Frank Enderle.
643     *) Исправление: директива rewrite не экранировала символ ";" при
644        копировании из URI в аргументы.
645        Спасибо Daisuke Murase.
647     *) Исправление: модуль ngx_http_image_filter_module закрывал соединение,
648        если изображение было больше размера image_filter_buffer.
651 Изменения в nginx 0.8.47                                          28.07.2010
653     *) Исправление: переменная $request_time имела неверные значения для
654        подзапросов.
656     *) Исправление: ошибки, перехваченные error_page, не кэшировались.
658     *) Исправление: если использовался параметр max_size, то cache manager
659        мог зациклиться; ошибка появилась в 0.8.46.
662 Изменения в nginx 0.8.46                                          19.07.2010
664     *) Изменение: директивы proxy_no_cache, fastcgi_no_cache, uwsgi_no_cache
665        и scgi_no_cache теперь влияют только на сохранение закэшированного
666        ответа.
668     *) Добавление: директивы proxy_cache_bypass, fastcgi_cache_bypass,
669        uwsgi_cache_bypass и scgi_cache_bypass.
671     *) Исправление: nginx не освобождал память в keys_zone кэшей в случае
672        ошибки работы с бэкендом: память освобождалась только по истечении
673        времени неактивности или при недостатке памяти.
676 Изменения в nginx 0.8.45                                          13.07.2010
678     *) Добавление: улучшения в модуле ngx_http_xslt_filter.
679        Спасибо Laurence Rowe.
681     *) Исправление: ответ SSI модуля мог передаваться не полностью после
682        команды include с параметром wait="yes"; ошибка появилась в 0.7.25.
683        Спасибо Максиму Дунину.
685     *) Исправление: директива listen не поддерживала параметр setfib=0.
688 Изменения в nginx 0.8.44                                          05.07.2010
690     *) Изменение: теперь nginx по умолчанию не кэширует ответы бэкендов, в
691        заголовке которых есть строка "Set-Cookie".
693     *) Добавление: директива listen поддерживает параметр setfib.
694        Спасибо Андрею Филонову.
696     *) Исправление: директива sub_filter могла изменять регистр букв при
697        частичном совпадении.
699     *) Исправление: совместимость с HP/UX.
701     *) Исправление: совместимость с компилятором AIX xlC_r.
703     *) Исправление: nginx считал большие пакеты SSLv2 как обычные текстовые
704        запросы.
705        Спасибо Miroslaw Jaworski.
708 Изменения в nginx 0.8.43                                          30.06.2010
710     *) Добавление: ускорение загрузки больших баз geo-диапазонов.
712     *) Исправление: перенаправление ошибки в "location /zero {return 204;}"
713        без изменения кода ответа оставляло тело ошибки; ошибка появилась в
714        0.8.42.
716     *) Исправление: nginx мог закрывать IPv6 listen сокет во время
717        переконфигурации.
718        Спасибо Максиму Дунину.
720     *) Исправление: переменную $uid_set можно использовать на любой стадии
721        обработки запроса.
724 Изменения в nginx 0.8.42                                          21.06.2010
726     *) Изменение: теперь nginx проверяет location'ы, заданные регулярными
727        выражениями, если запрос полностью совпал с location'ом, заданным
728        строкой префикса. Предыдущее поведение появилось в 0.7.1.
730     *) Добавление: модуль ngx_http_scgi_module.
731        Спасибо Manlio Perillo.
733     *) Добавление: в директиве return можно добавлять текст ответа.
736 Изменения в nginx 0.8.41                                          15.06.2010
738     *) Безопасность: рабочий процесс nginx/Windows мог завершаться аварийно
739        при запросе файла с неверной кодировкой UTF-8.
741     *) Изменение: теперь nginx разрешает использовать пробелы в строке
742        запроса.
744     *) Исправление: директива proxy_redirect неправильно изменяла строку
745        "Refresh" в заголовке ответа бэкенда.
746        Спасибо Андрею Андрееву и Максиму Согину.
748     *) Исправление: nginx не поддерживал путь без имени хоста в строке
749        "Destination" в заголовке запроса.
752 Изменения в nginx 0.8.40                                          07.06.2010
754     *) Безопасность: теперь nginx/Windows игнорирует имя потока файла по
755        умолчанию.
756        Спасибо Jose Antonio Vazquez Gonzalez.
758     *) Добавление: модуль ngx_http_uwsgi_module.
759        Спасибо Roberto De Ioris.
761     *) Добавление: директива fastcgi_param со значением, начинающимся со
762        строки "HTTP_", изменяет строку заголовка в запросе клиента.
764     *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в
765        заголовке запроса клиента передавались FastCGI-серверу при
766        кэшировании.
768     *) Исправление: listen unix domain сокет нельзя было изменить во время
769        переконфигурации.
770        Спасибо Максиму Дунину.
773 Изменения в nginx 0.8.39                                          31.05.2010
775     *) Исправление: наследуемая директива alias неправильно работала во
776        вложенном location'е.
778     *) Исправление: в комбинации директив alias с переменными и try_files;
780     *) Исправление: listen unix domain и IPv6 сокеты не наследовались во
781        время обновления без перерыва.
782        Спасибо Максиму Дунину.
785 Изменения в nginx 0.8.38                                          24.05.2010
787     *) Добавление: директивы proxy_no_cache и fastcgi_no_cache.
789     *) Добавление: теперь при использовании переменной $scheme в директиве
790        rewrite автоматически делается редирект.
791        Спасибо Piotr Sikora.
793     *) Исправление: теперь задержки в директиве limit_req соответствует
794        описанному алгоритму.
795        Спасибо Максиму Дунину.
797     *) Исправление: переменную $uid_got нельзя было использовать в SSI и
798        перловом модулях.
801 Изменения в nginx 0.8.37                                          17.05.2010
803     *) Добавление: модуль ngx_http_split_clients_module.
805     *) Добавление: директива map поддерживает ключи больше 255 символов.
807     *) Исправление: nginx игнорировал значения "private" и "no-store" в
808        строке "Cache-Control" в заголовке ответа бэкенда.
810     *) Исправление: параметр stub в SSI-директиве include не использовался,
811        если пустой ответ имел код 200.
813     *) Исправление: если проксированный или FastCGI запрос внутренне
814        перенаправлялся в другой проксированный или FastCGI location, то в
815        рабочем процессе мог произойти segmentation fault; ошибка появилась в
816        0.8.33.
817        Спасибо Yichun Zhang.
819     *) Исправление: соединения IMAP к серверу Zimbra могло зависнуть до
820        таймаута.
821        Спасибо Alan Batie.
824 Изменения в nginx 0.8.36                                          22.04.2010
826     *) Исправление: модуль ngx_http_dav_module неправильно обрабатывал
827        методы DELETE, COPY и MOVE для симлинков.
829     *) Исправление: модуль SSI в подзапросах использовал закэшированные в
830        основном запросе значения переменных $query_string, $arg_... и им
831        подобных.
833     *) Исправление: значение переменной повторно экранировалось после
834        каждого вывода SSI-команды echo; ошибка появилась в 0.6.14.
836     *) Исправление: рабочий процесс зависал при запросе файла FIFO.
837        Спасибо Vicente Aguilar и Максиму Дунину.
839     *) Исправление: совместимость с OpenSSL-1.0.0 на 64-битном Linux.
840        Спасибо Максиму Дунину.
842     *) Исправление: nginx не собирался с параметром --without-http-cache;
843        ошибка появилась в 0.8.35.
846 Изменения в nginx 0.8.35                                          01.04.2010
848     *) Изменение: теперь charset-фильтр работает до SSI-фильтра.
850     *) Добавление: директива chunked_transfer_encoding.
852     *) Исправление: символ "&" при копировании в аргументы в правилах
853        rewrite не экранировался.
855     *) Исправление: nginx мог завершаться аварийно во время обработки
856        сигнала или при использовании директивы timer_resolution на
857        платформах, не поддерживающих методы kqueue или eventport.
858        Спасибо George Xie и Максиму Дунину.
860     *) Исправление: если временные файлы и постоянное место хранения
861        располагались на разных файловых системах, то у постоянных файлов
862        время изменения было неверным.
863        Спасибо Максиму Дунину.
865     *) Исправление: модуль ngx_http_memcached_module мог выдавать ошибку
866        "memcached sent invalid trailer".
867        Спасибо Максиму Дунину.
869     *) Исправление: nginx не мог собрать библиотеку zlib-1.2.4 из исходных
870        текстов.
871        Спасибо Максиму Дунину.
873     *) Исправление: в рабочем процессе происходил segmentation fault, если
874        перед ответом FastCGI-сервера было много вывода в stderr; ошибка
875        появилась в 0.8.34.
876        Спасибо Максиму Дунину.
879 Изменения в nginx 0.8.34                                          03.03.2010
881     *) Исправление: nginx не поддерживал все шифры, используемые в
882        клиентских сертификатах.
883        Спасибо Иннокентию Еникееву.
885     *) Исправление: nginx неправильно кэшировал FastCGI-ответы, если перед
886        ответом было много вывода в stderr.
888     *) Исправление: nginx не поддерживал HTTPS-рефереры.
890     *) Исправление: nginx/Windows мог не находить файлы, если путь в
891        конфигурации был задан в другом регистре; ошибка появилась в 0.8.33.
893     *) Исправление: переменная $date_local выдавала неверное время, если
894        использовался формат "%s".
895        Спасибо Максиму Дунину.
897     *) Исправление: если ssl_session_cache не был установлен или установлен
898        в none, то при проверке клиентского сертификаты могла происходить
899        ошибка "session id context uninitialized"; ошибка появилась в 0.7.1.
901     *) Исправление: geo-диапазон возвращал значение по умолчанию, если
902        диапазон включал в себя одну и более сетей размером /16 и не
903        начинался на границе сети размером /16.
905     *) Исправление: блок, используемый в параметре stub в SSI-директиве
906        include, выводился с MIME-типом "text/plain".
908     *) Исправление: $r->sleep() не работал; ошибка появилась в 0.8.11.
911 Изменения в nginx 0.8.33                                          01.02.2010
913     *) Безопасность: теперь nginx/Windows игнорирует пробелы в конце URI.
914        Спасибо Dan Crowley, Core Security Technologies.
916     *) Безопасность: теперь nginx/Windows игнорирует короткие имена файлов.
917        Спасибо Dan Crowley, Core Security Technologies.
919     *) Изменение: теперь keepalive соединения после запросов POST не
920        запрещаются для MSIE 7.0+.
921        Спасибо Adam Lounds.
923     *) Изменение: теперь keepalive соединения запрещены для Safari.
924        Спасибо Joshua Sierles.
926     *) Исправление: если проксированный или FastCGI запрос внутренне
927        перенаправлялся в другой проксированный или FastCGI location, то
928        переменная $upstream_response_time могла иметь ненормально большое
929        значение; ошибка появилась в 0.8.7.
931     *) Исправление: в рабочем процессе мог произойти segmentation fault при
932        отбрасывания тела запроса; ошибка появилась в 0.8.11.
935 Изменения в nginx 0.8.32                                          11.01.2010
937     *) Исправление: ошибки при использовании кодировки UTF-8 в
938        ngx_http_autoindex_module.
939        Спасибо Максиму Дунину.
941     *) Исправление: именованные выделения в регулярных выражениях работали
942        только для двух переменных.
943        Спасибо Максиму Дунину.
945     *) Исправление: теперь в строке заголовка запроса "Host" используется
946        имя "localhost", если в директиве auth_http указан unix domain сокет.
947        Спасибо Максиму Дунину.
949     *) Исправление: nginx не поддерживал передачу chunk'ами для 201-ых
950        ответов.
951        Спасибо Julian Reich.
953     *) Исправление: если директива "expires modified" выставляла дату в
954        прошлом, то в строке заголовка ответа "Cache-Control" выдавалось
955        отрицательное число.
956        Спасибо Алексею Капранову.
959 Изменения в nginx 0.8.31                                          23.12.2009
961     *) Добавление: теперь директива error_page может перенаправлять ответы
962        со статусом 301 и 302.
964     *) Добавление: переменные $geoip_city_continent_code, $geoip_latitude и
965        $geoip_longitude.
966        Спасибо Arvind Sundararajan.
968     *) Добавление: модуль ngx_http_image_filter_module теперь всегда удаляет
969        EXIF и другие данные, если они занимают больше 5% в JPEG-файле.
971     *) Исправление: nginx закрывал соединение при запросе закэшированного
972        ответа с пустым телом.
973        Спасибо Piotr Sikora.
975     *) Исправление: nginx мог не собираться gcc 4.x при использовании
976        оптимизации -O2 и выше.
977        Спасибо Максиму Дунину и Денису Латыпову.
979     *) Исправление: регулярные выражения в location всегда тестировались с
980        учётом регистра; ошибка появилась в 0.8.25.
982     *) Исправление: nginx кэшировал 304 ответ, если в заголовке
983        проксируемого запроса была строка "If-None-Match".
984        Спасибо Tim Dettrick и David Kostal.
986     *) Исправление: nginx/Windows пытался дважды удалить временный файл при
987        перезаписи уже существующего файла.
990 Изменения в nginx 0.8.30                                          15.12.2009
992     *) Изменение: теперь по умолчанию размер буфера директивы
993        large_client_header_buffers равен 8K.
994        Спасибо Andrew Cholakian.
996     *) Добавление: файл conf/fastcgi.conf для простых конфигураций FastCGI.
998     *) Исправление: nginx/Windows пытался дважды переименовать временный
999        файл при перезаписи уже существующего файла.
1001     *) Исправление: ошибки double free or corruption, возникающей, если имя
1002        хоста не было найдено; ошибка появилась в 0.8.22.
1003        Спасибо Константину Свисту.
1005     *) Исправление: в использовании libatomic на некоторых платформах.
1006        Спасибо W-Mark Kubacki.
1009 Изменения в nginx 0.8.29                                          30.11.2009
1011     *) Изменение: теперь для проксируемых ответов HTTP/0.9 в лог пишется код
1012        ответа "009".
1014     *) Добавление: директивы addition_types, charset_types, gzip_types,
1015        ssi_types, sub_filter_types и xslt_types поддерживают параметр "*".
1017     *) Добавление: использование встроенных атомарных операций GCC 4.1+.
1018        Спасибо W-Mark Kubacki.
1020     *) Добавление: параметр --with-libatomic[=DIR] в configure.
1021        Спасибо W-Mark Kubacki.
1023     *) Исправление: listen unix domain сокет имели ограниченные права
1024        доступа.
1026     *) Исправление: закэшированные ответы ответов HTTP/0.9 неправильно
1027        обрабатывались.
1029     *) Исправление: именованные выделения в регулярных выражениях, заданные
1030        как "?P<...>", не работали в директиве server_name.
1031        Спасибо Максиму Дунину.
1034 Изменения в nginx 0.8.28                                          23.11.2009
1036     *) Исправление: nginx не собирался с параметром --without-pcre; ошибка
1037        появилась в 0.8.25.
1040 Изменения в nginx 0.8.27                                          17.11.2009
1042     *) Исправление: регулярные выражения не работали в nginx/Windows; ошибка
1043        появилась в 0.8.25.
1046 Изменения в nginx 0.8.26                                          16.11.2009
1048     *) Исправление: ошибки при использовании выделений в директиве rewrite;
1049        ошибка появилась в 0.8.25.
1051     *) Исправление: nginx не собирался без параметра --with-debug; ошибка
1052        появилась в 0.8.25.
1055 Изменения в nginx 0.8.25                                          16.11.2009
1057     *) Изменение: теперь в лог ошибок не пишется сообщение, если переменная
1058        не найдена с помощью метода $r->variable().
1060     *) Добавление: модуль ngx_http_degradation_module.
1062     *) Добавление: именованные выделения в регулярных выражениях.
1064     *) Добавление: теперь при использовании переменных в директиве
1065        proxy_pass не требуется задавать URI.
1067     *) Добавление: теперь директива msie_padding работает и для Chrome.
1069     *) Исправление: в рабочем процессе происходил segmentation fault при
1070        недостатке памяти; ошибка появилась в 0.8.18.
1072     *) Исправление: nginx передавал сжатые ответы клиентам, не
1073        поддерживающим сжатие, при настройках gzip_static on и gzip_vary off;
1074        ошибка появилась в 0.8.16.
1077 Изменения в nginx 0.8.24                                          11.11.2009
1079     *) Исправление: nginx всегда добавлял строку "Content-Encoding: gzip" в
1080        заголовок 304-ых ответов модуля ngx_http_gzip_static_module.
1082     *) Исправление: nginx не собирался без параметра --with-debug; ошибка
1083        появилась в 0.8.23.
1085     *) Исправление: параметр "unix:" в директиве set_real_ip_from
1086        неправильно наследовался с предыдущего уровня.
1088     *) Исправление: в resolver'е при определении пустого имени.
1091 Изменения в nginx 0.8.23                                          11.11.2009
1093     *) Безопасность: теперь SSL/TLS renegotiation запрещён.
1094        Спасибо Максиму Дунину.
1096     *) Исправление: listen unix domain сокет не наследовался во время
1097        обновления без перерыва.
1099     *) Исправление: параметр "unix:" в директиве set_real_ip_from не работал
1100        без ещё одной директивы с любым IP-адресом.
1102     *) Исправление: segmentation fault и зацикливания в resolver'е.
1104     *) Исправление: в resolver'е.
1105        Спасибо Артёму Бохану.
1108 Изменения в nginx 0.8.22                                          03.11.2009
1110     *) Добавление: директивы proxy_bind, fastcgi_bind и memcached_bind.
1112     *) Добавление: директивы access и deny поддерживают IPv6.
1114     *) Добавление: директива set_real_ip_from поддерживает IPv6 адреса в
1115        заголовках запроса.
1117     *) Добавление: параметр "unix:" в директиве set_real_ip_from.
1119     *) Исправление: nginx не удалял unix domain сокет после тестирования
1120        конфигурации.
1122     *) Исправление: nginx удалял unix domain сокет во время обновления без
1123        перерыва.
1125     *) Исправление: оператор "!-x" не работал.
1126        Спасибо Максиму Дунину.
1128     *) Исправление: в рабочем процессе мог произойти segmentation fault при
1129        использовании limit_rate в HTTPS сервере.
1130        Спасибо Максиму Дунину.
1132     *) Исправление: при записи в лог переменной $limit_rate в рабочем
1133        процессе происходил segmentation fault.
1134        Спасибо Максиму Дунину.
1136     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1137        если внутри блока server не было директивы listen; ошибка появилась в
1138        0.8.21.
1141 Изменения в nginx 0.8.21                                          26.10.2009
1143     *) Добавление: теперь ключ -V показывает статус поддержки TLS SNI.
1145     *) Добавление: директива listen модуля HTTP поддерживает unix domain
1146        сокеты.
1147        Спасибо Hongli Lai.
1149     *) Добавление: параметр "default_server" в директиве listen.
1151     *) Добавление: теперь параметр "default" не обязателен для установки
1152        параметров listen-сокета.
1154     *) Исправление: nginx не поддерживал даты в 2038 году на 32-битных
1155        платформах;
1157     *) Исправление: утечки сокетов; ошибка появилась в 0.8.11.
1160 Изменения в nginx 0.8.20                                          14.10.2009
1162     *) Изменение: теперь по умолчанию используются следующие шифры SSL:
1163        "HIGH:!ADH:!MD5".
1165     *) Исправление: модуль ngx_http_autoindex_module не показывал последний
1166        слэш для линков на каталоги; ошибка появилась в 0.7.15.
1168     *) Исправление: nginx не закрывал лог, заданный параметром конфигурации
1169        --error-log-path; ошибка появилась в 0.7.53.
1171     *) Исправление: nginx не считал запятую разделителем в строке
1172        "Cache-Control" в заголовке ответа бэкенда.
1174     *) Исправление: nginx/Windows мог не создать временный файл, файл в кэше
1175        или файл с помощью директив proxy/fastcgi_store, если рабочий процесс
1176        не имел достаточно прав для работы с каталогами верхнего уровня.
1178     *) Исправление: строки "Set-Cookie" и "P3P" в заголовке ответа
1179        FastCGI-сервера не скрывались при кэшировании, если не использовались
1180        директивы fastcgi_hide_header с любыми параметрами.
1182     *) Исправление: nginx неверно считал размер кэша на диске.
1185 Изменения в nginx 0.8.19                                          06.10.2009
1187     *) Изменение: теперь протокол SSLv2 по умолчанию запрещён.
1189     *) Изменение: теперь по умолчанию используются следующие шифры SSL:
1190        "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM".
1192     *) Исправление: директива limit_req не работала; ошибка появилась в
1193        0.8.18.
1196 Изменения в nginx 0.8.18                                          06.10.2009
1198     *) Добавление: директива read_ahead.
1200     *) Добавление: теперь можно использовать несколько директив
1201        perl_modules.
1203     *) Добавление: директивы limit_req_log_level и limit_conn_log_level.
1205     *) Исправление: теперь директива limit_req соответствует алгоритму leaky
1206        bucket.
1207        Спасибо Максиму Дунину.
1209     *) Исправление: nginx не работал на Linux/sparc.
1210        Спасибо Marcus Ramberg.
1212     *) Исправление: nginx слал символ '\0' в строке "Location" в заголовке в
1213        ответе на запрос MKCOL.
1214        Спасибо Xie Zhenye.
1216     *) Исправление: вместо кода ответа 499 в лог записывался код 0; ошибка
1217        появилась в 0.8.11.
1219     *) Исправление: утечки сокетов; ошибка появилась в 0.8.11.
1222 Изменения в nginx 0.8.17                                          28.09.2009
1224     *) Безопасность: теперь символы "/../" запрещены в строке "Destination"
1225        в заголовке запроса.
1227     *) Изменение: теперь значение переменной $host всегда в нижнем регистре.
1229     *) Добавление: переменная $ssl_session_id.
1231     *) Исправление: утечки сокетов; ошибка появилась в 0.8.11.
1234 Изменения в nginx 0.8.16                                          22.09.2009
1236     *) Добавление: директива image_filter_transparency.
1238     *) Исправление: директива "addition_types" была неверно названа
1239        "addtion_types".
1241     *) Исправление: порчи кэша resolver'а.
1242        Спасибо Matthew Dempsky.
1244     *) Исправление: утечки памяти в resolver'е.
1245        Спасибо Matthew Dempsky.
1247     *) Исправление: неверная строка запроса в переменной $request
1248        записывалась в access_log только при использовании error_log на
1249        уровне info или debug.
1251     *) Исправление: в поддержке альфа-канала PNG в модуле
1252        ngx_http_image_filter_module.
1254     *) Исправление: nginx всегда добавлял строку "Vary: Accept-Encoding" в
1255        заголовок ответа, если обе директивы gzip_static и gzip_vary были
1256        включены.
1258     *) Исправление: в поддержке кодировки UTF-8 директивой try_files в
1259        nginx/Windows.
1261     *) Исправление: ошибки при использовании post_action; ошибка появилась в
1262        0.8.11.
1263        Спасибо Игорю Артемьеву.
1266 Изменения в nginx 0.8.15                                          14.09.2009
1268     *) Безопасность: при обработке специально созданного запроса в рабочем
1269        процессе мог произойти segmentation fault.
1270        Спасибо Chris Ries.
1272     *) Исправление: если были описаны имена .domain.tld, .sub.domain.tld и
1273        .domain-some.tld, то имя .sub.domain.tld попадало под маску
1274        .domain.tld.
1276     *) Исправление: в поддержке прозрачности в модуле
1277        ngx_http_image_filter_module.
1279     *) Исправление: в файловом AIO.
1281     *) Исправление: ошибки при использовании X-Accel-Redirect; ошибка
1282        появилась в 0.8.11.
1284     *) Исправление: ошибки при использовании встроенного перла; ошибка
1285        появилась в 0.8.11.
1288 Изменения в nginx 0.8.14                                          07.09.2009
1290     *) Исправление: устаревший закэшированный запрос мог залипнуть в
1291        состоянии "UPDATING".
1293     *) Исправление: при использовании error_log на уровне info или debug в
1294        рабочем процессе мог произойти segmentation fault.
1295        Спасибо Сергею Боченкову.
1297     *) Исправление: ошибки при использовании встроенного перла; ошибка
1298        появилась в 0.8.11.
1300     *) Исправление: директива error_page не перенаправляла ошибку 413;
1301        ошибка появилась в 0.6.10.
1304 Изменения в nginx 0.8.13                                          31.08.2009
1306     *) Исправление: в директиве "aio sendfile"; ошибка появилась в 0.8.12.
1308     *) Исправление: nginx не собирался без параметра --with-file-aio на
1309        FreeBSD; ошибка появилась в 0.8.12.
1312 Изменения в nginx 0.8.12                                          31.08.2009
1314     *) Добавление: параметр sendfile в директиве aio во FreeBSD.
1316     *) Исправление: ошибки при использовании try_files; ошибка появилась в
1317        0.8.11.
1319     *) Исправление: ошибки при использовании memcached; ошибка появилась в
1320        0.8.11.
1323 Изменения в nginx 0.8.11                                          28.08.2009
1325     *) Изменение: теперь директива "gzip_disable msie6" не запрещает сжатие
1326        для MSIE 6.0 SV1.
1328     *) Добавление: поддержка файлового AIO во FreeBSD и Linux.
1330     *) Добавление: директива directio_alignment.
1333 Изменения в nginx 0.8.10                                          24.08.2009
1335     *) Исправление: утечек памяти при использовании базы GeoIP City.
1337     *) Исправление: ошибки при копировании временных файлов в постоянное
1338        место хранения; ошибка появилась в 0.8.9.
1341 Изменения в nginx 0.8.9                                           17.08.2009
1343     *) Добавление: теперь стартовый загрузчик кэша работает в отдельном
1344        процесс; это должно улучшить обработку больших кэшей.
1346     *) Добавление: теперь временные файлы и постоянное место хранения могут
1347        располагаться на разных файловых системах.
1350 Изменения в nginx 0.8.8                                           10.08.2009
1352     *) Исправление: в обработке заголовков ответа, разделённых в
1353        FastCGI-записях.
1355     *) Исправление: если запрос обрабатывался в двух проксированных или
1356        FastCGI location'ах и в первом из них использовалось кэширование, то
1357        в рабочем процессе происходил segmentation fault; ошибка появилась в
1358        0.8.7.
1361 Изменения в nginx 0.8.7                                           27.07.2009
1363     *) Изменение: минимальная поддерживаемая версия OpenSSL - 0.9.7.
1365     *) Изменение: параметр ask директивы ssl_verify_client изменён на
1366        параметр optional и теперь он проверяет клиентский сертификат, если
1367        он был предложен.
1368        Спасибо Brice Figureau.
1370     *) Добавление: переменная $ssl_client_verify.
1371        Спасибо Brice Figureau.
1373     *) Добавление: директива ssl_crl.
1374        Спасибо Brice Figureau.
1376     *) Добавление: параметр proxy директивы geo.
1378     *) Добавление: директива image_filter поддерживает переменные для
1379        задания размеров.
1381     *) Исправление: использование переменной $ssl_client_cert портило
1382        память; ошибка появилась в 0.7.7.
1383        Спасибо Сергею Журавлёву.
1385     *) Исправление: директивы proxy_pass_header и fastcgi_pass_header" не
1386        передавали клиенту строки "X-Accel-Redirect", "X-Accel-Limit-Rate",
1387        "X-Accel-Buffering" и "X-Accel-Charset" из заголовка ответа бэкенда.
1388        Спасибо Максиму Дунину.
1390     *) Исправление: в обработке строк "Last-Modified" и "Accept-Ranges" в
1391        заголовке ответа бэкенда; ошибка появилась в 0.7.44.
1392        Спасибо Максиму Дунину.
1394     *) Исправление: ошибки "[alert] zero size buf" при получении пустых
1395        ответы в подзапросах; ошибка появилась в 0.8.5.
1398 Изменения в nginx 0.8.6                                           20.07.2009
1400     *) Добавление: модуль ngx_http_geoip_module.
1402     *) Исправление: XSLT-фильтр мог выдавать ошибку "not well formed XML
1403        document" для правильного документа.
1404        Спасибо Kuramoto Eiji.
1406     *) Исправление: в MacOSX, Cygwin и nginx/Windows при проверке
1407        location'ов, заданных регулярным выражением, теперь всегда делается
1408        сравнение без учёта регистра символов.
1410     *) Исправление: теперь nginx/Windows игнорирует точки в конце URI.
1411        Спасибо Hugo Leisink.
1413     *) Исправление: имя файла указанного в --conf-path игнорировалось при
1414        установке; ошибка появилась в 0.6.6.
1415        Спасибо Максиму Дунину.
1418 Изменения в nginx 0.8.5                                           13.07.2009
1420     *) Исправление: теперь nginx разрешает подчёркивания в методе запроса.
1422     *) Исправление: при использовании HTTP Basic-аутентификации на Windows
1423        для неверных имени/пароля возвращалась 500-ая ошибка.
1425     *) Исправление: ответы модуля ngx_http_perl_module не работали в
1426        подзапросах.
1428     *) Исправление: в модуле ngx_http_limit_req_module.
1429        Спасибо Максиму Дунину.
1432 Изменения в nginx 0.8.4                                           22.06.2009
1434     *) Исправление: nginx не собирался с параметром --without-http-cache;
1435        ошибка появилась в 0.8.3.
1438 Изменения в nginx 0.8.3                                           19.06.2009
1440     *) Добавление: переменная $upstream_cache_status.
1442     *) Исправление: nginx не собирался на MacOSX 10.6.
1444     *) Исправление: nginx не собирался с параметром --without-http-cache;
1445        ошибка появилась в 0.8.2.
1447     *) Исправление: если использовался перехват 401 ошибки от бэкенда и
1448        бэкенд не возвращал строку "WWW-Authenticate" в заголовке ответа, то
1449        в рабочем процессе происходил segmentation fault.
1450        Спасибо Евгению Мычло.
1453 Изменения в nginx 0.8.2                                           15.06.2009
1455     *) Исправление: во взаимодействии open_file_cache и proxy/fastcgi кэша
1456        на старте.
1458     *) Исправление: open_file_cache мог кэшировать открытые файлы очень
1459        долго; ошибка появилась в 0.7.4.
1462 Изменения в nginx 0.8.1                                           08.06.2009
1464     *) Добавление: параметр updating в директивах proxy_cache_use_stale и
1465        fastcgi_cache_use_stale.
1467     *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в
1468        заголовке запроса клиента передавались бэкенду при кэшировании, если
1469        не использовалась директива proxy_set_header с любыми параметрами.
1471     *) Исправление: строки "Set-Cookie" и "P3P" в заголовке ответа бэкенда
1472        не скрывались при кэшировании, если не использовались директивы
1473        proxy_hide_header/fastcgi_hide_header с любыми параметрами.
1475     *) Исправление: модуль ngx_http_image_filter_module не понимал формат
1476        GIF87a.
1477        Спасибо Денису Ильиных.
1479     *) Исправление: nginx не собирался на Solaris 10 и более ранних; ошибка
1480        появилась в 0.7.56.
1483 Изменения в nginx 0.8.0                                           02.06.2009
1485     *) Добавление: директива keepalive_requests.
1487     *) Добавление: директива limit_rate_after.
1488        Спасибо Ivan Debnar.
1490     *) Исправление: XSLT-фильтр не работал в подзапросах.
1492     *) Исправление: обработке относительных путей в nginx/Windows.
1494     *) Исправление: в proxy_store, fastcgi_store, proxy_cache и
1495        fastcgi_cache в nginx/Windows.
1497     *) Исправление: в обработке ошибок выделения памяти.
1498        Спасибо Максиму Дунину и Кириллу Коринскому.
1501 Изменения в nginx 0.7.59                                          25.05.2009
1503     *) Добавление: директивы proxy_cache_methods и fastcgi_cache_methods.
1505     *) Исправление: утечки сокетов; ошибка появилась в 0.7.25.
1506        Спасибо Максиму Дунину.
1508     *) Исправление: при использовании переменной $request_body в рабочем
1509        процессе происходил segmentation fault, если в запросе не было тела;
1510        ошибка появилась в 0.7.58.
1512     *) Исправление: SSL-модули могли не собираться на Solaris и Linux;
1513        ошибка появилась в 0.7.56.
1515     *) Исправление: ответы модуля ngx_http_xslt_filter_module не
1516        обрабатывались SSI-, charset- и gzip-фильтрами.
1518     *) Исправление: директива charset не ставила кодировку для ответов
1519        модуля ngx_http_gzip_static_module.
1522 Изменения в nginx 0.7.58                                          18.05.2009
1524     *) Добавление: директива listen почтового прокси-сервера поддерживает
1525        IPv6.
1527     *) Добавление: директива image_filter_jpeg_quality.
1529     *) Добавление: директива client_body_in_single_buffer.
1531     *) Добавление: переменная $request_body.
1533     *) Исправление: в модуле ngx_http_autoindex_module в ссылках на имена
1534        файлов, содержащих символ ":".
1536     *) Исправление: процедура "make upgrade" не работала; ошибка появилась в
1537        0.7.53.
1538        Спасибо Денису Латыпову.
1541 Изменения в nginx 0.7.57                                          12.05.2009
1543     *) Исправление: при перенаправлении ошибок модуля
1544        ngx_http_image_filter_module в именованный location в рабочем
1545        процессе происходил floating-point fault; ошибка появилась в 0.7.56.
1548 Изменения в nginx 0.7.56                                          11.05.2009
1550     *) Добавление: nginx/Windows поддерживает IPv6 в директиве listen модуля
1551        HTTP.
1553     *) Исправление: в модуле ngx_http_image_filter_module.
1556 Изменения в nginx 0.7.55                                          06.05.2009
1558     *) Исправление: параметры http_XXX в директивах proxy_cache_use_stale и
1559        fastcgi_cache_use_stale не работали.
1561     *) Исправление: fastcgi кэш не кэшировал ответы, состоящие только из
1562        заголовка.
1564     *) Исправление: ошибки "select() failed (9: Bad file descriptor)" в
1565        nginx/Unix и "select() failed (10038: ...)" в nginx/Windows.
1567     *) Исправление: при использовании директивы debug_connection в рабочем
1568        процессе мог произойти segmentation fault; ошибка появилась в 0.7.54.
1570     *) Исправление: в сборке модуля ngx_http_image_filter_module.
1572     *) Исправление: файлы больше 2G не передавались с использованием
1573        $r->sendfile.
1574        Спасибо Максиму Дунину.
1577 Изменения в nginx 0.7.54                                          01.05.2009
1579     *) Добавление: модуль ngx_http_image_filter_module.
1581     *) Добавление: директивы proxy_ignore_headers и fastcgi_ignore_headers.
1583     *) Исправление: при использовании переменных "open_file_cache_errors on"
1584        в рабочем процессе мог произойти segmentation fault; ошибка появилась
1585        в 0.7.53.
1587     *) Исправление: директива "port_in_redirect off" не работала; ошибка
1588        появилась в 0.7.39.
1590     *) Исправление: улучшение обработки ошибок метода select.
1592     *) Исправление: ошибки "select() failed (10022: ...)" в nginx/Windows.
1594     *) Исправление: в текстовых сообщениях об ошибках в nginx/Windows;
1595        ошибка появилась в 0.7.53.
1598 Изменения в nginx 0.7.53                                          27.04.2009
1600     *) Изменение: теперь лог, указанный в --error-log-path, создаётся с
1601        самого начала работы.
1603     *) Добавление: теперь ошибки и предупреждения при старте записываются в
1604        error_log и выводятся на stderr.
1606     *) Добавление: при сборке с пустым параметром --prefix= nginx использует
1607        как префикс каталог, в котором он был запущен.
1609     *) Добавление: ключ -p.
1611     *) Добавление: ключ -s на Unix-платформах.
1613     *) Добавление: ключи -? и -h.
1614        Спасибо Jerome Loyet.
1616     *) Добавление: теперь ключи можно задавать в сжатой форме.
1618     *) Исправление: nginx/Windows не работал, если файл конфигурации был
1619        задан ключом -c.
1621     *) Исправление: при использовании директив proxy_store, fastcgi_store,
1622        proxy_cache или fastcgi_cache временные файлы могли не удаляться.
1623        Спасибо Максиму Дунину.
1625     *) Исправление: в заголовке Auth-Method запроса серверу аутентификации
1626        почтового прокси-сервера передавалось неверное значение; ошибка
1627        появилась в 0.7.34.
1628        Спасибо Simon Lecaille.
1630     *) Исправление: при логгировании на Linux не писались текстовые описания
1631        системных ошибок; ошибка появилась в 0.7.45.
1633     *) Исправление: директива fastcgi_cache_min_uses не работала.
1634        Спасибо Андрею Воробьёву.
1637 Изменения в nginx 0.7.52                                          20.04.2009
1639     *) Добавление: первая бинарная версия под Windows.
1641     *) Исправление: корректная обработка метода HEAD при кэшировании.
1643     *) Исправление: корректная обработка строк "If-Modified-Since",
1644        "If-Range" и им подобных в заголовке запроса клиента при кэшировании.
1646     *) Исправление: теперь строки "Set-Cookie" и "P3P" скрываются в
1647        заголовке ответа для закэшированных ответов.
1649     *) Исправление: если nginx был собран с модулем ngx_http_perl_module и
1650        perl поддерживал потоки, то при выходе основного процесса могла
1651        выдаваться ошибка "panic: MUTEX_LOCK".
1653     *) Исправление: nginx не собирался с параметром --without-http-cache;
1654        ошибка появилась в 0.7.48.
1656     *) Исправление: nginx не собирался на платформах, отличных от i386,
1657        amd64, sparc и ppc; ошибка появилась в 0.7.42.
1660 Изменения в nginx 0.7.51                                          12.04.2009
1662     *) Добавление: директива try_files поддерживает код ответа в последнем
1663        параметре.
1665     *) Добавление: теперь в директиве return можно использовать любой код
1666        ответа.
1668     *) Исправление: директива error_page делала внешний редирект без строки
1669        запроса; ошибка появилась в 0.7.44.
1671     *) Исправление: если сервера слушали на нескольких явно описанных
1672        адресах, то виртуальные сервера могли не работать; ошибка появилась в
1673        0.7.39.
1676 Изменения в nginx 0.7.50                                          06.04.2009
1678     *) Исправление: переменные $arg_... не работали; ошибка появилась в
1679        0.7.49.
1682 Изменения в nginx 0.7.49                                          06.04.2009
1684     *) Исправление: при использовании переменных $arg_... в рабочем процессе
1685        мог произойти segmentation fault; ошибка появилась в 0.7.48.
1688 Изменения в nginx 0.7.48                                          06.04.2009
1690     *) Добавление: директива proxy_cache_key.
1692     *) Исправление: теперь nginx учитывает при кэшировании строки
1693        "X-Accel-Expires", "Expires" и "Cache-Control" в заголовке ответа
1694        бэкенда.
1696     *) Исправление: теперь nginx кэширует только ответы на запросы GET.
1698     *) Исправление: директива fastcgi_cache_key не наследовалась.
1700     *) Исправление: переменные $arg_... не работали с SSI-подзапросами.
1701        Спасибо Максиму Дунину.
1703     *) Исправление: nginx не собирался с библиотекой uclibc.
1704        Спасибо Timothy Redaelli.
1706     *) Исправление: nginx не собирался на OpenBSD; ошибка появилась
1707        в 0.7.46.
1710 Изменения в nginx 0.7.47                                          01.04.2009
1712     *) Исправление: nginx не собирался на FreeBSD 6 и более ранних версиях;
1713        ошибка появилась в 0.7.46.
1715     *) Исправление: nginx не собирался на MacOSX; ошибка появилась в 0.7.46.
1717     *) Исправление: если использовался параметр max_size, то cache manager
1718        мог удалить весь кэш; ошибка появилась в 0.7.46.
1720     *) Изменение: в рабочем процессе мог произойти segmentation fault, если
1721        директивы proxy_cache/fastcgi_cache и proxy_cache_valid/
1722        fastcgi_cache_valid не были заданы на одном уровне; ошибка появилась
1723        в 0.7.46.
1725     *) Исправление: в рабочем процессе мог произойти segmentation fault при
1726        перенаправлении запроса проксированному или FastCGI-серверу с помощью
1727        error_page или try_files; ошибка появилась в 0.7.44.
1730 Изменения в nginx 0.7.46                                          30.03.2009
1732     *) Исправление: архив предыдущего релиза был неверным.
1735 Изменения в nginx 0.7.45                                          30.03.2009
1737     *) Изменение: теперь директивы proxy_cache и proxy_cache_valid можно
1738        задавать на разных уровнях.
1740     *) Изменение: параметр clean_time в директиве proxy_cache_path удалён.
1742     *) Добавление: параметр max_size в директиве proxy_cache_path.
1744     *) Добавление: предварительная поддержка кэширования в модуле
1745        ngx_http_fastcgi_module.
1747     *) Добавление: теперь при ошибках выделения в разделяемой памяти в логе
1748        указываются названия директивы и зоны.
1750     *) Исправление: директива "add_header last-modified ''" не удаляла в
1751        заголовке ответа строку "Last-Modified"; ошибка появилась в 0.7.44.
1753     *) Исправление: в директиве auth_basic_user_file не работал
1754        относительный путь, заданный строкой без переменных; ошибка появилась
1755        в 0.7.44.
1756        Спасибо Jerome Loyet.
1758     *) Исправление: в директиве alias, заданной переменными без ссылок на
1759        выделения в регулярных выражениях; ошибка появилась в 0.7.42.
1762 Изменения в nginx 0.7.44                                          23.03.2009
1764     *) Добавление: предварительная поддержка кэширования в модуле
1765        ngx_http_proxy_module.
1767     *) Добавление: параметр --with-pcre в configure.
1769     *) Добавление: теперь директива try_files может быть использована на
1770        уровне server.
1772     *) Исправление: директива try_files неправильно обрабатывала строку
1773        запроса в последнем параметре.
1775     *) Исправление: директива try_files могла неверно тестировать каталоги.
1777     *) Исправление: если для пары адрес:порт описан только один сервер, то
1778        выделения в регулярных выражениях в директиве server_name не
1779        работали.
1782 Изменения в nginx 0.7.43                                          18.03.2009
1784     *) Исправление: запрос обрабатывался неверно, если директива root
1785        использовала переменные; ошибка появилась в 0.7.42.
1787     *) Исправление: если сервер слушал на адресах типа "*", то значение
1788        переменной $server_addr было "0.0.0.0"; ошибка появилась в 0.7.36.
1791 Изменения в nginx 0.7.42                                          16.03.2009
1793     *) Изменение: ошибка "Invalid argument", возвращаемая
1794        setsockopt(TCP_NODELAY) на Solaris, теперь игнорируется.
1796     *) Изменение: при отсутствии файла, указанного в директиве
1797        auth_basic_user_file, теперь возвращается ошибка 403 вместо 500.
1799     *) Добавление: директива auth_basic_user_file поддерживает переменные.
1800        Спасибо Кириллу Коринскому.
1802     *) Добавление: директива listen поддерживает параметр ipv6only.
1803        Спасибо Zhang Hua.
1805     *) Исправление: в директиве alias со ссылками на выделения в регулярных
1806        выражениях; ошибка появилась в 0.7.40.
1808     *) Исправление: совместимость с Tru64 UNIX.
1809        Спасибо Dustin Marquess.
1811     *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась
1812        в 0.7.41.
1815 Изменения в nginx 0.7.41                                          11.03.2009
1817     *) Исправление: в рабочем процессе мог произойти segmentation fault,
1818        если в server_name или location были выделения в регулярных
1819        выражениях; ошибка появилась в 0.7.40.
1820        Спасибо Владимиру Сопоту.
1823 Изменения в nginx 0.7.40                                          09.03.2009
1825     *) Добавление: директива location поддерживает выделения в регулярных
1826        выражениях.
1828     *) Добавление: директиву alias с ссылками на выделения в регулярных
1829        выражениях можно использовать внутри location'а, заданного регулярным
1830        выражением с выделениями.
1832     *) Добавление: директива server_name поддерживает выделения в регулярных
1833        выражениях.
1835     *) Изменение: модуль ngx_http_autoindex_module не показывал последний
1836        слэш для каталогов на файловой системе XFS; ошибка появилась в
1837        0.7.15.
1838        Спасибо Дмитрию Кузьменко.
1841 Изменения в nginx 0.7.39                                          02.03.2009
1843     *) Исправление: при включённом сжатии большие ответы с использованием
1844        SSI могли зависать; ошибка появилась в 0.7.28.
1845        Спасибо Артёму Бохану.
1847     *) Исправление: при использовании коротких статических вариантов в
1848        директиве try_files в рабочем процессе мог произойти segmentation
1849        fault.
1852 Изменения в nginx 0.7.38                                          23.02.2009
1854     *) Добавление: логгирование ошибок аутентификации.
1856     *) Исправление: имя/пароль, заданные в auth_basic_user_file,
1857        игнорировались после нечётного числа пустых строк.
1858        Спасибо Александру Загребину.
1860     *) Исправление: при использовании длинного пути в unix domain сокете в
1861        главном процессе происходил segmentation fault; ошибка появилась в
1862        0.7.36.
1865 Изменения в nginx 0.7.37                                          21.02.2009
1867     *) Исправление: директивы, использующие upstream'ы, не работали; ошибка
1868        появилась в 0.7.36.
1871 Изменения в nginx 0.7.36                                          21.02.2009
1873     *) Добавление: предварительная поддержка IPv6; директива listen модуля
1874        HTTP поддерживает IPv6.
1876     *) Исправление: переменная $ancient_browser не работала для браузеров,
1877        заданных директивами modern_browser.
1880 Изменения в nginx 0.7.35                                          16.02.2009
1882     *) Исправление: директива ssl_engine не использовала SSL-акселератор для
1883        асимметричных шифров.
1884        Спасибо Marcin Gozdalik.
1886     *) Исправление: директива try_files выставляла MIME-type, исходя из
1887        расширения первоначального запроса.
1889     *) Исправление: в директивах server_name, valid_referers и map
1890        неправильно обрабатывались имена вида "*domain.tld", если
1891        использовались маски вида ".domain.tld" и ".subdomain.domain.tld";
1892        ошибка появилась в 0.7.9.
1895 Изменения в nginx 0.7.34                                          10.02.2009
1897     *) Добавление: параметр off в директиве if_modified_since.
1899     *) Добавление: теперь после команды XCLIENT nginx посылает команду
1900        HELO/EHLO.
1901        Спасибо Максиму Дунину.
1903     *) Добавление: поддержка Microsoft-специфичного режима
1904        "AUTH LOGIN with User Name" в почтовом прокси-сервере.
1905        Спасибо Максиму Дунину.
1907     *) Исправление: в директиве rewrite, возвращающей редирект, старые
1908        аргументы присоединялись к новым через символ "?" вместо "&";
1909        ошибка появилась в 0.1.18.
1910        Спасибо Максиму Дунину.
1912     *) Исправление: nginx не собирался на AIX.
1915 Изменения в nginx 0.7.33                                          02.02.2009
1917     *) Исправление: если на запрос с телом возвращался редирект, то ответ
1918        мог быть двойным при использовании методов epoll или rtsig.
1919        Спасибо Eden Li.
1921     *) Исправление: для некоторых типов редиректов в переменной
1922        $sent_http_location было пустое значение.
1924     *) Исправление: при использовании директивы resolver в SMTP
1925        прокси-сервере в рабочем процессе мог произойти segmentation fault.
1928 Изменения в nginx 0.7.32                                          26.01.2009
1930     *) Добавление: теперь в директиве try_files можно явно указать проверку
1931        каталога.
1933     *) Исправление: fastcgi_store не всегда сохранял файлы.
1935     *) Исправление: в гео-диапазонах.
1937     *) Исправление: ошибки выделения больших блоков в разделяемой памяти,
1938        если nginx был собран без отладки.
1939        Спасибо Андрею Квасову.
1942 Изменения в nginx 0.7.31                                          19.01.2009
1944     *) Изменение: теперь директива try_files проверяет только файлы,
1945        игнорируя каталоги.
1947     *) Добавление: директива fastcgi_split_path_info.
1949     *) Исправления в поддержке строки "Expect" в заголовке запроса.
1951     *) Исправления в гео-диапазонах.
1953     *) Исправление: при отсутствии ответа ngx_http_memcached_module
1954        возвращал в теле ответа строку "END" вместо 404-ой страницы по
1955        умолчанию; ошибка появилась в 0.7.18.
1956        Спасибо Максиму Дунину.
1958     *) Исправление: при проксировании SMPT nginx выдавал сообщение
1959        "250 2.0.0 OK" вместо "235 2.0.0 OK"; ошибка появилась в 0.7.22.
1960        Спасибо Максиму Дунину.
1963 Изменения в nginx 0.7.30                                          24.12.2008
1965     *) Исправление: в рабочем процессе происходил segmentation fault, если в
1966        директивах fastcgi_pass или proxy_pass использовались переменные и
1967        имя хоста должно было резолвиться; ошибка появилась в 0.7.29.
1970 Изменения в nginx 0.7.29                                          24.12.2008
1972     *) Исправление: директивы fastcgi_pass и proxy_pass не поддерживали
1973        переменные при использовании unix domain сокетов.
1975     *) Исправления в обработке подзапросов; ошибки появились в 0.7.25.
1977     *) Исправление: ответ "100 Continue" выдавался для запросов версии
1978        HTTP/1.0;
1979        Спасибо Максиму Дунину.
1981     *) Исправление: в выделении памяти в модуле ngx_http_gzip_filter_module
1982        под Cygwin.
1985 Изменения в nginx 0.7.28                                          22.12.2008
1987     *) Изменение: в выделении памяти в модуле ngx_http_gzip_filter_module.
1989     *) Изменение: значения по умолчанию для директивы gzip_buffers изменены
1990        с 4 4k/8k на 32 4k или 16 8k.
1993 Изменения в nginx 0.7.27                                          15.12.2008
1995     *) Добавление: директива try_files.
1997     *) Добавление: директива fastcgi_pass поддерживает переменные.
1999     *) Добавление: теперь директива geo может брать адрес из переменной.
2000        Спасибо Андрею Нигматулину.
2002     *) Добавление: теперь модификатор location'а можно указывать без пробела
2003        перед названием.
2005     *) Добавление: переменная $upstream_response_length.
2007     *) Исправление: теперь директива add_header не добавляет пустое
2008        значение.
2010     *) Исправление: при запросе файла нулевой длины nginx закрывал
2011        соединение, ничего не передав; ошибка появилась в 0.7.25.
2013     *) Исправление: метод MOVE не мог перемещать файл в несуществующий
2014        каталог.
2016     *) Исправление: если в сервере не был описан ни один именованный
2017        location, но такой location использовался в директиве error_page, то
2018        в рабочем процессе происходил segmentation fault.
2019        Спасибо Сергею Боченкову.
2022 Изменения в nginx 0.7.26                                          08.12.2008
2024     *) Исправление: в обработке подзапросов; ошибка появилась в 0.7.25.
2027 Изменения в nginx 0.7.25                                          08.12.2008
2029     *) Изменение: в обработке подзапросов.
2031     *) Изменение: теперь разрешаются POST'ы без строки "Content-Length" в
2032        заголовке запроса.
2034     *) Исправление: теперь директивы limit_req и limit_conn указывают
2035        причину запрета запроса.
2037     *) Исправление: в параметре delete директивы geo.
2040 Изменения в nginx 0.7.24                                          01.12.2008
2042     *) Добавление: директива if_modified_since.
2044     *) Исправление: nginx не обрабатывал ответ FastCGI-сервера, если перед
2045        ответом сервер передавал много сообщений в stderr.
2047     *) Исправление: переменные "$cookie_..." не работали в SSI and в
2048        перловом модуле.
2051 Изменения в nginx 0.7.23                                          27.11.2008
2053     *) Добавление: параметры delete и ranges в директиве geo.
2055     *) Добавление: ускорение загрузки geo-базы с большим числом значений.
2057     *) Добавление: уменьшение памяти, необходимой для загрузки geo-базы.
2060 Изменения в nginx 0.7.22                                          20.11.2008
2062     *) Добавление: параметр none в директиве smtp_auth.
2063        Спасибо Максиму Дунину.
2065     *) Добавление: переменные "$cookie_...".
2067     *) Исправление: директива directio не работала с файловой системой XFS.
2069     *) Исправление: resolver не понимал большие DNS-ответы.
2070        Спасибо Zyb.
2073 Изменения в nginx 0.7.21                                          11.11.2008
2075     *) Изменения в модуле ngx_http_limit_req_module.
2077     *) Добавление: поддержка EXSLT в модуле ngx_http_xslt_module.
2078        Спасибо Денису Латыпову.
2080     *) Изменение: совместимость с glibc 2.3.
2081        Спасибо Eric Benson и Максиму Дунину.
2083     *) Исправление: nginx не запускался на MacOSX 10.4 и более ранних;
2084        ошибка появилась в 0.7.6.
2087 Изменения в nginx 0.7.20                                          10.11.2008
2089     *) Изменения в модуле ngx_http_gzip_filter_module.
2091     *) Добавление: модуль ngx_http_limit_req_module.
2093     *) Исправление: на платформах sparc и ppc рабочие процессы могли
2094        выходить по сигналу SIGBUS; ошибка появилась в 0.7.3.
2095        Спасибо Максиму Дунину.
2097     *) Исправление: директивы вида "proxy_pass http://host/some:uri" не
2098        работали; ошибка появилась в 0.7.12.
2100     *) Исправление: при использовании HTTPS запросы могли завершаться с
2101        ошибкой "bad write retry".
2103     *) Исправление: модуль ngx_http_secure_link_module не работал внутри
2104        location'ов с именами меньше 3 символов.
2106     *) Исправление: переменная $server_addr могла не иметь значения.
2109 Изменения в nginx 0.7.19                                          13.10.2008
2111     *) Исправление: обновление номера версии.
2114 Изменения в nginx 0.7.18                                          13.10.2008
2116     *) Изменение: директива underscores_in_headers; теперь nginx по
2117        умолчанию не разрешает подчёркивания в именах строк в заголовке
2118        запроса клиента.
2120     *) Добавление: модуль ngx_http_secure_link_module.
2122     *) Добавление: директива real_ip_header поддерживает любой заголовок.
2124     *) Добавление: директива log_subrequest.
2126     *) Добавление: переменная $realpath_root.
2128     *) Добавление: параметры http_502 и http_504 в директиве
2129        proxy_next_upstream.
2131     *) Исправление: параметр http_503 в директивах proxy_next_upstream или
2132        fastcgi_next_upstream не работал.
2134     *) Исправление: nginx мог выдавать строку "Transfer-Encoding: chunked"
2135        для запросов HEAD.
2137     *) Исправление: теперь accept-лимит зависит от числа worker_connections.
2140 Изменения в nginx 0.7.17                                          15.09.2008
2142     *) Добавление: директива directio теперь работает на Linux.
2144     *) Добавление: переменная $pid.
2146     *) Исправление: оптимизация directio, появившаяся в 0.7.15, не работала
2147        при использовании open_file_cache.
2149     *) Исправление: access_log с переменными не работал на Linux; ошибка
2150        появилась в 0.7.7.
2152     *) Исправление: модуль ngx_http_charset_module не понимал название
2153        кодировки в кавычках, полученное от бэкенда.
2156 Изменения в nginx 0.7.16                                          08.09.2008
2158     *) Исправление: nginx не собирался на 64-битных платформах; ошибка
2159        появилась в 0.7.15.
2162 Изменения в nginx 0.7.15                                          08.09.2008
2164     *) Добавление: модуль ngx_http_random_index_module.
2166     *) Добавление: директива directio оптимизирована для запросов файлов,
2167        начинающихся с произвольной позиции.
2169     *) Добавление: директива directio при необходимости запрещает
2170        использование sendfile.
2172     *) Добавление: теперь nginx разрешает подчёркивания в именах строк в
2173        заголовке запроса клиента.
2176 Изменения в nginx 0.7.14                                          01.09.2008
2178     *) Изменение: теперь директивы ssl_certificate и ssl_certificate_key не
2179        имеют значений по умолчанию.
2181     *) Добавление: директива listen поддерживает параметр ssl.
2183     *) Добавление: теперь при переконфигурации nginx учитывает изменение
2184        временной зоны на FreeBSD и Linux.
2186     *) Исправление: параметры директивы listen, такие как backlog, rcvbuf и
2187        прочие, не устанавливались, если сервером по умолчанию был не первый
2188        сервер.
2190     *) Исправление: при использовании в качестве аргументов части URI,
2191        выделенного с помощью директивы rewrite, эти аргументы не
2192        экранировались.
2194     *) Исправление: улучшения тестирования правильности конфигурационного
2195        файла.
2198 Изменения в nginx 0.7.13                                          26.08.2008
2200     *) Исправление: nginx не собирался на Linux и Solaris; ошибка появилась
2201        в 0.7.12.
2204 Изменения в nginx 0.7.12                                          26.08.2008
2206     *) Добавление: директива server_name поддерживает пустое имя "".
2208     *) Добавление: директива gzip_disable поддерживает специальную маску
2209        msie6.
2211     *) Исправление: при использовании параметра max_fails=0 в upstream'е с
2212        несколькими серверами рабочий процесс выходил по сигналу SIGFPE.
2213        Спасибо Максиму Дунину.
2215     *) Исправление: при перенаправлении запроса с помощью директивы
2216        error_page терялось тело запроса.
2218     *) Исправление: при перенаправлении запроса с методом HEAD с помощью
2219        директивы error_page возвращался полный ответ.
2221     *) Исправление: метод $r->header_in() не возвращал значения строк
2222        "Host", "User-Agent", и "Connection" из заголовка запроса; ошибка
2223        появилась в 0.7.0.
2226 Изменения в nginx 0.7.11                                          18.08.2008
2228     *) Изменение: теперь ngx_http_charset_module по умолчанию не работает
2229        MIME-типом text/css.
2231     *) Добавление: теперь nginx возвращает код 405 для метода POST при
2232        запросе статического файла, только если файл существует.
2234     *) Добавление: директива proxy_ssl_session_reuse.
2236     *) Исправление: после перенаправления запроса с помощью
2237        "X-Accel-Redirect" директива proxy_pass без URI могла использовать
2238        оригинальный запрос.
2240     *) Исправление: если у каталога были права доступа только на поиск
2241        файлов и первый индексный файл отсутствовал, то nginx возвращал
2242        ошибку 500.
2244     *) Исправление: ошибок во вложенных location'ах; ошибки появились в
2245        0.7.1.
2248 Изменения в nginx 0.7.10                                          13.08.2008
2250     *) Исправление: ошибок в директивах addition_types, charset_types,
2251        gzip_types, ssi_types, sub_filter_types и xslt_types; ошибки
2252        появились в 0.7.9.
2254     *) Исправление: рекурсивной error_page для 500 ошибки.
2256     *) Исправление: теперь модуль ngx_http_realip_module устанавливает адрес
2257        не для всего keepalive соединения, а для каждого запроса по этому
2258        соединению.
2261 Изменения в nginx 0.7.9                                           12.08.2008
2263     *) Изменение: теперь ngx_http_charset_module по умолчанию работает со
2264        следующими MIME-типами: text/html, text/css, text/xml, text/plain,
2265        text/vnd.wap.wml, application/x-javascript и application/rss+xml.
2267     *) Добавление: директивы charset_types и addition_types.
2269     *) Добавление: теперь директивы gzip_types, ssi_types и sub_filter_types
2270        используют хэш.
2272     *) Добавление: модуль ngx_cpp_test_module.
2274     *) Добавление: директива expires поддерживает суточное время.
2276     *) Добавление: улучшения и исправления в модуле ngx_http_xslt_module.
2277        Спасибо Денису Латыпову и Максиму Дунину.
2279     *) Исправление: директива log_not_found не работала при поиске индексных
2280        файлов.
2282     *) Исправление: HTTPS-соединения могли зависнуть, если использовались
2283        методы kqueue, epoll, rtsig или eventport; ошибка появилась в 0.7.7.
2285     *) Исправление: если в директивах server_name, valid_referers и map
2286        использовалась маска вида "*.domain.tld" и при этом полное имя вида
2287        "domain.tld" не было описано, то это имя попадало под маску; ошибка
2288        появилась в 0.3.18.
2291 Изменения в nginx 0.7.8                                           04.08.2008
2293     *) Добавление: модуль ngx_http_xslt_module.
2295     *) Добавление: переменные "$arg_...".
2297     *) Добавление: поддержка directio в Solaris.
2298        Спасибо Ivan Debnar.
2300     *) Исправление: теперь, если FastCGI-сервер присылает строку "Location"
2301        в заголовке ответа без строки статуса, то nginx использует код
2302        статуса 302.
2303        Спасибо Максиму Дунину.
2306 Изменения в nginx 0.7.7                                           30.07.2008
2308     *) Изменение: теперь ошибка EAGAIN при вызове connect() не считается
2309        временной.
2311     *) Изменение: значением переменной $ssl_client_cert теперь является
2312        сертификат, перед каждой строкой которого, кроме первой, вставляется
2313        символ табуляции; неизменённый сертификат доступен через переменную
2314        $ssl_client_raw_cert.
2316     *) Добавление: параметр ask директивы ssl_verify_client.
2318     *) Добавление: улучшения в обработке byte-range.
2319        Спасибо Максиму Дунину.
2321     *) Добавление: директива directio.
2322        Спасибо Jiang Hong.
2324     *) Добавление: поддержка sendfile() в MacOSX 10.5.
2326     *) Исправление: в MacOSX и Cygwin при проверке location'ов теперь
2327        делается сравнение без учёта регистра символов; однако, сравнение
2328        ограничено только однобайтными locale'ями.
2330     *) Исправление: соединения почтового прокси-сервера зависали в режиме
2331        SSL, если использовались методы select, poll или /dev/poll.
2333     *) Исправление: ошибки при использовании кодировки UTF-8 в
2334        ngx_http_autoindex_module.
2337 Изменения в nginx 0.7.6                                           07.07.2008
2339     *) Исправление: теперь при использовании переменных в директиве
2340        access_log всегда проверяется существовании root'а для запроса.
2342     *) Исправление: модуль ngx_http_flv_module не поддерживал несколько
2343        значений в аргументах запроса.
2346 Изменения в nginx 0.7.5                                           01.07.2008
2348     *) Исправления в поддержке переменных в директиве access_log; ошибки
2349        появились в 0.7.4.
2351     *) Исправление: nginx не собирался с параметром
2352        --without-http_gzip_module; ошибка появилась в 0.7.3.
2353        Спасибо Кириллу Коринскому.
2355     *) Исправление: при совместном использовании sub_filter и SSI ответы
2356        могли передаваться неверно.
2359 Изменения в nginx 0.7.4                                           30.06.2008
2361     *) Добавление: директива access_log поддерживает переменные.
2363     *) Добавление: директива open_log_file_cache.
2365     *) Добавление: ключ -g.
2367     *) Добавление: поддержка строки "Expect" в заголовке запроса.
2369     *) Исправление: большие включения в SSI могли передавались не полностью.
2372 Изменения в nginx 0.7.3                                           23.06.2008
2374     *) Изменение: MIME-тип для расширения rss изменён на
2375        "application/rss+xml".
2377     *) Изменение: теперь директива "gzip_vary on" выдаёт строку
2378        "Vary: Accept-Encoding" в заголовке ответа и для несжатых ответов.
2380     *) Добавление: теперь при использовании протокола "https://" в директиве
2381        rewrite автоматически делается редирект.
2383     *) Исправление: директива proxy_pass не работала с протоколом HTTPS;
2384        ошибка появилась в 0.6.9.
2387 Изменения в nginx 0.7.2                                           16.06.2008
2389     *) Добавление: теперь nginx поддерживает шифры с обменом EDH-ключами.
2391     *) Добавление: директива ssl_dhparam.
2393     *) Добавление: переменная $ssl_client_cert.
2394        Спасибо Manlio Perillo.
2396     *) Исправление: после изменения URI с помощью директивы rewrite nginx не
2397        искал новый location; ошибка появилась в 0.7.1.
2398        Спасибо Максиму Дунину.
2400     *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась
2401        в 0.7.1.
2403     *) Исправление: при редиректе запроса к каталогу с добавлением слэша
2404        nginx не добавлял аргументы из оригинального запроса.
2407 Изменения в nginx 0.7.1                                           26.05.2008
2409     *) Изменение: теперь поиск location'а делается с помощью дерева.
2411     *) Изменение: директива optimize_server_names упразднена в связи с
2412        появлением директивы server_name_in_redirect.
2414     *) Изменение: некоторые давно устаревшие директивы больше не
2415        поддерживаются.
2417     *) Изменение: параметр "none" в директиве ssl_session_cache; теперь этот
2418        параметр используется по умолчанию.
2419        Спасибо Rob Mueller.
2421     *) Исправление: рабочие процессы могли не реагировать на сигналы
2422        переконфигурации и ротации логов.
2424     *) Исправление: nginx не собирался на последних Fedora 9 Linux.
2425        Спасибо Roxis.
2428 Изменения в nginx 0.7.0                                           19.05.2008
2430     *) Изменение: теперь символы 0x00-0x1F, '"' и '\' в access_log
2431        записываются в виде \xXX.
2432        Спасибо Максиму Дунину.
2434     *) Изменение: теперь nginx разрешает несколько строк "Host" в заголовке
2435        запроса.
2437     *) Добавление: директива expires поддерживает флаг modified.
2439     *) Добавление: переменные $uid_got и $uid_set можно использовать на
2440        любой стадии обработки запроса.
2442     *) Добавление: переменная $hostname.
2443        Спасибо Андрею Нигматулину.
2445     *) Добавление: поддержка DESTDIR.
2446        Спасибо Todd A. Fisher и Andras Voroskoi.
2448     *) Исправление: при использовании keepalive на Linux в рабочем процессе
2449        мог произойти segmentation fault.
2452 Изменения в nginx 0.6.31                                          12.05.2008
2454     *) Исправление: nginx не обрабатывал ответ FastCGI-сервера, если строка
2455        заголовка ответ была в конце записи FastCGI; ошибка появилась в
2456        0.6.2.
2457        Спасибо Сергею Серову.
2459     *) Исправление: при удалении файла и использовании директивы
2460        open_file_cache_errors off в рабочем процессе мог произойти
2461        segmentation fault.
2464 Изменения в nginx 0.6.30                                          29.04.2008
2466     *) Изменение: теперь, если маске, заданной в директиве include, не
2467        соответствует ни один файл, то nginx не выдаёт ошибку.
2469     *) Добавление: теперь время в директивах можно задавать без пробела,
2470        например, "1h50m".
2472     *) Исправление: утечек памяти, если директива ssl_verify_client имела
2473        значение on.
2474        Спасибо Chavelle Vincent.
2476     *) Исправление: директива sub_filter могла вставлять заменяемый текст в
2477        вывод.
2479     *) Исправление: директива error_page не воспринимала параметры в
2480        перенаправляемом URI.
2482     *) Исправление: теперь при сборке с Cygwin nginx всегда открывает файлы
2483        в бинарном режиме.
2485     *) Исправление: nginx не собирался под OpenBSD; ошибка появилась в
2486        0.6.15.
2489 Изменения в nginx 0.6.29                                          18.03.2008
2491     *) Добавление: модуль ngx_google_perftools_module.
2493     *) Исправление: модуль ngx_http_perl_module не собирался на 64-битных
2494        платформах; ошибка появилась в 0.6.27.
2497 Изменения в nginx 0.6.28                                          13.03.2008
2499     *) Исправление: метод rtsig не собирался; ошибка появилась в 0.6.27.
2502 Изменения в nginx 0.6.27                                          12.03.2008
2504     *) Изменение: теперь на Linux 2.6.18+ по умолчанию не собирается метод
2505        rtsig.
2507     *) Изменение: теперь при перенаправлении запроса в именованный location
2508        с помощью директивы error_page метод запроса не изменяется.
2510     *) Добавление: директивы resolver и resolver_timeout в SMTP
2511        прокси-сервере.
2513     *) Добавление: директива post_action поддерживает именованные
2514        location'ы.
2516     *) Исправление: при перенаправлении запроса из location'а c обработчиком
2517        proxy, FastCGI или memcached в именованный location со статическим
2518        обработчиком в рабочем процессе происходил segmentation fault.
2520     *) Исправление: браузеры не повторяли SSL handshake, если при первом
2521        handshake не оказалось правильного клиентского сертификата.
2522        Спасибо Александру Инюхину.
2524     *) Исправление: при перенаправлении ошибок 495-497 с помощью директивы
2525        error_page без изменения кода ошибки nginx пытался выделить очень
2526        много памяти.
2528     *) Исправление: утечки памяти в долгоживущих небуфферизированных
2529        соединениях.
2531     *) Исправление: утечки памяти в resolver'е.
2533     *) Исправление: при перенаправлении запроса из location'а c обработчиком
2534        proxy в другой location с обработчиком proxy в рабочем процессе
2535        происходил segmentation fault.
2537     *) Исправление: ошибки в кэшировании переменных $proxy_host и
2538        $proxy_port.
2539        Спасибо Сергею Боченкову.
2541     *) Исправление: директива proxy_pass с переменными использовала порт,
2542        описанной в другой директиве proxy_pass без переменных, но с таким же
2543        именем хоста.
2544        Спасибо Сергею Боченкову.
2546     *) Исправление: во время переконфигурации на некоторых 64-битном
2547        платформах в лог записывался alert "sendmsg() failed (9: Bad file
2548        descriptor)".
2550     *) Исправление: при повторном использовании в SSI пустого block'а в
2551        качестве заглушки в рабочем процессе происходил segmentation fault.
2553     *) Исправление: ошибки при копировании части URI, содержащего
2554        экранированные символы, в аргументы.
2557 Изменения в nginx 0.6.26                                          11.02.2008
2559     *) Исправление: директивы proxy_store и fastcgi_store не проверяли длину
2560        ответа.
2562     *) Исправление: при использовании большого значения в директиве expires
2563        в рабочем процессе происходил segmentation fault.
2564        Спасибо Joaquin Cuenca Abela.
2566     *) Исправление: nginx неверно определял длину строки кэша на Pentium 4.
2567        Спасибо Геннадию Махомеду.
2569     *) Исправление: в проксированных подзапросах и подзапросах к
2570        FastCGI-серверу вместо метода GET использовался оригинальный метод
2571        клиента.
2573     *) Исправление: утечки сокетов в режиме HTTPS при использовании
2574        отложенного accept'а.
2575        Спасибо Ben Maurer.
2577     *) Исправление: nginx выдавал ошибочное сообщение "SSL_shutdown() failed
2578        (SSL: )"; ошибка появилась в 0.6.23.
2580     *) Исправление: при использовании HTTPS запросы могли завершаться с
2581        ошибкой "bad write retry"; ошибка появилась в 0.6.23.
2584 Изменения в nginx 0.6.25                                          08.01.2008
2586     *) Изменение: вместо специального параметра "*" в директиве server_name
2587        теперь используется директива server_name_in_redirect.
2589     *) Изменение: в качестве основного имени в директиве server_name теперь
2590        можно использовать имена с масками и регулярными выражениями.
2592     *) Изменение: директива satisfy_any заменена директивой satisfy.
2594     *) Изменение: после переконфигурации старые рабочие процесс могли сильно
2595        нагружать процессор при запуске под Linux OpenVZ.
2597     *) Добавление: директива min_delete_depth.
2599     *) Исправление: методы COPY и MOVE не работали с одиночными файлами.
2601     *) Исправление: модуль ngx_http_gzip_static_module не позволял работать
2602        модулю ngx_http_dav_module; ошибка появилась в 0.6.23.
2604     *) Исправление: утечки сокетов в режиме HTTPS при использовании
2605        отложенного accept'а.
2606        Спасибо Ben Maurer.
2608     *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась
2609        в 0.6.23.
2612 Изменения в nginx 0.6.24                                          27.12.2007
2614     *) Исправление: при использовании HTTPS в рабочем процессе мог произойти
2615        segmentation fault; ошибка появилась в 0.6.23.
2618 Изменения в nginx 0.6.23                                          27.12.2007
2620     *) Изменение: параметр "off" в директиве ssl_session_cache; теперь этот
2621        параметр используется по умолчанию.
2623     *) Изменение: директива open_file_cache_retest переименована в
2624        open_file_cache_valid.
2626     *) Добавление: директива open_file_cache_min_uses.
2628     *) Добавление: модуль ngx_http_gzip_static_module.
2630     *) Добавление: директива gzip_disable.
2632     *) Добавление: директиву memcached_pass можно использовать внутри блока
2633        if.
2635     *) Исправление: если внутри одного location'а использовались директивы
2636        "memcached_pass" и "if", то в рабочем процессе происходил
2637        segmentation fault.
2639     *) Исправление: если при использовании директивы satisfy_any on" были
2640        заданы директивы не всех модулей доступа, то заданные директивы не
2641        проверялись.
2643     *) Исправление: параметры, заданные регулярным выражением в директиве
2644        valid_referers, не наследовалась с предыдущего уровня.
2646     *) Исправление: директива post_action не работала, если запрос
2647        завершался с кодом 499.
2649     *) Исправление: оптимизация использования 16K буфера для SSL-соединения.
2650        Спасибо Ben Maurer.
2652     *) Исправление: STARTTLS в режиме SMTP не работал.
2653        Спасибо Олегу Мотиенко.
2655     *) Исправление: при использовании HTTPS запросы могли завершаться с
2656        ошибкой "bad write retry"; ошибка появилась в 0.5.13.
2659 Изменения в nginx 0.6.22                                          19.12.2007
2661     *) Изменение: теперь все методы модуля ngx_http_perl_module возвращают
2662        значения, скопированные в память, выделенную perl'ом.
2664     *) Исправление: если nginx был собран с модулем ngx_http_perl_module,
2665        использовался perl до версии 5.8.6 и perl поддерживал потоки, то во
2666        время переконфигурации основной процесс аварийно выходил; ошибка
2667        появилась в 0.5.9.
2668        Спасибо Борису Жмурову.
2670     *) Исправление: в методы модуля ngx_http_perl_module могли передаваться
2671        неверные результаты выделения в регулярных выражениях.
2673     *) Исправление: если метод $r->has_request_body() вызывался для запроса,
2674        у которого небольшое тело запроса было уже полностью получено, то в
2675        рабочем процессе происходил segmentation fault.
2677     *) Исправление: large_client_header_buffers не освобождались перед
2678        переходом в состояние keep-alive.
2679        Спасибо Олександру Штепе.
2681     *) Исправление: в переменной $upstream_addr не записывался последний
2682        адрес; ошибка появилась в 0.6.18.
2684     *) Исправление: директива fastcgi_catch_stderr не возвращала ошибку;
2685        теперь она возвращает ошибку 502, которую можно направить на
2686        следующий сервер с помощью "fastcgi_next_upstream invalid_header".
2688     *) Исправление: при использовании директивы fastcgi_catch_stderr в
2689        основном процессе происходил segmentation fault; ошибка появилась в
2690        0.6.10.
2691        Спасибо Manlio Perillo.
2694 Изменения в nginx 0.6.21                                          03.12.2007
2696     *) Изменение: если в значениях переменных директивы proxy_pass
2697        используются только IP-адреса, то указывать resolver не нужно.
2699     *) Исправление: при использовании директивы proxy_pass c URI-частью в
2700        рабочем процессе мог произойти segmentation fault; ошибка появилась в
2701        0.6.19.
2703     *) Исправление: если resolver использовался на платформах, не
2704        поддерживающих метод kqueue, то nginx выдавал alert "name is out of
2705        response".
2706        Спасибо Андрею Нигматулину.
2708     *) Исправление: При использовании переменной $server_protocol в
2709        FastCGI-параметрах и запросе, длина которого была близка к значению
2710        директивы client_header_buffer_size, nginx выдавал alert "fastcgi:
2711        the request record is too big".
2713     *) Исправление: при обычном запросе версии HTTP/0.9 к HTTPS серверу
2714        nginx возвращал обычный ответ.
2717 Изменения в nginx 0.6.20                                          28.11.2007
2719     *) Исправление: при использовании директивы proxy_pass c URI-частью в
2720        рабочем процессе мог произойти segmentation fault; ошибка появилась в
2721        0.6.19.
2724 Изменения в nginx 0.6.19                                          27.11.2007
2726     *) Исправление: версия 0.6.18 не собиралась.
2729 Изменения в nginx 0.6.18                                          27.11.2007
2731     *) Изменение: теперь модуль ngx_http_userid_module в поле куки с номером
2732        процесса добавляет микросекунды на время старта.
2734     *) Изменение: в error_log теперь записывается полная строка запроса
2735        вместо только URI.
2737     *) Добавление: директива proxy_pass поддерживает переменные.
2739     *) Добавление: директивы resolver и resolver_timeout.
2741     *) Добавление: теперь директива "add_header last-modified ''" удаляет в
2742        заголовке ответа строку "Last-Modified".
2744     *) Исправление: директива limit_rate не позволяла передавать на полной
2745        скорости, даже если был указан очень большой лимит.
2748 Изменения в nginx 0.6.17                                          15.11.2007
2750     *) Добавление: поддержка строки "If-Range" в заголовке запроса.
2751        Спасибо Александру Инюхину.
2753     *) Исправление: при использовании директивы msie_refresh повторно
2754        экранировались уже экранированные символы; ошибка появилась в 0.6.4.
2756     *) Исправление: директива autoindex не работала при использовании "alias
2757        /".
2759     *) Исправление: при использовании подзапросов в рабочем процессе мог
2760        произойти segmentation fault.
2762     *) Исправление: при использовании SSL и gzip большие ответы могли
2763        передаваться не полностью.
2765     *) Исправление: если ответ проксированного сервера был версии HTTP/0.9,
2766        то переменная $status была равна 0.
2769 Изменения в nginx 0.6.16                                          29.10.2007
2771     *) Изменение: теперь на Linux используется uname(2) вместо procfs.
2772        Спасибо Илье Новикову.
2774     *) Исправление: если в директиве error_page использовался символ "?", то
2775        он экранировался при проксировании запроса; ошибка появилась в
2776        0.6.11.
2778     *) Исправление: совместимость с mget.
2781 Изменения в nginx 0.6.15                                          22.10.2007
2783     *) Добавление: совместимость с Cygwin.
2784        Спасибо Владимиру Кутакову.
2786     *) Добавление: директива merge_slashes.
2788     *) Добавление: директива gzip_vary.
2790     *) Добавление: директива server_tokens.
2792     *) Исправление: nginx не раскодировал URI в команде SSI include.
2794     *) Исправление: при использовании переменной в директивах charset или
2795        source_charset на старте или во время переконфигурации происходил
2796        segmentation fault,
2798     *) Исправление: nginx возвращал ошибку 400 на запросы вида
2799        "GET http://www.domain.com HTTP/1.0".
2800        Спасибо James Oakley.
2802     *) Исправление: после перенаправления запроса с телом запроса с помощью
2803        директивы error_page nginx пытался снова прочитать тело запроса;
2804        ошибка появилась в 0.6.7.
2806     *) Исправление: в рабочем процессе происходил segmentation fault, если у
2807        сервера, обрабатывающему запрос, не был явно определён server_name;
2808        ошибка появилась в 0.6.7.
2811 Изменения в nginx 0.6.14                                          15.10.2007
2813     *) Изменение: теперь по умолчанию команда SSI echo использует
2814        кодирование entity.
2816     *) Добавление: параметр encoding в команде SSI echo.
2818     *) Добавление: директиву access_log можно использовать внутри блока
2819        limit_except.
2821     *) Исправление: если все сервера апстрима оказывались недоступными, то
2822        до восстановления работоспособности у всех серверов вес становился
2823        равным одному; ошибка появилась в 0.6.6.
2825     *) Исправление: при использовании переменных $date_local и $date_gmt вне
2826        модуля ngx_http_ssi_filter_module в рабочем процессе происходил
2827        segmentation fault.
2829     *) Исправление: при использовании включённом отладочном логе в рабочем
2830        процессе мог произойти segmentation fault.
2831        Спасибо Андрею Нигматулину.
2833     *) Исправление: ngx_http_memcached_module не устанавливал
2834        $upstream_response_time.
2835        Спасибо Максиму Дунину.
2837     *) Исправление: рабочий процесс мог зациклиться при использовании
2838        memcached.
2840     *) Исправление: nginx распознавал параметры "close" и "keep-alive" в
2841        строке "Connection" в заголовке запроса только, если они были в
2842        нижнем регистре; ошибка появилась в 0.6.11.
2844     *) Исправление: sub_filter не работал с пустой строкой замены.
2846     *) Исправление: в парсинге sub_filter.
2849 Изменения в nginx 0.6.13                                          24.09.2007
2851     *) Исправление: nginx не закрывал файл каталога для запроса HEAD, если
2852        использовался autoindex
2853        Спасибо Arkadiusz Patyk.
2856 Изменения в nginx 0.6.12                                          21.09.2007
2858     *) Изменение: почтовый прокси-сервер разделён на три модуля: pop3, imap
2859        и smtp.
2861     *) Добавление: параметры конфигурации --without-mail_pop3_module,
2862        --without-mail_imap_module и --without-mail_smtp_module.
2864     *) Добавление: директивы smtp_greeting_delay и smtp_client_buffer модуля
2865        ngx_mail_smtp_module.
2867     *) Исправление: wildcard в конце имени сервера не работали; ошибка
2868        появилась в 0.6.9.
2870     *) Исправление: при использовании разделяемой библиотеки PCRE,
2871        расположенной в нестандартном месте, nginx не запускался на Solaris.
2873     *) Исправление: директивы proxy_hide_header и fastcgi_hide_header не
2874        скрывали строки заголовка ответа с именем больше 32 символов.
2875        Спасибо Manlio Perillo.
2878 Изменения в nginx 0.6.11                                          11.09.2007
2880     *) Исправление: счётчик активных соединений всегда рос при использовании
2881        почтового прокси-сервера.
2883     *) Исправление: если бэкенд возвращал только заголовок ответа при
2884        небуферизированном проксировании, то nginx закрывал соединение с
2885        бэкендом по таймауту.
2887     *) Исправление: nginx не поддерживал несколько строк "Connection" в
2888        заголовке запроса.
2890     *) Исправление: если в сервере апстрима был задан max_fails, то после
2891        первой же неудачной попытки вес сервера навсегда становился равным
2892        одному; ошибка появилась в 0.6.6.
2895 Изменения в nginx 0.6.10                                          03.09.2007
2897     *) Добавление: директивы open_file_cache, open_file_cache_retest и
2898        open_file_cache_errors.
2900     *) Исправление: утечки сокетов; ошибка появилась в 0.6.7.
2902     *) Исправление: В строку заголовка ответа "Content-Type", указанную в
2903        методе $r->send_http_header(), не добавлялась кодировка, указанная в
2904        директиве charset.
2906     *) Исправление: при использовании метода /dev/poll в рабочем процессе
2907        мог произойти segmentation fault.
2910 Изменения в nginx 0.6.9                                           28.08.2007
2912     *) Исправление: рабочий процесс мог зациклиться при использовании
2913        протокола HTTPS; ошибка появилась в 0.6.7.
2915     *) Исправление: если сервер слушал на двух адресах или портах, то nginx
2916        не запускался при использовании wildcard в конце имени сервера.
2918     *) Исправление: директива ip_hash могла неверно помечать сервера как
2919        нерабочие.
2921     *) Исправление: nginx не собирался на amd64; ошибка появилась в 0.6.8.
2924 Изменения в nginx 0.6.8                                           20.08.2007
2926     *) Изменение: теперь nginx пытается установить директивы
2927        worker_priority, worker_rlimit_nofile, worker_rlimit_core,
2928        worker_rlimit_sigpending без привилегий root'а.
2930     *) Изменение: теперь nginx экранирует символы пробела и "%" при передаче
2931        запроса серверу аутентификации почтового прокси-сервера.
2933     *) Изменение: теперь nginx экранирует символ "%" в переменной
2934        $memcached_key.
2936     *) Исправление: при указании относительного пути к конфигурационному
2937        файлу в качестве параметра ключа -c nginx определял путь относительно
2938        конфигурационного префикса; ошибка появилась в 0.6.6.
2940     *) Исправление: nginx не работал на FreeBSD/sparc64.
2943 Изменения в nginx 0.6.7                                           15.08.2007
2945     *) Изменение: теперь пути, указанные в директивах include,
2946        auth_basic_user_file, perl_modules, ssl_certificate,
2947        ssl_certificate_key и ssl_client_certificate, определяются
2948        относительно каталога конфигурационного файла nginx.conf, а не
2949        относительно префикса.
2951     *) Изменение: параметр --sysconfdir=PATH в configure упразднён.
2953     *) Изменение: для обновления на лету версий 0.1.x создан специальный
2954        сценарий make upgrade1.
2956     *) Добавление: директивы server_name и valid_referers поддерживают
2957        регулярные выражения.
2959     *) Добавление: директива server в блоке upstream поддерживает параметр
2960        backup.
2962     *) Добавление: модуль ngx_http_perl_module поддерживает метод
2963        $r->discard_request_body.
2965     *) Добавление: директива "add_header Last-Modified ..." меняет строку
2966        "Last-Modified" в заголовке ответа.
2968     *) Исправление: если на запрос с телом возвращался ответ с кодом HTTP
2969        отличным от 200, и после этого запроса соединение переходило в
2970        состояние keep-alive, то на следующий запрос nginx возвращал 400.
2972     *) Исправление: если в директиве auth_http был задан неправильный адрес,
2973        то в рабочем процессе происходил segmentation fault.
2975     *) Исправление: теперь по умолчанию nginx использует значение 511 для
2976        listen backlog на всех платформах, кроме FreeBSD.
2977        Спасибо Jiang Hong.
2979     *) Исправление: рабочий процесс мог зациклиться, если server в блоке
2980        upstream был помечен как down; ошибка появилась в 0.6.6.
2982     *) Исправление: sendfilev() в Solaris теперь не используется при
2983        передаче тела запроса FastCGI-серверу через unix domain сокет.
2986 Изменения в nginx 0.6.6                                           30.07.2007
2988     *) Добавление: параметр --sysconfdir=PATH в configure.
2990     *) Добавление: именованные location'ы.
2992     *) Добавление: переменную $args можно устанавливать с помощью set.
2994     *) Добавление: переменная $is_args.
2996     *) Исправление: равномерное распределение запросов к апстримам с
2997        большими весами.
2999     *) Исправление: если клиент в почтовом прокси-сервере закрывал
3000        соединение, то nginx мог не закрывать соединение с бэкендом.
3002     *) Исправление: при использовании одного хоста в качестве бэкендов для
3003        протоколов HTTP и HTTPS без явного указания портов, nginx использовал
3004        только один порт - 80 или 443.
3006     *) Исправление: nginx не собирался на Solaris/amd64 Sun Studio 11 и
3007        более ранними версиями; ошибка появилась в 0.6.4.
3010 Изменения в nginx 0.6.5                                           23.07.2007
3012     *) Добавление: переменная $nginx_version.
3013        Спасибо Николаю Гречуху.
3015     *) Добавление: почтовый прокси-сервер поддерживает AUTHENTICATE в режиме
3016        IMAP.
3017        Спасибо Максиму Дунину.
3019     *) Добавление: почтовый прокси-сервер поддерживает STARTTLS в режиме
3020        SMTP.
3021        Спасибо Максиму Дунину.
3023     *) Исправление: теперь nginx экранирует пробел в переменной
3024        $memcached_key.
3026     *) Исправление: nginx неправильно собирался Sun Studio на Solaris/amd64.
3027        Спасибо Jiang Hong.
3029     *) Исправление: незначительных потенциальных ошибок.
3030        Спасибо Coverity's Scan.
3033 Изменения в nginx 0.6.4                                           17.07.2007
3035     *) Безопасность: при использовании директивы msie_refresh был возможен
3036        XSS.
3037        Спасибо Максиму Богуку.
3039     *) Изменение: директивы proxy_store и fastcgi_store изменены.
3041     *) Добавление: директивы proxy_store_access и fastcgi_store_access.
3043     *) Исправление: nginx не работал на Solaris/sparc64, если был собран Sun
3044        Studio.
3045        Спасибо Андрею Нигматулину.
3047     *) Изменение: обход ошибки в Sun Studio 12.
3048        Спасибо Jiang Hong.
3051 Изменения в nginx 0.6.3                                           12.07.2007
3053     *) Добавление: директивы proxy_store и fastcgi_store.
3055     *) Исправление: при использовании директивы auth_http_header в рабочем
3056        процессе мог произойти segmentation fault.
3057        Спасибо Максиму Дунину.
3059     *) Исправление: если использовался метод аутентификации CRAM-MD5, но он
3060        не был разрешён, то в рабочем процессе происходил segmentation fault.
3062     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
3063        в рабочем процессе мог произойти segmentation fault.
3065     *) Исправление: в рабочем процессе мог произойти segmentation fault,
3066        если использовался метод eventport.
3068     *) Исправление: директивы proxy_ignore_client_abort и
3069        fastcgi_ignore_client_abort не работали; ошибка появилась в 0.5.13.
3072 Изменения в nginx 0.6.2                                           09.07.2007
3074     *) Исправление: если заголовок ответа был разделён в FastCGI-записях, то
3075        nginx передавал клиенту мусор в таких заголовках.
3078 Изменения в nginx 0.6.1                                           17.06.2007
3080     *) Исправление: в парсинге SSI.
3082     *) Исправление: при использовании удалённого подзапроса в SSI
3083        последующий подзапрос локального файла мог отдаваться клиенту в
3084        неверном порядке.
3086     *) Исправление: большие включения в SSI, сохранённые во временные файлы,
3087        передавались не полностью.
3089     *) Исправление: значение perl'овой переменной $$ модуля
3090        ngx_http_perl_module было равно номеру главного процесса.
3093 Изменения в nginx 0.6.0                                           14.06.2007
3095     *) Добавление: директивы "server_name", "map", and "valid_referers"
3096        поддерживают маски вида "www.example.*".
3099 Изменения в nginx 0.5.25                                          11.06.2007
3101     *) Исправление: nginx не собирался с параметром
3102        --without-http_rewrite_module; ошибка появилась в 0.5.24.
3105 Изменения в nginx 0.5.24                                          06.06.2007
3107     *) Безопасность: директива ssl_verify_client не работала, если запрос
3108        выполнялся по протоколу HTTP/0.9.
3110     *) Исправление: при использовании сжатия часть ответа могла передаваться
3111        несжатой; ошибка появилась в 0.5.23.
3114 Изменения в nginx 0.5.23                                          04.06.2007
3116     *) Добавление: модуль ngx_http_ssl_module поддерживает расширение TLS
3117        Server Name Indication.
3119     *) Добавление: директива fastcgi_catch_stderr.
3120        Спасибо Николаю Гречуху, проект OWOX.
3122     *) Исправление: на Линуксе в основном процессе происходил segmentation
3123        fault, если два виртуальных сервера должны bind()ится к
3124        пересекающимся портам.
3126     *) Исправление: если nginx был собран с модулем ngx_http_perl_module и
3127        perl поддерживал потоки, то во время второй переконфигурации
3128        выдавались ошибки "panic: MUTEX_LOCK" и "perl_parse() failed".
3130     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
3133 Изменения в nginx 0.5.22                                          29.05.2007
3135     *) Исправление: большое тело запроса могло не передаваться бэкенду;
3136        ошибка появилась в 0.5.21.
3139 Изменения в nginx 0.5.21                                          28.05.2007
3141     *) Исправление: если внутри сервера описано больше примерно десяти
3142        location'ов, то location'ы, заданные с помощью регулярного выражения,
3143        могли выполняться не в том, порядке, в каком они описаны.
3145     *) Исправление: на 64-битной платформе рабочий процесс мог зациклиться,
3146        если 33-тий по счёту или последующий бэкенд упал.
3147        Спасибо Антону Поварову.
3149     *) Исправление: при использовании библиотеки PCRE на Solaris/sparc64 мог
3150        произойти bus error.
3151        Спасибо Андрею Нигматулину.
3153     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
3156 Изменения в nginx 0.5.20                                          07.05.2007
3158     *) Добавление: директива sendfile_max_chunk.
3160     *) Добавление: переменные "$http_...", "$sent_http_..." и
3161        "$upstream_http_..." можно менять директивой set.
3163     *) Исправление: при использовании SSI-команды 'if expr="$var = /"' в
3164        рабочем процессе мог произойти segmentation fault.
3166     *) Исправление: завершающая строка multipart range ответа передавалась
3167        неверно.
3168        Спасибо Evan Miller.
3170     *) Исправление: nginx не работал на Solaris/sparc64, если был собран Sun
3171        Studio.
3172        Спасибо Андрею Нигматулину.
3174     *) Исправление: модуль ngx_http_perl_module не собирался make в Solaris.
3175        Спасибо Андрею Нигматулину.
3178 Изменения в nginx 0.5.19                                          24.04.2007
3180     *) Изменение: значение переменной $request_time теперь записывается с
3181        точностью до миллисекунд.
3183     *) Изменение: метод $r->rflush в модуле ngx_http_perl_module
3184        переименован в $r->flush.
3186     *) Добавление: переменная $upstream_addr.
3188     *) Добавление: директивы proxy_headers_hash_max_size и
3189        proxy_headers_hash_bucket_size.
3190        Спасибо Володымыру Костырко.
3192     *) Исправление: при использовании sendfile и limit_rate на 64-битных
3193        платформах нельзя было передавать файлы больше 2G.
3195     *) Исправление: при использовании sendfile на 64-битном Linux нельзя
3196        было передавать файлы больше 2G.
3199 Изменения в nginx 0.5.18                                          19.04.2007
3201     *) Добавление: модуль ngx_http_sub_filter_module.
3203     *) Добавление: переменные "$upstream_http_...".
3205     *) Добавление: теперь переменные $upstream_status и
3206        $upstream_response_time содержат данные о всех обращениях к
3207        апстримам, сделанным до X-Accel-Redirect.
3209     *) Исправление: если nginx был собран с модулем ngx_http_perl_module и
3210        perl не поддерживал multiplicity, то после первой переконфигурации и
3211        после получения любого сигнала в основном процессе происходил
3212        segmentation fault; ошибка появилась в 0.5.9.
3214     *) Исправление: если perl не поддерживал multiplicity, то после
3215        переконфигурации перловый код не работал; ошибка появилась в 0.3.38.
3218 Изменения в nginx 0.5.17                                          02.04.2007
3220     *) Изменение: теперь nginx для метода TRACE всегда возвращает код 405.
3222     *) Добавление: теперь nginx поддерживает директиву include внутри блока
3223        types.
3225     *) Исправление: использование переменной $document_root в директиве root
3226        и alias запрещено: оно вызывало рекурсивное переполнение стека.
3228     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
3230     *) Исправление: в некоторых случаях некэшируемые переменные (такие, как
3231        $uri) возвращали старое закэшированное значение.
3234 Изменения в nginx 0.5.16                                          26.03.2007
3236     *) Исправление: в качестве ключа для хэша в директиве ip_hash не
3237        использовалась сеть класса С.
3238        Спасибо Павлу Ярковому.
3240     *) Исправление: если в строке "Content-Type" в заголовке ответа бэкенда
3241        был указан charset и строка завершалась символом ";", то в рабочем
3242        процессе мог произойти segmentation fault; ошибка появилась в 0.3.50.
3244     *) Исправление: ошибки "[alert] zero size buf" при работе с
3245        FastCGI-сервером, если тело запроса, записанное во временный файл,
3246        было кратно 32K.
3248     *) Исправление: nginx не собирался на Solaris без параметра
3249        --with-debug; ошибка появилась в 0.5.15.
3252 Изменения в nginx 0.5.15                                          19.03.2007
3254     *) Добавление: почтовый прокси-сервер поддерживает аутентифицированное
3255        SMTP-проксирование и директивы smtp_auth, smtp_capablities и xclient.
3256        Спасибо Антону Южанинову и Максиму Дунину.
3258     *) Добавление: теперь keep-alive соединения закрываются сразу же по
3259        получении сигнала переконфигурации.
3261     *) Изменение: директивы imap и auth переименованы соответственно в mail
3262        и pop3_auth.
3264     *) Исправление: если использовался метод аутентификации CRAM-MD5 и не
3265        был разрешён метод APOP, то в рабочем процессе происходил
3266        segmentation fault.
3268     *) Исправление: при использовании директивы starttls only в протоколе
3269        POP3 nginx разрешал аутентификацию без перехода в режим SSL.
3271     *) Исправление: рабочие процессы не выходили после переконфигурации и не
3272        переоткрывали логи, если использовался метод eventport.
3274     *) Исправление: при использовании директивы ip_hash рабочий процесс мог
3275        зациклиться.
3277     *) Исправление: теперь nginx не пишет в лог некоторые alert'ы, если
3278        используются методы eventport или /dev/poll.
3281 Изменения в nginx 0.5.14                                          23.02.2007
3283     *) Исправление: nginx игнорировал лишние закрывающие скобки "}" в конце
3284        конфигурационного файла.
3287 Изменения в nginx 0.5.13                                          19.02.2007
3289     *) Добавление: методы COPY и MOVE.
3291     *) Исправление: модуль ngx_http_realip_module устанавливал мусор для
3292        запросов, переданных по keep-alive соединению.
3294     *) Исправление: nginx не работал на 64-битном big-endian Linux.
3295        Спасибо Андрею Нигматулину.
3297     *) Исправление: при получении слишком длинной команды IMAP/POP3-прокси
3298        теперь сразу закрывает соединение, а не по таймауту.
3300     *) Исправление: если при использовании метода epoll клиент закрывал
3301        преждевременно соединение со своей стороны, то nginx закрывал это
3302        соединение только по истечении таймаута на передачу.
3304     *) Исправление: nginx не собирался на платформах, отличных от i386,
3305        amd64, sparc и ppc; ошибка появилась в 0.5.8.
3308 Изменения в nginx 0.5.12                                          12.02.2007
3310     *) Исправление: nginx не собирался на платформах, отличных от i386,
3311        amd64, sparc и ppc; ошибка появилась в 0.5.8.
3313     *) Исправление: при использовании временных файлов в время работы с
3314        FastCGI-сервером в рабочем процессе мог произойти segmentation fault;
3315        ошибка появилась в 0.5.8.
3317     *) Исправление: если переменная $fastcgi_script_name записывалась в лог,
3318        то в рабочем процессе мог произойти segmentation fault.
3320     *) Исправление: ngx_http_perl_module не собирался на Solaris.
3323 Изменения в nginx 0.5.11                                          05.02.2007
3325     *) Добавление: теперь configure определяет библиотеку PCRE в MacPorts.
3326        Спасибо Chris McGrath.
3328     *) Исправление: ответ был неверным, если запрашивалось несколько
3329        диапазонов; ошибка появилась в 0.5.6.
3331     *) Исправление: директива create_full_put_path не могла создавать
3332        промежуточные каталоги, если не была установлена директива
3333        dav_access.
3334        Спасибо Evan Miller.
3336     *) Исправление: вместо кодов ошибок "400" и "408" в access_log мог
3337        записываться код "0".
3339     *) Исправление: при сборке с оптимизацией -O2 в рабочем процессе мог
3340        произойти segmentation fault.
3343 Изменения в nginx 0.5.10                                          26.01.2007
3345     *) Исправление: во время обновления исполняемого файла новый процесс не
3346        наследовал слушающие сокеты; ошибка появилась в 0.5.9.
3348     *) Исправление: при сборке с оптимизацией -O2 в рабочем процессе мог
3349        произойти segmentation fault; ошибка появилась в 0.5.1.
3352 Изменения в nginx 0.5.9                                           25.01.2007
3354     *) Изменение: модуль ngx_http_memcached_module теперь в качестве ключа
3355        использует значение переменной $memcached_key.
3357     *) Добавление: переменная $memcached_key.
3359     *) Добавление: параметр clean в директиве client_body_in_file_only.
3361     *) Добавление: директива env.
3363     *) Добавление: директива sendfile работает внутри блока if.
3365     *) Добавление: теперь при ошибке записи в access_log nginx записывает
3366        сообщение в error_log, но не чаще одного раза в минуту.
3368     *) Исправление: директива "access_log off" не всегда запрещала запись в
3369        лог.
3372 Изменения в nginx 0.5.8                                           19.01.2007
3374     *) Исправление: если использовалась директива
3375        "client_body_in_file_only on" и тело запроса было небольшое, то мог
3376        произойти segmentation fault.
3378     *) Исправление: происходил segmentation fault, если использовались
3379        директивы "client_body_in_file_only on" и
3380        "proxy_pass_request_body off" или "fastcgi_pass_request_body off", и
3381        делался переход к следующему бэкенду.
3383     *) Исправление: если при использовании директивы "proxy_buffering off"
3384        соединение с клиентом было неактивно, то оно закрывалось по таймауту,
3385        заданному директивой send_timeout; ошибка появилась в 0.4.7.
3387     *) Исправление: если при использовании метода epoll клиент закрывал
3388        преждевременно соединение со своей стороны, то nginx закрывал это
3389        соединение только по истечении таймаута на передачу.
3391     *) Исправление: ошибки "[alert] zero size buf" при работе с
3392        FastCGI-сервером.
3394     *) Исправление ошибок в директиве limit_zone.
3397 Изменения в nginx 0.5.7                                           15.01.2007
3399     *) Добавление: оптимизация использования памяти в ssl_session_cache.
3401     *) Исправление ошибок в директивах ssl_session_cache и limit_zone.
3403     *) Исправление: на старте или во время переконфигурации происходил
3404        segmentation fault, если директивы ssl_session_cache или limit_zone
3405        использовались на 64-битных платформах.
3407     *) Исправление: при использовании директив add_before_body или
3408        add_after_body происходил segmentation fault, если в заголовке ответа
3409        нет строки "Content-Type".
3411     *) Исправление: библиотека OpenSSL всегда собиралась с поддержкой
3412        потоков.
3413        Спасибо Дену Иванову.
3415     *) Исправление: совместимость библиотеки PCRE-6.5+ и компилятора icc.
3418 Изменения в nginx 0.5.6                                           09.01.2007
3420     *) Изменение: теперь модуль ngx_http_index_module игнорирует все методы,
3421        кроме GET, HEAD и POST.
3423     *) Добавление: модуль ngx_http_limit_zone_module.
3425     *) Добавление: переменная $binary_remote_addr.
3427     *) Добавление: директивы ssl_session_cache модулей ngx_http_ssl_module и
3428        ngx_imap_ssl_module.
3430     *) Добавление: метод DELETE поддерживает рекурсивное удаление.
3432     *) Исправление: при использовании $r->sendfile() byte-ranges
3433        передавались неверно.
3436 Изменения в nginx 0.5.5                                           24.12.2006
3438     *) Изменение: ключ -v больше не выводит информацию о компиляторе.
3440     *) Добавление: ключ -V.
3442     *) Добавление: директива worker_rlimit_core поддерживает указание
3443        размера в K, M и G.
3445     *) Исправление: модуль nginx.pm теперь может устанавливаться
3446        непривилегированным пользователем.
3448     *) Исправление: при использовании методов $r->request_body или
3449        $r->request_body_file мог произойти segmentation fault.
3451     *) Исправление: ошибок, специфичных для платформы ppc.
3454 Изменения в nginx 0.5.4                                           15.12.2006
3456     *) Добавление: директиву perl можно использовать внутри блока
3457        limit_except.
3459     *) Исправление: модуль ngx_http_dav_module требовал строку "Date" в
3460        заголовке запроса для метода DELETE.
3462     *) Исправление: при использовании одного параметра в директиве
3463        dav_access nginx мог сообщить об ошибке в конфигурации.
3465     *) Исправление: при использовании переменной $host мог произойти
3466        segmentation fault; ошибка появилась в 0.4.14.
3469 Изменения в nginx 0.5.3                                           13.12.2006
3471     *) Добавление: модуль ngx_http_perl_module поддерживает методы
3472        $r->status, $r->log_error и $r->sleep.
3474     *) Добавление: метод $r->variable поддерживает переменные, неописанные в
3475        конфигурации nginx'а.
3477     *) Исправление: метод $r->has_request_body не работал.
3480 Изменения в nginx 0.5.2                                           11.12.2006
3482     *) Исправление: если в директивах proxy_pass использовалось имя,
3483        указанное в upstream, то nginx пытался найти IP-адрес этого имени;
3484        ошибка появилась в 0.5.1.
3487 Изменения в nginx 0.5.1                                           11.12.2006
3489     *) Исправление: директива post_action могла не работать после неудачного
3490        завершения запроса.
3492     *) Изменение: обход ошибки в Eudora для Mac; ошибка появилась в 0.4.11.
3493        Спасибо Bron Gondwana.
3495     *) Исправление: при указании в директиве fastcgi_pass имени описанного
3496        upstream'а выдавалось сообщение "no port in upstream"; ошибка
3497        появилась в 0.5.0.
3499     *) Исправление: если в директивах proxy_pass и fastcgi_pass
3500        использовались одинаковых имена серверов, но с разными портами, то
3501        эти директивы использовали первый описанный порт; ошибка появилась в
3502        0.5.0.
3504     *) Исправление: если в директивах proxy_pass и fastcgi_pass
3505        использовались unix domain сокеты, то эти директивы использовали
3506        первый описанный сокет; ошибка появилась в 0.5.0.
3508     *) Исправление: ngx_http_auth_basic_module игнорировал пользователя,
3509        если он был указан в последней строке файла паролей и после пароля не
3510        было перевода строки, возврата каретки или символа ":".
3512     *) Исправление: переменная $upstream_response_time могла быть равна
3513        "0.000", хотя время обработки было больше 1 миллисекунды.
3516 Изменения в nginx 0.5.0                                           04.12.2006
3518     *) Изменение: параметры в виде "%name" в директиве log_format больше не
3519        поддерживаются.
3521     *) Изменение: директивы proxy_upstream_max_fails,
3522        proxy_upstream_fail_timeout, fastcgi_upstream_max_fails, и
3523        fastcgi_upstream_fail_timeout, memcached_upstream_max_fails и
3524        memcached_upstream_fail_timeout больше не поддерживаются.
3526     *) Добавление: директива server в блоке upstream поддерживает параметры
3527        max_fails, fail_timeout и down.
3529     *) Добавление: директива ip_hash в блоке upstream.
3531     *) Добавление: статус WAIT в строке "Auth-Status" в заголовка ответа
3532        сервера аутентификации IMAP/POP3 прокси.
3534     *) Исправление: nginx не собирался на 64-битных платформах; ошибка
3535        появилась в 0.4.14.
3538 Изменения в nginx 0.4.14                                          27.11.2006
3540     *) Добавление: директива proxy_pass_error_message в IMAP/POP3 прокси.
3542     *) Добавление: теперь configure определяет библиотеку PCRE на FreeBSD,
3543        Linux и NetBSD.
3545     *) Исправление: ngx_http_perl_module не работал с перлом, собранным с
3546        поддержкой потоков; ошибка появилась в 0.3.38.
3548     *) Исправление: ngx_http_perl_module не работал корректно, если перл
3549        вызывался рекурсивно.
3551     *) Исправление: nginx игнорировал имя сервера в строке запроса.
3553     *) Исправление: если FastCGI сервер передавал много в stderr, то рабочий
3554        процесс мог зациклиться.
3556     *) Исправление: при изменении системного времени переменная
3557        $upstream_response_time могла быть отрицательной.
3559     *) Исправление: при использовании POP3 серверу аутентификации IMAP/POP3
3560        прокси не передавался параметр Auth-Login-Attempt.
3562     *) Исправление: при ошибке соединения с сервером аутентификации
3563        IMAP/POP3 прокси мог произойти segmentation fault.
3566 Изменения в nginx 0.4.13                                          15.11.2006
3568     *) Добавление: директиву proxy_pass можно использовать внутри блока
3569        limit_except.
3571     *) Добавление: директива limit_except поддерживает все WebDAV методы.
3573     *) Исправление: при использовании директивы add_before_body без
3574        директивы add_after_body ответ передавался не полностью.
3576     *) Исправление: большое тело запроса не принималось, если использовались
3577        метод epoll и deferred accept().
3579     *) Исправление: для ответов модуля ngx_http_autoindex_module не
3580        выставлялась кодировка; ошибка появилась в 0.3.50.
3582     *) Исправление: ошибки "[alert] zero size buf" при работе с
3583        FastCGI-сервером;
3585     *) Исправление: параметр конфигурации --group= игнорировался.
3586        Спасибо Thomas Moschny.
3588     *) Исправление: 50-й подзапрос в SSI ответе не работал; ошибка появилась
3589        в 0.3.50.
3592 Изменения в nginx 0.4.12                                          31.10.2006
3594     *) Добавление: модуль ngx_http_perl_module поддерживает метод
3595        $r->variable.
3597     *) Исправление: при включении в ответ большого статического файла с
3598        помощью SSI ответ мог передаваться не полностью.
3600     *) Исправление: nginx не убирал "#fragment" в URI.
3603 Изменения в nginx 0.4.11                                          25.10.2006
3605     *) Добавление: POP3 прокси поддерживает AUTH LOIGN PLAIN и CRAM-MD5.
3607     *) Добавление: модуль ngx_http_perl_module поддерживает метод
3608        $r->allow_ranges.
3610     *) Исправление: при включённой поддержке команды APOP в POP3 прокси
3611        могли не работать команды USER/PASS; ошибка появилась в 0.4.10.
3614 Изменения в nginx 0.4.10                                          23.10.2006
3616     *) Добавление: POP3 прокси поддерживает APOP.
3618     *) Исправление: при использовании методов select, poll и /dev/poll во
3619        время ожидания ответа от сервера аутентификации IMAP/POP3 прокси
3620        нагружал процессор.
3622     *) Исправление: при использовании переменной $server_addr в директиве
3623        map мог произойти segmentation fault.
3625     *) Исправление: модуль ngx_http_flv_module не поддерживал byte ranges
3626        для полных ответов; ошибка появилась в 0.4.7.
3628     *) Исправление: nginx не собирался на Debian amd64; ошибка появилась в
3629        0.4.9.
3632 Изменения в nginx 0.4.9                                           13.10.2006
3634     *) Добавление: параметр set в команде SSI include.
3636     *) Добавление: модуль ngx_http_perl_module теперь проверяет версию
3637        модуля nginx.pm.
3640 Изменения в nginx 0.4.8                                           11.10.2006
3642     *) Исправление: если до команды SSI include с параметром wait
3643        выполнялась ещё одна команда SSI include, то параметр wait мог не
3644        работать.
3646     *) Исправление: модуль ngx_http_flv_module добавлял FLV-заголовок для
3647        полных ответов.
3648        Спасибо Алексею Ковырину.
3651 Изменения в nginx 0.4.7                                           10.10.2006
3653     *) Добавление: модуль ngx_http_flv_module.
3655     *) Добавление: переменная $request_body_file.
3657     *) Добавление: директивы charset и source_charset поддерживают
3658        переменные.
3660     *) Исправление: если до команды SSI include с параметром wait
3661        выполнялась ещё одна команда SSI include, то параметр wait мог не
3662        работать.
3664     *) Исправление: при использовании директивы "proxy_buffering off" или
3665        при работе с memcached соединения могли не закрываться по таймауту.
3667     *) Исправление: nginx не запускался на 64-битных платформах, отличных от
3668        amd64, sparc64 и ppc64.
3671 Изменения в nginx 0.4.6                                           06.10.2006
3673     *) Исправление: nginx не запускался на 64-битных платформах, отличных от
3674        amd64, sparc64 и ppc64.
3676     *) Исправление: при запросе версии HTTP/1.1 nginx передавал ответ
3677        chunk'ами, если длина ответа в методе
3678        $r->headers_out("Content-Length", ...) была задана текстовой строкой.
3680     *) Исправление: после перенаправления ошибки с помощью директивы
3681        error_page любая директива модуля ngx_http_rewrite_module возвращала
3682        эту ошибку; ошибка появилась в 0.4.4.
3685 Изменения в nginx 0.4.5                                           02.10.2006
3687     *) Исправление: nginx не собирался на Linux и Solaris; ошибка появилась
3688        в 0.4.4.
3691 Изменения в nginx 0.4.4                                           02.10.2006
3693     *) Добавление: переменная $scheme.
3695     *) Добавление: директива expires поддерживает параметр max.
3697     *) Добавление: директива include поддерживает маску "*".
3698        Спасибо Jonathan Dance.
3700     *) Исправление: директива return всегда изменяла код ответа,
3701        перенаправленного директивой error_page.
3703     *) Исправление: происходил segmentation fault, если в методе PUT
3704        передавалось тело нулевой длины.
3706     *) Исправление: при использовании переменных в директиве proxy_redirect
3707        редирект изменялся неверно.
3710 Изменения в nginx 0.4.3                                           26.09.2006
3712     *) Изменение: ошибку 499 теперь нельзя перенаправить с помощью директивы
3713        error_page.
3715     *) Добавление: поддержка Solaris 10 event ports.
3717     *) Добавление: модуль ngx_http_browser_module.
3719     *) Исправление: при перенаправлении ошибки 400 проксированному серверу
3720        помощью директивы error_page мог произойти segmentation fault.
3722     *) Исправление: происходил segmentation fault, если в директиве
3723        proxy_pass использовался unix domain сокет; ошибка появилась в
3724        0.3.47.
3726     *) Исправление: SSI не работал с ответами memcached и
3727        небуферизированными проксированными ответами.
3729     *) Изменение: обход ошибки PAUSE hardware capability в Sun Studio.
3732 Изменения в nginx 0.4.2                                           14.09.2006
3734     *) Исправление: убрана поддержка флага O_NOATIME на Linux; ошибка
3735        появилась в 0.4.1.
3738 Изменения в nginx 0.4.1                                           14.09.2006
3740     *) Исправление: совместимость с DragonFlyBSD.
3741        Спасибо Павлу Назарову.
3743     *) Изменение: обход ошибки в sendfile() в 64-битном Linux при передаче
3744        файлов больше 2G.
3746     *) Добавление: теперь на Linux nginx для статических запросов использует
3747        флаг O_NOATIME.
3748        Спасибо Yusuf Goolamabbas.
3751 Изменения в nginx 0.4.0                                           30.08.2006
3753     *) Изменение во внутреннем API: инициализация модулей HTTP перенесена из
3754        фазы init module в фазу HTTP postconfiguration.
3756     *) Изменение: теперь тело запроса в модуле ngx_http_perl_module не
3757        считывается заранее: нужно явно инициировать чтение с помощью метода
3758        $r->has_request_body.
3760     *) Добавление: модуль ngx_http_perl_module поддерживает код возврата
3761        DECLINED.
3763     *) Добавление: модуль ngx_http_dav_module поддерживает входящую строку
3764        заголовка "Date" для метода PUT.
3766     *) Добавление: директива ssi работает внутри блока if.
3768     *) Исправление: происходил segmentation fault, если в директиве index
3769        использовалась переменные и при этом первое имя индексного файла было
3770        без переменных; ошибка появилась в 0.1.29.
3773 Изменения в nginx 0.3.61                                          28.08.2006
3775     *) Изменение: директива tcp_nodelay теперь по умолчанию включена.
3777     *) Добавление: директива msie_refresh.
3779     *) Добавление: директива recursive_error_pages.
3781     *) Исправление: директива rewrite возвращала неправильный редирект, если
3782        редирект включал в себя выделенные закодированные символы из
3783        оригинального URI.
3786 Изменения в nginx 0.3.60                                          18.08.2006
3788     *) Исправление: во время перенаправления ошибки рабочий процесс мог
3789        зациклиться; ошибка появилась в 0.3.59.
3792 Изменения в nginx 0.3.59                                          16.08.2006
3794     *) Добавление: теперь можно делать несколько перенаправлений через
3795        директиву error_page.
3797     *) Исправление: директива dav_access не поддерживала три параметра.
3799     *) Исправление: директива error_page не изменяла строку "Content-Type"
3800        после перенаправления с помощью "X-Accel-Redirect"; ошибка появилась
3801        в 0.3.58.
3804 Изменения в nginx 0.3.58                                          14.08.2006
3806     *) Добавление: директива error_page поддерживает переменные.
3808     *) Изменение: теперь на Linux используется интерфейс procfs вместо
3809        sysctl.
3811     *) Изменение: теперь при использовании "X-Accel-Redirect" строка
3812        "Content-Type" наследуется из первоначального ответа.
3814     *) Исправление: директива error_page не перенаправляла ошибку 413.
3816     *) Исправление: завершающий "?" не удалял старые аргументы, если в
3817        переписанном URI не было новых аргументов.
3819     *) Исправление: nginx не запускался на 64-битной FreeBSD 7.0-CURRENT.
3822 Изменения в nginx 0.3.57                                          09.08.2006
3824     *) Добавление: переменная $ssl_client_serial.
3826     *) Исправление: в операторе "!-e" в директиве if.
3827        Спасибо Андриану Буданцову.
3829     *) Исправление: при проверке клиентского сертификата nginx не передавал
3830        клиенту информацию о требуемых сертификатах.
3832     *) Исправление: переменная $document_root не поддерживала переменные в
3833        директиве root.
3836 Изменения в nginx 0.3.56                                          04.08.2006
3838     *) Добавление: директива dav_access.
3840     *) Добавление: директива if поддерживает операторы "-d", "!-d", "-e",
3841        "!-e", "-x" и "!-x".
3843     *) Исправление: при записи в access_log некоторых передаваемых клиенту
3844        строк заголовков происходил segmentation fault, если запрос возвращал
3845        редирект.
3848 Изменения в nginx 0.3.55                                          28.07.2006
3850     *) Добавление: параметр stub в команде SSI include.
3852     *) Добавление: команда SSI block.
3854     *) Добавление: скрипт unicode2nginx добавлен в contrib.
3856     *) Исправление: если root был задан только переменной, то корень
3857        задавался относительно префикса сервера.
3859     *) Исправление: если в запросе был "//" или "/.", и после этого
3860        закодированные символы в виде "%XX", то проксируемый запрос
3861        передавался незакодированным.
3863     *) Исправление: метод $r->header_in("Cookie") модуля
3864        ngx_http_perl_module теперь возвращает все строки "Cookie" в
3865        заголовке запроса.
3867     *) Исправление: происходил segmentation fault, если использовался
3868        "client_body_in_file_only on" и делался переход к следующему бэкенду.
3870     *) Исправление: при некоторых условиях во время переконфигурации коды
3871        символов внутри директивы charset_map могли считаться неверными;
3872        ошибка появилась в 0.3.50.
3875 Изменения в nginx 0.3.54                                          11.07.2006
3877     *) Добавление: nginx теперь записывает в лог информацию о подзапросах.
3879     *) Добавление: директивы proxy_next_upstream, fastcgi_next_upstream и
3880        memcached_next_upstream поддерживают параметр off.
3882     *) Добавление: директива debug_connection поддерживает запись адресов в
3883        формате CIDR.
3885     *) Исправление: при перекодировании ответа проксированного сервера или
3886        сервера FastCGI в UTF-8 или наоборот ответ мог передаваться не
3887        полностью.
3889     *) Исправление: переменная $upstream_response_time содержала время
3890        только первого обращения к бэкенду.
3892     *) Исправление: nginx не собирался на платформе amd64; ошибка появилась
3893        в 0.3.53.
3896 Изменения в nginx 0.3.53                                          07.07.2006
3898     *) Изменение: директива add_header добавляет строки в ответы с кодом
3899        204, 301 и 302.
3901     *) Добавление: директива server в блоке upstream поддерживает параметр
3902        weight.
3904     *) Добавление: директива server_name поддерживает маску "*".
3906     *) Добавление: nginx поддерживает тело запроса больше 2G.
3908     *) Исправление: если при использовании "satisfy_any on" клиент успешно
3909        проходил аутентификацию, в лог всё равно записалоcь сообщение "access
3910        forbidden by rule".
3912     *) Исправление: метод PUT мог ошибочно не создать файл и вернуть код
3913        409.
3915     *) Исправление: если во время аутентификации IMAP/POP3 бэкенд возвращал
3916        ошибку, nginx продолжал проксирование.
3919 Изменения в nginx 0.3.52                                          03.07.2006
3921     *) Изменение: восстановлено поведение модуля ngx_http_index_module для
3922        запросов "POST /": как в версии до 0.3.40, модуль теперь не выдаёт
3923        ошибку 405.
3925     *) Исправление: при использовании ограничения скорости рабочий процесс
3926        мог зациклиться; ошибка появилась в 0.3.37.
3928     *) Исправление: модуль ngx_http_charset_module записывал в лог ошибку
3929        "unknown charset", даже если перекодировка не требовалась; ошибка
3930        появилась в 0.3.50.
3932     *) Исправление: если в результате запроса PUT возвращался код 409, то
3933        временный файл не удалялся.
3936 Изменения в nginx 0.3.51                                          30.06.2006
3938     *) Исправление: при некоторых условиях в SSI мог пропадать символы "<";
3939        ошибка появилась в 0.3.50.
3942 Изменения в nginx 0.3.50                                          28.06.2006
3944     *) Изменение: директивы proxy_redirect_errors и fastcgi_redirect_errors
3945        переименованы соответственно в proxy_intercept_errors и
3946        fastcgi_intercept_errors.
3948     *) Добавление: модуль ngx_http_charset_module поддерживает
3949        перекодирование из однобайтных кодировок в UTF-8 и обратно.
3951     *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка
3952        "X-Accel-Charset" в ответе бэкенда.
3954     *) Исправление: символ "\" в парах "\"" и "\'" в SSI командах убирался,
3955        только если также использовался символ "$".
3957     *) Исправление: при некоторых условиях в SSI после вставки могла быть
3958        добавлена строка "<!--".
3960     *) Исправление: если в заголовке ответа была строка "Content-Length: 0",
3961        то при использовании небуферизированного проксировании не закрывалось
3962        соединение с клиентом.
3965 Изменения в nginx 0.3.49                                          31.05.2006
3967     *) Исправление: в директиве set.
3969     *) Исправление: при включении в ssi двух и более подзапросов,
3970        обрабатываемых через FastCGI, вместо вывода второго и остальных
3971        подзапросов в ответ включался вывод первого подзапроса.
3974 Изменения в nginx 0.3.48                                          29.05.2006
3976     *) Изменение: теперь модуль ngx_http_charset_module работает для
3977        подзапросов, в ответах которых нет строки заголовка "Content-Type".
3979     *) Исправление: если в директиве proxy_pass не было URI, то директива
3980        "proxy_redirect default" добавляла в переписанный редирект в начало
3981        лишний слэш.
3983     *) Исправление: внутренний редирект всегда превращал любой HTTP-метод в
3984        GET, теперь это делается только для редиректов, выполняемых с помощью
3985        X-Accel-Redirect, и у которых метод не равен HEAD; ошибка появилась в
3986        0.3.42.
3988     *) Исправление: модуль ngx_http_perl_module не собирался, если перл был
3989        с поддержкой потоков; ошибка появилась в 0.3.46.
3992 Изменения в nginx 0.3.47                                          23.05.2006
3994     *) Добавление: директива upstream.
3996     *) Изменение: символ "\" в парах "\"" и "\'" в SSI командах теперь
3997        всегда убирается.
4000 Изменения в nginx 0.3.46                                          11.05.2006
4002     *) Добавление: директивы proxy_hide_header, proxy_pass_header,
4003        fastcgi_hide_header и fastcgi_pass_header.
4005     *) Изменение: директивы proxy_pass_x_powered_by, fastcgi_x_powered_by и
4006        proxy_pass_server упразднены.
4008     *) Добавление: в режиме прокси поддерживается строка заголовка
4009        "X-Accel-Buffering" в ответе бэкенда.
4011     *) Исправление: ошибок и утечек памяти при переконфигурации в модуле
4012        ngx_http_perl_module.
4015 Изменения в nginx 0.3.45                                          06.05.2006
4017     *) Добавление: директивы ssl_verify_client, ssl_verify_depth и
4018        ssl_client_certificate.
4020     *) Изменение: теперь переменная $request_method возвращает метод только
4021        основного запроса.
4023     *) Изменение: в таблице перекодировки koi-win изменены коды символа
4024        &deg;.
4026     *) Добавление: в таблицу перекодировки koi-win добавлены символы евро и
4027        номера.
4029     *) Исправление: если nginx распределял запросы на несколько машин, то
4030        при падении одной из них запросы, предназначенные для этой машины,
4031        перенаправлялись только на одну машину вместо того, чтобы равномерно
4032        распределяться между остальными.
4035 Изменения в nginx 0.3.44                                          04.05.2006
4037     *) Добавление: параметр wait в команде SSI include.
4039     *) Добавление: в таблицу перекодировки koi-win добавлены украинские и
4040        белорусские символы.
4042     *) Исправление: в SSI.
4045 Изменения в nginx 0.3.43                                          26.04.2006
4047     *) Исправление: в SSI.
4050 Изменения в nginx 0.3.42                                          26.04.2006
4052     *) Добавление: параметр bind в директиве listen в IMAP/POP3 прокси.
4054     *) Исправление: ошибки при использовании в директиве rewrite одного и
4055        того же выделения более одного раза.
4057     *) Исправление: в лог не записывались переменные
4058        $sent_http_content_type, $sent_http_content_length,
4059        $sent_http_last_modified, $sent_http_connection,
4060        $sent_http_keep_alive и $sent_http_transfer_encoding.
4062     *) Исправление: переменная $sent_http_cache_control возвращала
4063        содержимое только одной строки "Cache-Control" в заголовке ответа.
4066 Изменения в nginx 0.3.41                                          21.04.2006
4068     *) Добавление: ключ -v.
4070     *) Исправление: при включении в SSI удалённых подзапросов мог произойти
4071        segmentation fault.
4073     *) Исправление: в обработке FastCGI.
4075     *) Исправление: если путь к перловым модулям не был указан с помощью
4076        --with-perl_modules_path=PATH или директивы perl_modules, то на
4077        старте происходил segmentation fault.
4080 Изменения в nginx 0.3.40                                          19.04.2006
4082     *) Добавление: модуль ngx_http_dav_module поддерживает метод MKCOL.
4084     *) Добавление: директива create_full_put_path.
4086     *) Добавление: переменная $limit_rate.
4089 Изменения в nginx 0.3.39                                          17.04.2006
4091     *) Добавление: директива uninitialized_variable_warn; уровень
4092        логгирования сообщения о неинициализированной переменной понижен с
4093        уровня alert на warn.
4095     *) Добавление: директива override_charset.
4097     *) Изменение: при использовании неизвестной переменной в SSI-командах
4098        echo и if expr='$name' теперь не записывается в лог сообщение о
4099        неизвестной переменной.
4101     *) Исправление: счётчик активных соединений рос при превышении лимита
4102        соединений, заданного директивой worker_connections; ошибка появилась
4103        в 0.2.0.
4105     *) Исправление: при некоторых условия ограничение скорости соединения
4106        могло не работать; ошибка появилась в 0.3.38.
4109 Изменения в nginx 0.3.38                                          14.04.2006
4111     *) Добавление: модуль ngx_http_dav_module.
4113     *) Изменение: оптимизация модуля ngx_http_perl_module.
4114        Спасибо Сергею Скворцову.
4116     *) Добавление: модуль ngx_http_perl_module поддерживает метод
4117        $r->request_body_file.
4119     *) Добавление: директива client_body_in_file_only.
4121     *) Изменение: теперь при переполнении диска nginx пытается писать
4122        access_log'и только раз в секунду.
4123        Спасибо Антону Южанинову и Максиму Дунину.
4125     *) Исправление: теперь директива limit_rate точнее ограничивает скорость
4126        при значениях больше 100 Kbyte/s.
4127        Спасибо ForJest.
4129     *) Исправление: IMAP/POP3 прокси теперь передаёт серверу авторизации
4130        символы "\r" и "\n" в логине и пароле в закодированном виде.
4131        Спасибо Максиму Дунину.
4134 Изменения в nginx 0.3.37                                          07.04.2006
4136     *) Добавление: директива limit_except.
4138     *) Добавление: директива if поддерживает операторы "!~", "!~*", "-f" и
4139        "!-f".
4141     *) Добавление: модуль ngx_http_perl_module поддерживает метод
4142        $r->request_body.
4144     *) Исправление: в модуле ngx_http_addition_filter_module.
4147 Изменения в nginx 0.3.36                                          05.04.2006
4149     *) Добавление: модуль ngx_http_addition_filter_module.
4151     *) Добавление: директивы proxy_pass и fastcgi_pass можно использовать
4152        внутри блока if.
4154     *) Добавление: директивы proxy_ignore_client_abort и
4155        fastcgi_ignore_client_abort.
4157     *) Добавление: переменная $request_completion.
4159     *) Добавление: модуль ngx_http_perl_module поддерживает методы
4160        $r->request_method и $r->remote_addr.
4162     *) Добавление: модуль ngx_http_ssi_module поддерживает команду elif.
4164     *) Исправление: строка "\/" в начале выражения команды if модуля
4165        ngx_http_ssi_module воспринималась неверно.
4167     *) Исправление: в использовании регулярных выражениях в команде if
4168        модуля ngx_http_ssi_module.
4170     *) Исправление: при задании относительного пути в директивах
4171        client_body_temp_path, proxy_temp_path, fastcgi_temp_path и
4172        perl_modules использовался каталог относительно текущего каталога, а
4173        не относительно префикса сервера.
4176 Изменения в nginx 0.3.35                                          22.03.2006
4178     *) Исправление: accept-фильтр и TCP_DEFER_ACCEPT устанавливались только
4179        для первой директивы listen; ошибка появилась в 0.3.31.
4181     *) Исправление: в директиве proxy_pass без URI при использовании в
4182        подзапросе.
4185 Изменения в nginx 0.3.34                                          21.03.2006
4187     *) Добавление: директива add_header поддерживает переменные.
4190 Изменения в nginx 0.3.33                                          15.03.2006
4192     *) Добавление: параметр http_503 в директивах proxy_next_upstream или
4193        fastcgi_next_upstream.
4195     *) Исправление: ngx_http_perl_module не работал со встроенным в
4196        конфигурационный файл кодом, если он не начинался сразу же с "sub".
4198     *) Исправление: в директиве post_action.
4201 Изменения в nginx 0.3.32                                          11.03.2006
4203     *) Исправление: удаление отладочного логгирования на старте и при
4204        переконфигурации; ошибка появилась в 0.3.31.
4207 Изменения в nginx 0.3.31                                          10.03.2006
4209     *) Изменение: теперь nginx передаёт неверные ответы проксированного
4210        бэкенда.
4212     *) Добавление: директивы listen поддерживают адрес в виде "*:порт".
4214     *) Добавление: поддержка EVFILER_TIMER в MacOSX 10.4.
4216     *) Изменение: обход ошибки обработки миллисекундных таймаутов kqueue в
4217        64-битном ядре MacOSX.
4218        Спасибо Андрею Нигматулину.
4220     *) Исправление: если внутри одного сервера описаны несколько директив
4221        listen, слушающих на разных адресах, то имена серверов вида
4222        "*.domain.tld" работали только для первого адреса; ошибка появилась в
4223        0.3.18.
4225     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
4226        не передавались запросы с телом, записанным во временный файл.
4228     *) Исправление: совместимость с perl 5.8.8.
4231 Изменения в nginx 0.3.30                                          22.02.2006
4233     *) Изменение: уровень записи в лог ошибки ECONNABORTED изменён на error
4234        с уровня crit.
4236     *) Исправление: модуль ngx_http_perl_module не собирался без модуля
4237        ngx_http_ssi_filter_module.
4239     *) Исправление: nginx не собирался на i386 платформе, если использовался
4240        PIC; ошибка появилась в 0.3.27.
4243 Изменения в nginx 0.3.29                                          20.02.2006
4245     *) Добавление: теперь nginx использует меньше памяти, если PHP в режиме
4246        FastCGI передаёт большое количество предупреждений перед ответом.
4248     *) Исправление: в ответах 204 для запросов версии HTTP/1.1 выдавалась
4249        строка заголовка "Transfer-Encoding: chunked".
4251     *) Исправление: nginx возвращал 502 код ответа, если FastCGI сервер
4252        передавал полные строки заголовка ответа в отдельных FastCGI записях.
4254     *) Исправление: если в директиве post_action был указан проксируемый
4255        URI, то он выполнялся только после успешного завершения запроса.
4258 Изменения в nginx 0.3.28                                          16.02.2006
4260     *) Добавление: директива restrict_host_names упразднена.
4262     *) Добавление: параметр конфигурации --with-cpu-opt=ppc64.
4264     *) Исправление: при некоторых условиях проксированное соединение с
4265        клиентом завершалось преждевременно.
4266        Спасибо Владимиру Шутову.
4268     *) Исправление: строка заголовка "X-Accel-Limit-Rate" не учитывалась для
4269        запросов, перенаправленных с помощью строки "X-Accel-Redirect".
4271     *) Исправление: директива post_action работала только после успешного
4272        завершения запроса.
4274     *) Исправление: тело проксированного ответа, создаваемого директивой
4275        post_action, передавалось клиенту.
4278 Изменения в nginx 0.3.27                                          08.02.2006
4280     *) Изменение: директивы variables_hash_max_size и
4281        variables_hash_bucket_size.
4283     *) Добавление: переменная $body_bytes_sent доступна не только в
4284        директиве log_format.
4286     *) Добавление: переменные $ssl_protocol и $ssl_cipher.
4288     *) Добавление: определение размера строки кэша распространённых
4289        процессоров при старте.
4291     *) Добавление: директива accept_mutex теперь поддерживается посредством
4292        fcntl(2) на платформах, отличных от i386, amd64, sparc64 и ppc.
4294     *) Добавление: директива lock_file и параметр автоконфигурации
4295        --with-lock-path=PATH.
4297     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
4298        не передавались запросы с телом.
4301 Изменения в nginx 0.3.26                                          03.02.2006
4303     *) Изменение: директива optimize_host_names переименована в
4304        optimize_server_names.
4306     *) Исправление: при проксировании подзапроса в SSI бэкенду передавался
4307        URI основного запроса, если в директиве proxy_pass отсутствовал URI.
4310 Изменения в nginx 0.3.25                                          01.02.2006
4312     *) Исправление: при неверной конфигурации на старте или во время
4313        переконфигурации происходил segmentation fault; ошибка появилась в
4314        0.3.24.
4317 Изменения в nginx 0.3.24                                          01.02.2006
4319     *) Изменение: обход ошибки в kqueue во FreeBSD.
4321     *) Исправление: ответ, создаваемый директивой post_action, теперь не
4322        передаётся клиенту.
4324     *) Исправление: при использовании большого количества лог-файлов
4325        происходила утечка памяти.
4327     *) Исправление: внутри одного location работала только первая директива
4328        proxy_redirect.
4330     *) Исправление: на 64-битных платформах при старте мог произойти
4331        segmentation fault, если использовалось большое количество имён в
4332        директивах server_name; ошибка появилась в 0.3.18.
4335 Изменения в nginx 0.3.23                                          24.01.2006
4337     *) Добавление: директива optimize_host_names.
4339     *) Исправление: ошибки при использовании переменных в директивах path и
4340        alias.
4342     *) Исправление: модуль ngx_http_perl_module неправильно собирался на
4343        Linux и Solaris.
4346 Изменения в nginx 0.3.22                                          17.01.2006
4348     *) Добавление: модуль ngx_http_perl_module поддерживает методы $r->args
4349        и $r->unescape.
4351     *) Добавление: метод $r->query_string в модуле ngx_http_perl_module
4352        упразднён.
4354     *) Исправление: если в директиве valid_referers указаны только none или
4355        blocked, то происходил segmentation fault; ошибка появилась в 0.3.18.
4358 Изменения в nginx 0.3.21                                          16.01.2006
4360     *) Добавление: модуль ngx_http_perl_module.
4362     *) Изменение: директива valid_referers разрешает использовать рефереры
4363        совсем без URI.
4366 Изменения в nginx 0.3.20                                          11.01.2006
4368     *) Исправление: ошибки в обработке SSI.
4370     *) Исправление: модуль ngx_http_memcached_module не поддерживал ключи в
4371        виде /uri?args.
4374 Изменения в nginx 0.3.19                                          28.12.2005
4376     *) Добавление: директивы path и alias поддерживают переменные.
4378     *) Изменение: теперь директива valid_referers опять учитывает URI.
4380     *) Исправление: ошибки в обработке SSI.
4383 Изменения в nginx 0.3.18                                          26.12.2005
4385     *) Добавление: директива server_names поддерживает имена вида
4386        ".domain.tld".
4388     *) Добавление: директива server_names использует хэш для имён вида
4389        "*.domain.tld" и более эффективный хэш для обычных имён.
4391     *) Изменение: директивы server_names_hash_max_size и
4392        server_names_hash_bucket_size.
4394     *) Изменение: директивы server_names_hash и server_names_hash_threshold
4395        упразднены.
4397     *) Добавление: директива valid_referers использует хэш для имён сайтов.
4399     *) Изменение: теперь директива valid_referers проверяет только имена
4400        сайтов без учёта URI.
4402     *) Исправление: некоторые имена вида ".domain.tld" неверно
4403        обрабатывались модулем ngx_http_map_module.
4405     *) Исправление: если конфигурационного файла не было, то происходил
4406        segmentation fault; ошибка появилась в 0.3.12.
4408     *) Исправление: на 64-битных платформах при старте мог произойти
4409        segmentation fault; ошибка появилась в 0.3.16.
4412 Изменения в nginx 0.3.17                                          18.12.2005
4414     *) Изменение: на Linux configure теперь проверяет наличие epoll и
4415        sendfile64() в ядре.
4417     *) Добавление: директива map поддерживает доменные имена в формате
4418        ".domain.tld".
4420     *) Исправление: во время SSL handshake не иcпользовались таймауты;
4421        ошибка появилась в 0.2.4.
4423     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
4425     *) Исправление: при использовании протокола HTTPS в директиве proxy_pass
4426        по умолчанию использовался порт 80.
4429 Изменения в nginx 0.3.16                                          16.12.2005
4431     *) Добавление: модуль ngx_http_map_module.
4433     *) Добавление: директивы types_hash_max_size и types_hash_bucket_size.
4435     *) Добавление: директива ssi_value_length.
4437     *) Добавление: директива worker_rlimit_core.
4439     *) Изменение: при сборке компиляторами icc 8.1 и 9.0 с оптимизацией для
4440        Pentium 4 номер соединения в логах всегда был равен 1.
4442     *) Исправление: команда config timefmt в SSI задавала неверный формат
4443        времени.
4445     *) Исправление: nginx не закрывал соединения с IMAP/POP3 бэкендом при
4446        использовании SSL соединений; ошибка появилась в 0.3.13.
4447        Спасибо Rob Mueller.
4449     *) Исправление: segmentation fault мог произойти во время SSL shutdown;
4450        ошибка появилась в 0.3.13.
4453 Изменения в nginx 0.3.15                                          07.12.2005
4455     *) Добавление: новой код 444 в директиве return для закрытия соединения.
4457     *) Добавление: директива so_keepalive в IMAP/POP3 прокси.
4459     *) Исправление: nginx теперь вызывает abort() при обнаружении незакрытых
4460        соединений только при планом выходе и включённой директиве
4461        debug_points.
4464 Изменения в nginx 0.3.14                                          05.12.2005
4466     *) Исправление: в ответе 304 передавалось тело ответа; ошибка появилась
4467        в 0.3.13.
4470 Изменения в nginx 0.3.13                                          05.12.2005
4472     *) Добавление: IMAP/POP3 прокси поддерживает STARTTLS и STLS.
4474     *) Исправление: IMAP/POP3 прокси не работала с методами select, poll и
4475        /dev/poll.
4477     *) Исправление: ошибки в обработке SSI.
4479     *) Исправление: sendfilev() в Solaris теперь не используется при
4480        передаче тела запроса FastCGI-серверу через unix domain сокет.
4482     *) Исправление: директива auth_basic не запрещала аутентификацию; ошибка
4483        появилась в 0.3.11.
4486 Изменения в nginx 0.3.12                                          26.11.2005
4488     *) Безопасность: если nginx был собран с модулем ngx_http_realip_module,
4489        то при использовании директивы "satisfy_any on" директивы доступа и
4490        аутентификации не работали. Модуль ngx_http_realip_module не
4491        собирался и не собирается по умолчанию.
4493     *) Изменение: имя переменной "$time_gmt" изменено на "$time_local".
4495     *) Изменение: директивы proxy_header_buffer_size и
4496        fastcgi_header_buffer_size переименованы соответственно в
4497        proxy_buffer_size и fastcgi_buffer_size.
4499     *) Добавление: модуль ngx_http_memcached_module.
4501     *) Добавление: директива proxy_buffering.
4503     *) Исправление: изменение в работе с accept mutex при использовании
4504        метода rtsig; ошибка появилась в 0.3.0.
4506     *) Исправление: если клиент передал строку "Transfer-Encoding: chunked"
4507        в заголовке запроса, то nginx теперь выдаёт ошибку 411.
4509     *) Исправление: при наследовании директивы auth_basic с уровня http в
4510        строке "WWW-Authenticate" заголовка ответа выводился realm без текста
4511        "Basic realm".
4513     *) Исправление: если в директиве access_log был явно указан формат
4514        combined, то в лог записывались пустые строки; ошибка появилась в
4515        0.3.8.
4517     *) Исправление: nginx не работал на платформе sparc под любыми OS, кроме
4518        Solaris.
4520     *) Исправление: в директиве if теперь не нужно разделять пробелом строку
4521        в кавычках и закрывающую скобку.
4524 Изменения в nginx 0.3.11                                          15.11.2005
4526     *) Исправление: nginx не передавал при проксировании тело запроса и
4527        строки заголовка клиента; ошибка появилась в 0.3.10.
4530 Изменения в nginx 0.3.10                                          15.11.2005
4532     *) Изменение: директива valid_referers и переменная $invalid_referer
4533        перенесены из модуля ngx_http_rewrite_module в новый модуль
4534        ngx_http_referer_module.
4536     *) Изменение: имя переменной "$apache_bytes_sent" изменено на
4537        "$body_bytes_sent".
4539     *) Добавление: переменные "$sent_http_...".
4541     *) Добавление: директива if поддерживает операции "=" и "!=".
4543     *) Добавление: директива proxy_pass поддерживает протокол HTTPS.
4545     *) Добавление: директива proxy_set_body.
4547     *) Добавление: директива post_action.
4549     *) Добавление: модуль ngx_http_empty_gif_module.
4551     *) Добавление: директива worker_cpu_affinity для Linux.
4553     *) Исправление: директива rewrite не раскодировала символы в редиректах
4554        в URI, теперь символы раскодируются, кроме символов %00-%25 и
4555        %7F-%FF.
4557     *) Исправление: nginx не собирался компилятором icc 9.0.
4559     *) Исправление: если для статического файла нулевого размера был
4560        разрешён SSI, то ответ передавался неверно при кодировании chunk'ами.
4563 Изменения в nginx 0.3.9                                           10.11.2005
4565     *) Исправление: nginx считал небезопасными URI, в которых между двумя
4566        слэшами находилось два любых символа; ошибка появилась в 0.3.8.
4569 Изменения в nginx 0.3.8                                           09.11.2005
4571     *) Безопасность: nginx теперь проверят URI, полученные от бэкенда в
4572        строке "X-Accel-Redirect" в заголовке ответа, или в SSI файле на
4573        наличие путей "/../" и нулей.
4575     *) Изменение: nginx теперь не воспринимает пустое имя как правильное в
4576        строке "Authorization" в заголовке запроса.
4578     *) Добавление: директива ssl_session_timeout модулей ngx_http_ssl_module
4579        и ngx_imap_ssl_module.
4581     *) Добавление: директива auth_http_header модуля
4582        ngx_imap_auth_http_module.
4584     *) Добавление: директива add_header.
4586     *) Добавление: модуль ngx_http_realip_module.
4588     *) Добавление: новые переменные для использования в директиве
4589        log_format: $bytes_sent, $apache_bytes_sent, $status, $time_gmt,
4590        $uri, $request_time, $request_length, $upstream_status,
4591        $upstream_response_time, $gzip_ratio, $uid_got, $uid_set,
4592        $connection, $pipe и $msec. Параметры в виде "%name" скоро будут
4593        упразднены.
4595     *) Изменение: в директиве "if" ложными значениями переменных теперь
4596        являются пустая строка "" и строки, начинающиеся на "0".
4598     *) Исправление: при работает с проксированными или FastCGI-серверами
4599        nginx мог оставлять открытыми соединения и временные файлы с
4600        запросами клиентов.
4602     *) Исправление: рабочие процессы не сбрасывали буферизированные логи при
4603        плавном выходе.
4605     *) Исправление: если URI запроса изменялось с помощью rewrite, а затем
4606        запрос проксировался в location, заданном регулярным выражением, то
4607        бэкенду передавался неверный запрос; ошибка появилась в 0.2.6.
4609     *) Исправление: директива expires не удаляла уже установленную строку
4610        заголовка "Expires".
4612     *) Исправление: при использовании метода rtsig и нескольких рабочих
4613        процессах nginx мог перестать принимать запросы.
4615     *) Исправление: в SSI командах неверно обрабатывались строки "\"" и
4616        "\'".
4618     *) Исправление: если ответ заканчивался сразу же после SSI команды, то
4619        при использовании сжатия ответ передавался не до конца или не
4620        передавался вообще.
4623 Изменения в nginx 0.3.7                                           27.10.2005
4625     *) Добавление: директива access_log поддерживает параметр buffer=.
4627     *) Исправление: nginx не собирался на платформах, отличных от i386,
4628        amd64, sparc и ppc; ошибка появилась в 0.3.2.
4631 Изменения в nginx 0.3.6                                           24.10.2005
4633     *) Изменение: IMAP/POP3 прокси теперь не передаёт серверу авторизации
4634        пустой логин.
4636     *) Добавление: директива log_format поддерживает переменные в виде
4637        $name.
4639     *) Исправление: если хотя бы в одном сервере не было описано ни одной
4640        директивы listen, то nginx не слушал на 80 порту; ошибка появилась в
4641        0.3.3.
4643     *) Исправление: если в директиве proxy_pass отсутствовал URI, то всегда
4644        использовался порт 80.
4647 Изменения в nginx 0.3.5                                           21.10.2005
4649     *) Исправление: если логин IMAP/POP3 менялся сервером авторизации, то
4650        мог произойти segmentation fault; ошибка появилась в 0.2.2.
4652     *) Исправление: accept mutex не работал, все соединения обрабатывались
4653        одним рабочим процессом; ошибка появилась в 0.3.3.
4655     *) Исправление: при использовании метода rtsig и директивы
4656        timer_resolution не работали таймауты.
4659 Изменения в nginx 0.3.4                                           19.10.2005
4661     *) Исправление: nginx не собирался на Linux 2.4+ и MacOS X; ошибка
4662        появилась в 0.3.3.
4665 Изменения в nginx 0.3.3                                           19.10.2005
4667     *) Изменение: параметры "bl" и "af" директивы listen переименованы в
4668        "backlog" и "accept_filter".
4670     *) Добавление: параметры "rcvbuf" и "sndbuf" в директиве listen.
4672     *) Изменение: параметр лога $msec теперь не требует дополнительного
4673        системного вызова gettimeofday().
4675     *) Добавление: ключ -t теперь проверяет директивы listen.
4677     *) Исправление: если в директиве listen был указан неверный адрес, то
4678        nginx после сигнала -HUP оставлял открытый сокет в состоянии CLOSED.
4680     *) Исправление: для индексных файлов, содержащих в имени переменную, мог
4681        неверно выставляться тип mime по умолчанию; ошибка появилась в 0.3.0.
4683     *) Добавление: директива timer_resolution.
4685     *) Добавление: параметр лога $upstream_response_time в миллисекундах.
4687     *) Исправление: временный файл с телом запроса клиента теперь удаляется
4688        сразу после того, как клиенту передан заголовок ответа.
4690     *) Исправление: совместимость с OpenSSL 0.9.6.
4692     *) Исправление: пути к файлам с SSL сертификатом и ключом не могли быть
4693        относительными.
4695     *) Исправление: директива ssl_prefer_server_ciphers не работала для
4696        модуля ngx_imap_ssl_module.
4698     *) Исправление: директива ssl_protocols позволяла задать только один
4699        протокол.
4702 Изменения в nginx 0.3.2                                           12.10.2005
4704     *) Добавление: поддержка Sun Studio 10 C compiler.
4706     *) Добавление: директивы proxy_upstream_max_fails,
4707        proxy_upstream_fail_timeout, fastcgi_upstream_max_fails и
4708        fastcgi_upstream_fail_timeout.
4711 Изменения в nginx 0.3.1                                           10.10.2005
4713     *) Исправление: во время переполнения очереди сигналов при использовании
4714        метода rtsig происходил segmentation fault; ошибка появилась в 0.2.0.
4716     *) Изменение: корректная обработка пар "\\", "\"", "\'" и "\$" в SSI.
4719 Изменения в nginx 0.3.0                                           07.10.2005
4721     *) Изменение: убрано десятидневное ограничение времени работы рабочего
4722        процесса. Ограничение было введено из-за переполнения миллисекундных
4723        таймеров.
4726 Изменения в nginx 0.2.6                                           05.10.2005
4728     *) Изменение: с 60 до 10 секунд уменьшено время повторного обращения к
4729        бэкенду при использовании распределения нагрузки.
4731     *) Изменение: директива proxy_pass_unparsed_uri упразднена, оригинальный
4732        запрос теперь передаётся, если в директиве proxy_pass отсутствует
4733        URI.
4735     *) Добавление: директива error_page поддерживает редиректы и позволяет
4736        более гибко менять код ошибки.
4738     *) Изменение: в проксированных подзапросах теперь игнорируется
4739        переданный charset.
4741     *) Исправление: если после изменения URI в блоке if для запроса не
4742        находилась новая конфигурация, то правила модуля
4743        ngx_http_rewrite_module выполнялись снова.
4745     *) Исправление: если директива set устанавливала переменную модуля
4746        ngx_http_geo_module в какой-либо части конфигурации, то эта
4747        переменная не была доступна в других частях конфигурации и выдавалась
4748        ошибка "using uninitialized variable"; ошибка появилась в 0.2.2.
4751 Изменения в nginx 0.2.5                                           04.10.2005
4753     *) Изменение: дублирующее значение переменной модуля ngx_http_geo_module
4754        теперь выдаёт предупреждение и изменяет старое значение.
4756     *) Добавление: модуль ngx_http_ssi_module поддерживает команду set.
4758     *) Добавление: модуль ngx_http_ssi_module поддерживает параметр file в
4759        команде include.
4761     *) Добавление: модуль ngx_http_ssi_module поддерживает подстановку
4762        значений переменных в выражениях команды if.
4765 Изменения в nginx 0.2.4                                           03.10.2005
4767     *) Добавление: модуль ngx_http_ssi_module поддерживает выражения
4768        "$var=text", "$var!=text", "$var=/text/" и "$var!=/text/" в команде
4769        if.
4771     *) Исправление: ошибки при проксировании location без слэша в конце;
4772        ошибка появилась в 0.1.44.
4774     *) Исправление: при использовании метода rtsig мог произойти
4775        segmentation fault; ошибка появилась в 0.2.0.
4778 Изменения в nginx 0.2.3                                           30.09.2005
4780     *) Исправление: nginx не собирался без параметра --with-debug; ошибка
4781        появилась в 0.2.2.
4784 Изменения в nginx 0.2.2                                           30.09.2005
4786     *) Добавление: команда config errmsg в модуле ngx_http_ssi_module.
4788     *) Изменение: переменные модуля ngx_http_geo_module можно переопределять
4789        директивой set.
4791     *) Добавление: директивы ssl_protocols и ssl_prefer_server_ciphers
4792        модулей ngx_http_ssl_module и ngx_imap_ssl_module.
4794     *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе
4795        длинных имён файлов;
4797     *) Исправление: модуль ngx_http_autoindex_module теперь не показывает
4798        файлы, начинающиеся на точку.
4800     *) Исправление: если SSL handshake завершался с ошибкой, то это могло
4801        привести также к закрытию другого соединения.
4802        Спасибо Rob Mueller.
4804     *) Исправление: экспортные версии MSIE 5.x не могли соединиться по
4805        HTTPS.
4808 Изменения в nginx 0.2.1                                           23.09.2005
4810     *) Исправление: если все бэкенды, используемые для балансировки
4811        нагрузки, оказывались в нерабочем состоянии после одной ошибки, то
4812        nginx мог зациклится; ошибка появилась в 0.2.0.
4815 Изменения в nginx 0.2.0                                           23.09.2005
4817     *) Изменились имена pid-файлов, используемые во время обновления
4818        исполняемого файла. Ручное переименование теперь не нужно. Старый
4819        основной процесс добавляет к своему pid-файл суффикс ".oldbin" и
4820        запускает новый исполняемый файл. Новый основной процесс создаёт
4821        обычный pid-файл без суффикса ".newbin". Если новый основной процесс
4822        выходит, то старый процесс переименовывает свой pid-файл c суффиксом
4823        ".oldbin" в pid-файл без суффикса. При обновлении с версии 0.1.х до
4824        0.2.0 нужно учитывать, что оба процесса - старый 0.1.x и новый
4825        0.2.0 - используют pid-файл без суффиксов.
4827     *) Изменение: директива worker_connections, новое название директивы
4828        connections; директива теперь задаёт максимальное число соединений, а
4829        не максимально возможный номер дескриптора для сокета.
4831     *) Добавление: SSL поддерживает кэширование сессий в пределах одного
4832        рабочего процесса.
4834     *) Добавление: директива satisfy_any.
4836     *) Изменение: модули ngx_http_access_module и ngx_http_auth_basic_module
4837        не работают для подзапросов.
4839     *) Добавление: директивы worker_rlimit_nofile и
4840        worker_rlimit_sigpending.
4842     *) Исправление: если все бэкенды, используемые для балансировки
4843        нагрузки, оказывались в нерабочем состоянии после одной ошибки, то
4844        nginx не обращался к ним в течение 60 секунд.
4846     *) Исправление: в парсинге аргументов IMAP/POP3 команд.
4847        Спасибо Rob Mueller.
4849     *) Исправление: ошибки при использовании SSL в IMAP/POP3 прокси.
4851     *) Исправление: ошибки при использовании SSI и сжатия.
4853     *) Исправление: в ответах 304 не добавлялись строки заголовка ответа
4854        "Expires" и "Cache-Control".
4855        Спасибо Александру Кукушкину.
4858 Изменения в nginx 0.1.45                                          08.09.2005
4860     *) Изменение: директива ssl_engine упразднена в модуле
4861        ngx_http_ssl_module и перенесена на глобальный уровень.
4863     *) Исправление: ответы с подзапросами, включённые с помощью SSI, не
4864        передавались через SSL соединение.
4866     *) Разные исправления в IMAP/POP3 прокси.
4869 Изменения в nginx 0.1.44                                          06.09.2005
4871     *) Добавление: IMAP/POP3 прокси поддерживает SSL.
4873     *) Добавление: директива proxy_timeout модуля ngx_imap_proxy_module.
4875     *) Добавление: директива userid_mark.
4877     *) Добавление: значение переменной $remote_user определяется независимо
4878        от того, используется ли авторизация или нет.
4881 Изменения в nginx 0.1.43                                          30.08.2005
4883     *) Добавление: listen(2) backlog в директиве listen можно менять по
4884        сигналу -HUP.
4886     *) Добавление: скрипт geo2nginx.pl добавлен в contrib.
4888     *) Изменение: параметры FastCGI с пустым значениями теперь передаются
4889        серверу.
4891     *) Исправление: если в ответе проксированного сервера или FastCGI
4892        сервера была строка "Cache-Control", то при использовании директивы
4893        expires происходил segmentation fault или рабочий процесс мог
4894        зациклится; в режиме прокси ошибка появилась в 0.1.29.
4897 Изменения в nginx 0.1.42                                          23.08.2005
4899     *) Исправление: если URI запроса получался нулевой длины после обработки
4900        модулем ngx_http_rewrite_module, то в модуле ngx_http_proxy_module
4901        происходил segmentation fault или bus error.
4903     *) Исправление: директива limit_rate не работала внутри блока if; ошибка
4904        появилась в 0.1.38.
4907 Изменения в nginx 0.1.41                                          25.07.2005
4909     *) Исправление: если переменная использовалась в файле конфигурации, то
4910        она не могла использоваться в SSI.
4913 Изменения в nginx 0.1.40                                          22.07.2005
4915     *) Исправление: если клиент слал очень длинную строку заголовка, то в
4916        логе не помещалась информация, связанная с этим запросом.
4918     *) Исправление: при использовании "X-Accel-Redirect" не передавалась
4919        строка "Set-Cookie"; ошибка появилась в 0.1.39.
4921     *) Исправление: при использовании "X-Accel-Redirect" не передавалась
4922        строка "Content-Disposition".
4924     *) Исправление: по сигналу SIGQUIT основной процесс не закрывал сокеты,
4925        на которых он слушал.
4927     *) Исправление: после обновления исполняемого файла на лету на Linux и
4928        Solaris название процесса в команде ps становилось короче.
4931 Изменения в nginx 0.1.39                                          14.07.2005
4933     *) Изменения в модуле ngx_http_charset_module: директива default_charset
4934        упразднена; директива charset задаёт кодировку ответа; директива
4935        source_charset задаёт только исходную кодировку.
4937     *) Исправление: при перенаправлении ошибки 401, полученной от бэкенда,
4938        не передавалась строка заголовка "WWW-Authenticate".
4940     *) Исправление: модули ngx_http_proxy_module и ngx_http_fastcgi_module
4941        могли закрыть соединение до того, как что-нибудь было передано
4942        клиенту; ошибка появилась в 0.1.38.
4944     *) Изменение: обработка ошибки инициализации в crypt_r() в Linux glibc.
4946     *) Исправление: модуль ngx_http_ssi_module не поддерживал относительные
4947        URI в команде include virtual.
4949     *) Исправление: если в строке заголовка ответа бэкенда была строка
4950        "Location", которую nginx не должен был изменять, то в ответе
4951        передавалось тело 500 ошибки; ошибка появилась в 0.1.29.
4953     *) Исправление: некоторые директивы модулей ngx_http_proxy_module и
4954        ngx_http_fastcgi_module не наследовались с уровня server на уровень
4955        location; ошибка появилась в 0.1.29.
4957     *) Исправление: модуль ngx_http_ssl_module не поддерживал цепочки
4958        сертификатов.
4960     *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе
4961        длинных имён файлов; ошибка появилась в 0.1.38.
4963     *) Исправления в IMAP/POP3 прокси при взаимодействии с бэкендом на
4964        стадии login.
4967 Изменения в nginx 0.1.38                                          08.07.2005
4969     *) Добавление: директива limit_rate поддерживается в режиме прокси и
4970        FastCGI.
4972     *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка
4973        "X-Accel-Limit-Rate" в ответе бэкенда.
4975     *) Добавление: директива break.
4977     *) Добавление: директива log_not_found.
4979     *) Исправление: при перенаправлении запроса с помощью строки заголовка
4980        "X-Accel-Redirect" не изменялся код ответа.
4982     *) Исправление: переменные, установленные директивой set не могли
4983        использоваться в SSI.
4985     *) Исправление: при включении в SSI более одного удалённого подзапроса
4986        мог произойти segmentation fault.
4988     *) Исправление: если статусная строка в ответе бэкенда передавалась в
4989        двух пакетах, то nginx считал ответ неверным; ошибка появилась в
4990        0.1.29.
4992     *) Добавление: директива ssi_types.
4994     *) Добавление: директива autoindex_exact_size.
4996     *) Исправление: модуль ngx_http_autoindex_module не поддерживал длинные
4997        имена файлов в UTF-8.
4999     *) Добавление: IMAP/POP3 прокси.
5002 Изменения в nginx 0.1.37                                          23.06.2005
5004     *) Изменение: в конце файла nginx.pid теперь добавляется "\n".
5006     *) Исправление: при включении большого количества вставок или нескольких
5007        больших вставок с помощью SSI ответ мог передаваться не полностью.
5009     *) Исправление: если все бэкенды возвращали ответ 404, то при
5010        использовании параметра http_404 в директивах proxy_next_upstream или
5011        fastcgi_next_upstream, nginx начинал запрашивать все бэкенды снова.
5014 Изменения в nginx 0.1.36                                          15.06.2005
5016     *) Изменение: если в заголовке запросе есть дублирующиеся строки "Host",
5017        "Connection", "Content-Length" и "Authorization", то nginx теперь
5018        выдаёт ошибку 400.
5020     *) Изменение: директива post_accept_timeout упразднена.
5022     *) Добавление: параметры default, af=, bl=, deferred и bind в директиве
5023        listen.
5025     *) Добавление: поддержка accept фильтров во FreeBSD.
5027     *) Добавление: поддержка TCP_DEFER_ACCEPT в Linux.
5029     *) Исправление: модуль ngx_http_autoindex_module не поддерживал имена
5030        файлов в UTF-8.
5032     *) Исправление: после добавления новый лог-файл ротация этого лога по
5033        сигналу -USR1 выполнялась, только если переконфигурировать nginx два
5034        раза по сигналу -HUP.
5037 Изменения в nginx 0.1.35                                          07.06.2005
5039     *) Добавление: директива working_directory.
5041     *) Добавление: директива port_in_redirect.
5043     *) Исправление: если заголовок ответа бэкенда не помещался в один пакет,
5044        то происходил segmentation fault; ошибка появилась в 0.1.29.
5046     *) Исправление: если было сконфигурировано более 10 серверов или в
5047        сервере не описана директива "listen", то при запуске мог произойти
5048        segmentation fault.
5050     *) Исправление: если ответ не помещался во временный файл, то мог
5051        произойти segmentation fault.
5053     *) Исправление: nginx возвращал ошибку 400 на запросы вида
5054        "GET http://www.domain.com/uri HTTP/1.0"; ошибка появилась в 0.1.28.
5057 Изменения в nginx 0.1.34                                          26.05.2005
5059     *) Исправление: при включении больших ответов с помощью SSI рабочий
5060        процесс мог зациклиться.
5062     *) Исправление: переменные, устанавливаемые директивой "set", не были
5063        доступны в SSI.
5065     *) Добавление: директива autoindex_localtime.
5067     *) Исправление: пустое значение в директиве proxy_set_header запрещает
5068        передачу заголовка.
5071 Изменения в nginx 0.1.33                                          23.05.2005
5073     *) Исправление: nginx не собирался с параметром --without-pcre; ошибка
5074        появилась в 0.1.29.
5076     *) Исправление: 3, 5, 7 и 8 директив proxy_set_header на одном уровне
5077        вызывали bus fault при запуске.
5079     *) Исправление: в редиректах внутри HTTPS сервера был указан протокол
5080        HTTP.
5082     *) Исправление: если директива rewrite использовала выделения внутри
5083        директивы if, то возвращалась ошибка 500.
5086 Изменения в nginx 0.1.32                                          19.05.2005
5088     *) Исправление: в редиректах, выдаваемых с помощью директивы rewrite, не
5089        передавались аргументы; ошибка появилась в 0.1.29.
5091     *) Добавление: директива if поддерживает выделения в регулярных
5092        выражениях.
5094     *) Добавление: директива set поддерживает переменные и выделения из
5095        регулярных выражений.
5097     *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка
5098        "X-Accel-Redirect" в ответе бэкенда.
5101 Изменения в nginx 0.1.31                                          16.05.2005
5103     *) Исправление: при использовании SSL ответ мог передаваться не до
5104        конца.
5106     *) Исправление: ошибки при обработке SSI в ответе, полученного от
5107        FastCGI-сервера.
5109     *) Исправление: ошибки при использовании SSI и сжатия.
5111     *) Исправление: редирект с кодом 301 передавался без тела ответа; ошибка
5112        появилась в 0.1.30.
5115 Изменения в nginx 0.1.30                                          14.05.2005
5117     *) Исправление: при использовании SSI рабочий процесс мог зациклиться.
5119     *) Исправление: при использовании SSL ответ мог передаваться не до
5120        конца.
5122     *) Исправление: если длина части ответа, полученного за один раз от
5123        проксируемого или FastCGI сервера была равна 500 байт, то nginx
5124        возвращал код ответа 500; в режиме прокси ошибка появилась только в
5125        0.1.29.
5127     *) Исправление: nginx не считал неверными директивы с 8-ю или 9-ю
5128        параметрами.
5130     *) Добавление: директива return может возвращать код ответа 204.
5132     *) Добавление: директива ignore_invalid_headers.
5135 Изменения в nginx 0.1.29                                          12.05.2005
5137     *) Добавление: модуль ngx_http_ssi_module поддерживает команду include
5138        virtual.
5140     *) Добавление: модуль ngx_http_ssi_module поддерживает условную команду
5141        вида 'if expr="$NAME"' и команды else и endif. Допускается только
5142        один уровень вложенности.
5144     *) Добавление: модуль ngx_http_ssi_module поддерживает две переменные
5145        DATE_LOCAL и DATE_GMT и команду config timefmt.
5147     *) Добавление: директива ssi_ignore_recycled_buffers.
5149     *) Исправление: если переменная QUERY_STRING не была определена, то в
5150        команде echo не ставилось значение по умолчанию.
5152     *) Изменение: модуль ngx_http_proxy_module полностью переписан.
5154     *) Добавление: директивы proxy_redirect, proxy_pass_request_headers,
5155        proxy_pass_request_body и proxy_method.
5157     *) Добавление: директива proxy_set_header. Директива proxy_x_var
5158        упразднена и должна быть заменена директивой proxy_set_header.
5160     *) Изменение: директива proxy_preserve_host упразднена и должна быть
5161        заменена директивами "proxy_set_header Host $host" и "proxy_redirect
5162        off" или директивой "proxy_set_header Host $host:$proxy_port" и
5163        соответствующими ей директивами proxy_redirect.
5165     *) Изменение: директива proxy_set_x_real_ip упразднена и должна быть
5166        заменена директивой "proxy_set_header X-Real-IP $remote_addr".
5168     *) Изменение: директива proxy_add_x_forwarded_for упразднена и должна
5169        быть заменена директивой
5170        "proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for".
5172     *) Изменение: директива proxy_set_x_url упразднена и должна быть
5173        заменена директивой
5174        "proxy_set_header X-URL http://$host:$server_port$request_uri".
5176     *) Добавление: директива fastcgi_param.
5178     *) Изменение: директивы fastcgi_root, fastcgi_set_var и fastcgi_params
5179        упразднены и должны быть замены директивами fastcgi_param.
5181     *) Добавление: директива index может использовать переменные.
5183     *) Добавление: директива index может быть указана на уровне http и
5184        server.
5186     *) Изменение: только последний параметр в директиве index может быть
5187        абсолютным.
5189     *) Добавление: в директиве rewrite могут использоваться переменные.
5191     *) Добавление: директива internal.
5193     *) Добавление: переменные CONTENT_LENGTH, CONTENT_TYPE, REMOTE_PORT,
5194        SERVER_ADDR, SERVER_PORT, SERVER_PROTOCOL, DOCUMENT_ROOT,
5195        SERVER_NAME, REQUEST_METHOD, REQUEST_URI и REMOTE_USER.
5197     *) Изменение: nginx теперь передаёт неверные строки в заголовках запроса
5198        клиента и ответа бэкенда.
5200     *) Исправление: если бэкенд долго не передавал ответ и send_timeout был
5201        меньше, чем proxy_read_timeout, то клиенту возвращался ответ 408.
5203     *) Исправление: если бэкенд передавал неверную строку в заголовке
5204        ответа, то происходил segmentation fault; ошибка появилась в 0.1.26.
5206     *) Исправление: при использовании отказоустойчивой конфигурации в
5207        FastCGI мог происходить segmentation fault.
5209     *) Исправление: директива expires не удаляла уже установленные строки
5210        заголовка "Expires" и "Cache-Control".
5212     *) Исправление: nginx не учитывал завершающую точку в строке заголовка
5213        запроса "Host".
5215     *) Исправление: модуль ngx_http_auth_module не работал на Linux.
5217     *) Исправление: директива rewrite неверно работала, если в запросе
5218        присутствовали аргументы.
5220     *) Исправление: nginx не собирался на MacOS X.
5223 Изменения в nginx 0.1.28                                          08.04.2005
5225     *) Исправление: при проксировании больших файлов nginx сильно нагружал
5226        процессор.
5228     *) Исправление: nginx не собирался gcc 4.0 на Linux.
5231 Изменения в nginx 0.1.27                                          28.03.2005
5233     *) Добавление: параметр blocked в директиве valid_referers.
5235     *) Изменение: ошибки обработки заголовка запроса теперь записываются на
5236        уровне info, в лог также записывается имя сервера и строки заголовка
5237        запроса "Host" и "Referer".
5239     *) Изменение: при записи ошибок в лог записывается также строка
5240        заголовка запроса "Host".
5242     *) Добавление: директива proxy_pass_unparsed_uri. Специальная обработка
5243        символов "://" в URI, введённая в версии 0.1.11, теперь упразднена.
5245     *) Исправление: nginx не собирался на FreeBSD и Linux, если был указан
5246        параметр конфигурации --without-ngx_http_auth_basic_module.
5249 Изменения в nginx 0.1.26                                          22.03.2005
5251     *) Изменение: неверные строки заголовка, переданные клиентом, теперь
5252        игнорируется и записываются в error_log на уровне info.
5254     *) Изменение: при записи ошибок в лог записывается также имя сервера,
5255        при обращении к которому произошла ошибка.
5257     *) Добавление: модуль ngx_http_auth_basic_module и директивы auth_basic
5258        и auth_basic_user_file.
5261 Изменения в nginx 0.1.25                                          19.03.2005
5263     *) Исправление: nginx не работал на Linux parisc.
5265     *) Добавление: nginx теперь не запускается под FreeBSD, если значение
5266        sysctl kern.ipc.somaxconn слишком большое.
5268     *) Исправление: если модуль ngx_http_index_module делал внутреннее
5269        перенаправление запроса в модули ngx_http_proxy_module или
5270        ngx_http_fastcgi_module, то файл индекса не закрывался после
5271        обслуживания запроса.
5273     *) Добавление: директива proxy_pass может использоваться в location,
5274        заданных регулярным выражением.
5276     *) Добавление: модуль ngx_http_rewrite_filter_module поддерживает
5277        условия вида "if ($HTTP_USER_AGENT ~ MSIE)".
5279     *) Исправление: nginx очень медленно запускался при большом количестве
5280        адресов и использовании текстовых значений в директиве geo.
5282     *) Изменение: имя переменной в директиве geo нужно указывать, как $name.
5283        Прежний вариант без "$" пока работает, но вскоре будет убран.
5285     *) Добавление: параметр лога "%{VARIABLE}v".
5287     *) Добавление: директива "set $name value".
5289     *) Исправление: совместимость с gcc 4.0.
5291     *) Добавление: параметр автоконфигурации --with-openssl-opt=OPTIONS.
5294 Изменения в nginx 0.1.24                                          04.03.2005
5296     *) Добавление: модуль ngx_http_ssi_filter_module поддерживает переменные
5297        QUERY_STRING и DOCUMENT_URI.
5299     *) Исправление: модуль ngx_http_autoindex_module мог выдавать ответ 404
5300        на существующий каталог, если этот каталог был указан как alias.
5302     *) Исправление: модуль ngx_http_ssi_filter_module неправильно работал
5303        при больших ответах.
5305     *) Исправление: отсутствие строки заголовка "Referer" всегда считалось
5306        правильным referrer'ом.
5309 Изменения в nginx 0.1.23                                          01.03.2005
5311     *) Добавление: модуль ngx_http_ssi_filter_module и директивы ssi,
5312        ssi_silent_errors и ssi_min_file_chunk. Поддерживаются команды 'echo
5313        var="HTTP_..." default=""' и 'echo var="REMOTE_ADDR"'.
5315     *) Добавление: параметр лога %request_time.
5317     *) Добавление: если запрос пришёл без строки заголовка "Host", то
5318        директива proxy_preserve_host устанавливает в качестве этого
5319        заголовка первое имя сервера из директивы server_name.
5321     *) Исправление: nginx не собирался на платформах, отличных от i386,
5322        amd64, sparc и ppc; ошибка появилась в 0.1.22.
5324     *) Исправление: модуль ngx_http_autoindex_module теперь показывает
5325        информацию не о символическом линке, а о файле или каталоге, на
5326        который он указывает.
5328     *) Исправление: если клиенту ничего не передавалось, то параметр
5329        %apache_length записывал в лог отрицательную длину заголовка ответа.
5332 Изменения в nginx 0.1.22                                          22.02.2005
5334     *) Исправление: модуль ngx_http_stub_status_module показывал неверную
5335        статистику для обработанных соединений, если использовалось
5336        проксирование или FastCGI-сервер.
5338     *) Исправление: на Linux и Solaris установочные пути были неверно
5339        заключены в кавычки; ошибка появилась в 0.1.21.
5342 Изменения в nginx 0.1.21                                          22.02.2005
5344     *) Исправление: модуль ngx_http_stub_status_module показывал неверную
5345        статистику при использовании метода rtsig или при использовании
5346        нескольких рабочих процессов на SMP машине.
5348     *) Исправление: nginx не собирался компилятором icc под Линуксом или
5349        если библиотека zlib-1.2.x собиралась из исходных текстов.
5351     *) Исправление: nginx не собирался под NetBSD 2.0.
5354 Изменения в nginx 0.1.20                                          17.02.2005
5356     *) Добавление: новые параметры script_filename и remote_port в директиве
5357        fastcgi_params.
5359     *) Исправление: неправильно обрабатывался поток stderr от
5360        FastCGI-сервера.
5363 Изменения в nginx 0.1.19                                          16.02.2005
5365     *) Исправление: если в запросе есть нуль, то для локальных запросов
5366        теперь возвращается ошибка 404.
5368     *) Исправление: nginx не собирался под NetBSD 2.0.
5370     *) Исправление: во время чтения тела запроса клиента в SSL соединении
5371        мог произойти таймаут.
5374 Изменения в nginx 0.1.18                                          09.02.2005
5376     *) Изменение: для совместимости с Solaris 10 в директивах devpoll_events
5377        и devpoll_changes значения по умолчанию уменьшены с 512 до 32.
5379     *) Исправление: директивы proxy_set_x_var и fastcgi_set_var не
5380        наследовались.
5382     *) Исправление: в директиве rewrite, возвращающей редирект, аргументы
5383        присоединялись к URI через символ "&" вместо "?".
5385     *) Исправление: строки для модуля ngx_http_geo_module без символа ";" во
5386        включённом файле игнорировались.
5388     *) Добавление: модуль ngx_http_stub_status_module.
5390     *) Исправление: неизвестный формат лог-файла в директиве access_log
5391        вызывал segmentation fault.
5393     *) Добавление: новый параметр document_root в директиве fastcgi_params.
5395     *) Добавление: директива fastcgi_redirect_errors.
5397     *) Добавление: новый модификатор break в директиве rewrite позволяет
5398        прекратить цикл rewrite/location и устанавливает текущую конфигурацию
5399        для запроса.
5402 Изменения в nginx 0.1.17                                          03.02.2005
5404     *) Изменение: модуль ngx_http_rewrite_module полностью переписан. Теперь
5405        можно делать редиректы, возвращать коды ошибок и проверять переменные
5406        и рефереры. Эти директивы можно использовать внутри location.
5407        Директива redirect упразднена.
5409     *) Добавление: модуль ngx_http_geo_module.
5411     *) Добавление: директивы proxy_set_x_var и fastcgi_set_var.
5413     *) Исправление: конфигурация location с модификатором "=" могла
5414        использоваться в другом location.
5416     *) Исправление: правильный тип ответа выставлялся только для запросов, у
5417        которых в расширении были только маленькие буквы.
5419     *) Исправление: если для location установлен proxy_pass или
5420        fastcgi_pass, и доступ к нему запрещался, а ошибка перенаправлялась
5421        на статическую страницу, то происходил segmentation fault.
5423     *) Исправление: если в проксированном ответе в заголовке "Location"
5424        передавался относительный URL, то к нему добавлялось имя хоста и
5425        слэш; ошибка появилась в 0.1.14.
5427     *) Исправление: на Linux в лог не записывался текст системной ошибки.
5430 Изменения в nginx 0.1.16                                          25.01.2005
5432     *) Исправление: если ответ передавался chunk'ами, то при запросе HEAD
5433        выдавался завершающий chunk.
5435     *) Исправление: заголовок "Connection: keep-alive" выдавался, даже если
5436        директива keepalive_timeout запрещала использование keep-alive.
5438     *) Исправление: ошибки в модуле ngx_http_fastcgi_module вызывали
5439        segmentation fault.
5441     *) Исправление: при использовании SSL сжатый ответ мог передаваться не
5442        до конца.
5444     *) Исправление: опции TCP_NODELAY, TCP_NOPSUH и TCP_CORK, специфичные
5445        для TCP сокетов, не используются для unix domain сокетов.
5447     *) Добавление: директива rewrite поддерживает перезаписывание
5448        аргументов.
5450     *) Исправление: на запрос POST с заголовком "Content-Length: 0"
5451        возвращался ответ 400; ошибка появилась в 0.1.14.
5454 Изменения в nginx 0.1.15                                          19.01.2005
5456     *) Исправление: ошибка соединения с FastCGI-сервером вызывала
5457        segmentation fault.
5459     *) Исправление: корректная обработка регулярного выражения, в котором
5460        число выделенных частей не совпадает с числом подстановок.
5462     *) Добавление: location, который передаётся FastCGI-серверу, может быть
5463        задан с помощью регулярного выражения.
5465     *) Исправление: параметр FastCGI REQUEST_URI теперь передаётся вместе с
5466        аргументами и в том виде, в котором был получен от клиента.
5468     *) Исправление: для использования регулярных выражений в location нужно
5469        было собирать nginx вместе с ngx_http_rewrite_module.
5471     *) Исправление: если бэкенд слушал на 80-ом порту, то при использовании
5472        директивы "proxy_preserve_host on" в заголовке "Host" указывался
5473        также порт 80; ошибка появилась в 0.1.14.
5475     *) Исправление: если задать одинаковые пути в параметрах
5476        автоконфигурации --http-client-body-temp-path=PATH и
5477        --http-proxy-temp-path=PATH или --http-client-body-temp-path=PATH и
5478        --http-fastcgi-temp-path=PATH, то происходил segmentation fault.
5481 Изменения в nginx 0.1.14                                          18.01.2005
5483     *) Добавление: параметры автоконфигурации
5484        --http-client-body-temp-path=PATH, --http-proxy-temp-path=PATH и
5485        --http-fastcgi-temp-path=PATH
5487     *) Изменение: имя каталога с временными файлами, содержащие тело запроса
5488        клиента, задаётся директивой client_body_temp_path, по умолчанию
5489        <prefix>/client_body_temp.
5491     *) Добавление: модуль ngx_http_fastcgi_module и директивы fastcgi_pass,
5492        fastcgi_root, fastcgi_index, fastcgi_params, fastcgi_connect_timeout,
5493        fastcgi_send_timeout, fastcgi_read_timeout, fastcgi_send_lowat,
5494        fastcgi_header_buffer_size, fastcgi_buffers,
5495        fastcgi_busy_buffers_size, fastcgi_temp_path,
5496        fastcgi_max_temp_file_size, fastcgi_temp_file_write_size,
5497        fastcgi_next_upstream и fastcgi_x_powered_by.
5499     *) Исправление: ошибка "[alert] zero size buf"; ошибка появилась в
5500        0.1.3.
5502     *) Изменение: в директиве proxy_pass нужно обязательно указывать URI
5503        после имени хоста.
5505     *) Изменение: если в URI встречался символ %3F, то он считался началом
5506        строки аргументов.
5508     *) Добавление: поддержка unix domain сoкетов в модуле
5509        ngx_http_proxy_module.
5511     *) Добавление: директивы ssl_engine и ssl_ciphers.
5512        Спасибо Сергею Скворцову за SSL-акселератор.
5515 Изменения в nginx 0.1.13                                          21.12.2004
5517     *) Добавление: директивы server_names_hash и
5518        server_names_hash_threshold.
5520     *) Исправление: имена *.domain.tld в директиве server_name не работали.
5522     *) Исправление: параметр лога %request_length записывал неверную длину.
5525 Изменения в nginx 0.1.12                                          06.12.2004
5527     *) Добавление: параметр лога %request_length.
5529     *) Исправление: при использовании /dev/poll, select и poll на
5530        платформах, где возможны ложные срабатывания указанных методов, могли
5531        быть длительные задержки при обработке запроса по keep-alive
5532        соединению. Наблюдалось по крайней мере на Solaris с использованием
5533        /dev/poll.
5535     *) Исправление: директива send_lowat игнорируется на Linux, так как
5536        Linux не поддерживает опцию SO_SNDLOWAT.
5539 Изменения в nginx 0.1.11                                          02.12.2004
5541     *) Добавление: директива worker_priority.
5543     *) Изменение: под FreeBSD директивы tcp_nopush и tcp_nodelay вместе
5544        влияют на передачу ответа.
5546     *) Исправление: nginx не вызывал initgroups().
5547        Спасибо Андрею Ситникову и Андрею Нигматулину.
5549     *) Изменение: ngx_http_auto_index_module теперь выдаёт размер файлов в
5550        байтах.
5552     *) Исправление: ngx_http_auto_index_module возвращал ошибку 500, если в
5553        каталоге есть битый symlink.
5555     *) Исправление: файлы больше 4G не передавались с использованием
5556        sendfile.
5558     *) Исправление: если бэкенд резолвился в несколько адресов и при
5559        ожидании от него ответа происходила ошибка, то процесс зацикливался.
5561     *) Исправление: при использовании метода /dev/poll рабочий процесс мог
5562        завершиться с сообщением "unknown cycle".
5564     *) Исправление: ошибки "close() channel failed".
5566     *) Исправление: автоматическое определение групп nobody и nogroup.
5568     *) Исправление: директива send_lowat не работала на Linux.
5570     *) Исправление: если в конфигурации не было раздела events, то
5571        происходил segmentation fault.
5573     *) Исправление: nginx не собирался под OpenBSD.
5575     *) Исправление: двойные слэшы в "://" в URI превращались в ":/".
5578 Изменения в nginx 0.1.10                                          26.11.2004
5580     *) Исправление: если в запросе без аргументов есть "//", "/./", "/../"
5581        или "%XX", то терялся последний символ в строке запроса; ошибка
5582        появилась в 0.1.9.
5584     *) Исправление: исправление в версии 0.1.9 для файлов больше 2G на Linux
5585        не работало.
5588 Изменения в nginx 0.1.9                                           25.11.2004
5590     *) Исправление: если в запросе есть "//", "/./", "/../" или "%XX", то
5591        проксируемый запрос передавался без аргументов.
5593     *) Исправление: при сжатии больших ответов иногда они передавались не
5594        полностью.
5596     *) Исправление: не передавались файлы больше 2G на Linux,
5597        неподдерживающем sendfile64().
5599     *) Исправление: на Linux при конфигурации сборки нужно было обязательно
5600        использовать параметр --with-poll_module; ошибка появилась в 0.1.8.
5603 Изменения в nginx 0.1.8                                           20.11.2004
5605     *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе
5606        длинных имён файлов.
5608     *) Добавление: модификатор "^~" в директиве location.
5610     *) Добавление: директива proxy_max_temp_file_size.
5613 Изменения в nginx 0.1.7                                           12.11.2004
5615     *) Исправление: при использовании sendfile, если передаваемый файл
5616        менялся, то мог произойти segmentation fault на FreeBSD; ошибка
5617        появилась в 0.1.5.
5620 Изменения в nginx 0.1.6                                           11.11.2004
5622     *) Исправление: при некоторых комбинациях директив location c
5623        регулярными выражениями использовалась конфигурация не из того
5624        location.
5627 Изменения в nginx 0.1.5                                           11.11.2004
5629     *) Исправление: на Solaris и Linux могло быть очень много сообщений
5630        "recvmsg() returned not enough data".
5632     *) Исправление: в режиме прокси без использования sendfile на Solaris
5633        возникала ошибка "writev() failed (22: Invalid argument)". На других
5634        платформах, не поддерживающих sendfile, процесс зацикливался.
5636     *) Исправление: при использовании sendfile в режиме прокси на Solaris
5637        возникал segmentation fault.
5639     *) Исправление: segmentation fault на Solaris.
5641     *) Исправление: обновление исполняемого файла на лету не работало на
5642        Linux.
5644     *) Исправление: в списке файлов, выдаваемом модулем
5645        ngx_http_autoindex_module, не перекодировались пробелы, кавычки и
5646        знаки процента.
5648     *) Изменение: уменьшение операций копирования.
5650     *) Добавление: директива userid_p3p.
5653 Изменения в nginx 0.1.4                                           26.10.2004
5655     *) Исправление: ошибка в модуле ngx_http_autoindex_module.
5658 Изменения в nginx 0.1.3                                           25.10.2004
5660     *) Добавление: модуль ngx_http_autoindex_module и директива autoindex.
5662     *) Добавление: директива proxy_set_x_url.
5664     *) Исправление: модуль проксировании мог привести к зацикливанию, если
5665        не использовался sendfile.
5668 Изменения в nginx 0.1.2                                           21.10.2004
5670     *) Добавление: параметры --user=USER, --group=GROUP и
5671        --with-ld-opt=OPTIONS в configure.
5673     *) Добавление: директива server_name поддерживает *.domain.tld.
5675     *) Исправление: улучшена переносимость на неизвестные платформы.
5677     *) Исправление: нельзя переконфигурировать nginx, если конфигурационный
5678        файл указан в командной строке; ошибка появилась в 0.1.1.
5680     *) Исправление: модуль проксировании мог привести к зацикливанию, если
5681        не использовался sendfile.
5683     *) Исправление: при использовании sendfile текст ответа не
5684        перекодировался согласно директивам модуля charset; ошибка появилась
5685        в 0.1.1.
5687     *) Исправление: очень редкая ошибка при обработке kqueue.
5689     *) Исправление: модуль сжатия сжимал уже сжатые ответы, полученные при
5690        проксировании.
5693 Изменения в nginx 0.1.1                                           11.10.2004
5695     *) Добавление: директива gzip_types.
5697     *) Добавление: директива tcp_nodelay.
5699     *) Добавление: директива send_lowat работает не только на платформах,
5700        поддерживающих kqueue NOTE_LOWAT, но и на всех, поддерживающих
5701        SO_SNDLOWAT.
5703     *) Добавление: эмуляция setproctitle() для Linux и Solaris.
5705     *) Исправление: ошибка при переписывании заголовка "Location" при
5706        проксировании.
5708     *) Исправление: ошибка в модуле ngx_http_chunked_module, приводившая к
5709        зацикливанию.
5711     *) Исправление: ошибки в модуле /dev/poll.
5713     *) Исправление: при проксировании и использовании временных файлов
5714        ответы портились.
5716     *) Исправление: бэкенду передавались запросы с неперекодированными
5717        символами.
5719     *) Исправление: на Linux 2.4 при конфигурации сборки нужно было
5720        обязательно использовать параметр --with-poll_module.
5723 Изменения в nginx 0.1.0                                           04.10.2004
5725     *) Первая публично доступная версия.