Mercurial > hg > nginx-site
comparison text/ru/CHANGES.ru-1.24 @ 2954:4cfe7dc4a871
nginx-1.24.0
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Tue, 11 Apr 2023 17:30:02 +0300 |
parents | text/ru/CHANGES.ru@39a5ac34d794 |
children |
comparison
equal
deleted
inserted
replaced
2953:b9ba7c498d95 | 2954:4cfe7dc4a871 |
---|---|
1 | |
2 Изменения в nginx 1.24.0 11.04.2023 | |
3 | |
4 *) Стабильная ветка 1.24.x. | |
5 | |
6 | |
7 Изменения в nginx 1.23.4 28.03.2023 | |
8 | |
9 *) Изменение: теперь протокол TLSv1.3 разрешён по умолчанию. | |
10 | |
11 *) Изменение: теперь nginx выдаёт предупреждение при переопределении | |
12 параметров listen-сокета, задающих используемые протоколы. | |
13 | |
14 *) Изменение: теперь, если клиент использует pipelining, nginx закрывает | |
15 соединения с ожиданием дополнительных данных (lingering close). | |
16 | |
17 *) Добавление: поддержка byte ranges для ответов модуля | |
18 ngx_http_gzip_static_module. | |
19 | |
20 *) Исправление: диапазоны портов в директиве listen не работали; ошибка | |
21 появилась в 1.23.3. | |
22 Спасибо Валентину Бартеневу. | |
23 | |
24 *) Исправление: для обработки запроса мог быть выбран неверный location, | |
25 если в конфигурации использовался префиксный location длиннее 255 | |
26 символов. | |
27 | |
28 *) Исправление: не-ASCII символы в именах файлов на Windows не | |
29 поддерживались модулями ngx_http_autoindex_module и | |
30 ngx_http_dav_module, а также директивой include. | |
31 | |
32 *) Изменение: уровень логгирования ошибок SSL "data length too long", | |
33 "length too short", "bad legacy version", "no shared signature | |
34 algorithms", "bad digest length", "missing sigalgs extension", | |
35 "encrypted length too long", "bad length", "bad key update", "mixed | |
36 handshake and non handshake data", "ccs received early", "data | |
37 between ccs and finished", "packet length too long", "too many warn | |
38 alerts", "record too small", и "got a fin before a ccs" понижен с | |
39 уровня crit до info. | |
40 | |
41 *) Исправление: при использовании HTTP/2 и директивы error_page для | |
42 перенаправления ошибок с кодом 400 могла происходить утечка сокетов. | |
43 | |
44 *) Исправление: сообщения об ошибках записи в syslog не содержали | |
45 информации о том, что ошибки происходили в процессе записи в syslog. | |
46 Спасибо Safar Safarly. | |
47 | |
48 *) Изменение: при использовании zlib-ng в логах появлялись сообщения | |
49 "gzip filter failed to use preallocated memory". | |
50 | |
51 *) Исправление: в почтовом прокси-сервере. | |
52 | |
53 | |
54 Изменения в nginx 1.23.3 13.12.2022 | |
55 | |
56 *) Исправление: при чтении заголовка протокола PROXY версии 2, | |
57 содержащего большое количество TLV, могла возникать ошибка. | |
58 | |
59 *) Исправление: при использовании SSI для обработки подзапросов, | |
60 созданных другими модулями, в рабочем процессе мог произойти | |
61 segmentation fault. | |
62 Спасибо Ciel Zhao. | |
63 | |
64 *) Изменение: теперь, если при преобразовании в адреса имени хоста, | |
65 указанного в директиве listen, возвращается несколько адресов, nginx | |
66 игнорирует дубликаты среди этих адресов. | |
67 | |
68 *) Исправление: nginx мог нагружать процессор при небуферизированном | |
69 проксировании, если использовались SSL-соединения с бэкендами. | |
70 | |
71 | |
72 Изменения в nginx 1.23.2 19.10.2022 | |
73 | |
74 *) Безопасность: обработка специально созданного mp4-файла модулем | |
75 ngx_http_mp4_module могла приводить к падению рабочего процесса, | |
76 отправке клиенту части содержимого памяти рабочего процесса, а также | |
77 потенциально могла иметь другие последствия (CVE-2022-41741, | |
78 CVE-2022-41742). | |
79 | |
80 *) Добавление: переменные "$proxy_protocol_tlv_...". | |
81 | |
82 *) Добавление: ключи шифрования TLS session tickets теперь автоматически | |
83 меняются при использовании разделяемой памяти в ssl_session_cache. | |
84 | |
85 *) Изменение: уровень логгирования ошибок SSL "bad record type" понижен | |
86 с уровня crit до info. | |
87 Спасибо Murilo Andrade. | |
88 | |
89 *) Изменение: теперь при использовании разделяемой памяти в | |
90 ssl_session_cache сообщения "could not allocate new session" | |
91 логгируются на уровне warn вместо alert и не чаще одного раза в | |
92 секунду. | |
93 | |
94 *) Исправление: nginx/Windows не собирался с OpenSSL 3.0.x. | |
95 | |
96 *) Исправление: в логгировании ошибок протокола PROXY. | |
97 Спасибо Сергею Брестеру. | |
98 | |
99 *) Изменение: при использовании TLSv1.3 с OpenSSL разделяемая память из | |
100 ssl_session_cache расходовалась в том числе на сессии, использующие | |
101 TLS session tickets. | |
102 | |
103 *) Изменение: таймаут, заданный с помощью директивы ssl_session_timeout, | |
104 не работал при использовании TLSv1.3 с OpenSSL или BoringSSL. | |
105 | |
106 | |
107 Изменения в nginx 1.23.1 19.07.2022 | |
108 | |
109 *) Добавление: оптимизация использования памяти в конфигурациях с | |
110 SSL-проксированием. | |
111 | |
112 *) Добавление: теперь с помощью параметра "ipv4=off" директивы | |
113 "resolver" можно запретить поиск IPv4-адресов при преобразовании имён | |
114 в адреса. | |
115 | |
116 *) Изменение: уровень логгирования ошибок SSL "bad key share", "bad | |
117 extension", "bad cipher" и "bad ecpoint" понижен с уровня crit до | |
118 info. | |
119 | |
120 *) Исправление: при возврате диапазонов nginx не удалял строку заголовка | |
121 "Content-Range", если она присутствовала в исходном ответе бэкенда. | |
122 | |
123 *) Исправление: проксированный ответ мог быть отправлен не полностью при | |
124 переконфигурации на Linux; ошибка появилась в 1.17.5. | |
125 | |
126 | |
127 Изменения в nginx 1.23.0 21.06.2022 | |
128 | |
129 *) Изменение во внутреннем API: теперь строки заголовков представлены | |
130 связными списками. | |
131 | |
132 *) Изменение: теперь nginx объединяет произвольные строки заголовков с | |
133 одинаковыми именами при отправке на FastCGI-, SCGI- и uwsgi-бэкенды, | |
134 в методе $r->header_in() модуля ngx_http_perl_module, и при доступе | |
135 через переменные "$http_...", "$sent_http_...", "$sent_trailer_...", | |
136 "$upstream_http_..." и "$upstream_trailer_...". | |
137 | |
138 *) Исправление: если в заголовке ответа бэкенда было несколько строк | |
139 "Vary", при кэшировании nginx учитывал только последнюю из них. | |
140 | |
141 *) Исправление: если в заголовке ответа бэкенда было несколько строк | |
142 "WWW-Authenticate" и использовался перехват ошибок с кодом 401 от | |
143 бэкенда или директива auth_request, nginx пересылал клиенту только | |
144 первую из этих строк. | |
145 | |
146 *) Изменение: уровень логгирования ошибок SSL "application data after | |
147 close notify" понижен с уровня crit до info. | |
148 | |
149 *) Исправление: соединения могли зависать, если nginx был собран на | |
150 Linux 2.6.17 и новее, а использовался на системах без поддержки | |
151 EPOLLRDHUP, в частности, на системах с эмуляцией epoll; ошибка | |
152 появилась в 1.17.5. | |
153 Спасибо Marcus Ball. | |
154 | |
155 *) Исправление: nginx не кэшировал ответ, если строка заголовка ответа | |
156 "Expires" запрещала кэширование, а последующая строка заголовка | |
157 "Cache-Control" разрешала кэширование. | |
158 | |
159 | |
160 Изменения в nginx 1.21.6 25.01.2022 | |
161 | |
162 *) Исправление: при использование EPOLLEXCLUSIVE на Linux распределение | |
163 клиентских соединений между рабочими процессами было неравномерным. | |
164 | |
165 *) Исправление: во время плавного завершения старых рабочих процессов | |
166 nginx возвращал в ответах строку заголовка "Connection: keep-alive". | |
167 | |
168 *) Исправление: в директиве ssl_session_ticket_key при использовании | |
169 TLSv1.3. | |
170 | |
171 | |
172 Изменения в nginx 1.21.5 28.12.2021 | |
173 | |
174 *) Изменение: теперь nginx по умолчанию собирается с библиотекой PCRE2. | |
175 | |
176 *) Изменение: теперь nginx всегда использует sendfile(SF_NODISKIO) на | |
177 FreeBSD. | |
178 | |
179 *) Добавление: поддержка sendfile(SF_NOCACHE) на FreeBSD. | |
180 | |
181 *) Добавление: переменная $ssl_curve. | |
182 | |
183 *) Исправление: при использовании HTTP/2 без SSL вместе с директивами | |
184 sendfile и aio соединения могли зависать. | |
185 | |
186 | |
187 Изменения в nginx 1.21.4 02.11.2021 | |
188 | |
189 *) Изменение: поддержка NPN вместо ALPN для установления | |
190 HTTP/2-соединений упразднена. | |
191 | |
192 *) Изменение: теперь nginx закрывает SSL соединение, если клиент | |
193 использует ALPN, но nginx не поддерживает ни один из присланных | |
194 клиентом протоколов. | |
195 | |
196 *) Изменение: в директиве sendfile_max_chunk значение по умолчанию | |
197 изменено на 2 мегабайта. | |
198 | |
199 *) Добавление: директива proxy_half_close в модуле stream. | |
200 | |
201 *) Добавление: директива ssl_alpn в модуле stream. | |
202 | |
203 *) Добавление: переменная $ssl_alpn_protocol. | |
204 | |
205 *) Добавление: поддержка SSL_sendfile() при использовании OpenSSL 3.0. | |
206 | |
207 *) Добавление: директива mp4_start_key_frame в модуле | |
208 ngx_http_mp4_module. | |
209 Спасибо Tracey Jaquith. | |
210 | |
211 *) Исправление: в переменной $content_length при использовании chunked | |
212 transfer encoding. | |
213 | |
214 *) Исправление: при получении ответа некорректной длины от проксируемого | |
215 бэкенда nginx мог тем не менее закэшировать соединение. | |
216 Спасибо Awdhesh Mathpal. | |
217 | |
218 *) Исправление: некорректные заголовки от бэкендов логгировались на | |
219 уровне info вместо error; ошибка появилась в 1.21.1. | |
220 | |
221 *) Исправление: при использовании HTTP/2 и директивы aio_write запросы | |
222 могли зависать. | |
223 | |
224 | |
225 Изменения в nginx 1.21.3 07.09.2021 | |
226 | |
227 *) Изменение: оптимизация чтения тела запроса при использовании HTTP/2. | |
228 | |
229 *) Исправление: во внутреннем API для обработки тела запроса при | |
230 использовании HTTP/2 и буферизации обрабатываемых данных. | |
231 | |
232 | |
233 Изменения в nginx 1.21.2 31.08.2021 | |
234 | |
235 *) Изменение: теперь nginx возвращает ошибку, если в запросе по | |
236 протоколу HTTP/1.0 присутствует строка заголовка "Transfer-Encoding". | |
237 | |
238 *) Изменение: экспортные шифры больше не поддерживаются. | |
239 | |
240 *) Добавление: совместимость с OpenSSL 3.0. | |
241 | |
242 *) Добавление: теперь серверу аутентификации почтового прокси-сервера | |
243 передаются строки заголовка "Auth-SSL-Protocol" и "Auth-SSL-Cipher". | |
244 Спасибо Rob Mueller. | |
245 | |
246 *) Добавление: API для обработки тела запроса теперь позволяет | |
247 буферизировать обрабатываемые данные. | |
248 | |
249 *) Исправление: SSL-соединения к бэкендам в модуле stream могли зависать | |
250 после SSL handshake. | |
251 | |
252 *) Исправление: уровень безопасности, доступный в OpenSSL 1.1.0 и новее, | |
253 не учитывался при загрузке сертификатов сервера, если был задан через | |
254 "@SECLEVEL=N" в директиве ssl_ciphers. | |
255 | |
256 *) Исправление: SSL-соединения с gRPC-бэкендами могли зависать, если | |
257 использовались методы select, poll или /dev/poll. | |
258 | |
259 *) Исправление: при использовании HTTP/2 тело запроса всегда | |
260 записывалось на диск, если в запросе не было строки заголовка | |
261 "Content-Length". | |
262 | |
263 | |
264 Изменения в nginx 1.21.1 06.07.2021 | |
265 | |
266 *) Изменение: теперь nginx для метода CONNECT всегда возвращает ошибку. | |
267 | |
268 *) Изменение: теперь nginx всегда возвращает ошибку, если в запросе | |
269 одновременно присутствуют строки заголовка "Content-Length" и | |
270 "Transfer-Encoding". | |
271 | |
272 *) Изменение: теперь nginx всегда возвращает ошибку, если в строке | |
273 запроса используются пробелы или управляющие символы. | |
274 | |
275 *) Изменение: теперь nginx всегда возвращает ошибку, если в имени | |
276 заголовка используются пробелы или управляющие символы. | |
277 | |
278 *) Изменение: теперь nginx всегда возвращает ошибку, если в строке | |
279 "Host" заголовка запроса используются пробелы или управляющие | |
280 символы. | |
281 | |
282 *) Изменение: оптимизация тестирования конфигурации при использовании | |
283 большого количества listen-сокетов. | |
284 | |
285 *) Исправление: nginx не экранировал символы """, "<", ">", "\", "^", | |
286 "`", "{", "|", и "}" при проксировании с изменением URI запроса. | |
287 | |
288 *) Исправление: SSL-переменные могли быть пустыми при записи в лог; | |
289 ошибка появилась в 1.19.5. | |
290 | |
291 *) Исправление: keepalive-соединения с gRPC-бэкендами могли не | |
292 закрываться после получения GOAWAY-фрейма. | |
293 | |
294 *) Исправление: уменьшено потребление памяти для долгоживущих запросов | |
295 при проксировании с использованием более 64 буферов. | |
296 | |
297 | |
298 Изменения в nginx 1.21.0 25.05.2021 | |
299 | |
300 *) Безопасность: при использовании директивы resolver во время обработки | |
301 ответа DNS-сервера могла происходить перезапись одного байта памяти, | |
302 что позволяло атакующему, имеющему возможность подделывать UDP-пакеты | |
303 от DNS-сервера, вызвать падение рабочего процесса или, потенциально, | |
304 выполнение произвольного кода (CVE-2021-23017). | |
305 | |
306 *) Добавление: директивы proxy_ssl_certificate, | |
307 proxy_ssl_certificate_key, grpc_ssl_certificate, | |
308 grpc_ssl_certificate_key, uwsgi_ssl_certificate и | |
309 uwsgi_ssl_certificate_key поддерживают переменные. | |
310 | |
311 *) Добавление: директива max_errors в почтовом прокси-сервере. | |
312 | |
313 *) Добавление: почтовый прокси-сервер поддерживает POP3 и IMAP | |
314 pipelining. | |
315 | |
316 *) Добавление: параметр fastopen директивы listen в модуле stream. | |
317 Спасибо Anbang Wen. | |
318 | |
319 *) Исправление: специальные символы не экранировались при автоматическом | |
320 перенаправлении с добавлением завершающего слэша. | |
321 | |
322 *) Исправление: при использовании SMTP pipelining соединения с клиентами | |
323 в почтовом прокси-сервере могли неожиданно закрываться. | |
324 | |
325 | |
326 Изменения в nginx 1.19.10 13.04.2021 | |
327 | |
328 *) Изменение: в директиве keepalive_requests значение по умолчанию | |
329 изменено на 1000. | |
330 | |
331 *) Добавление: директива keepalive_time. | |
332 | |
333 *) Добавление: переменная $connection_time. | |
334 | |
335 *) Изменение: при использовании zlib-ng в логах появлялись сообщения | |
336 "gzip filter failed to use preallocated memory". | |
337 | |
338 | |
339 Изменения в nginx 1.19.9 30.03.2021 | |
340 | |
341 *) Исправление: nginx не собирался с почтовым прокси-сервером, но без | |
342 модуля ngx_mail_ssl_module; ошибка появилась в 1.19.8. | |
343 | |
344 *) Исправление: при работе с gRPC-бэкендами могли возникать ошибки | |
345 "upstream sent response body larger than indicated content length"; | |
346 ошибка появилась в 1.19.1. | |
347 | |
348 *) Исправление: если клиент закрывал соединение в момент отбрасывания | |
349 тела запроса, nginx мог не закрыть соединение до истечения | |
350 keepalive-таймаута. | |
351 | |
352 *) Исправление: при ожидании задержки limit_req или auth_delay, а также | |
353 при работе с бэкендами nginx мог не обнаружить, что соединение уже | |
354 закрыто клиентом. | |
355 | |
356 *) Исправление: в методе обработки соединений eventport. | |
357 | |
358 | |
359 Изменения в nginx 1.19.8 09.03.2021 | |
360 | |
361 *) Добавление: в директиве proxy_cookie_flags теперь флаги можно | |
362 задавать с помощью переменных. | |
363 | |
364 *) Добавление: параметр proxy_protocol в директиве listen, директивы | |
365 proxy_protocol и set_real_ip_from в почтовом прокси-сервере. | |
366 | |
367 *) Исправление: HTTP/2-соединения сразу закрывались при использовании | |
368 "keepalive_timeout 0"; ошибка появилась в 1.19.7. | |
369 | |
370 *) Исправление: некоторые ошибки логгировались как неизвестные, если | |
371 nginx был собран с glibc 2.32. | |
372 | |
373 *) Исправление: в методе обработки соединений eventport. | |
374 | |
375 | |
376 Изменения в nginx 1.19.7 16.02.2021 | |
377 | |
378 *) Изменение: обработка соединений в HTTP/2 была изменена и теперь более | |
379 соответствует HTTP/1.x; директивы http2_recv_timeout, | |
380 http2_idle_timeout и http2_max_requests упразднены, вместо них | |
381 следует использовать директивы keepalive_timeout и | |
382 keepalive_requests. | |
383 | |
384 *) Изменение: директивы http2_max_field_size и http2_max_header_size | |
385 упразднены, вместо них следует использовать директиву | |
386 large_client_header_buffers. | |
387 | |
388 *) Добавление: теперь при исчерпании свободных соединений nginx | |
389 закрывает не только keepalive-соединения, но и соединения в lingering | |
390 close. | |
391 | |
392 *) Исправление: в логах могли появляться сообщения "zero size buf in | |
393 output", если бэкенд возвращал некорректный ответ при | |
394 небуферизированном проксировании; ошибка появилась в 1.19.1. | |
395 | |
396 *) Исправление: при использовании директивы return вместе с image_filter | |
397 или xslt_stylesheet HEAD-запросы обрабатывались некорректно. | |
398 | |
399 *) Исправление: в директиве add_trailer. | |
400 | |
401 | |
402 Изменения в nginx 1.19.6 15.12.2020 | |
403 | |
404 *) Исправление: ошибки "no live upstreams", если server в блоке upstream | |
405 был помечен как down. | |
406 | |
407 *) Исправление: при использовании HTTPS в рабочем процессе мог произойти | |
408 segmentation fault; ошибка появилась в 1.19.5. | |
409 | |
410 *) Исправление: nginx возвращал ошибку 400 на запросы вида | |
411 "GET http://example.com?args HTTP/1.0". | |
412 | |
413 *) Исправление: в модулях ngx_http_flv_module и ngx_http_mp4_module. | |
414 Спасибо Chris Newton. | |
415 | |
416 | |
417 Изменения в nginx 1.19.5 24.11.2020 | |
418 | |
419 *) Добавление: ключ -e. | |
420 | |
421 *) Добавление: при сборке дополнительных модулей теперь можно указывать | |
422 одни и те же исходные файлы в разных модулях. | |
423 | |
424 *) Исправление: SSL shutdown не работал при закрытии соединений с | |
425 ожиданием дополнительных данных (lingering close). | |
426 | |
427 *) Исправление: при работе с gRPC-бэкендами могли возникать ошибки | |
428 "upstream sent frame for closed stream". | |
429 | |
430 *) Исправление: во внутреннем API для обработки тела запроса. | |
431 | |
432 | |
433 Изменения в nginx 1.19.4 27.10.2020 | |
434 | |
435 *) Добавление: директивы ssl_conf_command, proxy_ssl_conf_command, | |
436 grpc_ssl_conf_command и uwsgi_ssl_conf_command. | |
437 | |
438 *) Добавление: директива ssl_reject_handshake. | |
439 | |
440 *) Добавление: директива proxy_smtp_auth в почтовом прокси-сервере. | |
441 | |
442 | |
443 Изменения в nginx 1.19.3 29.09.2020 | |
444 | |
445 *) Добавление: модуль ngx_stream_set_module. | |
446 | |
447 *) Добавление: директива proxy_cookie_flags. | |
448 | |
449 *) Добавление: директива userid_flags. | |
450 | |
451 *) Исправление: расширение управления кэшированием stale-if-error | |
452 ошибочно применялось, если бэкенд возвращал ответ с кодом 500, 502, | |
453 503, 504, 403, 404 или 429. | |
454 | |
455 *) Исправление: если использовалось кэширование и бэкенд возвращал | |
456 ответы с строкой заголовка Vary, в логах могли появляться сообщения | |
457 "[crit] cache file ... has too long header". | |
458 | |
459 *) Изменение: при использовании OpenSSL 1.1.1 в логах могли появляться | |
460 сообщения "[crit] SSL_write() failed". | |
461 | |
462 *) Исправление: в логах могли появляться сообщения "SSL_shutdown() | |
463 failed (SSL: ... bad write retry)"; ошибка появилась в 1.19.2. | |
464 | |
465 *) Исправление: при использовании HTTP/2 в рабочем процессе мог | |
466 произойти segmentation fault, если ошибки с кодом 400 с помощью | |
467 директивы error_page перенаправлялись в проксируемый location. | |
468 | |
469 *) Исправление: утечки сокетов при использовании HTTP/2 и подзапросов в | |
470 модуле njs. | |
471 | |
472 | |
473 Изменения в nginx 1.19.2 11.08.2020 | |
474 | |
475 *) Изменение: теперь nginx начинает закрывать keepalive-соединения, не | |
476 дожидаясь исчерпания всех свободных соединений, а также пишет об этом | |
477 предупреждение в лог ошибок. | |
478 | |
479 *) Изменение: оптимизация чтения тела запроса при использовании chunked | |
480 transfer encoding. | |
481 | |
482 *) Исправление: утечки памяти при использовании директивы ssl_ocsp. | |
483 | |
484 *) Исправление: в логах могли появляться сообщения "zero size buf in | |
485 output", если FastCGI-сервер возвращал некорректный ответ; ошибка | |
486 появилась в 1.19.1. | |
487 | |
488 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
489 если размеры large_client_header_buffers отличались в разных | |
490 виртуальных серверах. | |
491 | |
492 *) Исправление: SSL shutdown мог не работать. | |
493 | |
494 *) Исправление: в логах могли появляться сообщения "SSL_shutdown() | |
495 failed (SSL: ... bad write retry)". | |
496 | |
497 *) Исправление: в модуле ngx_http_slice_module. | |
498 | |
499 *) Исправление: в модуле ngx_http_xslt_filter_module. | |
500 | |
501 | |
502 Изменения в nginx 1.19.1 07.07.2020 | |
503 | |
504 *) Изменение: директивы lingering_close, lingering_time и | |
505 lingering_timeout теперь работают при использовании HTTP/2. | |
506 | |
507 *) Изменение: теперь лишние данные, присланные бэкендом, всегда | |
508 отбрасываются. | |
509 | |
510 *) Изменение: теперь при получении слишком короткого ответа от | |
511 FastCGI-сервера nginx пытается отправить клиенту доступную часть | |
512 ответа, после чего закрывает соединение с клиентом. | |
513 | |
514 *) Изменение: теперь при получении ответа некорректной длины от | |
515 gRPC-бэкенда nginx прекращает обработку ответа с ошибкой. | |
516 | |
517 *) Добавление: параметр min_free в директивах proxy_cache_path, | |
518 fastcgi_cache_path, scgi_cache_path и uwsgi_cache_path. | |
519 Спасибо Adam Bambuch. | |
520 | |
521 *) Исправление: nginx не удалял unix domain listen-сокеты при плавном | |
522 завершении по сигналу SIGQUIT. | |
523 | |
524 *) Исправление: UDP-пакеты нулевого размера не проксировались. | |
525 | |
526 *) Исправление: проксирование на uwsgi-бэкенды с использованием SSL | |
527 могло не работать. | |
528 Спасибо Guanzhong Chen. | |
529 | |
530 *) Исправление: в обработке ошибок при использовании директивы ssl_ocsp. | |
531 | |
532 *) Исправление: при использовании файловых систем XFS и NFS размер кэша | |
533 на диске мог считаться некорректно. | |
534 | |
535 *) Исправление: если сервер memcached возвращал некорректный ответ, в | |
536 логах могли появляться сообщения "negative size buf in writer". | |
537 | |
538 | |
539 Изменения в nginx 1.19.0 26.05.2020 | |
540 | |
541 *) Добавление: проверка клиентских сертификатов с помощью OCSP. | |
542 | |
543 *) Исправление: при работе с gRPC-бэкендами могли возникать ошибки | |
544 "upstream sent frame for closed stream". | |
545 | |
546 *) Исправление: OCSP stapling мог не работать, если не была указана | |
547 директива resolver. | |
548 | |
549 *) Исправление: соединения с некорректным HTTP/2 preface не | |
550 логгировались. | |
551 | |
552 | |
553 Изменения в nginx 1.17.10 14.04.2020 | |
554 | |
555 *) Добавление: директива auth_delay. | |
556 | |
557 | |
558 Изменения в nginx 1.17.9 03.03.2020 | |
559 | |
560 *) Изменение: теперь nginx не разрешает несколько строк "Host" в | |
561 заголовке запроса. | |
562 | |
563 *) Исправление: nginx игнорировал дополнительные строки | |
564 "Transfer-Encoding" в заголовке запроса. | |
565 | |
566 *) Исправление: утечки сокетов при использовании HTTP/2. | |
567 | |
568 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
569 если использовался OCSP stapling. | |
570 | |
571 *) Исправление: в модуле ngx_http_mp4_module. | |
572 | |
573 *) Исправление: при перенаправлении ошибок с кодом 494 с помощью | |
574 директивы error_page nginx возвращал ответ с кодом 494 вместо 400. | |
575 | |
576 *) Исправление: утечки сокетов при использовании подзапросов в модуле | |
577 njs и директивы aio. | |
578 | |
579 | |
580 Изменения в nginx 1.17.8 21.01.2020 | |
581 | |
582 *) Добавление: директива grpc_pass поддерживает переменные. | |
583 | |
584 *) Исправление: при обработке pipelined-запросов по SSL-соединению мог | |
585 произойти таймаут; ошибка появилась в 1.17.5. | |
586 | |
587 *) Исправление: в директиве debug_points при использовании HTTP/2. | |
588 Спасибо Даниилу Бондареву. | |
589 | |
590 | |
591 Изменения в nginx 1.17.7 24.12.2019 | |
592 | |
593 *) Исправление: на старте или во время переконфигурации мог произойти | |
594 segmentation fault, если в конфигурации использовалась директива | |
595 rewrite с пустой строкой замены. | |
596 | |
597 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
598 если директива break использовалась совместно с директивой alias или | |
599 директивой proxy_pass с URI. | |
600 | |
601 *) Исправление: строка Location заголовка ответа могла содержать мусор, | |
602 если URI запроса был изменён на URI, содержащий нулевой символ. | |
603 | |
604 *) Исправление: при возврате перенаправлений с помощью директивы | |
605 error_page запросы с телом обрабатывались некорректно; ошибка | |
606 появилась в 0.7.12. | |
607 | |
608 *) Исправление: утечки сокетов при использовании HTTP/2. | |
609 | |
610 *) Исправление: при обработке pipelined-запросов по SSL-соединению мог | |
611 произойти таймаут; ошибка появилась в 1.17.5. | |
612 | |
613 *) Исправление: в модуле ngx_http_dav_module. | |
614 | |
615 | |
616 Изменения в nginx 1.17.6 19.11.2019 | |
617 | |
618 *) Добавление: переменные $proxy_protocol_server_addr и | |
619 $proxy_protocol_server_port. | |
620 | |
621 *) Добавление: директива limit_conn_dry_run. | |
622 | |
623 *) Добавление: переменные $limit_req_status и $limit_conn_status. | |
624 | |
625 | |
626 Изменения в nginx 1.17.5 22.10.2019 | |
627 | |
628 *) Добавление: теперь nginx использует вызов ioctl(FIONREAD), если он | |
629 доступен, чтобы избежать чтения из быстрого соединения в течение | |
630 долгого времени. | |
631 | |
632 *) Исправление: неполные закодированные символы в конце URI запроса | |
633 игнорировались. | |
634 | |
635 *) Исправление: "/." и "/.." в конце URI запроса не нормализовывались. | |
636 | |
637 *) Исправление: в директиве merge_slashes. | |
638 | |
639 *) Исправление: в директиве ignore_invalid_headers. | |
640 Спасибо Alan Kemp. | |
641 | |
642 *) Исправление: nginx не собирался с MinGW-w64 gcc 8.1 и новее. | |
643 | |
644 | |
645 Изменения в nginx 1.17.4 24.09.2019 | |
646 | |
647 *) Изменение: улучшено детектирование некорректного поведения клиентов в | |
648 HTTP/2. | |
649 | |
650 *) Изменение: в обработке непрочитанного тела запроса при возврате | |
651 ошибок в HTTP/2. | |
652 | |
653 *) Исправление: директива worker_shutdown_timeout могла не работать при | |
654 использовании HTTP/2. | |
655 | |
656 *) Исправление: при использовании HTTP/2 и директивы | |
657 proxy_request_buffering в рабочем процессе мог произойти segmentation | |
658 fault. | |
659 | |
660 *) Исправление: на Windows при использовании SSL уровень записи в лог | |
661 ошибки ECONNABORTED был "crit" вместо "error". | |
662 | |
663 *) Исправление: nginx игнорировал лишние данные при использовании | |
664 chunked transfer encoding. | |
665 | |
666 *) Исправление: если использовалась директива return и при чтении тела | |
667 запроса возникала ошибка, nginx всегда возвращал ошибку 500. | |
668 | |
669 *) Исправление: в обработке ошибок выделения памяти. | |
670 | |
671 | |
672 Изменения в nginx 1.17.3 13.08.2019 | |
673 | |
674 *) Безопасность: при использовании HTTP/2 клиент мог вызвать чрезмерное | |
675 потребление памяти и ресурсов процессора (CVE-2019-9511, | |
676 CVE-2019-9513, CVE-2019-9516). | |
677 | |
678 *) Исправление: при использовании сжатия в логах могли появляться | |
679 сообщения "zero size buf"; ошибка появилась в 1.17.2. | |
680 | |
681 *) Исправление: при использовании директивы resolver в SMTP | |
682 прокси-сервере в рабочем процессе мог произойти segmentation fault. | |
683 | |
684 | |
685 Изменения в nginx 1.17.2 23.07.2019 | |
686 | |
687 *) Изменение: минимальная поддерживаемая версия zlib - 1.2.0.4. | |
688 Спасибо Илье Леошкевичу. | |
689 | |
690 *) Изменение: метод $r->internal_redirect() встроенного перла теперь | |
691 ожидает закодированный URI. | |
692 | |
693 *) Добавление: теперь с помощью метода $r->internal_redirect() | |
694 встроенного перла можно перейти в именованный location. | |
695 | |
696 *) Исправление: в обработке ошибок во встроенном перле. | |
697 | |
698 *) Исправление: на старте или во время переконфигурации мог произойти | |
699 segmentation fault, если в конфигурации использовалось значение hash | |
700 bucket size больше 64 килобайт. | |
701 | |
702 *) Исправление: при использовании методов обработки соединений select, | |
703 poll и /dev/poll nginx мог нагружать процессор во время | |
704 небуферизованного проксирования и при проксировании | |
705 WebSocket-соединений. | |
706 | |
707 *) Исправление: в модуле ngx_http_xslt_filter_module. | |
708 | |
709 *) Исправление: в модуле ngx_http_ssi_filter_module. | |
710 | |
711 | |
712 Изменения в nginx 1.17.1 25.06.2019 | |
713 | |
714 *) Добавление: директива limit_req_dry_run. | |
715 | |
716 *) Добавление: при использовании директивы hash в блоке upstream пустой | |
717 ключ хэширования теперь приводит к переключению на round-robin | |
718 балансировку. | |
719 Спасибо Niklas Keller. | |
720 | |
721 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
722 если использовалось кэширование и директива image_filter, а ошибки с | |
723 кодом 415 перенаправлялись с помощью директивы error_page; ошибка | |
724 появилась в 1.11.10. | |
725 | |
726 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
727 если использовался встроенный перл; ошибка появилась в 1.7.3. | |
728 | |
729 | |
730 Изменения в nginx 1.17.0 21.05.2019 | |
731 | |
732 *) Добавление: директивы limit_rate и limit_rate_after поддерживают | |
733 переменные. | |
734 | |
735 *) Добавление: директивы proxy_upload_rate и proxy_download_rate в | |
736 модуле stream поддерживают переменные. | |
737 | |
738 *) Изменение: минимальная поддерживаемая версия OpenSSL - 0.9.8. | |
739 | |
740 *) Изменение: теперь postpone-фильтр собирается всегда. | |
741 | |
742 *) Исправление: директива include не работала в блоках if и | |
743 limit_except. | |
744 | |
745 *) Исправление: в обработке byte ranges. | |
746 | |
747 | |
748 Изменения в nginx 1.15.12 16.04.2019 | |
749 | |
750 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
751 если в директивах ssl_certificate или ssl_certificate_key | |
752 использовались переменные и был включён OCSP stapling. | |
753 | |
754 | |
755 Изменения в nginx 1.15.11 09.04.2019 | |
756 | |
757 *) Исправление: в директиве ssl_stapling_file на Windows. | |
758 | |
759 | |
760 Изменения в nginx 1.15.10 26.03.2019 | |
761 | |
762 *) Изменение: теперь при использовании имени хоста в директиве listen | |
763 nginx создаёт listen-сокеты для всех адресов, соответствующих этому | |
764 имени (ранее использовался только первый адрес). | |
765 | |
766 *) Добавление: диапазоны портов в директиве listen. | |
767 | |
768 *) Добавление: возможность загрузки SSL-сертификатов и секретных ключей | |
769 из переменных. | |
770 | |
771 *) Изменение: переменная $ssl_server_name могла быть пустой при | |
772 использовании OpenSSL 1.1.1. | |
773 | |
774 *) Исправление: nginx/Windows не собирался с Visual Studio 2015 и новее; | |
775 ошибка появилась в 1.15.9. | |
776 | |
777 | |
778 Изменения в nginx 1.15.9 26.02.2019 | |
779 | |
780 *) Добавление: директивы ssl_certificate и ssl_certificate_key | |
781 поддерживают переменные. | |
782 | |
783 *) Добавление: метод poll теперь доступен на Windows при использовании | |
784 Windows Vista и новее. | |
785 | |
786 *) Исправление: если при использовании метода select на Windows | |
787 происходила ошибка при установлении соединения с бэкендом, nginx | |
788 ожидал истечения таймаута на установление соединения. | |
789 | |
790 *) Исправление: директивы proxy_upload_rate и proxy_download_rate в | |
791 модуле stream работали некорректно при проксировании UDP-пакетов. | |
792 | |
793 | |
794 Изменения в nginx 1.15.8 25.12.2018 | |
795 | |
796 *) Добавление: переменная $upstream_bytes_sent. | |
797 Спасибо Piotr Sikora. | |
798 | |
799 *) Добавление: новые директивы в скриптах подсветки синтаксиса для vim. | |
800 Спасибо Геннадию Махомеду. | |
801 | |
802 *) Исправление: в директиве proxy_cache_background_update. | |
803 | |
804 *) Исправление: в директиве geo при использовании unix domain | |
805 listen-сокетов. | |
806 | |
807 *) Изменение: при использовании директивы ssl_early_data с OpenSSL в | |
808 логах могли появляться сообщения "ignoring stale global SSL error ... | |
809 bad length". | |
810 | |
811 *) Исправление: в nginx/Windows. | |
812 | |
813 *) Исправление: в модуле ngx_http_autoindex_module на 32-битных | |
814 платформах. | |
815 | |
816 | |
817 Изменения в nginx 1.15.7 27.11.2018 | |
818 | |
819 *) Добавление: директива proxy_requests в модуле stream. | |
820 | |
821 *) Добавление: параметр "delay" директивы "limit_req". | |
822 Спасибо Владиславу Шабанову и Петру Щучкину. | |
823 | |
824 *) Исправление: утечки памяти в случае ошибок при переконфигурации. | |
825 | |
826 *) Исправление: в переменных $upstream_response_time, | |
827 $upstream_connect_time и $upstream_header_time. | |
828 | |
829 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
830 если использовался модуль ngx_http_mp4_module на 32-битных | |
831 платформах. | |
832 | |
833 | |
834 Изменения в nginx 1.15.6 06.11.2018 | |
835 | |
836 *) Безопасность: при использовании HTTP/2 клиент мог вызвать чрезмерное | |
837 потреблению памяти (CVE-2018-16843) и ресурсов процессора | |
838 (CVE-2018-16844). | |
839 | |
840 *) Безопасность: при обработке специально созданного mp4-файла модулем | |
841 ngx_http_mp4_module содержимое памяти рабочего процесса могло быть | |
842 отправлено клиенту (CVE-2018-16845). | |
843 | |
844 *) Добавление: директивы proxy_socket_keepalive, | |
845 fastcgi_socket_keepalive, grpc_socket_keepalive, | |
846 memcached_socket_keepalive, scgi_socket_keepalive и | |
847 uwsgi_socket_keepalive. | |
848 | |
849 *) Исправление: если nginx был собран с OpenSSL 1.1.0, а использовался с | |
850 OpenSSL 1.1.1, протокол TLS 1.3 всегда был разрешён. | |
851 | |
852 *) Исправление: при работе с gRPC-бэкендами могло расходоваться большое | |
853 количество памяти. | |
854 | |
855 | |
856 Изменения в nginx 1.15.5 02.10.2018 | |
857 | |
858 *) Исправление: при использовании OpenSSL 1.1.0h и новее в рабочем | |
859 процессе мог произойти segmentation fault; ошибка появилась в 1.15.4. | |
860 | |
861 *) Исправление: незначительных потенциальных ошибок. | |
862 | |
863 | |
864 Изменения в nginx 1.15.4 25.09.2018 | |
865 | |
866 *) Добавление: теперь директиву ssl_early_data можно использовать с | |
867 OpenSSL. | |
868 | |
869 *) Исправление: в модуле ngx_http_uwsgi_module. | |
870 Спасибо Chris Caputo. | |
871 | |
872 *) Исправление: соединения к некоторым gRPC-бэкендам могли не | |
873 кэшироваться при использовании директивы keepalive. | |
874 | |
875 *) Исправление: при использовании директивы error_page для | |
876 перенаправления ошибок, возникающих на ранних этапах обработки | |
877 запроса, в частности ошибок с кодом 400, могла происходить утечка | |
878 сокетов. | |
879 | |
880 *) Исправление: директива return при возврате ошибок не изменяла код | |
881 ответа, если запрос был перенаправлен с помощью директивы error_page. | |
882 | |
883 *) Исправление: стандартные сообщения об ошибках и ответы модуля | |
884 ngx_http_autoindex_module содержали атрибут bgcolor, что могло | |
885 приводить к их некорректному отображению при использовании | |
886 пользовательских настроек цветов в браузерах. | |
887 Спасибо Nova DasSarma. | |
888 | |
889 *) Изменение: уровень логгирования ошибок SSL "no suitable key share" и | |
890 "no suitable signature algorithm" понижен с уровня crit до info. | |
891 | |
892 | |
893 Изменения в nginx 1.15.3 28.08.2018 | |
894 | |
895 *) Добавление: теперь TLSv1.3 можно использовать с BoringSSL. | |
896 | |
897 *) Добавление: директива ssl_early_data, сейчас доступна при | |
898 использовании BoringSSL. | |
899 | |
900 *) Добавление: директивы keepalive_timeout и keepalive_requests в блоке | |
901 upstream. | |
902 | |
903 *) Исправление: модуль ngx_http_dav_module при копировании файла поверх | |
904 существующего файла с помощью метода COPY не обнулял целевой файл. | |
905 | |
906 *) Исправление: модуль ngx_http_dav_module при перемещении файла между | |
907 файловыми системами с помощью метода MOVE устанавливал нулевые права | |
908 доступа на результирующий файл и не сохранял время изменения файла. | |
909 | |
910 *) Исправление: модуль ngx_http_dav_module при копировании файла с | |
911 помощью метода COPY для результирующего файла использовал права | |
912 доступа по умолчанию. | |
913 | |
914 *) Изменение: некоторые клиенты могли не работать при использовании | |
915 HTTP/2; ошибка появилась в 1.13.5. | |
916 | |
917 *) Исправление: nginx не собирался с LibreSSL 2.8.0. | |
918 | |
919 | |
920 Изменения в nginx 1.15.2 24.07.2018 | |
921 | |
922 *) Добавление: переменная $ssl_preread_protocol в модуле | |
923 ngx_stream_ssl_preread_module. | |
924 | |
925 *) Добавление: теперь при использовании директивы | |
926 reset_timedout_connection nginx сбрасывает соединения, закрываемые с | |
927 кодом 444. | |
928 | |
929 *) Изменение: уровень логгирования ошибок SSL "http request", "https | |
930 proxy request", "unsupported protocol" и "version too low" понижен с | |
931 уровня crit до info. | |
932 | |
933 *) Исправление: запросы к DNS-серверу не отправлялись повторно, если при | |
934 первой попытке отправки происходила ошибка. | |
935 | |
936 *) Исправление: параметр reuseport директивы listen игнорировался, если | |
937 количество рабочих процессов было задано после директивы listen. | |
938 | |
939 *) Исправление: при использовании OpenSSL 1.1.0 и новее директиву | |
940 ssl_prefer_server_ciphers нельзя было выключить в виртуальном | |
941 сервере, если она была включена в сервере по умолчанию. | |
942 | |
943 *) Исправление: повторное использование SSL-сессий к бэкендам не | |
944 работало с протоколом TLS 1.3. | |
945 | |
946 | |
947 Изменения в nginx 1.15.1 03.07.2018 | |
948 | |
949 *) Добавление: директива random в блоке upstream. | |
950 | |
951 *) Добавление: улучшена производительность при использовании директив | |
952 hash и ip_hash совместно с директивой zone. | |
953 | |
954 *) Добавление: параметр reuseport директивы listen теперь использует | |
955 SO_REUSEPORT_LB на FreeBSD 12. | |
956 | |
957 *) Исправление: HTTP/2 server push не работал, если SSL терминировался | |
958 прокси-сервером перед nginx'ом. | |
959 | |
960 *) Исправление: директива tcp_nopush всегда использовалась для | |
961 соединений к бэкендам. | |
962 | |
963 *) Исправление: при отправке сохранённого на диск тела запроса на | |
964 gRPC-бэкенд могли возникать ошибки. | |
965 | |
966 | |
967 Изменения в nginx 1.15.0 05.06.2018 | |
968 | |
969 *) Изменение: директива "ssl" теперь считается устаревшей; вместо неё | |
970 следует использовать параметр ssl директивы listen. | |
971 | |
972 *) Изменение: теперь при использовании директивы listen с параметром ssl | |
973 nginx определяет отсутствие SSL-сертификатов при тестировании | |
974 конфигурации. | |
975 | |
976 *) Добавление: теперь модуль stream умеет обрабатывать несколько | |
977 входящих UDP-пакетов от клиента в рамках одной сессии. | |
978 | |
979 *) Исправление: в директиве proxy_cache_valid можно было указать | |
980 некорректный код ответа. | |
981 | |
982 *) Исправление: nginx не собирался gcc 8.1. | |
983 | |
984 *) Исправление: логгирование в syslog останавливалось при изменении | |
985 локального IP-адреса. | |
986 | |
987 *) Исправление: nginx не собирался компилятором clang, если был | |
988 установлен CUDA SDK; ошибка появилась в 1.13.8. | |
989 | |
990 *) Исправление: при использовании unix domain listen-сокетов на FreeBSD | |
991 в процессе обновления исполняемого файла в логе могли появляться | |
992 сообщения "getsockopt(TCP_FASTOPEN) ... failed". | |
993 | |
994 *) Исправление: nginx не собирался на Fedora 28 Linux. | |
995 | |
996 *) Исправление: при использовании директивы limit_req заданная скорость | |
997 обработки запросов могла не соблюдаться. | |
998 | |
999 *) Исправление: в обработке адресов клиентов при использовании unix | |
1000 domain listen-сокетов для работы с датаграммами на Linux. | |
1001 | |
1002 *) Исправление: в обработке ошибок выделения памяти. | |
1003 | |
1004 | |
1005 Изменения в nginx 1.13.12 10.04.2018 | |
1006 | |
1007 *) Исправление: при возврате большого ответа соединения с gRPC-бэкендами | |
1008 могли неожиданно закрываться. | |
1009 | |
1010 | |
1011 Изменения в nginx 1.13.11 03.04.2018 | |
1012 | |
1013 *) Добавление: параметр proxy_protocol директивы listen теперь | |
1014 поддерживает протокол PROXY версии 2. | |
1015 | |
1016 *) Исправление: nginx не собирался с OpenSSL 1.1.1 статически на Linux. | |
1017 | |
1018 *) Исправление: в параметрах http_404, http_500 и им подобных директивы | |
1019 proxy_next_upstream. | |
1020 | |
1021 | |
1022 Изменения в nginx 1.13.10 20.03.2018 | |
1023 | |
1024 *) Добавление: теперь параметр set в SSI-директиве include позволяет | |
1025 сохранять в переменную любые ответы; максимальный размер ответа | |
1026 задаётся директивой subrequest_output_buffer_size. | |
1027 | |
1028 *) Добавление: теперь nginx использует вызов | |
1029 clock_gettime(CLOCK_MONOTONIC), если он доступен, что позволяет | |
1030 избежать некорректного срабатывания таймаутов при изменениях | |
1031 системного времени. | |
1032 | |
1033 *) Добавление: параметр "escape=none" директивы log_format. | |
1034 Спасибо Johannes Baiter и Calin Don. | |
1035 | |
1036 *) Добавление: переменная $ssl_preread_alpn_protocols в модуле | |
1037 ngx_stream_ssl_preread_module. | |
1038 | |
1039 *) Добавление: модуль ngx_http_grpc_module. | |
1040 | |
1041 *) Исправление: в обработке ошибок выделения памяти в директиве geo. | |
1042 | |
1043 *) Исправление: при использовании переменных в директиве | |
1044 auth_basic_user_file в лог мог выводиться символ '\0'. | |
1045 Спасибо Вадиму Филимонову. | |
1046 | |
1047 | |
1048 Изменения в nginx 1.13.9 20.02.2018 | |
1049 | |
1050 *) Добавление: поддержка HTTP/2 server push; директивы http2_push и | |
1051 http2_push_preload. | |
1052 | |
1053 *) Исправление: при использовании кэша в логах могли появляться | |
1054 сообщения "header already sent"; ошибка появилась в 1.9.13. | |
1055 | |
1056 *) Исправление: при использовании директивы ssl_verify_client в рабочем | |
1057 процессе мог произойти segmentation fault, если в виртуальном сервере | |
1058 не был указан SSL-сертификат. | |
1059 | |
1060 *) Исправление: в модуле ngx_http_v2_module. | |
1061 | |
1062 *) Исправление: в модуле ngx_http_dav_module. | |
1063 | |
1064 | |
1065 Изменения в nginx 1.13.8 26.12.2017 | |
1066 | |
1067 *) Добавление: теперь при использовании параметра transparent директив | |
1068 proxy_bind, fastcgi_bind, memcached_bind, scgi_bind и uwsgi_bind | |
1069 nginx автоматически сохраняет capability CAP_NET_RAW в рабочих | |
1070 процессах. | |
1071 | |
1072 *) Добавление: улучшения в определении размера строки кэша процессора. | |
1073 Спасибо Debayan Ghosh. | |
1074 | |
1075 *) Добавление: новые директивы в скриптах подсветки синтаксиса для vim. | |
1076 Спасибо Геннадию Махомеду. | |
1077 | |
1078 *) Исправление: процедура обновления исполняемого файла не работала, | |
1079 если после завершения родительского процесса новым родительским | |
1080 процессом nginx'а становился процесс с PID, отличным от 1. | |
1081 | |
1082 *) Исправление: модуль ngx_http_autoindex_module неправильно обрабатывал | |
1083 запросы с телом. | |
1084 | |
1085 *) Исправление: в директиве proxy_limit_rate при использовании с | |
1086 директивой keepalive. | |
1087 | |
1088 *) Исправление: при использовании "proxy_buffering off" часть ответа | |
1089 могла буферизироваться, если клиентское соединение использовало SSL. | |
1090 Спасибо Patryk Lesiewicz. | |
1091 | |
1092 *) Исправление: в директиве proxy_cache_background_update. | |
1093 | |
1094 *) Исправление: переменную вида "${name}" с именем в фигурных скобках | |
1095 нельзя было использовать в начале параметра не заключив весь параметр | |
1096 в кавычки. | |
1097 | |
1098 | |
1099 Изменения в nginx 1.13.7 21.11.2017 | |
1100 | |
1101 *) Исправление: в переменной $upstream_status. | |
1102 | |
1103 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
1104 если бэкенд возвращал ответ "101 Switching Protocols" на подзапрос. | |
1105 | |
1106 *) Исправление: если при переконфигурации изменялся размер зоны | |
1107 разделяемой памяти и переконфигурация завершалась неудачно, то в | |
1108 главном процессе происходил segmentation fault. | |
1109 | |
1110 *) Исправление: в модуле ngx_http_fastcgi_module. | |
1111 | |
1112 *) Исправление: nginx возвращал ошибку 500, если в директиве | |
1113 xslt_stylesheet были заданы параметры без использования переменных. | |
1114 | |
1115 *) Изменение: при использовании варианта библиотеки zlib от Intel в лог | |
1116 писались сообщения "gzip filter failed to use preallocated memory". | |
1117 | |
1118 *) Исправление: директива worker_shutdown_timeout не работала при | |
1119 использовании почтового прокси-сервера и при проксировании | |
1120 WebSocket-соединений. | |
1121 | |
1122 | |
1123 Изменения в nginx 1.13.6 10.10.2017 | |
1124 | |
1125 *) Исправление: при использовании директивы ssl_preread в модуле stream | |
1126 не работало переключение на следующий бэкенд. | |
1127 | |
1128 *) Исправление: в модуле ngx_http_v2_module. | |
1129 Спасибо Piotr Sikora. | |
1130 | |
1131 *) Исправление: nginx не поддерживал даты после 2038 года на 32-битных | |
1132 платформах с 64-битным time_t. | |
1133 | |
1134 *) Исправление: в обработке дат до 1970 года и после 10000 года. | |
1135 | |
1136 *) Исправление: в модуле stream таймауты ожидания UDP-пакетов от | |
1137 бэкендов не логгировались или логгировались на уровне info вместо | |
1138 error. | |
1139 | |
1140 *) Исправление: при использовании HTTP/2 nginx мог вернуть ошибку 400, | |
1141 не указав в логе причину. | |
1142 | |
1143 *) Исправление: в обработке повреждённых файлов кэша. | |
1144 | |
1145 *) Исправление: при кэшировании ошибок, перехваченных error_page, не | |
1146 учитывались заголовки управления кэшированием. | |
1147 | |
1148 *) Исправление: при использовании HTTP/2 тело запроса могло быть | |
1149 повреждено. | |
1150 | |
1151 *) Исправление: в обработке адресов клиентов при использовании unix | |
1152 domain сокетов. | |
1153 | |
1154 *) Исправление: при использовании директивы "hash ... consistent" в | |
1155 блоке upstream nginx нагружал процессор, если использовались большие | |
1156 веса и все или почти все бэкенды были недоступны. | |
1157 | |
1158 | |
1159 Изменения в nginx 1.13.5 05.09.2017 | |
1160 | |
1161 *) Добавление: переменная $ssl_client_escaped_cert. | |
1162 | |
1163 *) Исправление: директива ssl_session_ticket_key и параметр include | |
1164 директивы geo не работали на Windows. | |
1165 | |
1166 *) Исправление: на 32-битных платформах при запросе более 4 гигабайт с | |
1167 помощью нескольких диапазонов возвращалась некорректная длина ответа. | |
1168 | |
1169 *) Исправление: директива "expires modified" и обработка строки If-Range | |
1170 заголовка запроса не учитывали время последнего изменения ответа, | |
1171 если использовалось проксирование без кэширования. | |
1172 | |
1173 | |
1174 Изменения в nginx 1.13.4 08.08.2017 | |
1175 | |
1176 *) Добавление: модуль ngx_http_mirror_module. | |
1177 | |
1178 *) Исправление: клиентские соединения могли сбрасываться при | |
1179 тестировании конфигурации, если использовался параметр reuseport | |
1180 директивы listen на Linux. | |
1181 | |
1182 *) Исправление: тело запроса могло быть недоступно в подзапросах, если | |
1183 оно было сохранено в файл и использовалось проксирование. | |
1184 | |
1185 *) Исправление: очистка кэша по max_size не работала на Windows. | |
1186 | |
1187 *) Исправление: любое выделение разделяемой памяти на Windows требовало | |
1188 4096 байт памяти. | |
1189 | |
1190 *) Исправление: при использовании директивы zone в блоке upstream на | |
1191 Windows рабочий процесс мог завершаться аварийно. | |
1192 | |
1193 | |
1194 Изменения в nginx 1.13.3 11.07.2017 | |
1195 | |
1196 *) Безопасность: специально созданный запрос мог вызвать целочисленное | |
1197 переполнение в range-фильтре и последующую некорректную обработку | |
1198 запрошенных диапазонов, что потенциально могло привести к утечке | |
1199 конфиденциальной информации (CVE-2017-7529). | |
1200 | |
1201 | |
1202 Изменения в nginx 1.13.2 27.06.2017 | |
1203 | |
1204 *) Изменение: теперь при запросе диапазона, начинающегося с 0, из | |
1205 пустого файла nginx возвращает ответ 200 вместо 416. | |
1206 | |
1207 *) Добавление: директива add_trailer. | |
1208 Спасибо Piotr Sikora. | |
1209 | |
1210 *) Исправление: nginx не собирался под Cygwin и NetBSD; ошибка появилась | |
1211 в 1.13.0. | |
1212 | |
1213 *) Исправление: nginx не собирался под MSYS2 / MinGW 64-bit. | |
1214 Спасибо Orgad Shaneh. | |
1215 | |
1216 *) Исправление: при использовании SSI с большим количеством подзапросов | |
1217 и proxy_pass с переменными в рабочем процессе мог произойти | |
1218 segmentation fault. | |
1219 | |
1220 *) Исправление: в модуле ngx_http_v2_module. | |
1221 Спасибо Piotr Sikora. | |
1222 | |
1223 | |
1224 Изменения в nginx 1.13.1 30.05.2017 | |
1225 | |
1226 *) Добавление: теперь в качестве параметра директивы set_real_ip_from | |
1227 можно указывать имя хоста. | |
1228 | |
1229 *) Добавление: улучшения в скриптах подсветки синтаксиса для vim. | |
1230 | |
1231 *) Добавление: директива worker_cpu_affinity теперь работает на | |
1232 DragonFly BSD. | |
1233 Спасибо Sepherosa Ziehau. | |
1234 | |
1235 *) Исправление: SSL renegotiation в соединениях к бэкендам не работал | |
1236 при использовании OpenSSL до 1.1.0. | |
1237 | |
1238 *) Изменение: nginx не собирался с Oracle Developer Studio 12.5. | |
1239 | |
1240 *) Изменение: теперь cache manager пропускает заблокированные записи при | |
1241 очистке кэша по max_size. | |
1242 | |
1243 *) Исправление: клиентские SSL-соединения сразу закрывались, если | |
1244 использовался отложенный accept и параметр proxy_protocol директивы | |
1245 listen. | |
1246 | |
1247 *) Исправление: в директиве proxy_cache_background_update. | |
1248 | |
1249 *) Изменение: теперь директива tcp_nodelay устанавливает опцию | |
1250 TCP_NODELAY перед SSL handshake. | |
1251 | |
1252 | |
1253 Изменения в nginx 1.13.0 25.04.2017 | |
1254 | |
1255 *) Изменение: теперь SSL renegotiation допускается в соединениях к | |
1256 бэкендам. | |
1257 | |
1258 *) Добавление: параметры rcvbuf и sndbuf директив listen в почтовом | |
1259 прокси-сервере и модуле stream. | |
1260 | |
1261 *) Добавление: директивы return и error_page теперь могут использоваться | |
1262 для возврата перенаправлений с кодом 308. | |
1263 Спасибо Simon Leblanc. | |
1264 | |
1265 *) Добавление: параметр TLSv1.3 в директиве ssl_protocols. | |
1266 | |
1267 *) Добавление: при логгировании сигналов теперь указывается PID | |
1268 отправившего сигнал процесса. | |
1269 | |
1270 *) Исправление: в обработке ошибок выделения памяти. | |
1271 | |
1272 *) Исправление: если сервер в модуле stream слушал на wildcard-адресе, | |
1273 исходящий адрес ответного UDP-пакета мог отличаться от адреса | |
1274 назначения исходного пакета. | |
1275 | |
1276 | |
1277 Изменения в nginx 1.11.13 04.04.2017 | |
1278 | |
1279 *) Добавление: параметр http_429 в директивах proxy_next_upstream, | |
1280 fastcgi_next_upstream, scgi_next_upstream и uwsgi_next_upstream. | |
1281 Спасибо Piotr Sikora. | |
1282 | |
1283 *) Исправление: в обработке ошибок выделения памяти. | |
1284 | |
1285 *) Исправление: при использовании директив sendfile и timer_resolution | |
1286 на Linux запросы могли зависать. | |
1287 | |
1288 *) Исправление: при использовании с подзапросами директив sendfile и | |
1289 aio_write запросы могли зависать. | |
1290 | |
1291 *) Исправление: в модуле ngx_http_v2_module. | |
1292 Спасибо Piotr Sikora. | |
1293 | |
1294 *) Исправление: при использовании HTTP/2 в рабочем процессе мог | |
1295 произойти segmentation fault. | |
1296 | |
1297 *) Исправление: запросы могли зависать при использовании с подзапросами | |
1298 директив limit_rate, sendfile_max_chunk, limit_req или метода | |
1299 $r->sleep() встроенного перла. | |
1300 | |
1301 *) Исправление: в модуле ngx_http_slice_module. | |
1302 | |
1303 | |
1304 Изменения в nginx 1.11.12 24.03.2017 | |
1305 | |
1306 *) Исправление: nginx мог нагружать процессор; ошибка появилась в | |
1307 1.11.11. | |
1308 | |
1309 | |
1310 Изменения в nginx 1.11.11 21.03.2017 | |
1311 | |
1312 *) Добавление: директива worker_shutdown_timeout. | |
1313 | |
1314 *) Добавление: улучшения в скриптах подсветки синтаксиса для vim. | |
1315 Спасибо Wei-Ko Kao. | |
1316 | |
1317 *) Исправление: при попытке установить переменную $limit_rate в пустую | |
1318 строку в рабочем процессе мог произойти segmentation fault. | |
1319 | |
1320 *) Исправление: директивы proxy_cache_background_update, | |
1321 fastcgi_cache_background_update, scgi_cache_background_update и | |
1322 uwsgi_cache_background_update могли работать некорректно, если | |
1323 использовалась директива if. | |
1324 | |
1325 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
1326 если количество large_client_header_buffers в виртуальном сервере | |
1327 отличалось от такового в сервере по умолчанию. | |
1328 | |
1329 *) Исправление: в почтовом прокси-сервере. | |
1330 | |
1331 | |
1332 Изменения в nginx 1.11.10 14.02.2017 | |
1333 | |
1334 *) Изменение: формат заголовка кэша был изменен, ранее закэшированные | |
1335 ответы будут загружены заново. | |
1336 | |
1337 *) Добавление: поддержка расширений stale-while-revalidate и | |
1338 stale-if-error в строке "Cache-Control" в заголовке ответа бэкенда. | |
1339 | |
1340 *) Добавление: директивы proxy_cache_background_update, | |
1341 fastcgi_cache_background_update, scgi_cache_background_update и | |
1342 uwsgi_cache_background_update. | |
1343 | |
1344 *) Добавление: теперь nginx может кэшировать ответы со строкой Vary | |
1345 заголовка длиной до 128 символов (вместо 42 символов в предыдущих | |
1346 версиях). | |
1347 | |
1348 *) Добавление: параметр build директивы server_tokens. | |
1349 Спасибо Tom Thorogood. | |
1350 | |
1351 *) Исправление: при обработке запросов со строкой "Expect: 100-continue" | |
1352 в заголовке запроса в логах могли появляться сообщения "[crit] | |
1353 SSL_write() failed". | |
1354 | |
1355 *) Исправление: модуль ngx_http_slice_module не работал в именованных | |
1356 location'ах. | |
1357 | |
1358 *) Исправление: при использовании AIO после перенаправления запроса с | |
1359 помощью X-Accel-Redirect в рабочем процессе мог произойти | |
1360 segmentation fault. | |
1361 | |
1362 *) Исправление: уменьшено потребление памяти для долгоживущих запросов, | |
1363 использующих сжатие. | |
1364 | |
1365 | |
1366 Изменения в nginx 1.11.9 24.01.2017 | |
1367 | |
1368 *) Исправление: при использовании модуля stream nginx мог нагружать | |
1369 процессор; ошибка появилась в 1.11.5. | |
1370 | |
1371 *) Исправление: метод аутентификации EXTERNAL в почтовом прокси-сервере | |
1372 можно было использовать, даже если он не был разрешён в конфигурации. | |
1373 | |
1374 *) Исправление: при использовании директивы ssl_verify_client модуля | |
1375 stream в рабочем процессе мог произойти segmentation fault. | |
1376 | |
1377 *) Исправление: директива ssl_verify_client модуля stream могла не | |
1378 работать. | |
1379 | |
1380 *) Исправление: при исчерпании рабочим процессом свободных соединений | |
1381 keepalive-соединения могли закрываться излишне агрессивно. | |
1382 Спасибо Joel Cunningham. | |
1383 | |
1384 *) Исправление: при использовании директивы sendfile на FreeBSD и macOS | |
1385 мог возвращаться некорректный ответ; ошибка появилась в 1.7.8. | |
1386 | |
1387 *) Исправление: при использовании директивы aio_write ответ мог | |
1388 сохраняться в кэш не полностью. | |
1389 | |
1390 *) Исправление: при использовании директивы aio_write могла происходить | |
1391 утечка сокетов. | |
1392 | |
1393 | |
1394 Изменения в nginx 1.11.8 27.12.2016 | |
1395 | |
1396 *) Добавление: директива absolute_redirect. | |
1397 | |
1398 *) Добавление: параметр escape директивы log_format. | |
1399 | |
1400 *) Добавление: проверка клиентских SSL-сертификатов в модуле stream. | |
1401 | |
1402 *) Добавление: директива ssl_session_ticket_key поддерживает шифрование | |
1403 TLS session tickets с помощью AES256 при использовании с 80-байтными | |
1404 ключами. | |
1405 | |
1406 *) Добавление: поддержка vim-commentary в скриптах для vim. | |
1407 Спасибо Armin Grodon. | |
1408 | |
1409 *) Исправление: рекурсия при получении значений переменных не | |
1410 ограничивалась. | |
1411 | |
1412 *) Исправление: в модуле ngx_stream_ssl_preread_module. | |
1413 | |
1414 *) Исправление: если сервер, описанный в блоке upstream в модуле stream, | |
1415 был признан неработающим, то после истечения fail_timeout он | |
1416 признавался работающим только после завершения тестового соединения; | |
1417 теперь достаточно, чтобы соединение было успешно установлено. | |
1418 | |
1419 *) Исправление: nginx/Windows не собирался с 64-битным Visual Studio. | |
1420 | |
1421 *) Исправление: nginx/Windows не собирался с OpenSSL 1.1.0. | |
1422 | |
1423 | |
1424 Изменения в nginx 1.11.7 13.12.2016 | |
1425 | |
1426 *) Изменение: переменная $ssl_client_verify теперь в случае ошибки | |
1427 проверки клиентского сертификата содержит строку с описанием ошибки, | |
1428 например, "FAILED:certificate has expired". | |
1429 | |
1430 *) Добавление: переменные $ssl_ciphers, $ssl_curves, | |
1431 $ssl_client_v_start, $ssl_client_v_end и $ssl_client_v_remain. | |
1432 | |
1433 *) Добавление: параметр volatile директивы map. | |
1434 | |
1435 *) Исправление: при сборке динамических модулей не учитывались заданные | |
1436 для модуля зависимости. | |
1437 | |
1438 *) Исправление: при использовании HTTP/2 и директив limit_req или | |
1439 auth_request тело запроса могло быть повреждено; ошибка появилась в | |
1440 1.11.0. | |
1441 | |
1442 *) Исправление: при использовании HTTP/2 в рабочем процессе мог | |
1443 произойти segmentation fault; ошибка появилась в 1.11.3. | |
1444 | |
1445 *) Исправление: в модуле ngx_http_mp4_module. | |
1446 Спасибо Congcong Hu. | |
1447 | |
1448 *) Исправление: в модуле ngx_http_perl_module. | |
1449 | |
1450 | |
1451 Изменения в nginx 1.11.6 15.11.2016 | |
1452 | |
1453 *) Изменение: формат переменных $ssl_client_s_dn и $ssl_client_i_dn | |
1454 изменён на соответствующий RFC 2253 (RFC 4514); значения в старом | |
1455 формате доступны через переменные $ssl_client_s_dn_legacy и | |
1456 $ssl_client_i_dn_legacy. | |
1457 | |
1458 *) Изменение: при сохранении временных файлов в каталоге кэша они теперь | |
1459 располагаются не в отдельном подкаталоге для временных файлов, а в | |
1460 том же подкаталоге, что и соответствующие файлы в кэше. | |
1461 | |
1462 *) Добавление: поддержка метода аутентификации EXTERNAL в почтовом | |
1463 прокси-сервере. | |
1464 Спасибо Robert Norris. | |
1465 | |
1466 *) Добавление: поддержка WebP в модуле ngx_http_image_filter_module. | |
1467 | |
1468 *) Добавление: директива proxy_method поддерживает переменные. | |
1469 Спасибо Дмитрию Лазуркину. | |
1470 | |
1471 *) Добавление: директива http2_max_requests в модуле ngx_http_v2_module. | |
1472 | |
1473 *) Добавление: директивы proxy_cache_max_range_offset, | |
1474 fastcgi_cache_max_range_offset, scgi_cache_max_range_offset и | |
1475 uwsgi_cache_max_range_offset. | |
1476 | |
1477 *) Исправление: плавное завершение старых рабочих процессов могло | |
1478 занимать бесконечное время при использовании HTTP/2. | |
1479 | |
1480 *) Исправление: в модуле ngx_http_mp4_module. | |
1481 | |
1482 *) Исправление: при проксировании WebSocket-соединений и включённом | |
1483 кэшировании в логах могли появляться сообщения "ignore long locked | |
1484 inactive cache entry". | |
1485 | |
1486 *) Исправление: если во время SSL handshake с бэкендом происходил | |
1487 таймаут, nginx ничего не писал в лог и возвращал ответ с кодом 502 | |
1488 вместо 504. | |
1489 | |
1490 | |
1491 Изменения в nginx 1.11.5 11.10.2016 | |
1492 | |
1493 *) Изменение: параметр configure --with-ipv6 упразднён, поддержка IPv6 | |
1494 теперь собирается автоматически. | |
1495 | |
1496 *) Изменение: теперь, если в блоке upstream не оказалось доступных | |
1497 серверов, nginx не сбрасывает статистику ошибок всех серверов, как | |
1498 делал ранее, а ожидает истечения fail_timeout. | |
1499 | |
1500 *) Добавление: модуль ngx_stream_ssl_preread_module. | |
1501 | |
1502 *) Добавление: директива server в блоке upstream поддерживает параметр | |
1503 max_conns. | |
1504 | |
1505 *) Добавление: параметр configure --with-compat. | |
1506 | |
1507 *) Добавление: параметры manager_files, manager_threshold и | |
1508 manager_sleep директив proxy_cache_path, fastcgi_cache_path, | |
1509 scgi_cache_path и uwsgi_cache_path. | |
1510 | |
1511 *) Исправление: при сборке perl-модуля не использовались флаги, заданные | |
1512 с помощью параметра configure --with-ld-opt. | |
1513 | |
1514 *) Исправление: в директиве add_after_body при использовании совместно с | |
1515 директивой sub_filter. | |
1516 | |
1517 *) Исправление: в переменной $realip_remote_addr. | |
1518 | |
1519 *) Исправление: директивы dav_access, proxy_store_access, | |
1520 fastcgi_store_access, scgi_store_access и uwsgi_store_access | |
1521 игнорировали права, заданные для пользователя. | |
1522 | |
1523 *) Исправление: unix domain listen-сокеты могли не наследоваться при | |
1524 обновлении исполняемого файла на Linux. | |
1525 | |
1526 *) Исправление: nginx возвращал ошибку 400 на запросы с символом "-" в | |
1527 HTTP-методе. | |
1528 | |
1529 | |
1530 Изменения в nginx 1.11.4 13.09.2016 | |
1531 | |
1532 *) Добавление: переменная $upstream_bytes_received. | |
1533 | |
1534 *) Добавление: переменные $bytes_received, $session_time, $protocol, | |
1535 $status, $upstream_addr, $upstream_bytes_sent, | |
1536 $upstream_bytes_received, $upstream_connect_time, | |
1537 $upstream_first_byte_time и $upstream_session_time в модуле stream. | |
1538 | |
1539 *) Добавление: модуль ngx_stream_log_module. | |
1540 | |
1541 *) Добавление: параметр proxy_protocol в директиве listen, переменные | |
1542 $proxy_protocol_addr и $proxy_protocol_port в модуле stream. | |
1543 | |
1544 *) Добавление: модуль ngx_stream_realip_module. | |
1545 | |
1546 *) Исправление: nginx не собирался с модулем stream и модулем | |
1547 ngx_http_ssl_module, но без модуля ngx_stream_ssl_module; ошибка | |
1548 появилась в 1.11.3. | |
1549 | |
1550 *) Добавление: опция сокета IP_BIND_ADDRESS_NO_PORT не использовалась; | |
1551 ошибка появилась в 1.11.2. | |
1552 | |
1553 *) Исправление: в параметре ranges директивы geo. | |
1554 | |
1555 *) Исправление: при использовании директив "aio threads" и sendfile мог | |
1556 возвращаться некорректный ответ; ошибка появилась в 1.9.13. | |
1557 | |
1558 | |
1559 Изменения в nginx 1.11.3 26.07.2016 | |
1560 | |
1561 *) Изменение: теперь accept_mutex по умолчанию выключен. | |
1562 | |
1563 *) Добавление: теперь nginx использует EPOLLEXCLUSIVE на Linux. | |
1564 | |
1565 *) Добавление: модуль ngx_stream_geo_module. | |
1566 | |
1567 *) Добавление: модуль ngx_stream_geoip_module. | |
1568 | |
1569 *) Добавление: модуль ngx_stream_split_clients_module. | |
1570 | |
1571 *) Добавление: директивы proxy_pass и proxy_ssl_name в модуле stream | |
1572 поддерживают переменные. | |
1573 | |
1574 *) Исправление: утечки сокетов при использовании HTTP/2. | |
1575 | |
1576 *) Исправление: в configure. | |
1577 Спасибо Piotr Sikora. | |
1578 | |
1579 | |
1580 Изменения в nginx 1.11.2 05.07.2016 | |
1581 | |
1582 *) Изменение: теперь nginx всегда использует внутренние реализации MD5 и | |
1583 SHA1; параметры configure --with-md5 и --with-sha1 упразднены. | |
1584 | |
1585 *) Добавление: поддержка переменных в модуле stream. | |
1586 | |
1587 *) Добавление: модуль ngx_stream_map_module. | |
1588 | |
1589 *) Добавление: модуль ngx_stream_return_module. | |
1590 | |
1591 *) Добавление: в директивах proxy_bind, fastcgi_bind, memcached_bind, | |
1592 scgi_bind и uwsgi_bind теперь можно указывать порт. | |
1593 | |
1594 *) Добавление: теперь nginx использует опцию сокета | |
1595 IP_BIND_ADDRESS_NO_PORT, если она доступна. | |
1596 | |
1597 *) Исправление: при использовании HTTP/2 и директивы | |
1598 proxy_request_buffering в рабочем процессе мог произойти segmentation | |
1599 fault. | |
1600 | |
1601 *) Исправление: при использовании HTTP/2 к запросам, передаваемым на | |
1602 бэкенд, всегда добавлялась строка заголовка "Content-Length", даже | |
1603 если у запроса не было тела. | |
1604 | |
1605 *) Исправление: при использовании HTTP/2 в логах могли появляться | |
1606 сообщения "http request count is zero". | |
1607 | |
1608 *) Исправление: при использовании директивы sub_filter могло | |
1609 буферизироваться больше данных, чем это необходимо; проблема | |
1610 появилась в 1.9.4. | |
1611 | |
1612 | |
1613 Изменения в nginx 1.11.1 31.05.2016 | |
1614 | |
1615 *) Безопасность: при записи тела специально созданного запроса во | |
1616 временный файл в рабочем процессе мог происходить segmentation fault | |
1617 (CVE-2016-4450); ошибка появилась в 1.3.9. | |
1618 | |
1619 | |
1620 Изменения в nginx 1.11.0 24.05.2016 | |
1621 | |
1622 *) Добавление: параметр transparent директив proxy_bind, fastcgi_bind, | |
1623 memcached_bind, scgi_bind и uwsgi_bind. | |
1624 | |
1625 *) Добавление: переменная $request_id. | |
1626 | |
1627 *) Добавление: директива map поддерживает комбинации нескольких | |
1628 переменных в качестве результирующих значений. | |
1629 | |
1630 *) Добавление: теперь при использовании метода epoll nginx проверяет, | |
1631 поддерживает ли ядро события EPOLLRDHUP, и соответственно | |
1632 оптимизирует обработку соединений. | |
1633 | |
1634 *) Добавление: директивы ssl_certificate и ssl_certificate_key теперь | |
1635 можно указывать несколько раз для загрузки сертификатов разных типов | |
1636 (например, RSA и ECDSA). | |
1637 | |
1638 *) Добавление: при использовании OpenSSL 1.0.2 и новее с помощью | |
1639 директивы ssl_ecdh_curve теперь можно задать список кривых; по | |
1640 умолчанию используется встроенный в OpenSSL список кривых. | |
1641 | |
1642 *) Изменение: для использования DHE-шифров теперь надо явно задавать | |
1643 файл параметров с помощью директивы ssl_dhparam. | |
1644 | |
1645 *) Добавление: переменная $proxy_protocol_port. | |
1646 | |
1647 *) Добавление: переменная $realip_remote_port в модуле | |
1648 ngx_http_realip_module. | |
1649 | |
1650 *) Добавление: модуль ngx_http_realip_module теперь позволяет | |
1651 устанавливать не только адрес, но и порт клиента. | |
1652 | |
1653 *) Изменение: при попытке запросить виртуальный сервер, отличающийся от | |
1654 согласованного в процессе SSL handshake, теперь возвращается ответ | |
1655 "421 Misdirected Request"; это улучшает совместимость с некоторыми | |
1656 HTTP/2-клиентами в случае использования клиентских сертификатов. | |
1657 | |
1658 *) Изменение: HTTP/2-клиенты теперь могут сразу присылать тело запроса; | |
1659 директива http2_body_preread_size позволяет указать размер буфера, | |
1660 который будет использоваться до того, как nginx начнёт читать тело. | |
1661 | |
1662 *) Исправление: при использовании директивы proxy_cache_bypass не | |
1663 обновлялись закэшированные ошибочные ответы. | |
1664 | |
1665 | |
1666 Изменения в nginx 1.9.15 19.04.2016 | |
1667 | |
1668 *) Исправление: при использовании HHVM в качестве FastCGI-сервера могли | |
1669 возникать ошибки "recv() failed". | |
1670 | |
1671 *) Исправление: при использовании HTTP/2 и директив limit_req или | |
1672 auth_request при чтении тела запроса мог произойти таймаут или ошибка | |
1673 "client violated flow control"; ошибка появилась в 1.9.14. | |
1674 | |
1675 *) Изменение: при использовании HTTP/2 ответ мог не показываться | |
1676 некоторыми браузерами, если тело запроса было прочитано не целиком; | |
1677 ошибка появилась в 1.9.14. | |
1678 | |
1679 *) Исправление: при использовании директивы "aio threads" соединения | |
1680 могли зависать. | |
1681 Спасибо Mindaugas Rasiukevicius. | |
1682 | |
1683 | |
1684 Изменения в nginx 1.9.14 05.04.2016 | |
1685 | |
1686 *) Добавление: совместимость с OpenSSL 1.1.0. | |
1687 | |
1688 *) Добавление: директивы proxy_request_buffering, | |
1689 fastcgi_request_buffering, scgi_request_buffering и | |
1690 uwsgi_request_buffering теперь работают при использовании HTTP/2. | |
1691 | |
1692 *) Исправление: при использовании HTTP/2 в логах могли появляться | |
1693 сообщения "zero size buf in output". | |
1694 | |
1695 *) Исправление: при использовании HTTP/2 директива client_max_body_size | |
1696 могла работать неверно. | |
1697 | |
1698 *) Исправление: незначительных ошибок логгирования. | |
1699 | |
1700 | |
1701 Изменения в nginx 1.9.13 29.03.2016 | |
1702 | |
1703 *) Изменение: неидемпотентные запросы (POST, LOCK, PATCH) теперь по | |
1704 умолчанию не передаются на другой сервер, если запрос уже был | |
1705 отправлен на бэкенд; параметр non_idempotent директивы | |
1706 proxy_next_upstream явно разрешает повторять такие запросы. | |
1707 | |
1708 *) Добавление: модуль ngx_http_perl_module теперь можно собрать | |
1709 динамически. | |
1710 | |
1711 *) Добавление: поддержка UDP в модуле stream. | |
1712 | |
1713 *) Добавление: директива aio_write. | |
1714 | |
1715 *) Добавление: теперь cache manager следит за количеством элементов в | |
1716 кэше и старается не допускать переполнений зоны разделяемой памяти. | |
1717 | |
1718 *) Исправление: при использовании директив sendfile и aio с подзапросами | |
1719 в логах могли появляться сообщения "task already active" и "second | |
1720 aio post". | |
1721 | |
1722 *) Исправление: при использовании кэширования в логах могли появляться | |
1723 сообщения "zero size buf in output", если клиент закрывал соединение | |
1724 преждевременно. | |
1725 | |
1726 *) Исправление: при использовании кэширования соединения с клиентами | |
1727 могли закрываться без необходимости. | |
1728 Спасибо Justin Li. | |
1729 | |
1730 *) Исправление: nginx мог нагружать процессор при использовании | |
1731 директивы sendfile на Linux и Solaris, если отправляемый файл был | |
1732 изменён в процессе отправки. | |
1733 | |
1734 *) Исправление: при использовании директив sendfile и "aio threads" | |
1735 соединения могли зависать. | |
1736 | |
1737 *) Исправление: в директивах proxy_pass, fastcgi_pass, scgi_pass и | |
1738 uwsgi_pass при использовании переменных. | |
1739 Спасибо Piotr Sikora. | |
1740 | |
1741 *) Исправление: в модуле ngx_http_sub_filter_module. | |
1742 | |
1743 *) Исправление: если в закэшированном соединении к бэкенду происходила | |
1744 ошибка, запрос передавался на другой сервер без учёта директивы | |
1745 proxy_next_upstream. | |
1746 | |
1747 *) Исправление: ошибки "CreateFile() failed" при создании временных | |
1748 файлов на Windows. | |
1749 | |
1750 | |
1751 Изменения в nginx 1.9.12 24.02.2016 | |
1752 | |
1753 *) Добавление: кодирование Хаффмана заголовков ответов в HTTP/2. | |
1754 Спасибо Владу Краснову. | |
1755 | |
1756 *) Добавление: директива worker_cpu_affinity теперь поддерживает более | |
1757 64 процессоров. | |
1758 | |
1759 *) Исправление: совместимость со сторонними модулями на C++; ошибка | |
1760 появилась в 1.9.11. | |
1761 Спасибо Piotr Sikora. | |
1762 | |
1763 *) Исправление: nginx не собирался статически с OpenSSL на Linux; ошибка | |
1764 появилась в 1.9.11. | |
1765 | |
1766 *) Исправление: директива "add_header ... always" с пустым значением не | |
1767 удаляла из заголовков ошибочных ответов строки Last-Modified и ETag. | |
1768 | |
1769 *) Изменение: при использовании OpenSSL 1.0.2f в логах могли появляться | |
1770 сообщения "called a function you should not call" и "shutdown while | |
1771 in init". | |
1772 | |
1773 *) Исправление: ошибочные заголовки могли логгироваться некорректно. | |
1774 | |
1775 *) Исправление: утечки сокетов при использовании HTTP/2. | |
1776 | |
1777 *) Исправление: в модуле ngx_http_v2_module. | |
1778 | |
1779 | |
1780 Изменения в nginx 1.9.11 09.02.2016 | |
1781 | |
1782 *) Добавление: теперь resolver поддерживает TCP. | |
1783 | |
1784 *) Добавление: динамические модули. | |
1785 | |
1786 *) Исправление: при использовании HTTP/2 переменная $request_length не | |
1787 учитывала размер заголовков запроса. | |
1788 | |
1789 *) Исправление: в модуле ngx_http_v2_module. | |
1790 | |
1791 | |
1792 Изменения в nginx 1.9.10 26.01.2016 | |
1793 | |
1794 *) Безопасность: при использовании директивы resolver во время обработки | |
1795 ответов DNS-сервера могло происходить разыменование некорректного | |
1796 адреса, что позволяло атакующему, имеющему возможность подделывать | |
1797 UDP-пакеты от DNS-сервера, вызвать segmentation fault в рабочем | |
1798 процессе (CVE-2016-0742). | |
1799 | |
1800 *) Безопасность: при использовании директивы resolver во время обработки | |
1801 CNAME-записей могло произойти обращение к ранее освобождённой памяти, | |
1802 что позволяло атакующему, имеющему возможность инициировать | |
1803 преобразование произвольных имён в адреса, вызвать segmentation fault | |
1804 в рабочем процессе, а также потенциально могло иметь другие | |
1805 последствия (CVE-2016-0746). | |
1806 | |
1807 *) Безопасность: при использовании директивы resolver во время обработки | |
1808 CNAME-записей не во всех случаях проверялось ограничение на | |
1809 максимальное количество записей в цепочке, что позволяло атакующему, | |
1810 имеющему возможность инициировать преобразование произвольных имён в | |
1811 адреса, вызвать чрезмерное потребление ресурсов рабочими процессами | |
1812 (CVE-2016-0747). | |
1813 | |
1814 *) Добавление: параметр auto директивы worker_cpu_affinity. | |
1815 | |
1816 *) Исправление: параметр proxy_protocol директивы listen не работал с | |
1817 IPv6 listen-сокетами. | |
1818 | |
1819 *) Исправление: при использовании директивы keepalive соединения к | |
1820 бэкендам могли кэшироваться некорректно. | |
1821 | |
1822 *) Исправление: после перенаправления запроса с помощью X-Accel-Redirect | |
1823 при проксировании использовался HTTP-метод оригинального запроса. | |
1824 | |
1825 | |
1826 Изменения в nginx 1.9.9 09.12.2015 | |
1827 | |
1828 *) Исправление: проксирование в unix domain сокеты не работало при | |
1829 использовании переменных; ошибка появилась в 1.9.8. | |
1830 | |
1831 | |
1832 Изменения в nginx 1.9.8 08.12.2015 | |
1833 | |
1834 *) Добавление: поддержка pwritev(). | |
1835 | |
1836 *) Добавление: директива include в блоке upstream. | |
1837 | |
1838 *) Добавление: модуль ngx_http_slice_module. | |
1839 | |
1840 *) Исправление: при использовании LibreSSL в рабочем процессе мог | |
1841 произойти segmentation fault; ошибка появилась в 1.9.6. | |
1842 | |
1843 *) Исправление: nginx мог не собираться на OS X. | |
1844 | |
1845 | |
1846 Изменения в nginx 1.9.7 17.11.2015 | |
1847 | |
1848 *) Добавление: параметр nohostname логгирования в syslog. | |
1849 | |
1850 *) Добавление: директива proxy_cache_convert_head. | |
1851 | |
1852 *) Добавление: переменная $realip_remote_addr в модуле | |
1853 ngx_http_realip_module. | |
1854 | |
1855 *) Исправление: директива expires могла не срабатывать при использовании | |
1856 переменных. | |
1857 | |
1858 *) Исправление: при использовании HTTP/2 в рабочем процессе мог | |
1859 произойти segmentation fault; ошибка появилась в 1.9.6. | |
1860 | |
1861 *) Исправление: если nginx был собран с модулем ngx_http_v2_module, | |
1862 протокол HTTP/2 мог быть использован клиентом, даже если не был | |
1863 указан параметр http2 директивы listen. | |
1864 | |
1865 *) Исправление: в модуле ngx_http_v2_module. | |
1866 | |
1867 | |
1868 Изменения в nginx 1.9.6 27.10.2015 | |
1869 | |
1870 *) Исправление: при использовании HTTP/2 в рабочем процессе мог | |
1871 произойти segmentation fault. | |
1872 Спасибо Piotr Sikora и Denis Andzakovic. | |
1873 | |
1874 *) Исправление: при использовании HTTP/2 переменная $server_protocol | |
1875 была пустой. | |
1876 | |
1877 *) Исправление: SSL-соединения к бэкендам в модуле stream могли | |
1878 неожиданно завершаться по таймауту. | |
1879 | |
1880 *) Исправление: при использовании различных настроек ssl_session_cache в | |
1881 разных виртуальных серверах в рабочем процессе мог произойти | |
1882 segmentation fault. | |
1883 | |
1884 *) Исправление: nginx/Windows не собирался с MinGW gcc; ошибка появилась | |
1885 в 1.9.4. | |
1886 Спасибо Kouhei Sutou. | |
1887 | |
1888 *) Исправление: при использовании директивы timer_resolution на Windows | |
1889 время не обновлялось. | |
1890 | |
1891 *) Незначительные исправления и улучшения. | |
1892 Спасибо Markus Linnala, Kurtis Nusbaum и Piotr Sikora. | |
1893 | |
1894 | |
1895 Изменения в nginx 1.9.5 22.09.2015 | |
1896 | |
1897 *) Добавление: модуль ngx_http_v2_module (заменяет модуль | |
1898 ngx_http_spdy_module). | |
1899 Спасибо Dropbox и Automattic за спонсирование разработки. | |
1900 | |
1901 *) Изменение: теперь по умолчанию директива output_buffers использует | |
1902 два буфера. | |
1903 | |
1904 *) Изменение: теперь nginx ограничивает максимальную вложенность | |
1905 подзапросов, а не количество одновременных подзапросов. | |
1906 | |
1907 *) Изменение: теперь при возврате ответов из кэша nginx проверяет ключ | |
1908 полностью. | |
1909 Спасибо Геннадию Махомеду и Сергею Брестеру. | |
1910 | |
1911 *) Исправление: при использовании кэша в логах могли появляться | |
1912 сообщения "header already sent"; ошибка появилась в 1.7.5. | |
1913 | |
1914 *) Исправление: при использовании CephFS и директивы timer_resolution на | |
1915 Linux в логах могли появляться сообщения "writev() failed (4: | |
1916 Interrupted system call)". | |
1917 | |
1918 *) Исправление: в обработке ошибок конфигурации. | |
1919 Спасибо Markus Linnala. | |
1920 | |
1921 *) Исправление: при использовании директивы sub_filter на уровне http в | |
1922 рабочем процессе происходил segmentation fault; ошибка появилась в | |
1923 1.9.4. | |
1924 | |
1925 | |
1926 Изменения в nginx 1.9.4 18.08.2015 | |
1927 | |
1928 *) Изменение: директивы proxy_downstream_buffer и proxy_upstream_buffer | |
1929 в модуле stream заменены директивой proxy_buffer_size. | |
1930 | |
1931 *) Добавление: директива tcp_nodelay в модуле stream. | |
1932 | |
1933 *) Добавление: теперь можно указать несколько директив sub_filter | |
1934 одновременно. | |
1935 | |
1936 *) Добавление: директива sub_filter поддерживает переменные в строке | |
1937 поиска. | |
1938 | |
1939 *) Изменение: тестирование конфигурации могло не работать под Linux | |
1940 OpenVZ. | |
1941 Спасибо Геннадию Махомеду. | |
1942 | |
1943 *) Исправление: после переконфигурации старые рабочие процессы могли | |
1944 сильно нагружать процессор при больших значениях worker_connections. | |
1945 | |
1946 *) Исправление: при совместном использовании директив try_files и alias | |
1947 внутри location'а, заданного регулярным выражением, в рабочем | |
1948 процессе мог произойти segmentation fault; ошибка появилась в 1.7.1. | |
1949 | |
1950 *) Исправление: директива try_files внутри вложенного location'а, | |
1951 заданного регулярным выражением, работала неправильно, если во | |
1952 внешнем location'е использовалась директива alias. | |
1953 | |
1954 *) Исправление: в обработке ошибок при построении хэш-таблиц. | |
1955 | |
1956 *) Исправление: nginx не собирался с Visual Studio 2015. | |
1957 | |
1958 | |
1959 Изменения в nginx 1.9.3 14.07.2015 | |
1960 | |
1961 *) Изменение: дублирующиеся блоки http, mail и stream теперь запрещены. | |
1962 | |
1963 *) Добавление: ограничение количества соединений в модуле stream. | |
1964 | |
1965 *) Добавление: ограничение скорости в модуле stream. | |
1966 | |
1967 *) Исправление: директива zone в блоке upstream не работала на Windows. | |
1968 | |
1969 *) Исправление: совместимость с LibreSSL в модуле stream. | |
1970 Спасибо Piotr Sikora. | |
1971 | |
1972 *) Исправление: в параметре --builddir в configure. | |
1973 Спасибо Piotr Sikora. | |
1974 | |
1975 *) Исправление: директива ssl_stapling_file не работала; ошибка | |
1976 появилась в 1.9.2. | |
1977 Спасибо Faidon Liambotis и Brandon Black. | |
1978 | |
1979 *) Исправление: при использовании директивы ssl_stapling в рабочем | |
1980 процессе мог произойти segmentation fault; ошибка появилась в 1.9.2. | |
1981 Спасибо Matthew Baldwin. | |
1982 | |
1983 | |
1984 Изменения в nginx 1.9.2 16.06.2015 | |
1985 | |
1986 *) Добавление: параметр backlog директивы listen в почтовом | |
1987 прокси-сервере и модуле stream. | |
1988 | |
1989 *) Добавление: директивы allow и deny в модуле stream. | |
1990 | |
1991 *) Добавление: директива proxy_bind в модуле stream. | |
1992 | |
1993 *) Добавление: директива proxy_protocol в модуле stream. | |
1994 | |
1995 *) Добавление: ключ -T. | |
1996 | |
1997 *) Добавление: параметр REQUEST_SCHEME добавлен в стандартные | |
1998 конфигурационные файлы fastcgi.conf, fastcgi_params, scgi_params и | |
1999 uwsgi_params. | |
2000 | |
2001 *) Исправление: параметр reuseport директивы listen в модуле stream не | |
2002 работал. | |
2003 | |
2004 *) Исправление: OCSP stapling в некоторых случаях мог вернуть устаревший | |
2005 OCSP-ответ. | |
2006 | |
2007 | |
2008 Изменения в nginx 1.9.1 26.05.2015 | |
2009 | |
2010 *) Изменение: теперь протокол SSLv3 по умолчанию запрещён. | |
2011 | |
2012 *) Изменение: некоторые давно устаревшие директивы больше не | |
2013 поддерживаются. | |
2014 | |
2015 *) Добавление: параметр reuseport директивы listen. | |
2016 Спасибо Yingqi Lu из Intel и Sepherosa Ziehau. | |
2017 | |
2018 *) Добавление: переменная $upstream_connect_time. | |
2019 | |
2020 *) Исправление: в директиве hash на big-endian платформах. | |
2021 | |
2022 *) Исправление: nginx мог не запускаться на некоторых старых версиях | |
2023 Linux; ошибка появилась в 1.7.11. | |
2024 | |
2025 *) Исправление: в парсинге IP-адресов. | |
2026 Спасибо Сергею Половко. | |
2027 | |
2028 | |
2029 Изменения в nginx 1.9.0 28.04.2015 | |
2030 | |
2031 *) Изменение: устаревшие методы обработки соединений aio и rtsig больше | |
2032 не поддерживаются. | |
2033 | |
2034 *) Добавление: директива zone в блоке upstream. | |
2035 | |
2036 *) Добавление: модуль stream. | |
2037 | |
2038 *) Добавление: поддержка byte ranges для ответов модуля | |
2039 ngx_http_memcached_module. | |
2040 Спасибо Martin Mlynář. | |
2041 | |
2042 *) Добавление: разделяемую память теперь можно использовать на версиях | |
2043 Windows с рандомизацией адресного пространства. | |
2044 Спасибо Сергею Брестеру. | |
2045 | |
2046 *) Добавление: директиву error_log теперь можно использовать на уровнях | |
2047 mail и server в почтовом прокси-сервере. | |
2048 | |
2049 *) Исправление: параметр proxy_protocol директивы listen не работал, | |
2050 если не был указан в первой директиве listen для данного | |
2051 listen-сокета. | |
2052 | |
2053 | |
2054 Изменения в nginx 1.7.12 07.04.2015 | |
2055 | |
2056 *) Добавление: теперь директива tcp_nodelay работает для SSL-соединений | |
2057 с бэкендами. | |
2058 | |
2059 *) Добавление: теперь потоки могут использоваться для чтения заголовков | |
2060 файлов в кэше. | |
2061 | |
2062 *) Исправление: в директиве proxy_request_buffering. | |
2063 | |
2064 *) Исправление: при использовании потоков на Linux в рабочем процессе | |
2065 мог произойти segmentation fault. | |
2066 | |
2067 *) Исправление: в обработке ошибок при использовании директивы | |
2068 ssl_stapling. | |
2069 Спасибо Filipe da Silva. | |
2070 | |
2071 *) Исправление: в модуле ngx_http_spdy_module. | |
2072 | |
2073 | |
2074 Изменения в nginx 1.7.11 24.03.2015 | |
2075 | |
2076 *) Изменение: параметр sendfile директивы aio более не нужен; теперь | |
2077 nginx автоматически использует AIO для подгрузки данных для sendfile, | |
2078 если одновременно используются директивы aio и sendfile. | |
2079 | |
2080 *) Добавление: экспериментальная поддержка потоков. | |
2081 | |
2082 *) Добавление: директивы proxy_request_buffering, | |
2083 fastcgi_request_buffering, scgi_request_buffering и | |
2084 uwsgi_request_buffering. | |
2085 | |
2086 *) Добавление: экспериментальное API для обработки тела запроса. | |
2087 | |
2088 *) Добавление: проверка клиентских SSL-сертификатов в почтовом | |
2089 прокси-сервере. | |
2090 Спасибо Sven Peter, Franck Levionnois и Filipe Da Silva. | |
2091 | |
2092 *) Добавление: уменьшение времени запуска при использовании директивы | |
2093 "hash ... consistent" в блоке upstream. | |
2094 Спасибо Wai Keen Woon. | |
2095 | |
2096 *) Добавление: отладочное логгирование в кольцевой буфер в памяти. | |
2097 | |
2098 *) Исправление: в обработке хэш-таблиц. | |
2099 Спасибо Chris West. | |
2100 | |
2101 *) Исправление: в директиве proxy_cache_revalidate. | |
2102 | |
2103 *) Исправление: SSL-соединения могли зависать, если использовался | |
2104 отложенный accept или параметр proxy_protocol директивы listen. | |
2105 Спасибо James Hamlin. | |
2106 | |
2107 *) Исправление: переменная $upstream_response_time могла содержать | |
2108 неверное значение при использовании директивы image_filter. | |
2109 | |
2110 *) Исправление: в обработке целочисленных переполнений. | |
2111 Спасибо Régis Leroy. | |
2112 | |
2113 *) Исправление: при использовании LibreSSL было невозможно включить | |
2114 поддержку SSLv3. | |
2115 | |
2116 *) Исправление: при использовании LibreSSL в логах появлялись сообщения | |
2117 "ignoring stale global SSL error ... called a function you should not | |
2118 call". | |
2119 | |
2120 *) Исправление: сертификаты, указанные в директивах | |
2121 ssl_client_certificate и ssl_trusted_certificate, использовались для | |
2122 автоматического построения цепочек сертификатов. | |
2123 | |
2124 | |
2125 Изменения в nginx 1.7.10 10.02.2015 | |
2126 | |
2127 *) Добавление: параметр use_temp_path директив proxy_cache_path, | |
2128 fastcgi_cache_path, scgi_cache_path и uwsgi_cache_path. | |
2129 | |
2130 *) Добавление: переменная $upstream_header_time. | |
2131 | |
2132 *) Изменение: теперь при переполнении диска nginx пытается писать | |
2133 error_log'и только раз в секунду. | |
2134 | |
2135 *) Исправление: директива try_files при тестировании каталогов не | |
2136 игнорировала обычные файлы. | |
2137 Спасибо Damien Tournoud. | |
2138 | |
2139 *) Исправление: при использовании директивы sendfile на OS X возникали | |
2140 ошибки "sendfile() failed"; ошибка появилась в nginx 1.7.8. | |
2141 | |
2142 *) Исправление: в лог могли писаться сообщения "sem_post() failed". | |
2143 | |
2144 *) Исправление: nginx не собирался с musl libc. | |
2145 Спасибо James Taylor. | |
2146 | |
2147 *) Исправление: nginx не собирался на Tru64 UNIX. | |
2148 Спасибо Goetz T. Fischer. | |
2149 | |
2150 | |
2151 Изменения в nginx 1.7.9 23.12.2014 | |
2152 | |
2153 *) Добавление: директивы proxy_cache, fastcgi_cache, scgi_cache и | |
2154 uwsgi_cache поддерживают переменные. | |
2155 | |
2156 *) Добавление: директива expires поддерживает переменные. | |
2157 | |
2158 *) Добавление: возможность загрузки секретных ключей с аппаратных | |
2159 устройств с помощью OpenSSL engines. | |
2160 Спасибо Дмитрию Пичулину. | |
2161 | |
2162 *) Добавление: директива autoindex_format. | |
2163 | |
2164 *) Исправление: ревалидация элементов кэша теперь используется только | |
2165 для ответов с кодами 200 и 206. | |
2166 Спасибо Piotr Sikora. | |
2167 | |
2168 *) Исправление: строка "TE" заголовка запроса клиента передавалась на | |
2169 бэкенд при проксировании. | |
2170 | |
2171 *) Исправление: директивы proxy_pass, fastcgi_pass, scgi_pass и | |
2172 uwsgi_pass могли неправильно работать внутри блоков if и | |
2173 limit_except. | |
2174 | |
2175 *) Исправление: директива proxy_store с параметром "on" игнорировалась, | |
2176 если на предыдущем уровне использовалась директива proxy_store с явно | |
2177 заданным путём к файлам. | |
2178 | |
2179 *) Исправление: nginx не собирался с BoringSSL. | |
2180 Спасибо Lukas Tribus. | |
2181 | |
2182 | |
2183 Изменения в nginx 1.7.8 02.12.2014 | |
2184 | |
2185 *) Изменение: теперь строки "If-Modified-Since", "If-Range" и им | |
2186 подобные в заголовке запроса клиента передаются бэкенду при | |
2187 включённом кэшировании, если nginx заранее знает, что не будет | |
2188 кэшировать ответ (например, при использовании proxy_cache_min_uses). | |
2189 | |
2190 *) Изменение: теперь после истечения proxy_cache_lock_timeout nginx | |
2191 отправляет запрос на бэкенд без кэширования; новые директивы | |
2192 proxy_cache_lock_age, fastcgi_cache_lock_age, scgi_cache_lock_age и | |
2193 uwsgi_cache_lock_age позволяют указать, через какое время блокировка | |
2194 будет принудительно снята и будет сделана ещё одна попытка | |
2195 закэшировать ответ. | |
2196 | |
2197 *) Изменение: директива log_format теперь может использоваться только на | |
2198 уровне http. | |
2199 | |
2200 *) Добавление: директивы proxy_ssl_certificate, | |
2201 proxy_ssl_certificate_key, proxy_ssl_password_file, | |
2202 uwsgi_ssl_certificate, uwsgi_ssl_certificate_key и | |
2203 uwsgi_ssl_password_file. | |
2204 Спасибо Piotr Sikora. | |
2205 | |
2206 *) Добавление: теперь с помощью X-Accel-Redirect можно перейти в | |
2207 именованный location. | |
2208 Спасибо Toshikuni Fukaya. | |
2209 | |
2210 *) Добавление: теперь директива tcp_nodelay работает для | |
2211 SPDY-соединений. | |
2212 | |
2213 *) Добавление: новые директивы в скриптах подсветки синтаксиса для vim. | |
2214 Спасибо Peter Wu. | |
2215 | |
2216 *) Исправление: nginx игнорировал значение "s-maxage" в строке | |
2217 "Cache-Control" в заголовке ответа бэкенда. | |
2218 Спасибо Piotr Sikora. | |
2219 | |
2220 *) Исправление: в модуле ngx_http_spdy_module. | |
2221 Спасибо Piotr Sikora. | |
2222 | |
2223 *) Исправление: в директиве ssl_password_file при использовании OpenSSL | |
2224 0.9.8zc, 1.0.0o, 1.0.1j. | |
2225 | |
2226 *) Исправление: при использовании директивы post_action в лог писались | |
2227 сообщения "header already sent"; ошибка появилась в nginx 1.5.4. | |
2228 | |
2229 *) Исправление: при использовании директивы "postpone_output 0" с | |
2230 SSI-подзапросами в лог могли писаться сообщения "the http output | |
2231 chain is empty". | |
2232 | |
2233 *) Исправление: в директиве proxy_cache_lock при использовании | |
2234 SSI-подзапросов. | |
2235 Спасибо Yichun Zhang. | |
2236 | |
2237 | |
2238 Изменения в nginx 1.7.7 28.10.2014 | |
2239 | |
2240 *) Изменение: теперь nginx учитывает при кэшировании строку "Vary" в | |
2241 заголовке ответа бэкенда. | |
2242 | |
2243 *) Добавление: директивы proxy_force_ranges, fastcgi_force_ranges, | |
2244 scgi_force_ranges и uwsgi_force_ranges. | |
2245 | |
2246 *) Добавление: директивы proxy_limit_rate, fastcgi_limit_rate, | |
2247 scgi_limit_rate и uwsgi_limit_rate. | |
2248 | |
2249 *) Добавление: параметр Vary директив proxy_ignore_headers, | |
2250 fastcgi_ignore_headers, scgi_ignore_headers и uwsgi_ignore_headers. | |
2251 | |
2252 *) Исправление: последняя часть ответа, полученного от бэкенда при | |
2253 небуферизированном проксировании, могла не отправляться клиенту, если | |
2254 использовались директивы gzip или gunzip. | |
2255 | |
2256 *) Исправление: в директиве proxy_cache_revalidate. | |
2257 Спасибо Piotr Sikora. | |
2258 | |
2259 *) Исправление: в обработке ошибок. | |
2260 Спасибо Yichun Zhang и Даниилу Бондареву. | |
2261 | |
2262 *) Исправление: в директивах proxy_next_upstream_tries и | |
2263 proxy_next_upstream_timeout. | |
2264 Спасибо Feng Gu. | |
2265 | |
2266 *) Исправление: nginx/Windows не собирался с MinGW-w64 gcc. | |
2267 Спасибо Kouhei Sutou. | |
2268 | |
2269 | |
2270 Изменения в nginx 1.7.6 30.09.2014 | |
2271 | |
2272 *) Изменение: устаревшая директива limit_zone больше не поддерживается. | |
2273 | |
2274 *) Добавление: в директивах limit_conn_zone и limit_req_zone теперь | |
2275 можно использовать комбинации нескольких переменных. | |
2276 | |
2277 *) Исправление: при повторной отправке FastCGI-запроса на бэкенд тело | |
2278 запроса могло передаваться неправильно. | |
2279 | |
2280 *) Исправление: в логгировании в syslog. | |
2281 | |
2282 | |
2283 Изменения в nginx 1.7.5 16.09.2014 | |
2284 | |
2285 *) Безопасность: при использовании общего для нескольких блоков server | |
2286 разделяемого кэша SSL-сессий или общего ключа для шифрования TLS | |
2287 session tickets было возможно повторно использовать SSL-сессию в | |
2288 контексте другого блока server (CVE-2014-3616). | |
2289 Спасибо Antoine Delignat-Lavaud. | |
2290 | |
2291 *) Изменение: директиву stub_status теперь можно указывать без | |
2292 параметров. | |
2293 | |
2294 *) Добавление: параметр always директивы add_header. | |
2295 | |
2296 *) Добавление: директивы proxy_next_upstream_tries, | |
2297 proxy_next_upstream_timeout, fastcgi_next_upstream_tries, | |
2298 fastcgi_next_upstream_timeout, memcached_next_upstream_tries, | |
2299 memcached_next_upstream_timeout, scgi_next_upstream_tries, | |
2300 scgi_next_upstream_timeout, uwsgi_next_upstream_tries и | |
2301 uwsgi_next_upstream_timeout. | |
2302 | |
2303 *) Исправление: в параметре if директивы access_log. | |
2304 | |
2305 *) Исправление: в модуле ngx_http_perl_module. | |
2306 Спасибо Piotr Sikora. | |
2307 | |
2308 *) Исправление: директива listen почтового прокси-сервера не позволяла | |
2309 указать более двух параметров. | |
2310 | |
2311 *) Исправление: директива sub_filter не работала с заменяемой строкой из | |
2312 одного символа. | |
2313 | |
2314 *) Исправление: запросы могли зависать, если использовался resolver и в | |
2315 процессе обращения к DNS-серверу происходил таймаут. | |
2316 | |
2317 *) Исправление: в модуле ngx_http_spdy_module при использовании | |
2318 совместно с AIO. | |
2319 | |
2320 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2321 если с помощью директивы set изменялись переменные "$http_...", | |
2322 "$sent_http_..." или "$upstream_http_...". | |
2323 | |
2324 *) Исправление: в обработке ошибок выделения памяти. | |
2325 Спасибо Markus Linnala и Feng Gu. | |
2326 | |
2327 | |
2328 Изменения в nginx 1.7.4 05.08.2014 | |
2329 | |
2330 *) Безопасность: pipelined-команды не отбрасывались после команды | |
2331 STARTTLS в SMTP прокси-сервере (CVE-2014-3556); ошибка появилась в | |
2332 1.5.6. | |
2333 Спасибо Chris Boulton. | |
2334 | |
2335 *) Изменение: экранирование символов в URI теперь использует | |
2336 шестнадцатеричные цифры в верхнем регистре. | |
2337 Спасибо Piotr Sikora. | |
2338 | |
2339 *) Добавление: теперь nginx можно собрать с BoringSSL и LibreSSL. | |
2340 Спасибо Piotr Sikora. | |
2341 | |
2342 *) Исправление: запросы могли зависать, если использовался resolver и | |
2343 DNS-сервер возвращал некорректный ответ; ошибка появилась в 1.5.8. | |
2344 | |
2345 *) Исправление: в модуле ngx_http_spdy_module. | |
2346 Спасибо Piotr Sikora. | |
2347 | |
2348 *) Исправление: переменная $uri могла содержать мусор при возврате | |
2349 ошибок с кодом 400. | |
2350 Спасибо Сергею Боброву. | |
2351 | |
2352 *) Исправление: в обработке ошибок в директиве proxy_store и в модуле | |
2353 ngx_http_dav_module. | |
2354 Спасибо Feng Gu. | |
2355 | |
2356 *) Исправление: при логгировании ошибок в syslog мог происходить | |
2357 segmentation fault; ошибка появилась в 1.7.1. | |
2358 | |
2359 *) Исправление: переменные $geoip_latitude, $geoip_longitude, | |
2360 $geoip_dma_code и $geoip_area_code могли не работать. | |
2361 Спасибо Yichun Zhang. | |
2362 | |
2363 *) Исправление: в обработке ошибок выделения памяти. | |
2364 Спасибо Tatsuhiko Kubo и Piotr Sikora. | |
2365 | |
2366 | |
2367 Изменения в nginx 1.7.3 08.07.2014 | |
2368 | |
2369 *) Добавление: weak entity tags теперь не удаляются при изменениях | |
2370 ответа, а strong entity tags преобразуются в weak. | |
2371 | |
2372 *) Добавление: ревалидация элементов кэша теперь, если это возможно, | |
2373 использует заголовок If-None-Match. | |
2374 | |
2375 *) Добавление: директива ssl_password_file. | |
2376 | |
2377 *) Исправление: при возврате ответа из кэша заголовок запроса | |
2378 If-None-Match игнорировался, если в ответе не было заголовка | |
2379 Last-Modified. | |
2380 | |
2381 *) Исправление: сообщения "peer closed connection in SSL handshake" при | |
2382 соединении с бэкендами логгировались на уровне info вместо error. | |
2383 | |
2384 *) Исправление: в модуле ngx_http_dav_module в nginx/Windows. | |
2385 | |
2386 *) Исправление: SPDY-соединения могли неожиданно закрываться, если | |
2387 использовалось кэширование. | |
2388 | |
2389 | |
2390 Изменения в nginx 1.7.2 17.06.2014 | |
2391 | |
2392 *) Добавление: директива hash в блоке upstream. | |
2393 | |
2394 *) Добавление: дефрагментация свободных блоков разделяемой памяти. | |
2395 Спасибо Wandenberg Peixoto и Yichun Zhang. | |
2396 | |
2397 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2398 если использовалось значение access_log по умолчанию; ошибка | |
2399 появилась в 1.7.0. | |
2400 Спасибо Piotr Sikora. | |
2401 | |
2402 *) Исправление: завершающий слэш ошибочно удалялся из последнего | |
2403 параметра директивы try_files. | |
2404 | |
2405 *) Исправление: nginx мог не собираться на OS X. | |
2406 | |
2407 *) Исправление: в модуле ngx_http_spdy_module. | |
2408 | |
2409 | |
2410 Изменения в nginx 1.7.1 27.05.2014 | |
2411 | |
2412 *) Добавление: переменные "$upstream_cookie_...". | |
2413 | |
2414 *) Добавление: переменная $ssl_client_fingerprint. | |
2415 | |
2416 *) Добавление: директивы error_log и access_log теперь поддерживают | |
2417 логгирование в syslog. | |
2418 | |
2419 *) Добавление: почтовый прокси-сервер теперь логгирует порт клиента при | |
2420 соединении. | |
2421 | |
2422 *) Исправление: утечки памяти при использовании директивы | |
2423 "ssl_stapling". | |
2424 Спасибо Filipe da Silva. | |
2425 | |
2426 *) Исправление: директива alias внутри location'а, заданного регулярным | |
2427 выражением, работала неправильно, если использовались директивы if | |
2428 или limit_except. | |
2429 | |
2430 *) Исправление: директива charset не ставила кодировку для сжатых | |
2431 ответов бэкендов. | |
2432 | |
2433 *) Исправление: директива proxy_pass без URI могла использовать | |
2434 оригинальный запрос после установки переменной $args. | |
2435 Спасибо Yichun Zhang. | |
2436 | |
2437 *) Исправление: в работе параметра none директивы smtp_auth; ошибка | |
2438 появилась в 1.5.6. | |
2439 Спасибо Святославу Никольскому. | |
2440 | |
2441 *) Исправление: при совместном использовании sub_filter и SSI ответы | |
2442 могли передаваться неверно. | |
2443 | |
2444 *) Исправление: nginx не собирался с параметром --with-file-aio на | |
2445 Linux/aarch64. | |
2446 | |
2447 | |
2448 Изменения в nginx 1.7.0 24.04.2014 | |
2449 | |
2450 *) Добавление: проверка SSL-сертификатов бэкендов. | |
2451 | |
2452 *) Добавление: поддержка SNI при работе с бэкендами по SSL. | |
2453 | |
2454 *) Добавление: переменная $ssl_server_name. | |
2455 | |
2456 *) Добавление: параметр if директивы access_log. | |
2457 | |
2458 | |
2459 Изменения в nginx 1.5.13 08.04.2014 | |
2460 | |
2461 *) Изменение: улучшена обработка хэш-таблиц; в директивах | |
2462 variables_hash_max_size и types_hash_bucket_size значения по | |
2463 умолчанию изменены на 1024 и 64 соответственно. | |
2464 | |
2465 *) Добавление: модуль ngx_http_mp4_module теперь понимает аргумент end. | |
2466 | |
2467 *) Добавление: поддержка byte ranges модулем ngx_http_mp4_module и при | |
2468 сохранении ответов в кэш. | |
2469 | |
2470 *) Исправление: теперь nginx не пишет в лог сообщения "ngx_slab_alloc() | |
2471 failed: no memory" при использовании разделяемой памяти в | |
2472 ssl_session_cache и в модуле ngx_http_limit_req_module. | |
2473 | |
2474 *) Исправление: директива underscores_in_headers не разрешала | |
2475 подчёркивание в первом символе заголовка. | |
2476 Спасибо Piotr Sikora. | |
2477 | |
2478 *) Исправление: cache manager мог нагружать процессор при выходе в | |
2479 nginx/Windows. | |
2480 | |
2481 *) Исправление: при использовании ssl_session_cache с параметром shared | |
2482 рабочий процесс nginx/Windows завершался аварийно. | |
2483 | |
2484 *) Исправление: в модуле ngx_http_spdy_module. | |
2485 | |
2486 | |
2487 Изменения в nginx 1.5.12 18.03.2014 | |
2488 | |
2489 *) Безопасность: при обработке специально созданного запроса модулем | |
2490 ngx_http_spdy_module могло происходить переполнение буфера в рабочем | |
2491 процессе, что потенциально могло приводить к выполнению произвольного | |
2492 кода (CVE-2014-0133). | |
2493 Спасибо Lucas Molas из Programa STIC, Fundación Dr. Manuel Sadosky, | |
2494 Buenos Aires, Argentina. | |
2495 | |
2496 *) Добавление: параметр proxy_protocol в директивах listen и | |
2497 real_ip_header, переменная $proxy_protocol_addr. | |
2498 | |
2499 *) Исправление: в директиве fastcgi_next_upstream. | |
2500 Спасибо Lucas Molas. | |
2501 | |
2502 | |
2503 Изменения в nginx 1.5.11 04.03.2014 | |
2504 | |
2505 *) Безопасность: при обработке специально созданного запроса модулем | |
2506 ngx_http_spdy_module на 32-битных платформах могла повреждаться | |
2507 память рабочего процесса, что потенциально могло приводить к | |
2508 выполнению произвольного кода (CVE-2014-0088); ошибка появилась в | |
2509 1.5.10. | |
2510 Спасибо Lucas Molas из Programa STIC, Fundación Dr. Manuel Sadosky, | |
2511 Buenos Aires, Argentina. | |
2512 | |
2513 *) Добавление: переменная $ssl_session_reused. | |
2514 | |
2515 *) Исправление: директива client_max_body_size могла не работать при | |
2516 чтении тела запроса с использованием chunked transfer encoding; | |
2517 ошибка появилась в 1.3.9. | |
2518 Спасибо Lucas Molas. | |
2519 | |
2520 *) Исправление: при проксировании WebSocket-соединений в рабочем | |
2521 процессе мог произойти segmentation fault. | |
2522 | |
2523 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2524 если использовался модуль ngx_http_spdy_module на 32-битных | |
2525 платформах; ошибка появилась в 1.5.10. | |
2526 | |
2527 *) Исправление: значение переменной $upstream_status могло быть | |
2528 неверным, если использовались директивы proxy_cache_use_stale или | |
2529 proxy_cache_revalidate. | |
2530 Спасибо Piotr Sikora. | |
2531 | |
2532 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2533 если ошибки с кодом 400 с помощью директивы error_page | |
2534 перенаправлялись в именованный location. | |
2535 | |
2536 *) Исправление: nginx/Windows не собирался с Visual Studio 2013. | |
2537 | |
2538 | |
2539 Изменения в nginx 1.5.10 04.02.2014 | |
2540 | |
2541 *) Добавление: модуль ngx_http_spdy_module теперь использует протокол | |
2542 SPDY 3.1. | |
2543 Спасибо Automattic и MaxCDN за спонсирование разработки. | |
2544 | |
2545 *) Добавление: модуль ngx_http_mp4_module теперь пропускает дорожки, | |
2546 имеющие меньшую длину, чем запрошенная перемотка. | |
2547 | |
2548 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2549 если переменная $ssl_session_id использовалась при логгировании; | |
2550 ошибка появилась в 1.5.9. | |
2551 | |
2552 *) Исправление: переменные $date_local и $date_gmt использовали неверный | |
2553 формат вне модуля ngx_http_ssi_filter_module. | |
2554 | |
2555 *) Исправление: клиентские соединения могли сразу закрываться, если | |
2556 использовался отложенный accept; ошибка появилась в 1.3.15. | |
2557 | |
2558 *) Исправление: сообщения "getsockopt(TCP_FASTOPEN) ... failed" | |
2559 записывались в лог в процессе обновления исполняемого файла на Linux; | |
2560 ошибка появилась в 1.5.8. | |
2561 Спасибо Piotr Sikora. | |
2562 | |
2563 | |
2564 Изменения в nginx 1.5.9 22.01.2014 | |
2565 | |
2566 *) Изменение: теперь в заголовке X-Accel-Redirect nginx ожидает | |
2567 закодированный URI. | |
2568 | |
2569 *) Добавление: директива ssl_buffer_size. | |
2570 | |
2571 *) Добавление: директиву limit_rate теперь можно использовать для | |
2572 ограничения скорости передачи ответов клиенту в SPDY-соединениях. | |
2573 | |
2574 *) Добавление: директива spdy_chunk_size. | |
2575 | |
2576 *) Добавление: директива ssl_session_tickets. | |
2577 Спасибо Dirkjan Bussink. | |
2578 | |
2579 *) Исправление: переменная $ssl_session_id содержала всю сессию в | |
2580 сериализованном виде вместо её идентификатора. | |
2581 Спасибо Ivan Ristić. | |
2582 | |
2583 *) Исправление: nginx неправильно обрабатывал закодированный символ "?" | |
2584 в команде SSI include. | |
2585 | |
2586 *) Исправление: модуль ngx_http_dav_module не раскодировал целевой URI | |
2587 при обработке методов COPY и MOVE. | |
2588 | |
2589 *) Исправление: resolver не понимал доменные имена с точкой в конце. | |
2590 Спасибо Yichun Zhang. | |
2591 | |
2592 *) Исправление: при проксировании в логах могли появляться сообщения | |
2593 "zero size buf in output"; ошибка появилась в 1.3.9. | |
2594 | |
2595 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2596 если использовался модуль ngx_http_spdy_module. | |
2597 | |
2598 *) Исправление: при использовании методов обработки соединений select, | |
2599 poll и /dev/poll проксируемые WebSocket-соединения могли зависать | |
2600 сразу после открытия. | |
2601 | |
2602 *) Исправление: директива xclient почтового прокси-сервера некорректно | |
2603 передавала IPv6-адреса. | |
2604 | |
2605 | |
2606 Изменения в nginx 1.5.8 17.12.2013 | |
2607 | |
2608 *) Добавление: теперь resolver поддерживает IPv6. | |
2609 | |
2610 *) Добавление: директива listen поддерживает параметр fastopen. | |
2611 Спасибо Mathew Rodley. | |
2612 | |
2613 *) Добавление: поддержка SSL в модуле ngx_http_uwsgi_module. | |
2614 Спасибо Roberto De Ioris. | |
2615 | |
2616 *) Добавление: скрипты подсветки синтаксиса для vim добавлены в contrib. | |
2617 Спасибо Evan Miller. | |
2618 | |
2619 *) Исправление: при чтении тела запроса с использованием chunked | |
2620 transfer encoding по SSL-соединению мог произойти таймаут. | |
2621 | |
2622 *) Исправление: директива master_process работала неправильно в | |
2623 nginx/Windows. | |
2624 | |
2625 *) Исправление: параметр setfib директивы listen мог не работать. | |
2626 | |
2627 *) Исправление: в модуле ngx_http_spdy_module. | |
2628 | |
2629 | |
2630 Изменения в nginx 1.5.7 19.11.2013 | |
2631 | |
2632 *) Безопасность: символ, следующий за незакодированным пробелом в строке | |
2633 запроса, обрабатывался неправильно (CVE-2013-4547); ошибка появилась | |
2634 в 0.8.41. | |
2635 Спасибо Ivan Fratric из Google Security Team. | |
2636 | |
2637 *) Изменение: уровень логгирования ошибок auth_basic об отсутствии | |
2638 пароля понижен с уровня error до info. | |
2639 | |
2640 *) Добавление: директивы proxy_cache_revalidate, | |
2641 fastcgi_cache_revalidate, scgi_cache_revalidate и | |
2642 uwsgi_cache_revalidate. | |
2643 | |
2644 *) Добавление: директива ssl_session_ticket_key. | |
2645 Спасибо Piotr Sikora. | |
2646 | |
2647 *) Исправление: директива "add_header Cache-Control ''" добавляла строку | |
2648 заголовка ответа "Cache-Control" с пустым значением. | |
2649 | |
2650 *) Исправление: директива "satisfy any" могла вернуть ошибку 403 вместо | |
2651 401 при использовании директив auth_request и auth_basic. | |
2652 Спасибо Jan Marc Hoffmann. | |
2653 | |
2654 *) Исправление: параметры accept_filter и deferred директивы listen | |
2655 игнорировались для listen-сокетов, создаваемых в процессе обновления | |
2656 исполняемого файла. | |
2657 Спасибо Piotr Sikora. | |
2658 | |
2659 *) Исправление: часть данных, полученных от бэкенда при | |
2660 небуферизированном проксировании, могла не отправляться клиенту | |
2661 сразу, если использовались директивы gzip или gunzip. | |
2662 Спасибо Yichun Zhang. | |
2663 | |
2664 *) Исправление: в обработке ошибок в модуле | |
2665 ngx_http_gunzip_filter_module. | |
2666 | |
2667 *) Исправление: ответы могли зависать, если использовался модуль | |
2668 ngx_http_spdy_module и директива auth_request. | |
2669 | |
2670 *) Исправление: утечки памяти в nginx/Windows. | |
2671 | |
2672 | |
2673 Изменения в nginx 1.5.6 01.10.2013 | |
2674 | |
2675 *) Добавление: директива fastcgi_buffering. | |
2676 | |
2677 *) Добавление: директивы proxy_ssl_protocols и proxy_ssl_ciphers. | |
2678 Спасибо Piotr Sikora. | |
2679 | |
2680 *) Добавление: оптимизация SSL handshake при использовании длинных | |
2681 цепочек сертификатов. | |
2682 | |
2683 *) Добавление: почтовый прокси-сервер поддерживает SMTP pipelining. | |
2684 | |
2685 *) Исправление: в модуле ngx_http_auth_basic_module при использовании | |
2686 метода шифрования паролей "$apr1$". | |
2687 Спасибо Markus Linnala. | |
2688 | |
2689 *) Исправление: на MacOSX, Cygwin и nginx/Windows для обработки запроса | |
2690 мог использоваться неверный location, если для задания location'ов | |
2691 использовались символы разных регистров. | |
2692 | |
2693 *) Исправление: автоматическое перенаправление с добавлением | |
2694 завершающего слэша для проксированных location'ов могло не работать. | |
2695 | |
2696 *) Исправление: в почтовом прокси-сервере. | |
2697 | |
2698 *) Исправление: в модуле ngx_http_spdy_module. | |
2699 | |
2700 | |
2701 Изменения в nginx 1.5.5 17.09.2013 | |
2702 | |
2703 *) Изменение: теперь nginx по умолчанию использует HTTP/1.0, если точно | |
2704 определить протокол не удалось. | |
2705 | |
2706 *) Добавление: директива disable_symlinks теперь использует O_PATH на | |
2707 Linux. | |
2708 | |
2709 *) Добавление: для определения того, что клиент закрыл соединение, при | |
2710 использовании метода epoll теперь используются события EPOLLRDHUP. | |
2711 | |
2712 *) Исправление: в директиве valid_referers при использовании параметра | |
2713 server_names. | |
2714 | |
2715 *) Исправление: переменная $request_time не работала в nginx/Windows. | |
2716 | |
2717 *) Исправление: в директиве image_filter. | |
2718 Спасибо Lanshun Zhou. | |
2719 | |
2720 *) Исправление: совместимость с OpenSSL 1.0.1f. | |
2721 Спасибо Piotr Sikora. | |
2722 | |
2723 | |
2724 Изменения в nginx 1.5.4 27.08.2013 | |
2725 | |
2726 *) Изменение: MIME-тип для расширения js изменён на | |
2727 "application/javascript"; значение по умолчанию директивы | |
2728 charset_types изменено соответственно. | |
2729 | |
2730 *) Изменение: теперь директива image_filter с параметром size возвращает | |
2731 ответ с MIME-типом "application/json". | |
2732 | |
2733 *) Добавление: модуль ngx_http_auth_request_module. | |
2734 | |
2735 *) Исправление: на старте или во время переконфигурации мог произойти | |
2736 segmentation fault, если использовалась директива try_files с пустым | |
2737 параметром. | |
2738 | |
2739 *) Исправление: утечки памяти при использовании в директивах root и | |
2740 auth_basic_user_file относительных путей, заданных с помощью | |
2741 переменных. | |
2742 | |
2743 *) Исправление: директива valid_referers неправильно выполняла | |
2744 регулярные выражения, если заголовок Referer начинался с "https://". | |
2745 Спасибо Liangbin Li. | |
2746 | |
2747 *) Исправление: ответы могли зависать, если использовались подзапросы и | |
2748 при обработке подзапроса происходила ошибка во время SSL handshake с | |
2749 бэкендом. | |
2750 Спасибо Aviram Cohen. | |
2751 | |
2752 *) Исправление: в модуле ngx_http_autoindex_module. | |
2753 | |
2754 *) Исправление: в модуле ngx_http_spdy_module. | |
2755 | |
2756 | |
2757 Изменения в nginx 1.5.3 30.07.2013 | |
2758 | |
2759 *) Изменение во внутреннем API: теперь при небуферизированной работе с | |
2760 бэкендами u->length по умолчанию устанавливается в -1. | |
2761 | |
2762 *) Изменение: теперь при получении неполного ответа от бэкенда nginx | |
2763 отправляет полученную часть ответа, после чего закрывает соединение с | |
2764 клиентом. | |
2765 | |
2766 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2767 если использовался модуль ngx_http_spdy_module и директива | |
2768 client_body_in_file_only. | |
2769 | |
2770 *) Исправление: параметр so_keepalive директивы listen мог работать | |
2771 некорректно на DragonFlyBSD. | |
2772 Спасибо Sepherosa Ziehau. | |
2773 | |
2774 *) Исправление: в модуле ngx_http_xslt_filter_module. | |
2775 | |
2776 *) Исправление: в модуле ngx_http_sub_filter_module. | |
2777 | |
2778 | |
2779 Изменения в nginx 1.5.2 02.07.2013 | |
2780 | |
2781 *) Добавление: теперь можно использовать несколько директив error_log. | |
2782 | |
2783 *) Исправление: метод $r->header_in() встроенного перла не возвращал | |
2784 значения строк "Cookie" и "X-Forwarded-For" из заголовка запроса; | |
2785 ошибка появилась в 1.3.14. | |
2786 | |
2787 *) Исправление: в модуле ngx_http_spdy_module. | |
2788 Спасибо Jim Radford. | |
2789 | |
2790 *) Исправление: nginx не собирался на Linux при использовании x32 ABI. | |
2791 Спасибо Сергею Иванцову. | |
2792 | |
2793 | |
2794 Изменения в nginx 1.5.1 04.06.2013 | |
2795 | |
2796 *) Добавление: директивы ssi_last_modified, sub_filter_last_modified и | |
2797 xslt_last_modified. | |
2798 Спасибо Алексею Колпакову. | |
2799 | |
2800 *) Добавление: параметр http_403 в директивах proxy_next_upstream, | |
2801 fastcgi_next_upstream, scgi_next_upstream и uwsgi_next_upstream. | |
2802 | |
2803 *) Добавление: директивы allow и deny теперь поддерживают unix domain | |
2804 сокеты. | |
2805 | |
2806 *) Исправление: nginx не собирался с модулем ngx_mail_ssl_module, но без | |
2807 модуля ngx_http_ssl_module; ошибка появилась в 1.3.14. | |
2808 | |
2809 *) Исправление: в директиве proxy_set_body. | |
2810 Спасибо Lanshun Zhou. | |
2811 | |
2812 *) Исправление: в директиве lingering_time. | |
2813 Спасибо Lanshun Zhou. | |
2814 | |
2815 *) Исправление: параметр fail_timeout директивы server в блоке upstream | |
2816 мог не работать, если использовался параметр max_fails; ошибка | |
2817 появилась в 1.3.0. | |
2818 | |
2819 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2820 если использовалась директива ssl_stapling. | |
2821 Спасибо Piotr Sikora. | |
2822 | |
2823 *) Исправление: в почтовом прокси-сервере. | |
2824 Спасибо Filipe Da Silva. | |
2825 | |
2826 *) Исправление: nginx/Windows мог перестать принимать соединения, если | |
2827 использовалось несколько рабочих процессов. | |
2828 | |
2829 | |
2830 Изменения в nginx 1.5.0 07.05.2013 | |
2831 | |
2832 *) Безопасность: при обработке специально созданного запроса мог | |
2833 перезаписываться стек рабочего процесса, что могло приводить к | |
2834 выполнению произвольного кода (CVE-2013-2028); ошибка появилась в | |
2835 1.3.9. | |
2836 Спасибо Greg MacManus, iSIGHT Partners Labs. | |
2837 | |
2838 | |
2839 Изменения в nginx 1.4.0 24.04.2013 | |
2840 | |
2841 *) Исправление: nginx не собирался с модулем ngx_http_perl_module, если | |
2842 использовался параметр --with-openssl; ошибка появилась в 1.3.16. | |
2843 | |
2844 *) Исправление: в работе с телом запроса из модуля ngx_http_perl_module; | |
2845 ошибка появилась в 1.3.9. | |
2846 | |
2847 | |
2848 Изменения в nginx 1.3.16 16.04.2013 | |
2849 | |
2850 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2851 если использовались подзапросы; ошибка появилась в 1.3.9. | |
2852 | |
2853 *) Исправление: директива tcp_nodelay вызывала ошибку при проксировании | |
2854 WebSocket-соединений в unix domain сокет. | |
2855 | |
2856 *) Исправление: переменная $upstream_response_length возвращала значение | |
2857 "0", если не использовалась буферизация. | |
2858 Спасибо Piotr Sikora. | |
2859 | |
2860 *) Исправление: в методах обработки соединений eventport и /dev/poll. | |
2861 | |
2862 | |
2863 Изменения в nginx 1.3.15 26.03.2013 | |
2864 | |
2865 *) Изменение: открытие и закрытие соединения без отправки в нём | |
2866 каких-либо данных больше не записывается в access_log с кодом ошибки | |
2867 400. | |
2868 | |
2869 *) Добавление: модуль ngx_http_spdy_module. | |
2870 Спасибо Automattic за спонсирование разработки. | |
2871 | |
2872 *) Добавление: директивы limit_req_status и limit_conn_status. | |
2873 Спасибо Nick Marden. | |
2874 | |
2875 *) Добавление: директива image_filter_interlace. | |
2876 Спасибо Ивану Боброву. | |
2877 | |
2878 *) Добавление: переменная $connections_waiting в модуле | |
2879 ngx_http_stub_status_module. | |
2880 | |
2881 *) Добавление: теперь почтовый прокси-сервер поддерживает IPv6-бэкенды. | |
2882 | |
2883 *) Исправление: при повторной отправке запроса на бэкенд тело запроса | |
2884 могло передаваться неправильно; ошибка появилась в 1.3.9. | |
2885 Спасибо Piotr Sikora. | |
2886 | |
2887 *) Исправление: в директиве client_body_in_file_only; ошибка появилась в | |
2888 1.3.9. | |
2889 | |
2890 *) Исправление: ответы могли зависать, если использовались подзапросы и | |
2891 при обработке подзапроса происходила DNS-ошибка. | |
2892 Спасибо Lanshun Zhou. | |
2893 | |
2894 *) Исправление: в процедуре учёта использования бэкендов. | |
2895 | |
2896 | |
2897 Изменения в nginx 1.3.14 05.03.2013 | |
2898 | |
2899 *) Добавление: переменные $connections_active, $connections_reading и | |
2900 $connections_writing в модуле ngx_http_stub_status_module. | |
2901 | |
2902 *) Добавление: поддержка WebSocket-соединений в модулях | |
2903 ngx_http_uwsgi_module и ngx_http_scgi_module. | |
2904 | |
2905 *) Исправление: в обработке виртуальных серверов при использовании SNI. | |
2906 | |
2907 *) Исправление: при использовании директивы "ssl_session_cache shared" | |
2908 новые сессии могли не сохраняться, если заканчивалось место в | |
2909 разделяемой памяти. | |
2910 Спасибо Piotr Sikora. | |
2911 | |
2912 *) Исправление: несколько заголовков X-Forwarded-For обрабатывались | |
2913 неправильно. | |
2914 Спасибо Neal Poole за спонсирование разработки. | |
2915 | |
2916 *) Исправление: в модуле ngx_http_mp4_module. | |
2917 Спасибо Gernot Vormayr. | |
2918 | |
2919 | |
2920 Изменения в nginx 1.3.13 19.02.2013 | |
2921 | |
2922 *) Изменение: теперь для сборки по умолчанию используется компилятор с | |
2923 именем "cc". | |
2924 | |
2925 *) Добавление: поддержка проксирования WebSocket-соединений. | |
2926 Спасибо Apcera и CloudBees за спонсирование разработки. | |
2927 | |
2928 *) Добавление: директива auth_basic_user_file поддерживает шифрование | |
2929 паролей методом "{SHA}". | |
2930 Спасибо Louis Opter. | |
2931 | |
2932 | |
2933 Изменения в nginx 1.3.12 05.02.2013 | |
2934 | |
2935 *) Добавление: директивы proxy_bind, fastcgi_bind, memcached_bind, | |
2936 scgi_bind и uwsgi_bind поддерживают переменные. | |
2937 | |
2938 *) Добавление: переменные $pipe, $request_length, $time_iso8601 и | |
2939 $time_local теперь можно использовать не только в директиве | |
2940 log_format. | |
2941 Спасибо Kiril Kalchev. | |
2942 | |
2943 *) Добавление: поддержка IPv6 в модуле ngx_http_geoip_module. | |
2944 Спасибо Gregor Kališnik. | |
2945 | |
2946 *) Исправление: директива proxy_method работала неверно, если была | |
2947 указана на уровне http. | |
2948 | |
2949 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2950 если использовался resolver и метод poll. | |
2951 | |
2952 *) Исправление: nginx мог нагружать процессор во время SSL handshake с | |
2953 бэкендом при использовании методов обработки соединений select, poll | |
2954 и /dev/poll. | |
2955 | |
2956 *) Исправление: ошибка "[crit] SSL_write() failed (SSL:)". | |
2957 | |
2958 *) Исправление: в директиве client_body_in_file_only; ошибка появилась в | |
2959 1.3.9. | |
2960 | |
2961 *) Исправление: в директиве fastcgi_keep_conn. | |
2962 | |
2963 | |
2964 Изменения в nginx 1.3.11 10.01.2013 | |
2965 | |
2966 *) Исправление: при записи в лог мог происходить segmentation fault; | |
2967 ошибка появилась в 1.3.10. | |
2968 | |
2969 *) Исправление: директива proxy_pass не работала с IP-адресами без | |
2970 явного указания порта; ошибка появилась в 1.3.10. | |
2971 | |
2972 *) Исправление: на старте или во время переконфигурации происходил | |
2973 segmentation fault, если директива keepalive была указана несколько | |
2974 раз в одном блоке upstream. | |
2975 | |
2976 *) Исправление: параметр default директивы geo не определял значение по | |
2977 умолчанию для IPv6-адресов. | |
2978 | |
2979 | |
2980 Изменения в nginx 1.3.10 25.12.2012 | |
2981 | |
2982 *) Изменение: для указанных в конфигурационном файле доменных имён | |
2983 теперь используются не только IPv4, но и IPv6 адреса. | |
2984 | |
2985 *) Изменение: теперь при использовании директивы include с маской на | |
2986 Unix-системах включаемые файлы сортируются в алфавитном порядке. | |
2987 | |
2988 *) Изменение: директива add_header добавляет строки в ответы с кодом | |
2989 201. | |
2990 | |
2991 *) Добавление: директива geo теперь поддерживает IPv6 адреса в формате | |
2992 CIDR. | |
2993 | |
2994 *) Добавление: параметры flush и gzip в директиве access_log. | |
2995 | |
2996 *) Добавление: директива auth_basic поддерживает переменные. | |
2997 | |
2998 *) Исправление: nginx в некоторых случаях не собирался с модулем | |
2999 ngx_http_perl_module. | |
3000 | |
3001 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3002 если использовался модуль ngx_http_xslt_module. | |
3003 | |
3004 *) Исправление: nginx мог не собираться на MacOSX. | |
3005 Спасибо Piotr Sikora. | |
3006 | |
3007 *) Исправление: при использовании директивы limit_rate с большими | |
3008 значениями скорости на 32-битных системах ответ мог возвращаться не | |
3009 целиком. | |
3010 Спасибо Алексею Антропову. | |
3011 | |
3012 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3013 если использовалась директива if. | |
3014 Спасибо Piotr Sikora. | |
3015 | |
3016 *) Исправление: ответ "100 Continue" выдавался вместе с ответом "413 | |
3017 Request Entity Too Large". | |
3018 | |
3019 *) Исправление: директивы image_filter, image_filter_jpeg_quality и | |
3020 image_filter_sharpen могли наследоваться некорректно. | |
3021 Спасибо Ивану Боброву. | |
3022 | |
3023 *) Исправление: при использовании директивы auth_basic под Linux могли | |
3024 возникать ошибки "crypt_r() failed". | |
3025 | |
3026 *) Исправление: в обработке backup-серверов. | |
3027 Спасибо Thomas Chen. | |
3028 | |
3029 *) Исправление: при проксировании HEAD-запросов мог возвращаться | |
3030 некорректный ответ, если использовалась директива gzip. | |
3031 | |
3032 | |
3033 Изменения в nginx 1.3.9 27.11.2012 | |
3034 | |
3035 *) Добавление: поддержка chunked transfer encoding при получении тела | |
3036 запроса. | |
3037 | |
3038 *) Добавление: переменные $request_time и $msec теперь можно | |
3039 использовать не только в директиве log_format. | |
3040 | |
3041 *) Исправление: cache manager и cache loader могли не запускаться, если | |
3042 использовалось более 512 listen-сокетов. | |
3043 | |
3044 *) Исправление: в модуле ngx_http_dav_module. | |
3045 | |
3046 | |
3047 Изменения в nginx 1.3.8 30.10.2012 | |
3048 | |
3049 *) Добавление: параметр optional_no_ca директивы ssl_verify_client. | |
3050 Спасибо Михаилу Казанцеву и Eric O'Connor. | |
3051 | |
3052 *) Добавление: переменные $bytes_sent, $connection и | |
3053 $connection_requests теперь можно использовать не только в директиве | |
3054 log_format. | |
3055 Спасибо Benjamin Grössing. | |
3056 | |
3057 *) Добавление: параметр auto директивы worker_processes. | |
3058 | |
3059 *) Исправление: сообщения "cache file ... has md5 collision". | |
3060 | |
3061 *) Исправление: в модуле ngx_http_gunzip_filter_module. | |
3062 | |
3063 *) Исправление: в директиве ssl_stapling. | |
3064 | |
3065 | |
3066 Изменения в nginx 1.3.7 02.10.2012 | |
3067 | |
3068 *) Добавление: поддержка OCSP stapling. | |
3069 Спасибо Comodo, DigiCert и GlobalSign за спонсирование разработки. | |
3070 | |
3071 *) Добавление: директива ssl_trusted_certificate. | |
3072 | |
3073 *) Добавление: теперь resolver случайным образом меняет порядок | |
3074 возвращаемых закэшированных адресов. | |
3075 Спасибо Антону Жулину. | |
3076 | |
3077 *) Исправление: совместимость с OpenSSL 0.9.7. | |
3078 | |
3079 | |
3080 Изменения в nginx 1.3.6 12.09.2012 | |
3081 | |
3082 *) Добавление: модуль ngx_http_gunzip_filter_module. | |
3083 | |
3084 *) Добавление: директива memcached_gzip_flag. | |
3085 | |
3086 *) Добавление: параметр always директивы gzip_static. | |
3087 | |
3088 *) Исправление: в директиве "limit_req"; ошибка появилась в 1.1.14. | |
3089 Спасибо Charles Chen. | |
3090 | |
3091 *) Исправление: nginx не собирался gcc 4.7 с оптимизацией -O2 если | |
3092 использовался параметр --with-ipv6. | |
3093 | |
3094 | |
3095 Изменения в nginx 1.3.5 21.08.2012 | |
3096 | |
3097 *) Изменение: модуль ngx_http_mp4_module больше не отфильтровывает | |
3098 дорожки в форматах, отличных от H.264 и AAC. | |
3099 | |
3100 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3101 если в директиве map в качестве значений использовались переменные. | |
3102 | |
3103 *) Исправление: в рабочем процессе мог произойти segmentation fault при | |
3104 использовании директивы geo с параметром ranges, но без параметра | |
3105 default; ошибка появилась в 0.8.43. | |
3106 Спасибо Zhen Chen и Weibin Yao. | |
3107 | |
3108 *) Исправление: в обработке параметра командной строки -p. | |
3109 | |
3110 *) Исправление: в почтовом прокси-сервере. | |
3111 | |
3112 *) Исправление: незначительных потенциальных ошибок. | |
3113 Спасибо Coverity. | |
3114 | |
3115 *) Исправление: nginx/Windows не собирался с Visual Studio 2005 Express. | |
3116 Спасибо HAYASHI Kentaro. | |
3117 | |
3118 | |
3119 Изменения в nginx 1.3.4 31.07.2012 | |
3120 | |
3121 *) Изменение: теперь на слушающих IPv6-сокетах параметр ipv6only включён | |
3122 по умолчанию. | |
3123 | |
3124 *) Добавление: поддержка компилятора Clang. | |
3125 | |
3126 *) Исправление: могли создаваться лишние слушающие сокеты. | |
3127 Спасибо Роману Одайскому. | |
3128 | |
3129 *) Исправление: nginx/Windows мог нагружать процессор, если при запуске | |
3130 рабочего процесса происходила ошибка. | |
3131 Спасибо Ricardo Villalobos Guevara. | |
3132 | |
3133 *) Исправление: директивы proxy_pass_header, fastcgi_pass_header, | |
3134 scgi_pass_header, uwsgi_pass_header, proxy_hide_header, | |
3135 fastcgi_hide_header, scgi_hide_header и uwsgi_hide_header могли | |
3136 наследоваться некорректно. | |
3137 | |
3138 | |
3139 Изменения в nginx 1.3.3 10.07.2012 | |
3140 | |
3141 *) Добавление: поддержка entity tags и директива etag. | |
3142 | |
3143 *) Исправление: при использовании директивы map с параметром hostnames | |
3144 не игнорировалась конечная точка в исходном значении. | |
3145 | |
3146 *) Исправление: для обработки запроса мог использоваться неверный | |
3147 location, если переход в именованный location происходил после | |
3148 изменения URI с помощью директивы rewrite. | |
3149 | |
3150 | |
3151 Изменения в nginx 1.3.2 26.06.2012 | |
3152 | |
3153 *) Изменение: параметр single директивы keepalive теперь игнорируется. | |
3154 | |
3155 *) Изменение: сжатие SSL теперь отключено в том числе при использовании | |
3156 OpenSSL старее 1.0.0. | |
3157 | |
3158 *) Добавление: директиву "ip_hash" теперь можно использовать для | |
3159 балансировки IPv6 клиентов. | |
3160 | |
3161 *) Добавление: переменную $status теперь можно использовать не только в | |
3162 директиве log_format. | |
3163 | |
3164 *) Исправление: при завершении рабочего процесса мог произойти | |
3165 segmentation fault, если использовалась директива resolver. | |
3166 | |
3167 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3168 если использовался модуль ngx_http_mp4_module. | |
3169 | |
3170 *) Исправление: в модуле ngx_http_mp4_module. | |
3171 | |
3172 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3173 если использовались конфликтующие имена серверов с масками. | |
3174 | |
3175 *) Исправление: на платформе ARM nginx мог аварийно завершаться по | |
3176 сигналу SIGBUS. | |
3177 | |
3178 *) Исправление: во время переконфигурации на HP-UX в лог записывался | |
3179 alert "sendmsg() failed (9: Bad file number)". | |
3180 | |
3181 | |
3182 Изменения в nginx 1.3.1 05.06.2012 | |
3183 | |
3184 *) Безопасность: теперь nginx/Windows игнорирует точку в конце | |
3185 компонента URI и не разрешает URI, содержащие последовательность | |
3186 ":$". | |
3187 Спасибо Владимиру Кочеткову, Positive Research Center. | |
3188 | |
3189 *) Добавление: директивы proxy_pass, fastcgi_pass, scgi_pass, uwsgi_pass | |
3190 и директива server в блоке upstream теперь поддерживают IPv6-адреса. | |
3191 | |
3192 *) Добавление: в директиве resolver теперь можно указывать порт и | |
3193 задавать IPv6-адреса DNS-серверов. | |
3194 | |
3195 *) Добавление: директива least_conn в блоке upstream. | |
3196 | |
3197 *) Добавление: при использовании директивы ip_hash теперь можно задавать | |
3198 веса серверов. | |
3199 | |
3200 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3201 если использовалась директива image_filter; ошибка появилась в 1.3.0. | |
3202 | |
3203 *) Исправление: nginx не собирался с модулем ngx_cpp_test_module; ошибка | |
3204 появилась в 1.1.12. | |
3205 | |
3206 *) Исправление: доступ к переменным из SSI и встроенного перла мог не | |
3207 работать после переконфигурации. | |
3208 Спасибо Yichun Zhang. | |
3209 | |
3210 *) Исправление: в модуле ngx_http_xslt_filter_module. | |
3211 Спасибо Kuramoto Eiji. | |
3212 | |
3213 *) Исправление: утечки памяти при использовании переменной $geoip_org. | |
3214 Спасибо Денису Латыпову. | |
3215 | |
3216 *) Исправление: в директивах proxy_cookie_domain и proxy_cookie_path. | |
3217 | |
3218 | |
3219 Изменения в nginx 1.3.0 15.05.2012 | |
3220 | |
3221 *) Добавление: директива debug_connection теперь поддерживает | |
3222 IPv6-адреса и параметр "unix:". | |
3223 | |
3224 *) Добавление: директива set_real_ip_from и параметр proxy директивы geo | |
3225 теперь поддерживают IPv6-адреса. | |
3226 | |
3227 *) Добавление: директивы real_ip_recursive, geoip_proxy и | |
3228 geoip_proxy_recursive. | |
3229 | |
3230 *) Добавление: параметр proxy_recursive директивы geo. | |
3231 | |
3232 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3233 если использовалась директива resolver. | |
3234 | |
3235 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3236 если использовались директивы fastcgi_pass, scgi_pass или uwsgi_pass | |
3237 и бэкенд возвращал некорректный ответ. | |
3238 | |
3239 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3240 если использовалась директива rewrite и в новых аргументах запроса в | |
3241 строке замены использовались переменные. | |
3242 | |
3243 *) Исправление: nginx мог нагружать процессор, если было достигнуто | |
3244 ограничение на количество открытых файлов. | |
3245 | |
3246 *) Исправление: при использовании директивы proxy_next_upstream с | |
3247 параметром http_404 nginx мог бесконечно перебирать бэкенды, если в | |
3248 блоке upstream был хотя бы один сервер с флагом backup. | |
3249 | |
3250 *) Исправление: при использовании директивы ip_hash установка параметра | |
3251 down директивы server могла приводить к ненужному перераспределению | |
3252 клиентов между бэкендами. | |
3253 | |
3254 *) Исправление: утечки сокетов. | |
3255 Спасибо Yichun Zhang. | |
3256 | |
3257 *) Исправление: в модуле ngx_http_fastcgi_module. | |
3258 | |
3259 | |
3260 Изменения в nginx 1.2.0 23.04.2012 | |
3261 | |
3262 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3263 если использовалась директива try_files; ошибка появилась в 1.1.19. | |
3264 | |
3265 *) Исправление: ответ мог быть передан не полностью, если использовалось | |
3266 больше IOV_MAX буферов. | |
3267 | |
3268 *) Исправление: в работе параметра crop директивы image_filter. | |
3269 Спасибо Maxim Bublis. | |
3270 | |
3271 | |
3272 Изменения в nginx 1.1.19 12.04.2012 | |
3273 | |
3274 *) Безопасность: при обработке специально созданного mp4 файла модулем | |
3275 ngx_http_mp4_module могли перезаписываться области памяти рабочего | |
3276 процесса, что могло приводить к выполнению произвольного кода | |
3277 (CVE-2012-2089). | |
3278 Спасибо Matthew Daley. | |
3279 | |
3280 *) Исправление: nginx/Windows мог завершаться аварийно. | |
3281 Спасибо Vincent Lee. | |
3282 | |
3283 *) Исправление: nginx нагружал процессор, если все серверы в upstream'е | |
3284 были помечены флагом backup. | |
3285 | |
3286 *) Исправление: директивы allow и deny могли наследоваться некорректно, | |
3287 если в них использовались IPv6 адреса. | |
3288 | |
3289 *) Исправление: директивы modern_browser и ancient_browser могли | |
3290 наследоваться некорректно. | |
3291 | |
3292 *) Исправление: таймауты могли работать некорректно на Solaris/SPARC. | |
3293 | |
3294 *) Исправление: в модуле ngx_http_mp4_module. | |
3295 | |
3296 | |
3297 Изменения в nginx 1.1.18 28.03.2012 | |
3298 | |
3299 *) Изменение: теперь keepalive соединения не запрещены для Safari по | |
3300 умолчанию. | |
3301 | |
3302 *) Добавление: переменная $connection_requests. | |
3303 | |
3304 *) Добавление: переменные $tcpinfo_rtt, $tcpinfo_rttvar, | |
3305 $tcpinfo_snd_cwnd и $tcpinfo_rcv_space. | |
3306 | |
3307 *) Добавление: директива worker_cpu_affinity теперь работает на FreeBSD. | |
3308 | |
3309 *) Добавление: директивы xslt_param и xslt_string_param. | |
3310 Спасибо Samuel Behan. | |
3311 | |
3312 *) Исправление: в configure. | |
3313 Спасибо Piotr Sikora. | |
3314 | |
3315 *) Исправление: в модуле ngx_http_xslt_filter_module. | |
3316 | |
3317 *) Исправление: nginx не собирался на Debian GNU/Hurd. | |
3318 | |
3319 | |
3320 Изменения в nginx 1.1.17 15.03.2012 | |
3321 | |
3322 *) Безопасность: содержимое ранее освобождённой памяти могло быть | |
3323 отправлено клиенту, если бэкенд возвращал специально созданный ответ. | |
3324 Спасибо Matthew Daley. | |
3325 | |
3326 *) Исправление: при использовании встроенного перла из SSI. | |
3327 Спасибо Matthew Daley. | |
3328 | |
3329 *) Исправление: в модуле ngx_http_uwsgi_module. | |
3330 | |
3331 | |
3332 Изменения в nginx 1.1.16 29.02.2012 | |
3333 | |
3334 *) Изменение: ограничение на количество одновременных подзапросов | |
3335 поднято до 200. | |
3336 | |
3337 *) Добавление: параметр from в директиве disable_symlinks. | |
3338 | |
3339 *) Добавление: директивы return и error_page теперь могут использоваться | |
3340 для возврата перенаправлений с кодом 307. | |
3341 | |
3342 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3343 если использовалась директива resolver и на глобальном уровне не была | |
3344 задана директива error_log. | |
3345 Спасибо Роману Арутюняну. | |
3346 | |
3347 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3348 если использовались директивы "proxy_http_version 1.1" или | |
3349 "fastcgi_keep_conn on". | |
3350 | |
3351 *) Исправление: утечек памяти. | |
3352 Спасибо Lanshun Zhou. | |
3353 | |
3354 *) Исправление: в директиве disable_symlinks. | |
3355 | |
3356 *) Исправление: при использовании ZFS размер кэша на диске мог считаться | |
3357 некорректно; ошибка появилась в 1.0.1. | |
3358 | |
3359 *) Исправление: nginx не собирался компилятором icc 12.1. | |
3360 | |
3361 *) Исправление: nginx не собирался gcc на Solaris; ошибка появилась в | |
3362 1.1.15. | |
3363 | |
3364 | |
3365 Изменения в nginx 1.1.15 15.02.2012 | |
3366 | |
3367 *) Добавление: директива disable_symlinks. | |
3368 | |
3369 *) Добавление: директивы proxy_cookie_domain и proxy_cookie_path. | |
3370 | |
3371 *) Исправление: nginx мог некорректно сообщать об ошибке "upstream | |
3372 prematurely closed connection" вместо "upstream sent too big header". | |
3373 Спасибо Feibo Li. | |
3374 | |
3375 *) Исправление: nginx не собирался с модулем ngx_http_perl_module, если | |
3376 использовался параметр --with-openssl. | |
3377 | |
3378 *) Исправление: количество внутренних перенаправлений в именованные | |
3379 location'ы не ограничивалось. | |
3380 | |
3381 *) Исправление: вызов $r->flush() несколько раз подряд мог приводить к | |
3382 ошибкам в модуле ngx_http_gzip_filter_module. | |
3383 | |
3384 *) Исправление: при использовании директивы proxy_store с | |
3385 SSI-подзапросами временные файлы могли не удаляться. | |
3386 | |
3387 *) Исправление: в некоторых случаях некэшируемые переменные (такие, как | |
3388 $args) возвращали старое пустое закэшированное значение. | |
3389 | |
3390 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3391 если одновременно создавалось слишком много SSI-подзапросов; ошибка | |
3392 появилась в 0.7.25. | |
3393 | |
3394 | |
3395 Изменения в nginx 1.1.14 30.01.2012 | |
3396 | |
3397 *) Добавление: теперь можно указать несколько ограничений limit_req | |
3398 одновременно. | |
3399 | |
3400 *) Исправление: в обработке ошибок при соединении с бэкендом. | |
3401 Спасибо Piotr Sikora. | |
3402 | |
3403 *) Исправление: в обработке ошибок при использовании AIO на FreeBSD. | |
3404 | |
3405 *) Исправление: в инициализации библиотеки OpenSSL. | |
3406 | |
3407 *) Исправление: директивы proxy_redirect могли наследоваться | |
3408 некорректно. | |
3409 | |
3410 *) Исправление: утечки памяти при переконфигурации, если использовалась | |
3411 директива pcre_jit. | |
3412 | |
3413 | |
3414 Изменения в nginx 1.1.13 16.01.2012 | |
3415 | |
3416 *) Добавление: параметры TLSv1.1 и TLSv1.2 в директиве ssl_protocols. | |
3417 | |
3418 *) Исправление: параметры директивы limit_req наследовались некорректно; | |
3419 ошибка появилась в 1.1.12. | |
3420 | |
3421 *) Исправление: директива proxy_redirect некорректно обрабатывала | |
3422 заголовок Refresh при использовании регулярных выражений. | |
3423 | |
3424 *) Исправление: директива proxy_cache_use_stale с параметром error не | |
3425 возвращала ответ из кэша, если все бэкенды были признаны | |
3426 неработающими. | |
3427 | |
3428 *) Исправление: директива worker_cpu_affinity могла не работать. | |
3429 | |
3430 *) Исправление: nginx не собирался на Solaris; ошибка появилась в | |
3431 1.1.12. | |
3432 | |
3433 *) Исправление: в модуле ngx_http_mp4_module. | |
3434 | |
3435 | |
3436 Изменения в nginx 1.1.12 26.12.2011 | |
3437 | |
3438 *) Изменение: после перенаправления запроса с помощью директивы | |
3439 error_page директива proxy_pass без URI теперь использует изменённый | |
3440 URI. | |
3441 Спасибо Lanshun Zhou. | |
3442 | |
3443 *) Добавление: директивы proxy/fastcgi/scgi/uwsgi_cache_lock, | |
3444 proxy/fastcgi/scgi/uwsgi_cache_lock_timeout. | |
3445 | |
3446 *) Добавление: директива pcre_jit. | |
3447 | |
3448 *) Добавление: SSI команда if поддерживает выделения в регулярных | |
3449 выражениях. | |
3450 | |
3451 *) Исправление: SSI команда if не работала внутри команды block. | |
3452 | |
3453 *) Исправление: директивы limit_conn_log_level и limit_req_log_level | |
3454 могли не работать. | |
3455 | |
3456 *) Исправление: директива limit_rate не позволяла передавать на полной | |
3457 скорости, даже если был указан очень большой лимит. | |
3458 | |
3459 *) Исправление: директива sendfile_max_chunk не работала, если | |
3460 использовалась директива limit_rate. | |
3461 | |
3462 *) Исправление: если в директиве proxy_pass использовались переменные и | |
3463 не был указан URI, всегда использовался URI исходного запроса. | |
3464 | |
3465 *) Исправление: после перенаправления запроса с помощью директивы | |
3466 try_files директива proxy_pass без URI могла использовать URI | |
3467 исходного запроса. | |
3468 Спасибо Lanshun Zhou. | |
3469 | |
3470 *) Исправление: в модуле ngx_http_scgi_module. | |
3471 | |
3472 *) Исправление: в модуле ngx_http_mp4_module. | |
3473 | |
3474 *) Исправление: nginx не собирался на Solaris; ошибка появилась в 1.1.9. | |
3475 | |
3476 | |
3477 Изменения в nginx 1.1.11 12.12.2011 | |
3478 | |
3479 *) Добавление: параметр so_keepalive в директиве listen. | |
3480 Спасибо Всеволоду Стахову. | |
3481 | |
3482 *) Добавление: параметр if_not_empty в директивах | |
3483 fastcgi/scgi/uwsgi_param. | |
3484 | |
3485 *) Добавление: переменная $https. | |
3486 | |
3487 *) Добавление: директива proxy_redirect поддерживает переменные в первом | |
3488 параметре. | |
3489 | |
3490 *) Добавление: директива proxy_redirect поддерживает регулярные | |
3491 выражения. | |
3492 | |
3493 *) Исправление: переменная $sent_http_cache_control могла содержать | |
3494 неверное значение при использовании директивы expires. | |
3495 Спасибо Yichun Zhang. | |
3496 | |
3497 *) Исправление: директива read_ahead могла не работать при использовании | |
3498 совместно с try_files и open_file_cache. | |
3499 | |
3500 *) Исправление: если в параметре inactive директивы proxy_cache_path | |
3501 было указано малое время, в рабочем процессе мог произойти | |
3502 segmentation fault. | |
3503 | |
3504 *) Исправление: ответы из кэша могли зависать. | |
3505 | |
3506 | |
3507 Изменения в nginx 1.1.10 30.11.2011 | |
3508 | |
3509 *) Исправление: при использовании AIO на Linux в рабочем процессе | |
3510 происходил segmentation fault; ошибка появилась в 1.1.9. | |
3511 | |
3512 | |
3513 Изменения в nginx 1.1.9 28.11.2011 | |
3514 | |
3515 *) Изменение: теперь двойные кавычки экранируется при выводе | |
3516 SSI-командой echo. | |
3517 Спасибо Зауру Абасмирзоеву. | |
3518 | |
3519 *) Добавление: параметр valid в директиве resolver. По умолчанию теперь | |
3520 используется TTL, возвращённый DNS-сервером. | |
3521 Спасибо Кириллу Коринскому. | |
3522 | |
3523 *) Исправление: nginx мог перестать отвечать, если рабочий процесс | |
3524 завершался аварийно. | |
3525 | |
3526 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3527 если использовалось SNI; ошибка появилась в 1.1.2. | |
3528 | |
3529 *) Исправление: в директиве keepalive_disable; ошибка появилась в 1.1.8. | |
3530 Спасибо Александру Усову. | |
3531 | |
3532 *) Исправление: сигнал SIGWINCH переставал работать после первого | |
3533 обновления исполняемого файла; ошибка появилась в 1.1.1. | |
3534 | |
3535 *) Исправление: теперь ответы бэкендов, длина которых не соответствует | |
3536 заголовку Content-Length, не кэширутся. | |
3537 | |
3538 *) Исправление: в директиве scgi_param при использовании составных | |
3539 параметров. | |
3540 | |
3541 *) Исправление: в методе epoll. | |
3542 Спасибо Yichun Zhang. | |
3543 | |
3544 *) Исправление: в модуле ngx_http_flv_module. | |
3545 Спасибо Piotr Sikora. | |
3546 | |
3547 *) Исправление: в модуле ngx_http_mp4_module. | |
3548 | |
3549 *) Исправление: теперь nginx понимает IPv6-адреса в строке запроса и в | |
3550 заголовке Host. | |
3551 | |
3552 *) Исправление: директивы add_header и expires не работали для ответов с | |
3553 кодом 206, если запрос проксировался. | |
3554 | |
3555 *) Исправление: nginx не собирался на FreeBSD 10. | |
3556 | |
3557 *) Исправление: nginx не собирался на AIX. | |
3558 | |
3559 | |
3560 Изменения в nginx 1.1.8 14.11.2011 | |
3561 | |
3562 *) Изменение: модуль ngx_http_limit_zone_module переименован в | |
3563 ngx_http_limit_conn_module. | |
3564 | |
3565 *) Изменение: директива limit_zone заменена директивой limit_conn_zone с | |
3566 новым синтаксисом. | |
3567 | |
3568 *) Добавление: поддержка ограничения по нескольким limit_conn на одном | |
3569 уровне. | |
3570 | |
3571 *) Добавление: директива image_filter_sharpen. | |
3572 | |
3573 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3574 если resolver получил большой DNS-ответ. | |
3575 Спасибо Ben Hawkes. | |
3576 | |
3577 *) Исправление: в вычислении ключа для кэширования, если использовалась | |
3578 внутренняя реализация MD5; ошибка появилась в 1.0.4. | |
3579 | |
3580 *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в | |
3581 заголовке запроса клиента могли передаваться бэкенду при кэшировании; | |
3582 или не передаваться при выключенном кэшировании, если кэширование | |
3583 было включено в другой части конфигурации. | |
3584 | |
3585 *) Исправление: модуль ngx_http_mp4_module выдавал неверную строку | |
3586 "Content-Length" в заголовке ответа, использовался аргумент start. | |
3587 Спасибо Piotr Sikora. | |
3588 | |
3589 | |
3590 Изменения в nginx 1.1.7 31.10.2011 | |
3591 | |
3592 *) Добавление: поддержка нескольких DNS серверов в директиве "resolver". | |
3593 Спасибо Кириллу Коринскому. | |
3594 | |
3595 *) Исправление: на старте или во время переконфигурации происходил | |
3596 segmentation fault, если директива ssl использовалась на уровне http | |
3597 и не был указан ssl_certificate. | |
3598 | |
3599 *) Исправление: уменьшено потребление памяти при проксировании больших | |
3600 файлов, если они буферизировались на диск. | |
3601 | |
3602 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3603 если использовалась директива "proxy_http_version 1.1". | |
3604 | |
3605 *) Исправление: в директиве "expires @time". | |
3606 | |
3607 | |
3608 Изменения в nginx 1.1.6 17.10.2011 | |
3609 | |
3610 *) Изменение во внутреннем API: теперь при внутреннем редиректе в | |
3611 именованный location контексты модулей очищаются. | |
3612 По запросу Yichun Zhang. | |
3613 | |
3614 *) Изменение: теперь если сервер, описанный в блоке upstream, был | |
3615 признан неработающим, то после истечения fail_timeout на него будет | |
3616 отправлен только один запрос; сервер будет считаться работающим, если | |
3617 успешно ответит на этот запрос. | |
3618 | |
3619 *) Изменение: теперь символы 0x7F-0xFF в access_log записываются в виде | |
3620 \xXX. | |
3621 | |
3622 *) Добавление: директивы "proxy/fastcgi/scgi/uwsgi_ignore_headers" | |
3623 теперь поддерживают значения X-Accel-Limit-Rate, X-Accel-Buffering и | |
3624 X-Accel-Charset. | |
3625 | |
3626 *) Добавление: уменьшение потребления памяти при использовании SSL. | |
3627 | |
3628 *) Исправление: некоторые UTF-8 символы обрабатывались неправильно. | |
3629 Спасибо Алексею Куцу. | |
3630 | |
3631 *) Исправление: директивы модуля ngx_http_rewrite_module, заданные на | |
3632 уровне server, применялись повторно, если для запроса не находилось | |
3633 ни одного location'а. | |
3634 | |
3635 *) Исправление: при использовании "aio sendfile" могла происходить | |
3636 утечка сокетов. | |
3637 | |
3638 *) Исправление: при использовании файлового AIO соединения с быстрыми | |
3639 клиентами могли быть закрыты по истечению send_timeout. | |
3640 | |
3641 *) Исправление: в модуле ngx_http_autoindex_module. | |
3642 | |
3643 *) Исправление: модуль ngx_http_mp4_module не поддерживал перемотку на | |
3644 32-битных платформах. | |
3645 | |
3646 | |
3647 Изменения в nginx 1.1.5 05.10.2011 | |
3648 | |
3649 *) Добавление: директивы uwsgi_buffering и scgi_buffering. | |
3650 Спасибо Peter Smit. | |
3651 | |
3652 *) Исправление: при использовании proxy_cache_bypass могли быть | |
3653 закэшированы некэшируемые ответы. | |
3654 Спасибо John Ferlito. | |
3655 | |
3656 *) Исправление: в модуле ngx_http_proxy_module при работе с бэкендами по | |
3657 HTTP/1.1. | |
3658 | |
3659 *) Исправление: закэшированные ответы с пустым телом возвращались | |
3660 некорректно; ошибка появилась в 0.8.31. | |
3661 | |
3662 *) Исправление: ответы с кодом 201 модуля ngx_http_dav_module были | |
3663 некорректны; ошибка появилась в 0.8.32. | |
3664 | |
3665 *) Исправление: в директиве return. | |
3666 | |
3667 *) Исправление: при использовании директивы "ssl_session_cache builtin" | |
3668 происходил segmentation fault; ошибка появилась в 1.1.1. | |
3669 | |
3670 | |
3671 Изменения в nginx 1.1.4 20.09.2011 | |
3672 | |
3673 *) Добавление: модуль ngx_http_upstream_keepalive. | |
3674 | |
3675 *) Добавление: директива proxy_http_version. | |
3676 | |
3677 *) Добавление: директива fastcgi_keep_conn. | |
3678 | |
3679 *) Добавление: директива worker_aio_requests. | |
3680 | |
3681 *) Исправление: если nginx был собран с файловым AIO, он не мог | |
3682 запускаться на Linux без поддержки AIO. | |
3683 | |
3684 *) Исправление: в обработке ошибок при работе с Linux AIO. | |
3685 Спасибо Hagai Avrahami. | |
3686 | |
3687 *) Исправление: уменьшено потребление памяти для долгоживущих запросов. | |
3688 | |
3689 *) Исправление: модуль ngx_http_mp4_module не поддерживал 64-битный | |
3690 MP4-атом co64. | |
3691 | |
3692 | |
3693 Изменения в nginx 1.1.3 14.09.2011 | |
3694 | |
3695 *) Добавление: модуль ngx_http_mp4_module. | |
3696 | |
3697 *) Исправление: в Linux AIO, используемым совместно с open_file_cache. | |
3698 | |
3699 *) Исправление: open_file_cache не обновлял информацию о файле, если | |
3700 файл был изменён не атомарно. | |
3701 | |
3702 *) Исправление: nginx не собирался на MacOSX 10.7. | |
3703 | |
3704 | |
3705 Изменения в nginx 1.1.2 05.09.2011 | |
3706 | |
3707 *) Изменение: теперь, если суммарный размер всех диапазонов больше | |
3708 размера исходного ответа, то nginx возвращает только исходный ответ, | |
3709 не обрабатывая диапазоны. | |
3710 | |
3711 *) Добавление: директива max_ranges. | |
3712 | |
3713 *) Исправление: директивы ssl_verify_client, ssl_verify_depth и | |
3714 ssl_prefer_server_cipher могли работать некорректно, если | |
3715 использовался SNI. | |
3716 | |
3717 *) Исправление: в директивах proxy/fastcgi/scgi/ | |
3718 uwsgi_ignore_client_abort. | |
3719 | |
3720 | |
3721 Изменения в nginx 1.1.1 22.08.2011 | |
3722 | |
3723 *) Изменение: теперь загрузчик кэша за каждую итерацию либо обрабатывает | |
3724 число файлов, указанное в параметре load_files, либо работает не | |
3725 дольше времени, указанного в параметре loader_threshold. | |
3726 | |
3727 *) Изменение: SIGWINCH сигнал теперь работает только в режиме демона. | |
3728 | |
3729 *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX | |
3730 на Solaris. | |
3731 Спасибо Денису Иванову. | |
3732 | |
3733 *) Добавление: теперь на NetBSD поддерживаются accept фильтры. | |
3734 | |
3735 *) Исправление: nginx не собирался на Linux 3.0. | |
3736 | |
3737 *) Исправление: в некоторых случаях nginx не использовал сжатие; ошибка | |
3738 появилась в 1.1.0. | |
3739 | |
3740 *) Исправление: обработка тела запроса могла быть неверной, если клиент | |
3741 использовал pipelining. | |
3742 | |
3743 *) Исправление: в директиве request_body_in_single_buf. | |
3744 | |
3745 *) Исправление: в директивах proxy_set_body и proxy_pass_request_body | |
3746 при использовании SSL-соединения с бэкендом. | |
3747 | |
3748 *) Исправление: nginx нагружал процессор, если все серверы в upstream'е | |
3749 были помечены флагом down. | |
3750 | |
3751 *) Исправление: при переконфигурации мог произойти segmentation fault, | |
3752 если в предыдущей конфигурации был определён, но не использовался | |
3753 ssl_session_cache. | |
3754 | |
3755 *) Исправление: при использовании большого количества backup-серверов в | |
3756 рабочем процессе мог произойти segmentation fault. | |
3757 | |
3758 *) Исправление: при использовании директив fastcgi/scgi/uwsgi_param со | |
3759 значениями, начинающимися со строки "HTTP_", в рабочем процессе мог | |
3760 произойти segmentation fault; ошибка появилась в 0.8.40. | |
3761 | |
3762 | |
3763 Изменения в nginx 1.1.0 01.08.2011 | |
3764 | |
3765 *) Добавление: уменьшение времени работы загрузчика кэша. | |
3766 | |
3767 *) Добавление: параметры loader_files, loader_sleep и loader_threshold | |
3768 директив proxy/fastcgi/scgi/uwsgi_cache_path. | |
3769 | |
3770 *) Добавление: уменьшение времени загрузки конфигураций с большим | |
3771 количеством HTTPS серверов. | |
3772 | |
3773 *) Добавление: теперь nginx поддерживает шифры с обменом ECDHE-ключами. | |
3774 Спасибо Adrian Kotelba. | |
3775 | |
3776 *) Добавление: директива lingering_close. | |
3777 Спасибо Максиму Дунину. | |
3778 | |
3779 *) Исправление: закрытия соединения для pipelined-запросов. | |
3780 Спасибо Максиму Дунину. | |
3781 | |
3782 *) Исправление: nginx не запрещал сжатие при получении значения | |
3783 "gzip;q=0" в строке "Accept-Encoding" в заголовке запроса клиента. | |
3784 | |
3785 *) Исправление: таймаута при небуферизированном проксировании. | |
3786 Спасибо Максиму Дунину. | |
3787 | |
3788 *) Исправление: утечки памяти при использовании переменных в директиве | |
3789 proxy_pass при работе с бэкендом по HTTPS. | |
3790 Спасибо Максиму Дунину. | |
3791 | |
3792 *) Исправление: в проверке параметра директивы proxy_pass, заданного | |
3793 переменными. | |
3794 Спасибо Lanshun Zhou. | |
3795 | |
3796 *) Исправление: SSL не работал на QNX. | |
3797 Спасибо Максиму Дунину. | |
3798 | |
3799 *) Исправление: SSL модули не собирались gcc 4.6 без параметра | |
3800 --with-debug. | |
3801 | |
3802 | |
3803 Изменения в nginx 1.0.5 19.07.2011 | |
3804 | |
3805 *) Изменение: теперь по умолчанию используются следующие шифры SSL: | |
3806 "HIGH:!aNULL:!MD5". | |
3807 Спасибо Rob Stradling. | |
3808 | |
3809 *) Добавление: директивы referer_hash_max_size и | |
3810 referer_hash_bucket_size. | |
3811 Спасибо Witold Filipczyk. | |
3812 | |
3813 *) Добавление: переменная $uid_reset. | |
3814 | |
3815 *) Исправление: при использовании кэширования в рабочем процессе мог | |
3816 произойти segmentation fault. | |
3817 Спасибо Lanshun Zhou. | |
3818 | |
3819 *) Исправление: при использовании кэширования рабочие процессы могли | |
3820 зациклиться во время переконфигурации; ошибка появилась в 0.8.48. | |
3821 Спасибо Максиму Дунину. | |
3822 | |
3823 *) Исправление: сообщения "stalled cache updating". | |
3824 Спасибо Максиму Дунину. | |
3825 | |
3826 | |
3827 Изменения в nginx 1.0.4 01.06.2011 | |
3828 | |
3829 *) Изменение: теперь в регулярных выражениях в директиве map можно | |
3830 задать чувствительность к регистру с помощью префиксов "~" и "~*". | |
3831 | |
3832 *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX | |
3833 на Linux. | |
3834 Спасибо Денису Латыпову. | |
3835 | |
3836 *) Исправление: сообщения "stalled cache updating". | |
3837 | |
3838 *) Исправление: nginx не собирался с параметром | |
3839 --without-http_auth_basic_module; ошибка появилась в 1.0.3. | |
3840 | |
3841 | |
3842 Изменения в nginx 1.0.3 25.05.2011 | |
3843 | |
3844 *) Добавление: директива auth_basic_user_file поддерживает шифрование | |
3845 пароля методами "$apr1", "{PLAIN}" и "{SSHA}". | |
3846 Спасибо Максиму Дунину. | |
3847 | |
3848 *) Добавление: директива geoip_org и переменная $geoip_org. | |
3849 Спасибо Александру Ускову, Arnaud Granal и Денису Латыпову. | |
3850 | |
3851 *) Добавление: модули ngx_http_geo_module и ngx_http_geoip_module | |
3852 поддерживают адреса IPv4, отображённые на IPv6 адреса. | |
3853 | |
3854 *) Исправление: при проверке адреса IPv4, отображённого на адрес IPv6, в | |
3855 рабочем процессе происходил segmentation fault, если директивы access | |
3856 или deny были определены только для адресов IPv6; ошибка появилась в | |
3857 0.8.22. | |
3858 | |
3859 *) Исправление: закэшированный ответ мог быть испорчен, если значения | |
3860 директив proxy/fastcgi/scgi/uwsgi_cache_bypass и proxy/fastcgi/scgi/ | |
3861 uwsgi_no_cache были разными; ошибка появилась в 0.8.46. | |
3862 | |
3863 | |
3864 Изменения в nginx 1.0.2 10.05.2011 | |
3865 | |
3866 *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX. | |
3867 | |
3868 *) Исправление: в работе параметра rotate директивы image_filter. | |
3869 Спасибо Adam Bocim. | |
3870 | |
3871 *) Исправление: nginx не собирался на Solaris; ошибка появилась в 1.0.1. | |
3872 | |
3873 | |
3874 Изменения в nginx 1.0.1 03.05.2011 | |
3875 | |
3876 *) Изменение: теперь директива split_clients использует алгоритм | |
3877 MurmurHash2 из-за лучшего распределения. | |
3878 Спасибо Олегу Мамонтову. | |
3879 | |
3880 *) Изменение: теперь длинные строки, начинающиеся с нуля, не считаются | |
3881 ложными значениями. | |
3882 Спасибо Максиму Дунину. | |
3883 | |
3884 *) Изменение: теперь по умолчанию nginx использует значение 511 для | |
3885 listen backlog на Linux. | |
3886 | |
3887 *) Добавление: переменные $upstream_... можно использовать в SSI и | |
3888 перловом модулях. | |
3889 | |
3890 *) Исправление: теперь nginx лучше ограничивает размер кэша на диске. | |
3891 Спасибо Олегу Мамонтову. | |
3892 | |
3893 *) Исправление: при парсинге неправильного IPv4 адреса мог произойти | |
3894 segmentation fault; ошибка появилась в 0.8.22. | |
3895 Спасибо Максиму Дунину. | |
3896 | |
3897 *) Исправление: nginx не собирался gcc 4.6 без параметра --with-debug. | |
3898 | |
3899 *) Исправление: nginx не собирался на Solaris 9 и более ранних; ошибка | |
3900 появилась в 0.9.3. | |
3901 Спасибо Dagobert Michelsen. | |
3902 | |
3903 *) Исправление: переменная $request_time имела неверные значения, если | |
3904 использовались подзапросы; ошибка появилась в 0.8.47. | |
3905 Спасибо Игорю А. Валькову. | |
3906 | |
3907 | |
3908 Изменения в nginx 1.0.0 12.04.2011 | |
3909 | |
3910 *) Исправление: cache manager мог нагружать процессор после | |
3911 переконфигурации. | |
3912 Спасибо Максиму Дунину. | |
3913 | |
3914 *) Исправление: директива "image_filter crop" неправильно работала в | |
3915 сочетании с "image_filter rotate 180". | |
3916 | |
3917 *) Исправление: директива "satisfy any" запрещала выдачу | |
3918 пользовательской страницы для 401 кода. | |
3919 | |
3920 | |
3921 Изменения в nginx 0.9.7 04.04.2011 | |
3922 | |
3923 *) Добавление: теперь соединения в состоянии keepalive могут быть | |
3924 закрыты преждевременно, если у воркера нет свободных соединений. | |
3925 Спасибо Максиму Дунину. | |
3926 | |
3927 *) Добавление: параметр rotate директивы image_filter. | |
3928 Спасибо Adam Bocim. | |
3929 | |
3930 *) Исправление: ситуации, когда бэкенд в директивах fastcgi_pass, | |
3931 scgi_pass или uwsgi_pass задан выражением и ссылается на описанный | |
3932 upstream. | |
3933 | |
3934 | |
3935 Изменения в nginx 0.9.6 21.03.2011 | |
3936 | |
3937 *) Добавление: директива map поддерживает регулярные выражения в | |
3938 качестве значения первого параметра. | |
3939 | |
3940 *) Добавление: переменная $time_iso8601 для access_log. | |
3941 Спасибо Michael Lustfield. | |
3942 | |
3943 | |
3944 Изменения в nginx 0.9.5 21.02.2011 | |
3945 | |
3946 *) Изменение: теперь по умолчанию nginx использует значение -1 для | |
3947 listen backlog на Linux. | |
3948 Спасибо Андрею Нигматулину. | |
3949 | |
3950 *) Добавление: параметр utf8 в директивах geoip_country и geoip_city. | |
3951 Спасибо Денису Латыпову. | |
3952 | |
3953 *) Исправление: исправление в умолчательной директиве proxy_redirect, | |
3954 если в директиве proxy_pass не был описан URI. | |
3955 Спасибо Максиму Дунину. | |
3956 | |
3957 *) Исправление: директива error_page не работала с нестандартными кодами | |
3958 ошибок; ошибка появилась в 0.8.53. | |
3959 Спасибо Максиму Дунину. | |
3960 | |
3961 | |
3962 Изменения в nginx 0.9.4 21.01.2011 | |
3963 | |
3964 *) Добавление: директива server_name поддерживает переменную $hostname. | |
3965 | |
3966 *) Добавление: 494 код для ошибки "Request Header Too Large". | |
3967 | |
3968 | |
3969 Изменения в nginx 0.9.3 13.12.2010 | |
3970 | |
3971 *) Исправление: если для пары IPv6-адрес:порт описан только один сервер, | |
3972 то выделения в регулярных выражениях в директиве server_name не | |
3973 работали. | |
3974 | |
3975 *) Исправление: nginx не собирался под Solaris; ошибка появилась в | |
3976 0.9.0. | |
3977 | |
3978 | |
3979 Изменения в nginx 0.9.2 06.12.2010 | |
3980 | |
3981 *) Добавление: поддержка строки "If-Unmodified-Since" в заголовке | |
3982 запроса клиента. | |
3983 | |
3984 *) Изменение: использование accept(), если accept4() не реализован; | |
3985 ошибка появилась в 0.9.0. | |
3986 | |
3987 *) Исправление: nginx не собирался под Cygwin; ошибка появилась в 0.9.0. | |
3988 | |
3989 *) Исправление: уязвимости в OpenSSL CVE-2010-4180. | |
3990 Спасибо Максиму Дунину. | |
3991 | |
3992 | |
3993 Изменения в nginx 0.9.1 30.11.2010 | |
3994 | |
3995 *) Исправление: директивы вида "return CODE message" не работали; ошибка | |
3996 появилась в 0.9.0. | |
3997 | |
3998 | |
3999 Изменения в nginx 0.9.0 29.11.2010 | |
4000 | |
4001 *) Добавление: директива keepalive_disable. | |
4002 | |
4003 *) Добавление: директива map поддерживает переменные в качестве значения | |
4004 определяемой переменной. | |
4005 | |
4006 *) Добавление: директива map поддерживает пустые строки в качестве | |
4007 значения первого параметра. | |
4008 | |
4009 *) Добавление: директива map поддерживает выражения в первом параметре. | |
4010 | |
4011 *) Добавление: страница руководства nginx(8). | |
4012 Спасибо Сергею Осокину. | |
4013 | |
4014 *) Добавление: поддержка accept4() в Linux. | |
4015 Спасибо Simon Liu. | |
4016 | |
4017 *) Изменение: устранение предупреждения линкера о "sys_errlist" и | |
4018 "sys_nerr" под Linux; предупреждение появилось в 0.8.35. | |
4019 | |
4020 *) Исправление: при использовании директивы auth_basic в рабочем | |
4021 процессе мог произойти segmentation fault. | |
4022 Спасибо Михаилу Лалетину. | |
4023 | |
4024 *) Исправление: совместимость с модулем ngx_http_eval_module; ошибка | |
4025 появилась в 0.8.42. | |
4026 | |
4027 | |
4028 Изменения в nginx 0.8.53 18.10.2010 | |
4029 | |
4030 *) Добавление: теперь директива error_page позволяет менять код статуса | |
4031 у редиректа. | |
4032 | |
4033 *) Добавление: директива gzip_disable поддерживает специальную маску | |
4034 degradation. | |
4035 | |
4036 *) Исправление: при использовании файлового AIO могла происходить утечка | |
4037 сокетов. | |
4038 Спасибо Максиму Дунину. | |
4039 | |
4040 *) Исправление: если в первом сервере не была описана директива listen и | |
4041 нигде явно не описан сервер по умолчанию, то сервером по умолчанию | |
4042 становился следующий сервер с директивой listen; ошибка появилась в | |
4043 0.8.21. | |
4044 | |
4045 | |
4046 Изменения в nginx 0.8.52 28.09.2010 | |
4047 | |
4048 *) Исправление: nginx использовал режим SSL для listen сокета, если для | |
4049 него был установлен любой listen-параметр; ошибка появилась в 0.8.51. | |
4050 | |
4051 | |
4052 Изменения в nginx 0.8.51 27.09.2010 | |
4053 | |
4054 *) Изменение: директива secure_link_expires упразднена. | |
4055 | |
4056 *) Изменение: уровень логгирования ошибок resolver'а понижен с уровня | |
4057 alert на error. | |
4058 | |
4059 *) Добавление: теперь параметр "ssl" listen-сокета можно устанавливать | |
4060 несколько раз. | |
4061 | |
4062 | |
4063 Изменения в nginx 0.8.50 02.09.2010 | |
4064 | |
4065 *) Добавление: директивы secure_link, secure_link_md5 и | |
4066 secure_link_expires модуля ngx_http_secure_link_module. | |
4067 | |
4068 *) Добавление: ключ -q. | |
4069 Спасибо Геннадию Махомеду. | |
4070 | |
4071 *) Исправление: при использовании кэширования рабочие процессы и могли | |
4072 зациклиться во время переконфигурации; ошибка появилась в 0.8.48. | |
4073 | |
4074 *) Исправление: в директиве gzip_disable. | |
4075 Спасибо Derrick Petzold. | |
4076 | |
4077 *) Исправление: nginx/Windows не мог посылать сигналы stop, quit, | |
4078 reopen, reload процессу, запущенному в другой сессии. | |
4079 | |
4080 | |
4081 Изменения в nginx 0.8.49 09.08.2010 | |
4082 | |
4083 *) Добавление: директива image_filter_jpeg_quality поддерживает | |
4084 переменные. | |
4085 | |
4086 *) Исправление: при использовании переменной $geoip_region_name в | |
4087 рабочем процессе мог произойти segmentation fault; ошибка появилась в | |
4088 0.8.48. | |
4089 | |
4090 *) Исправление: ошибки, перехваченные error_page, кэшировались только до | |
4091 следующего запроса; ошибка появилась в 0.8.48. | |
4092 | |
4093 | |
4094 Изменения в nginx 0.8.48 03.08.2010 | |
4095 | |
4096 *) Изменение: теперь по умолчанию директива server_name имеет значение | |
4097 пустое имя "". | |
4098 Спасибо Геннадию Махомеду. | |
4099 | |
4100 *) Изменение: теперь по умолчанию директива server_name_in_redirect | |
4101 имеет значение off. | |
4102 | |
4103 *) Добавление: переменные $geoip_dma_code, $geoip_area_code и | |
4104 $geoip_region_name. | |
4105 Спасибо Christine McGonagle. | |
4106 | |
4107 *) Исправление: директивы proxy_pass, fastcgi_pass, uwsgi_pass и | |
4108 scgi_pass не наследовались в блоки limit_except. | |
4109 | |
4110 *) Исправление: директивы proxy_cache_min_uses, fastcgi_cache_min_uses | |
4111 uwsgi_cache_min_uses и scgi_cache_min_uses не работали; ошибка | |
4112 появилась в 0.8.46. | |
4113 | |
4114 *) Исправление: директива fastcgi_split_path_info неверно использовала | |
4115 выделения, если в выделения попадала только часть URI. | |
4116 Спасибо Юрию Тарадаю и Frank Enderle. | |
4117 | |
4118 *) Исправление: директива rewrite не экранировала символ ";" при | |
4119 копировании из URI в аргументы. | |
4120 Спасибо Daisuke Murase. | |
4121 | |
4122 *) Исправление: модуль ngx_http_image_filter_module закрывал соединение, | |
4123 если изображение было больше размера image_filter_buffer. | |
4124 | |
4125 | |
4126 Изменения в nginx 0.8.47 28.07.2010 | |
4127 | |
4128 *) Исправление: переменная $request_time имела неверные значения для | |
4129 подзапросов. | |
4130 | |
4131 *) Исправление: ошибки, перехваченные error_page, не кэшировались. | |
4132 | |
4133 *) Исправление: если использовался параметр max_size, то cache manager | |
4134 мог зациклиться; ошибка появилась в 0.8.46. | |
4135 | |
4136 | |
4137 Изменения в nginx 0.8.46 19.07.2010 | |
4138 | |
4139 *) Изменение: директивы proxy_no_cache, fastcgi_no_cache, uwsgi_no_cache | |
4140 и scgi_no_cache теперь влияют только на сохранение закэшированного | |
4141 ответа. | |
4142 | |
4143 *) Добавление: директивы proxy_cache_bypass, fastcgi_cache_bypass, | |
4144 uwsgi_cache_bypass и scgi_cache_bypass. | |
4145 | |
4146 *) Исправление: nginx не освобождал память в keys_zone кэшей в случае | |
4147 ошибки работы с бэкендом: память освобождалась только по истечении | |
4148 времени неактивности или при недостатке памяти. | |
4149 | |
4150 | |
4151 Изменения в nginx 0.8.45 13.07.2010 | |
4152 | |
4153 *) Добавление: улучшения в модуле ngx_http_xslt_filter. | |
4154 Спасибо Laurence Rowe. | |
4155 | |
4156 *) Исправление: ответ SSI модуля мог передаваться не полностью после | |
4157 команды include с параметром wait="yes"; ошибка появилась в 0.7.25. | |
4158 Спасибо Максиму Дунину. | |
4159 | |
4160 *) Исправление: директива listen не поддерживала параметр setfib=0. | |
4161 | |
4162 | |
4163 Изменения в nginx 0.8.44 05.07.2010 | |
4164 | |
4165 *) Изменение: теперь nginx по умолчанию не кэширует ответы бэкендов, в | |
4166 заголовке которых есть строка "Set-Cookie". | |
4167 | |
4168 *) Добавление: директива listen поддерживает параметр setfib. | |
4169 Спасибо Андрею Филонову. | |
4170 | |
4171 *) Исправление: директива sub_filter могла изменять регистр букв при | |
4172 частичном совпадении. | |
4173 | |
4174 *) Исправление: совместимость с HP/UX. | |
4175 | |
4176 *) Исправление: совместимость с компилятором AIX xlC_r. | |
4177 | |
4178 *) Исправление: nginx считал большие пакеты SSLv2 как обычные текстовые | |
4179 запросы. | |
4180 Спасибо Miroslaw Jaworski. | |
4181 | |
4182 | |
4183 Изменения в nginx 0.8.43 30.06.2010 | |
4184 | |
4185 *) Добавление: ускорение загрузки больших баз geo-диапазонов. | |
4186 | |
4187 *) Исправление: перенаправление ошибки в "location /zero {return 204;}" | |
4188 без изменения кода ответа оставляло тело ошибки; ошибка появилась в | |
4189 0.8.42. | |
4190 | |
4191 *) Исправление: nginx мог закрывать IPv6 listen сокет во время | |
4192 переконфигурации. | |
4193 Спасибо Максиму Дунину. | |
4194 | |
4195 *) Исправление: переменную $uid_set можно использовать на любой стадии | |
4196 обработки запроса. | |
4197 | |
4198 | |
4199 Изменения в nginx 0.8.42 21.06.2010 | |
4200 | |
4201 *) Изменение: теперь nginx проверяет location'ы, заданные регулярными | |
4202 выражениями, если запрос полностью совпал с location'ом, заданным | |
4203 строкой префикса. Предыдущее поведение появилось в 0.7.1. | |
4204 | |
4205 *) Добавление: модуль ngx_http_scgi_module. | |
4206 Спасибо Manlio Perillo. | |
4207 | |
4208 *) Добавление: в директиве return можно добавлять текст ответа. | |
4209 | |
4210 | |
4211 Изменения в nginx 0.8.41 15.06.2010 | |
4212 | |
4213 *) Безопасность: рабочий процесс nginx/Windows мог завершаться аварийно | |
4214 при запросе файла с неверной кодировкой UTF-8. | |
4215 | |
4216 *) Изменение: теперь nginx разрешает использовать пробелы в строке | |
4217 запроса. | |
4218 | |
4219 *) Исправление: директива proxy_redirect неправильно изменяла строку | |
4220 "Refresh" в заголовке ответа бэкенда. | |
4221 Спасибо Андрею Андрееву и Максиму Согину. | |
4222 | |
4223 *) Исправление: nginx не поддерживал путь без имени хоста в строке | |
4224 "Destination" в заголовке запроса. | |
4225 | |
4226 | |
4227 Изменения в nginx 0.8.40 07.06.2010 | |
4228 | |
4229 *) Безопасность: теперь nginx/Windows игнорирует имя потока файла по | |
4230 умолчанию. | |
4231 Спасибо Jose Antonio Vazquez Gonzalez. | |
4232 | |
4233 *) Добавление: модуль ngx_http_uwsgi_module. | |
4234 Спасибо Roberto De Ioris. | |
4235 | |
4236 *) Добавление: директива fastcgi_param со значением, начинающимся со | |
4237 строки "HTTP_", изменяет строку заголовка в запросе клиента. | |
4238 | |
4239 *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в | |
4240 заголовке запроса клиента передавались FastCGI-серверу при | |
4241 кэшировании. | |
4242 | |
4243 *) Исправление: listen unix domain сокет нельзя было изменить во время | |
4244 переконфигурации. | |
4245 Спасибо Максиму Дунину. | |
4246 | |
4247 | |
4248 Изменения в nginx 0.8.39 31.05.2010 | |
4249 | |
4250 *) Исправление: наследуемая директива alias неправильно работала во | |
4251 вложенном location'е. | |
4252 | |
4253 *) Исправление: в комбинации директив alias с переменными и try_files; | |
4254 | |
4255 *) Исправление: listen unix domain и IPv6 сокеты не наследовались во | |
4256 время обновления без перерыва. | |
4257 Спасибо Максиму Дунину. | |
4258 | |
4259 | |
4260 Изменения в nginx 0.8.38 24.05.2010 | |
4261 | |
4262 *) Добавление: директивы proxy_no_cache и fastcgi_no_cache. | |
4263 | |
4264 *) Добавление: теперь при использовании переменной $scheme в директиве | |
4265 rewrite автоматически делается редирект. | |
4266 Спасибо Piotr Sikora. | |
4267 | |
4268 *) Исправление: теперь задержки в директиве limit_req соответствует | |
4269 описанному алгоритму. | |
4270 Спасибо Максиму Дунину. | |
4271 | |
4272 *) Исправление: переменную $uid_got нельзя было использовать в SSI и | |
4273 перловом модулях. | |
4274 | |
4275 | |
4276 Изменения в nginx 0.8.37 17.05.2010 | |
4277 | |
4278 *) Добавление: модуль ngx_http_split_clients_module. | |
4279 | |
4280 *) Добавление: директива map поддерживает ключи больше 255 символов. | |
4281 | |
4282 *) Исправление: nginx игнорировал значения "private" и "no-store" в | |
4283 строке "Cache-Control" в заголовке ответа бэкенда. | |
4284 | |
4285 *) Исправление: параметр stub в SSI-директиве include не использовался, | |
4286 если пустой ответ имел код 200. | |
4287 | |
4288 *) Исправление: если проксированный или FastCGI запрос внутренне | |
4289 перенаправлялся в другой проксированный или FastCGI location, то в | |
4290 рабочем процессе мог произойти segmentation fault; ошибка появилась в | |
4291 0.8.33. | |
4292 Спасибо Yichun Zhang. | |
4293 | |
4294 *) Исправление: соединения IMAP к серверу Zimbra могло зависнуть до | |
4295 таймаута. | |
4296 Спасибо Alan Batie. | |
4297 | |
4298 | |
4299 Изменения в nginx 0.8.36 22.04.2010 | |
4300 | |
4301 *) Исправление: модуль ngx_http_dav_module неправильно обрабатывал | |
4302 методы DELETE, COPY и MOVE для симлинков. | |
4303 | |
4304 *) Исправление: модуль SSI в подзапросах использовал закэшированные в | |
4305 основном запросе значения переменных $query_string, $arg_... и им | |
4306 подобных. | |
4307 | |
4308 *) Исправление: значение переменной повторно экранировалось после | |
4309 каждого вывода SSI-команды echo; ошибка появилась в 0.6.14. | |
4310 | |
4311 *) Исправление: рабочий процесс зависал при запросе файла FIFO. | |
4312 Спасибо Vicente Aguilar и Максиму Дунину. | |
4313 | |
4314 *) Исправление: совместимость с OpenSSL-1.0.0 на 64-битном Linux. | |
4315 Спасибо Максиму Дунину. | |
4316 | |
4317 *) Исправление: nginx не собирался с параметром --without-http-cache; | |
4318 ошибка появилась в 0.8.35. | |
4319 | |
4320 | |
4321 Изменения в nginx 0.8.35 01.04.2010 | |
4322 | |
4323 *) Изменение: теперь charset-фильтр работает до SSI-фильтра. | |
4324 | |
4325 *) Добавление: директива chunked_transfer_encoding. | |
4326 | |
4327 *) Исправление: символ "&" при копировании в аргументы в правилах | |
4328 rewrite не экранировался. | |
4329 | |
4330 *) Исправление: nginx мог завершаться аварийно во время обработки | |
4331 сигнала или при использовании директивы timer_resolution на | |
4332 платформах, не поддерживающих методы kqueue или eventport. | |
4333 Спасибо George Xie и Максиму Дунину. | |
4334 | |
4335 *) Исправление: если временные файлы и постоянное место хранения | |
4336 располагались на разных файловых системах, то у постоянных файлов | |
4337 время изменения было неверным. | |
4338 Спасибо Максиму Дунину. | |
4339 | |
4340 *) Исправление: модуль ngx_http_memcached_module мог выдавать ошибку | |
4341 "memcached sent invalid trailer". | |
4342 Спасибо Максиму Дунину. | |
4343 | |
4344 *) Исправление: nginx не мог собрать библиотеку zlib-1.2.4 из исходных | |
4345 текстов. | |
4346 Спасибо Максиму Дунину. | |
4347 | |
4348 *) Исправление: в рабочем процессе происходил segmentation fault, если | |
4349 перед ответом FastCGI-сервера было много вывода в stderr; ошибка | |
4350 появилась в 0.8.34. | |
4351 Спасибо Максиму Дунину. | |
4352 | |
4353 | |
4354 Изменения в nginx 0.8.34 03.03.2010 | |
4355 | |
4356 *) Исправление: nginx не поддерживал все шифры, используемые в | |
4357 клиентских сертификатах. | |
4358 Спасибо Иннокентию Еникееву. | |
4359 | |
4360 *) Исправление: nginx неправильно кэшировал FastCGI-ответы, если перед | |
4361 ответом было много вывода в stderr. | |
4362 | |
4363 *) Исправление: nginx не поддерживал HTTPS-рефереры. | |
4364 | |
4365 *) Исправление: nginx/Windows мог не находить файлы, если путь в | |
4366 конфигурации был задан в другом регистре; ошибка появилась в 0.8.33. | |
4367 | |
4368 *) Исправление: переменная $date_local выдавала неверное время, если | |
4369 использовался формат "%s". | |
4370 Спасибо Максиму Дунину. | |
4371 | |
4372 *) Исправление: если ssl_session_cache не был установлен или установлен | |
4373 в none, то при проверке клиентского сертификаты могла происходить | |
4374 ошибка "session id context uninitialized"; ошибка появилась в 0.7.1. | |
4375 | |
4376 *) Исправление: geo-диапазон возвращал значение по умолчанию, если | |
4377 диапазон включал в себя одну и более сетей размером /16 и не | |
4378 начинался на границе сети размером /16. | |
4379 | |
4380 *) Исправление: блок, используемый в параметре stub в SSI-директиве | |
4381 include, выводился с MIME-типом "text/plain". | |
4382 | |
4383 *) Исправление: $r->sleep() не работал; ошибка появилась в 0.8.11. | |
4384 | |
4385 | |
4386 Изменения в nginx 0.8.33 01.02.2010 | |
4387 | |
4388 *) Безопасность: теперь nginx/Windows игнорирует пробелы в конце URI. | |
4389 Спасибо Dan Crowley, Core Security Technologies. | |
4390 | |
4391 *) Безопасность: теперь nginx/Windows игнорирует короткие имена файлов. | |
4392 Спасибо Dan Crowley, Core Security Technologies. | |
4393 | |
4394 *) Изменение: теперь keepalive соединения после запросов POST не | |
4395 запрещаются для MSIE 7.0+. | |
4396 Спасибо Adam Lounds. | |
4397 | |
4398 *) Изменение: теперь keepalive соединения запрещены для Safari. | |
4399 Спасибо Joshua Sierles. | |
4400 | |
4401 *) Исправление: если проксированный или FastCGI запрос внутренне | |
4402 перенаправлялся в другой проксированный или FastCGI location, то | |
4403 переменная $upstream_response_time могла иметь ненормально большое | |
4404 значение; ошибка появилась в 0.8.7. | |
4405 | |
4406 *) Исправление: в рабочем процессе мог произойти segmentation fault при | |
4407 отбрасывания тела запроса; ошибка появилась в 0.8.11. | |
4408 | |
4409 | |
4410 Изменения в nginx 0.8.32 11.01.2010 | |
4411 | |
4412 *) Исправление: ошибки при использовании кодировки UTF-8 в | |
4413 ngx_http_autoindex_module. | |
4414 Спасибо Максиму Дунину. | |
4415 | |
4416 *) Исправление: именованные выделения в регулярных выражениях работали | |
4417 только для двух переменных. | |
4418 Спасибо Максиму Дунину. | |
4419 | |
4420 *) Исправление: теперь в строке заголовка запроса "Host" используется | |
4421 имя "localhost", если в директиве auth_http указан unix domain сокет. | |
4422 Спасибо Максиму Дунину. | |
4423 | |
4424 *) Исправление: nginx не поддерживал передачу chunk'ами для 201-ых | |
4425 ответов. | |
4426 Спасибо Julian Reich. | |
4427 | |
4428 *) Исправление: если директива "expires modified" выставляла дату в | |
4429 прошлом, то в строке заголовка ответа "Cache-Control" выдавалось | |
4430 отрицательное число. | |
4431 Спасибо Алексею Капранову. | |
4432 | |
4433 | |
4434 Изменения в nginx 0.8.31 23.12.2009 | |
4435 | |
4436 *) Добавление: теперь директива error_page может перенаправлять ответы | |
4437 со статусом 301 и 302. | |
4438 | |
4439 *) Добавление: переменные $geoip_city_continent_code, $geoip_latitude и | |
4440 $geoip_longitude. | |
4441 Спасибо Arvind Sundararajan. | |
4442 | |
4443 *) Добавление: модуль ngx_http_image_filter_module теперь всегда удаляет | |
4444 EXIF и другие данные, если они занимают больше 5% в JPEG-файле. | |
4445 | |
4446 *) Исправление: nginx закрывал соединение при запросе закэшированного | |
4447 ответа с пустым телом. | |
4448 Спасибо Piotr Sikora. | |
4449 | |
4450 *) Исправление: nginx мог не собираться gcc 4.x при использовании | |
4451 оптимизации -O2 и выше. | |
4452 Спасибо Максиму Дунину и Денису Латыпову. | |
4453 | |
4454 *) Исправление: регулярные выражения в location всегда тестировались с | |
4455 учётом регистра; ошибка появилась в 0.8.25. | |
4456 | |
4457 *) Исправление: nginx кэшировал 304 ответ, если в заголовке | |
4458 проксируемого запроса была строка "If-None-Match". | |
4459 Спасибо Tim Dettrick и David Kostal. | |
4460 | |
4461 *) Исправление: nginx/Windows пытался дважды удалить временный файл при | |
4462 перезаписи уже существующего файла. | |
4463 | |
4464 | |
4465 Изменения в nginx 0.8.30 15.12.2009 | |
4466 | |
4467 *) Изменение: теперь по умолчанию размер буфера директивы | |
4468 large_client_header_buffers равен 8K. | |
4469 Спасибо Andrew Cholakian. | |
4470 | |
4471 *) Добавление: файл conf/fastcgi.conf для простых конфигураций FastCGI. | |
4472 | |
4473 *) Исправление: nginx/Windows пытался дважды переименовать временный | |
4474 файл при перезаписи уже существующего файла. | |
4475 | |
4476 *) Исправление: ошибки double free or corruption, возникающей, если имя | |
4477 хоста не было найдено; ошибка появилась в 0.8.22. | |
4478 Спасибо Константину Свисту. | |
4479 | |
4480 *) Исправление: в использовании libatomic на некоторых платформах. | |
4481 Спасибо W-Mark Kubacki. | |
4482 | |
4483 | |
4484 Изменения в nginx 0.8.29 30.11.2009 | |
4485 | |
4486 *) Изменение: теперь для проксируемых ответов HTTP/0.9 в лог пишется код | |
4487 ответа "009". | |
4488 | |
4489 *) Добавление: директивы addition_types, charset_types, gzip_types, | |
4490 ssi_types, sub_filter_types и xslt_types поддерживают параметр "*". | |
4491 | |
4492 *) Добавление: использование встроенных атомарных операций GCC 4.1+. | |
4493 Спасибо W-Mark Kubacki. | |
4494 | |
4495 *) Добавление: параметр --with-libatomic[=DIR] в configure. | |
4496 Спасибо W-Mark Kubacki. | |
4497 | |
4498 *) Исправление: listen unix domain сокет имели ограниченные права | |
4499 доступа. | |
4500 | |
4501 *) Исправление: закэшированные ответы ответов HTTP/0.9 неправильно | |
4502 обрабатывались. | |
4503 | |
4504 *) Исправление: именованные выделения в регулярных выражениях, заданные | |
4505 как "?P<...>", не работали в директиве server_name. | |
4506 Спасибо Максиму Дунину. | |
4507 | |
4508 | |
4509 Изменения в nginx 0.8.28 23.11.2009 | |
4510 | |
4511 *) Исправление: nginx не собирался с параметром --without-pcre; ошибка | |
4512 появилась в 0.8.25. | |
4513 | |
4514 | |
4515 Изменения в nginx 0.8.27 17.11.2009 | |
4516 | |
4517 *) Исправление: регулярные выражения не работали в nginx/Windows; ошибка | |
4518 появилась в 0.8.25. | |
4519 | |
4520 | |
4521 Изменения в nginx 0.8.26 16.11.2009 | |
4522 | |
4523 *) Исправление: ошибки при использовании выделений в директиве rewrite; | |
4524 ошибка появилась в 0.8.25. | |
4525 | |
4526 *) Исправление: nginx не собирался без параметра --with-debug; ошибка | |
4527 появилась в 0.8.25. | |
4528 | |
4529 | |
4530 Изменения в nginx 0.8.25 16.11.2009 | |
4531 | |
4532 *) Изменение: теперь в лог ошибок не пишется сообщение, если переменная | |
4533 не найдена с помощью метода $r->variable(). | |
4534 | |
4535 *) Добавление: модуль ngx_http_degradation_module. | |
4536 | |
4537 *) Добавление: именованные выделения в регулярных выражениях. | |
4538 | |
4539 *) Добавление: теперь при использовании переменных в директиве | |
4540 proxy_pass не требуется задавать URI. | |
4541 | |
4542 *) Добавление: теперь директива msie_padding работает и для Chrome. | |
4543 | |
4544 *) Исправление: в рабочем процессе происходил segmentation fault при | |
4545 недостатке памяти; ошибка появилась в 0.8.18. | |
4546 | |
4547 *) Исправление: nginx передавал сжатые ответы клиентам, не | |
4548 поддерживающим сжатие, при настройках gzip_static on и gzip_vary off; | |
4549 ошибка появилась в 0.8.16. | |
4550 | |
4551 | |
4552 Изменения в nginx 0.8.24 11.11.2009 | |
4553 | |
4554 *) Исправление: nginx всегда добавлял строку "Content-Encoding: gzip" в | |
4555 заголовок 304-ых ответов модуля ngx_http_gzip_static_module. | |
4556 | |
4557 *) Исправление: nginx не собирался без параметра --with-debug; ошибка | |
4558 появилась в 0.8.23. | |
4559 | |
4560 *) Исправление: параметр "unix:" в директиве set_real_ip_from | |
4561 неправильно наследовался с предыдущего уровня. | |
4562 | |
4563 *) Исправление: в resolver'е при определении пустого имени. | |
4564 | |
4565 | |
4566 Изменения в nginx 0.8.23 11.11.2009 | |
4567 | |
4568 *) Безопасность: теперь SSL/TLS renegotiation запрещён. | |
4569 Спасибо Максиму Дунину. | |
4570 | |
4571 *) Исправление: listen unix domain сокет не наследовался во время | |
4572 обновления без перерыва. | |
4573 | |
4574 *) Исправление: параметр "unix:" в директиве set_real_ip_from не работал | |
4575 без ещё одной директивы с любым IP-адресом. | |
4576 | |
4577 *) Исправление: segmentation fault и зацикливания в resolver'е. | |
4578 | |
4579 *) Исправление: в resolver'е. | |
4580 Спасибо Артёму Бохану. | |
4581 | |
4582 | |
4583 Изменения в nginx 0.8.22 03.11.2009 | |
4584 | |
4585 *) Добавление: директивы proxy_bind, fastcgi_bind и memcached_bind. | |
4586 | |
4587 *) Добавление: директивы access и deny поддерживают IPv6. | |
4588 | |
4589 *) Добавление: директива set_real_ip_from поддерживает IPv6 адреса в | |
4590 заголовках запроса. | |
4591 | |
4592 *) Добавление: параметр "unix:" в директиве set_real_ip_from. | |
4593 | |
4594 *) Исправление: nginx не удалял unix domain сокет после тестирования | |
4595 конфигурации. | |
4596 | |
4597 *) Исправление: nginx удалял unix domain сокет во время обновления без | |
4598 перерыва. | |
4599 | |
4600 *) Исправление: оператор "!-x" не работал. | |
4601 Спасибо Максиму Дунину. | |
4602 | |
4603 *) Исправление: в рабочем процессе мог произойти segmentation fault при | |
4604 использовании limit_rate в HTTPS сервере. | |
4605 Спасибо Максиму Дунину. | |
4606 | |
4607 *) Исправление: при записи в лог переменной $limit_rate в рабочем | |
4608 процессе происходил segmentation fault. | |
4609 Спасибо Максиму Дунину. | |
4610 | |
4611 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
4612 если внутри блока server не было директивы listen; ошибка появилась в | |
4613 0.8.21. | |
4614 | |
4615 | |
4616 Изменения в nginx 0.8.21 26.10.2009 | |
4617 | |
4618 *) Добавление: теперь ключ -V показывает статус поддержки TLS SNI. | |
4619 | |
4620 *) Добавление: директива listen модуля HTTP поддерживает unix domain | |
4621 сокеты. | |
4622 Спасибо Hongli Lai. | |
4623 | |
4624 *) Добавление: параметр "default_server" в директиве listen. | |
4625 | |
4626 *) Добавление: теперь параметр "default" не обязателен для установки | |
4627 параметров listen-сокета. | |
4628 | |
4629 *) Исправление: nginx не поддерживал даты в 2038 году на 32-битных | |
4630 платформах; | |
4631 | |
4632 *) Исправление: утечки сокетов; ошибка появилась в 0.8.11. | |
4633 | |
4634 | |
4635 Изменения в nginx 0.8.20 14.10.2009 | |
4636 | |
4637 *) Изменение: теперь по умолчанию используются следующие шифры SSL: | |
4638 "HIGH:!ADH:!MD5". | |
4639 | |
4640 *) Исправление: модуль ngx_http_autoindex_module не показывал последний | |
4641 слэш для линков на каталоги; ошибка появилась в 0.7.15. | |
4642 | |
4643 *) Исправление: nginx не закрывал лог, заданный параметром конфигурации | |
4644 --error-log-path; ошибка появилась в 0.7.53. | |
4645 | |
4646 *) Исправление: nginx не считал запятую разделителем в строке | |
4647 "Cache-Control" в заголовке ответа бэкенда. | |
4648 | |
4649 *) Исправление: nginx/Windows мог не создать временный файл, файл в кэше | |
4650 или файл с помощью директив proxy/fastcgi_store, если рабочий процесс | |
4651 не имел достаточно прав для работы с каталогами верхнего уровня. | |
4652 | |
4653 *) Исправление: строки "Set-Cookie" и "P3P" в заголовке ответа | |
4654 FastCGI-сервера не скрывались при кэшировании, если не использовались | |
4655 директивы fastcgi_hide_header с любыми параметрами. | |
4656 | |
4657 *) Исправление: nginx неверно считал размер кэша на диске. | |
4658 | |
4659 | |
4660 Изменения в nginx 0.8.19 06.10.2009 | |
4661 | |
4662 *) Изменение: теперь протокол SSLv2 по умолчанию запрещён. | |
4663 | |
4664 *) Изменение: теперь по умолчанию используются следующие шифры SSL: | |
4665 "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM". | |
4666 | |
4667 *) Исправление: директива limit_req не работала; ошибка появилась в | |
4668 0.8.18. | |
4669 | |
4670 | |
4671 Изменения в nginx 0.8.18 06.10.2009 | |
4672 | |
4673 *) Добавление: директива read_ahead. | |
4674 | |
4675 *) Добавление: теперь можно использовать несколько директив | |
4676 perl_modules. | |
4677 | |
4678 *) Добавление: директивы limit_req_log_level и limit_conn_log_level. | |
4679 | |
4680 *) Исправление: теперь директива limit_req соответствует алгоритму leaky | |
4681 bucket. | |
4682 Спасибо Максиму Дунину. | |
4683 | |
4684 *) Исправление: nginx не работал на Linux/sparc. | |
4685 Спасибо Marcus Ramberg. | |
4686 | |
4687 *) Исправление: nginx слал символ '\0' в строке "Location" в заголовке в | |
4688 ответе на запрос MKCOL. | |
4689 Спасибо Xie Zhenye. | |
4690 | |
4691 *) Исправление: вместо кода ответа 499 в лог записывался код 0; ошибка | |
4692 появилась в 0.8.11. | |
4693 | |
4694 *) Исправление: утечки сокетов; ошибка появилась в 0.8.11. | |
4695 | |
4696 | |
4697 Изменения в nginx 0.8.17 28.09.2009 | |
4698 | |
4699 *) Безопасность: теперь символы "/../" запрещены в строке "Destination" | |
4700 в заголовке запроса. | |
4701 | |
4702 *) Изменение: теперь значение переменной $host всегда в нижнем регистре. | |
4703 | |
4704 *) Добавление: переменная $ssl_session_id. | |
4705 | |
4706 *) Исправление: утечки сокетов; ошибка появилась в 0.8.11. | |
4707 | |
4708 | |
4709 Изменения в nginx 0.8.16 22.09.2009 | |
4710 | |
4711 *) Добавление: директива image_filter_transparency. | |
4712 | |
4713 *) Исправление: директива "addition_types" была неверно названа | |
4714 "addtion_types". | |
4715 | |
4716 *) Исправление: порчи кэша resolver'а. | |
4717 Спасибо Matthew Dempsky. | |
4718 | |
4719 *) Исправление: утечки памяти в resolver'е. | |
4720 Спасибо Matthew Dempsky. | |
4721 | |
4722 *) Исправление: неверная строка запроса в переменной $request | |
4723 записывалась в access_log только при использовании error_log на | |
4724 уровне info или debug. | |
4725 | |
4726 *) Исправление: в поддержке альфа-канала PNG в модуле | |
4727 ngx_http_image_filter_module. | |
4728 | |
4729 *) Исправление: nginx всегда добавлял строку "Vary: Accept-Encoding" в | |
4730 заголовок ответа, если обе директивы gzip_static и gzip_vary были | |
4731 включены. | |
4732 | |
4733 *) Исправление: в поддержке кодировки UTF-8 директивой try_files в | |
4734 nginx/Windows. | |
4735 | |
4736 *) Исправление: ошибки при использовании post_action; ошибка появилась в | |
4737 0.8.11. | |
4738 Спасибо Игорю Артемьеву. | |
4739 | |
4740 | |
4741 Изменения в nginx 0.8.15 14.09.2009 | |
4742 | |
4743 *) Безопасность: при обработке специально созданного запроса в рабочем | |
4744 процессе мог произойти segmentation fault. | |
4745 Спасибо Chris Ries. | |
4746 | |
4747 *) Исправление: если были описаны имена .domain.tld, .sub.domain.tld и | |
4748 .domain-some.tld, то имя .sub.domain.tld попадало под маску | |
4749 .domain.tld. | |
4750 | |
4751 *) Исправление: в поддержке прозрачности в модуле | |
4752 ngx_http_image_filter_module. | |
4753 | |
4754 *) Исправление: в файловом AIO. | |
4755 | |
4756 *) Исправление: ошибки при использовании X-Accel-Redirect; ошибка | |
4757 появилась в 0.8.11. | |
4758 | |
4759 *) Исправление: ошибки при использовании встроенного перла; ошибка | |
4760 появилась в 0.8.11. | |
4761 | |
4762 | |
4763 Изменения в nginx 0.8.14 07.09.2009 | |
4764 | |
4765 *) Исправление: устаревший закэшированный запрос мог залипнуть в | |
4766 состоянии "UPDATING". | |
4767 | |
4768 *) Исправление: при использовании error_log на уровне info или debug в | |
4769 рабочем процессе мог произойти segmentation fault. | |
4770 Спасибо Сергею Боченкову. | |
4771 | |
4772 *) Исправление: ошибки при использовании встроенного перла; ошибка | |
4773 появилась в 0.8.11. | |
4774 | |
4775 *) Исправление: директива error_page не перенаправляла ошибку 413; | |
4776 ошибка появилась в 0.6.10. | |
4777 | |
4778 | |
4779 Изменения в nginx 0.8.13 31.08.2009 | |
4780 | |
4781 *) Исправление: в директиве "aio sendfile"; ошибка появилась в 0.8.12. | |
4782 | |
4783 *) Исправление: nginx не собирался без параметра --with-file-aio на | |
4784 FreeBSD; ошибка появилась в 0.8.12. | |
4785 | |
4786 | |
4787 Изменения в nginx 0.8.12 31.08.2009 | |
4788 | |
4789 *) Добавление: параметр sendfile в директиве aio во FreeBSD. | |
4790 | |
4791 *) Исправление: ошибки при использовании try_files; ошибка появилась в | |
4792 0.8.11. | |
4793 | |
4794 *) Исправление: ошибки при использовании memcached; ошибка появилась в | |
4795 0.8.11. | |
4796 | |
4797 | |
4798 Изменения в nginx 0.8.11 28.08.2009 | |
4799 | |
4800 *) Изменение: теперь директива "gzip_disable msie6" не запрещает сжатие | |
4801 для MSIE 6.0 SV1. | |
4802 | |
4803 *) Добавление: поддержка файлового AIO во FreeBSD и Linux. | |
4804 | |
4805 *) Добавление: директива directio_alignment. | |
4806 | |
4807 | |
4808 Изменения в nginx 0.8.10 24.08.2009 | |
4809 | |
4810 *) Исправление: утечек памяти при использовании базы GeoIP City. | |
4811 | |
4812 *) Исправление: ошибки при копировании временных файлов в постоянное | |
4813 место хранения; ошибка появилась в 0.8.9. | |
4814 | |
4815 | |
4816 Изменения в nginx 0.8.9 17.08.2009 | |
4817 | |
4818 *) Добавление: теперь стартовый загрузчик кэша работает в отдельном | |
4819 процесс; это должно улучшить обработку больших кэшей. | |
4820 | |
4821 *) Добавление: теперь временные файлы и постоянное место хранения могут | |
4822 располагаться на разных файловых системах. | |
4823 | |
4824 | |
4825 Изменения в nginx 0.8.8 10.08.2009 | |
4826 | |
4827 *) Исправление: в обработке заголовков ответа, разделённых в | |
4828 FastCGI-записях. | |
4829 | |
4830 *) Исправление: если запрос обрабатывался в двух проксированных или | |
4831 FastCGI location'ах и в первом из них использовалось кэширование, то | |
4832 в рабочем процессе происходил segmentation fault; ошибка появилась в | |
4833 0.8.7. | |
4834 | |
4835 | |
4836 Изменения в nginx 0.8.7 27.07.2009 | |
4837 | |
4838 *) Изменение: минимальная поддерживаемая версия OpenSSL - 0.9.7. | |
4839 | |
4840 *) Изменение: параметр ask директивы ssl_verify_client изменён на | |
4841 параметр optional и теперь он проверяет клиентский сертификат, если | |
4842 он был предложен. | |
4843 Спасибо Brice Figureau. | |
4844 | |
4845 *) Добавление: переменная $ssl_client_verify. | |
4846 Спасибо Brice Figureau. | |
4847 | |
4848 *) Добавление: директива ssl_crl. | |
4849 Спасибо Brice Figureau. | |
4850 | |
4851 *) Добавление: параметр proxy директивы geo. | |
4852 | |
4853 *) Добавление: директива image_filter поддерживает переменные для | |
4854 задания размеров. | |
4855 | |
4856 *) Исправление: использование переменной $ssl_client_cert портило | |
4857 память; ошибка появилась в 0.7.7. | |
4858 Спасибо Сергею Журавлёву. | |
4859 | |
4860 *) Исправление: директивы proxy_pass_header и fastcgi_pass_header" не | |
4861 передавали клиенту строки "X-Accel-Redirect", "X-Accel-Limit-Rate", | |
4862 "X-Accel-Buffering" и "X-Accel-Charset" из заголовка ответа бэкенда. | |
4863 Спасибо Максиму Дунину. | |
4864 | |
4865 *) Исправление: в обработке строк "Last-Modified" и "Accept-Ranges" в | |
4866 заголовке ответа бэкенда; ошибка появилась в 0.7.44. | |
4867 Спасибо Максиму Дунину. | |
4868 | |
4869 *) Исправление: ошибки "[alert] zero size buf" при получении пустых | |
4870 ответы в подзапросах; ошибка появилась в 0.8.5. | |
4871 | |
4872 | |
4873 Изменения в nginx 0.8.6 20.07.2009 | |
4874 | |
4875 *) Добавление: модуль ngx_http_geoip_module. | |
4876 | |
4877 *) Исправление: XSLT-фильтр мог выдавать ошибку "not well formed XML | |
4878 document" для правильного документа. | |
4879 Спасибо Kuramoto Eiji. | |
4880 | |
4881 *) Исправление: в MacOSX, Cygwin и nginx/Windows при проверке | |
4882 location'ов, заданных регулярным выражением, теперь всегда делается | |
4883 сравнение без учёта регистра символов. | |
4884 | |
4885 *) Исправление: теперь nginx/Windows игнорирует точки в конце URI. | |
4886 Спасибо Hugo Leisink. | |
4887 | |
4888 *) Исправление: имя файла указанного в --conf-path игнорировалось при | |
4889 установке; ошибка появилась в 0.6.6. | |
4890 Спасибо Максиму Дунину. | |
4891 | |
4892 | |
4893 Изменения в nginx 0.8.5 13.07.2009 | |
4894 | |
4895 *) Исправление: теперь nginx разрешает подчёркивания в методе запроса. | |
4896 | |
4897 *) Исправление: при использовании HTTP Basic-аутентификации на Windows | |
4898 для неверных имени/пароля возвращалась 500-ая ошибка. | |
4899 | |
4900 *) Исправление: ответы модуля ngx_http_perl_module не работали в | |
4901 подзапросах. | |
4902 | |
4903 *) Исправление: в модуле ngx_http_limit_req_module. | |
4904 Спасибо Максиму Дунину. | |
4905 | |
4906 | |
4907 Изменения в nginx 0.8.4 22.06.2009 | |
4908 | |
4909 *) Исправление: nginx не собирался с параметром --without-http-cache; | |
4910 ошибка появилась в 0.8.3. | |
4911 | |
4912 | |
4913 Изменения в nginx 0.8.3 19.06.2009 | |
4914 | |
4915 *) Добавление: переменная $upstream_cache_status. | |
4916 | |
4917 *) Исправление: nginx не собирался на MacOSX 10.6. | |
4918 | |
4919 *) Исправление: nginx не собирался с параметром --without-http-cache; | |
4920 ошибка появилась в 0.8.2. | |
4921 | |
4922 *) Исправление: если использовался перехват 401 ошибки от бэкенда и | |
4923 бэкенд не возвращал строку "WWW-Authenticate" в заголовке ответа, то | |
4924 в рабочем процессе происходил segmentation fault. | |
4925 Спасибо Евгению Мычло. | |
4926 | |
4927 | |
4928 Изменения в nginx 0.8.2 15.06.2009 | |
4929 | |
4930 *) Исправление: во взаимодействии open_file_cache и proxy/fastcgi кэша | |
4931 на старте. | |
4932 | |
4933 *) Исправление: open_file_cache мог кэшировать открытые файлы очень | |
4934 долго; ошибка появилась в 0.7.4. | |
4935 | |
4936 | |
4937 Изменения в nginx 0.8.1 08.06.2009 | |
4938 | |
4939 *) Добавление: параметр updating в директивах proxy_cache_use_stale и | |
4940 fastcgi_cache_use_stale. | |
4941 | |
4942 *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в | |
4943 заголовке запроса клиента передавались бэкенду при кэшировании, если | |
4944 не использовалась директива proxy_set_header с любыми параметрами. | |
4945 | |
4946 *) Исправление: строки "Set-Cookie" и "P3P" в заголовке ответа бэкенда | |
4947 не скрывались при кэшировании, если не использовались директивы | |
4948 proxy_hide_header/fastcgi_hide_header с любыми параметрами. | |
4949 | |
4950 *) Исправление: модуль ngx_http_image_filter_module не понимал формат | |
4951 GIF87a. | |
4952 Спасибо Денису Ильиных. | |
4953 | |
4954 *) Исправление: nginx не собирался на Solaris 10 и более ранних; ошибка | |
4955 появилась в 0.7.56. | |
4956 | |
4957 | |
4958 Изменения в nginx 0.8.0 02.06.2009 | |
4959 | |
4960 *) Добавление: директива keepalive_requests. | |
4961 | |
4962 *) Добавление: директива limit_rate_after. | |
4963 Спасибо Ivan Debnar. | |
4964 | |
4965 *) Исправление: XSLT-фильтр не работал в подзапросах. | |
4966 | |
4967 *) Исправление: обработке относительных путей в nginx/Windows. | |
4968 | |
4969 *) Исправление: в proxy_store, fastcgi_store, proxy_cache и | |
4970 fastcgi_cache в nginx/Windows. | |
4971 | |
4972 *) Исправление: в обработке ошибок выделения памяти. | |
4973 Спасибо Максиму Дунину и Кириллу Коринскому. | |
4974 | |
4975 | |
4976 Изменения в nginx 0.7.59 25.05.2009 | |
4977 | |
4978 *) Добавление: директивы proxy_cache_methods и fastcgi_cache_methods. | |
4979 | |
4980 *) Исправление: утечки сокетов; ошибка появилась в 0.7.25. | |
4981 Спасибо Максиму Дунину. | |
4982 | |
4983 *) Исправление: при использовании переменной $request_body в рабочем | |
4984 процессе происходил segmentation fault, если в запросе не было тела; | |
4985 ошибка появилась в 0.7.58. | |
4986 | |
4987 *) Исправление: SSL-модули могли не собираться на Solaris и Linux; | |
4988 ошибка появилась в 0.7.56. | |
4989 | |
4990 *) Исправление: ответы модуля ngx_http_xslt_filter_module не | |
4991 обрабатывались SSI-, charset- и gzip-фильтрами. | |
4992 | |
4993 *) Исправление: директива charset не ставила кодировку для ответов | |
4994 модуля ngx_http_gzip_static_module. | |
4995 | |
4996 | |
4997 Изменения в nginx 0.7.58 18.05.2009 | |
4998 | |
4999 *) Добавление: директива listen почтового прокси-сервера поддерживает | |
5000 IPv6. | |
5001 | |
5002 *) Добавление: директива image_filter_jpeg_quality. | |
5003 | |
5004 *) Добавление: директива client_body_in_single_buffer. | |
5005 | |
5006 *) Добавление: переменная $request_body. | |
5007 | |
5008 *) Исправление: в модуле ngx_http_autoindex_module в ссылках на имена | |
5009 файлов, содержащих символ ":". | |
5010 | |
5011 *) Исправление: процедура "make upgrade" не работала; ошибка появилась в | |
5012 0.7.53. | |
5013 Спасибо Денису Латыпову. | |
5014 | |
5015 | |
5016 Изменения в nginx 0.7.57 12.05.2009 | |
5017 | |
5018 *) Исправление: при перенаправлении ошибок модуля | |
5019 ngx_http_image_filter_module в именованный location в рабочем | |
5020 процессе происходил floating-point fault; ошибка появилась в 0.7.56. | |
5021 | |
5022 | |
5023 Изменения в nginx 0.7.56 11.05.2009 | |
5024 | |
5025 *) Добавление: nginx/Windows поддерживает IPv6 в директиве listen модуля | |
5026 HTTP. | |
5027 | |
5028 *) Исправление: в модуле ngx_http_image_filter_module. | |
5029 | |
5030 | |
5031 Изменения в nginx 0.7.55 06.05.2009 | |
5032 | |
5033 *) Исправление: параметры http_XXX в директивах proxy_cache_use_stale и | |
5034 fastcgi_cache_use_stale не работали. | |
5035 | |
5036 *) Исправление: fastcgi кэш не кэшировал ответы, состоящие только из | |
5037 заголовка. | |
5038 | |
5039 *) Исправление: ошибки "select() failed (9: Bad file descriptor)" в | |
5040 nginx/Unix и "select() failed (10038: ...)" в nginx/Windows. | |
5041 | |
5042 *) Исправление: при использовании директивы debug_connection в рабочем | |
5043 процессе мог произойти segmentation fault; ошибка появилась в 0.7.54. | |
5044 | |
5045 *) Исправление: в сборке модуля ngx_http_image_filter_module. | |
5046 | |
5047 *) Исправление: файлы больше 2G не передавались с использованием | |
5048 $r->sendfile. | |
5049 Спасибо Максиму Дунину. | |
5050 | |
5051 | |
5052 Изменения в nginx 0.7.54 01.05.2009 | |
5053 | |
5054 *) Добавление: модуль ngx_http_image_filter_module. | |
5055 | |
5056 *) Добавление: директивы proxy_ignore_headers и fastcgi_ignore_headers. | |
5057 | |
5058 *) Исправление: при использовании переменных "open_file_cache_errors on" | |
5059 в рабочем процессе мог произойти segmentation fault; ошибка появилась | |
5060 в 0.7.53. | |
5061 | |
5062 *) Исправление: директива "port_in_redirect off" не работала; ошибка | |
5063 появилась в 0.7.39. | |
5064 | |
5065 *) Исправление: улучшение обработки ошибок метода select. | |
5066 | |
5067 *) Исправление: ошибки "select() failed (10022: ...)" в nginx/Windows. | |
5068 | |
5069 *) Исправление: в текстовых сообщениях об ошибках в nginx/Windows; | |
5070 ошибка появилась в 0.7.53. | |
5071 | |
5072 | |
5073 Изменения в nginx 0.7.53 27.04.2009 | |
5074 | |
5075 *) Изменение: теперь лог, указанный в --error-log-path, создаётся с | |
5076 самого начала работы. | |
5077 | |
5078 *) Добавление: теперь ошибки и предупреждения при старте записываются в | |
5079 error_log и выводятся на stderr. | |
5080 | |
5081 *) Добавление: при сборке с пустым параметром --prefix= nginx использует | |
5082 как префикс каталог, в котором он был запущен. | |
5083 | |
5084 *) Добавление: ключ -p. | |
5085 | |
5086 *) Добавление: ключ -s на Unix-платформах. | |
5087 | |
5088 *) Добавление: ключи -? и -h. | |
5089 Спасибо Jerome Loyet. | |
5090 | |
5091 *) Добавление: теперь ключи можно задавать в сжатой форме. | |
5092 | |
5093 *) Исправление: nginx/Windows не работал, если файл конфигурации был | |
5094 задан ключом -c. | |
5095 | |
5096 *) Исправление: при использовании директив proxy_store, fastcgi_store, | |
5097 proxy_cache или fastcgi_cache временные файлы могли не удаляться. | |
5098 Спасибо Максиму Дунину. | |
5099 | |
5100 *) Исправление: в заголовке Auth-Method запроса серверу аутентификации | |
5101 почтового прокси-сервера передавалось неверное значение; ошибка | |
5102 появилась в 0.7.34. | |
5103 Спасибо Simon Lecaille. | |
5104 | |
5105 *) Исправление: при логгировании на Linux не писались текстовые описания | |
5106 системных ошибок; ошибка появилась в 0.7.45. | |
5107 | |
5108 *) Исправление: директива fastcgi_cache_min_uses не работала. | |
5109 Спасибо Андрею Воробьёву. | |
5110 | |
5111 | |
5112 Изменения в nginx 0.7.52 20.04.2009 | |
5113 | |
5114 *) Добавление: первая бинарная версия под Windows. | |
5115 | |
5116 *) Исправление: корректная обработка метода HEAD при кэшировании. | |
5117 | |
5118 *) Исправление: корректная обработка строк "If-Modified-Since", | |
5119 "If-Range" и им подобных в заголовке запроса клиента при кэшировании. | |
5120 | |
5121 *) Исправление: теперь строки "Set-Cookie" и "P3P" скрываются в | |
5122 заголовке ответа для закэшированных ответов. | |
5123 | |
5124 *) Исправление: если nginx был собран с модулем ngx_http_perl_module и | |
5125 perl поддерживал потоки, то при выходе основного процесса могла | |
5126 выдаваться ошибка "panic: MUTEX_LOCK". | |
5127 | |
5128 *) Исправление: nginx не собирался с параметром --without-http-cache; | |
5129 ошибка появилась в 0.7.48. | |
5130 | |
5131 *) Исправление: nginx не собирался на платформах, отличных от i386, | |
5132 amd64, sparc и ppc; ошибка появилась в 0.7.42. | |
5133 | |
5134 | |
5135 Изменения в nginx 0.7.51 12.04.2009 | |
5136 | |
5137 *) Добавление: директива try_files поддерживает код ответа в последнем | |
5138 параметре. | |
5139 | |
5140 *) Добавление: теперь в директиве return можно использовать любой код | |
5141 ответа. | |
5142 | |
5143 *) Исправление: директива error_page делала внешний редирект без строки | |
5144 запроса; ошибка появилась в 0.7.44. | |
5145 | |
5146 *) Исправление: если сервера слушали на нескольких явно описанных | |
5147 адресах, то виртуальные сервера могли не работать; ошибка появилась в | |
5148 0.7.39. | |
5149 | |
5150 | |
5151 Изменения в nginx 0.7.50 06.04.2009 | |
5152 | |
5153 *) Исправление: переменные $arg_... не работали; ошибка появилась в | |
5154 0.7.49. | |
5155 | |
5156 | |
5157 Изменения в nginx 0.7.49 06.04.2009 | |
5158 | |
5159 *) Исправление: при использовании переменных $arg_... в рабочем процессе | |
5160 мог произойти segmentation fault; ошибка появилась в 0.7.48. | |
5161 | |
5162 | |
5163 Изменения в nginx 0.7.48 06.04.2009 | |
5164 | |
5165 *) Добавление: директива proxy_cache_key. | |
5166 | |
5167 *) Исправление: теперь nginx учитывает при кэшировании строки | |
5168 "X-Accel-Expires", "Expires" и "Cache-Control" в заголовке ответа | |
5169 бэкенда. | |
5170 | |
5171 *) Исправление: теперь nginx кэширует только ответы на запросы GET. | |
5172 | |
5173 *) Исправление: директива fastcgi_cache_key не наследовалась. | |
5174 | |
5175 *) Исправление: переменные $arg_... не работали с SSI-подзапросами. | |
5176 Спасибо Максиму Дунину. | |
5177 | |
5178 *) Исправление: nginx не собирался с библиотекой uclibc. | |
5179 Спасибо Timothy Redaelli. | |
5180 | |
5181 *) Исправление: nginx не собирался на OpenBSD; ошибка появилась | |
5182 в 0.7.46. | |
5183 | |
5184 | |
5185 Изменения в nginx 0.7.47 01.04.2009 | |
5186 | |
5187 *) Исправление: nginx не собирался на FreeBSD 6 и более ранних версиях; | |
5188 ошибка появилась в 0.7.46. | |
5189 | |
5190 *) Исправление: nginx не собирался на MacOSX; ошибка появилась в 0.7.46. | |
5191 | |
5192 *) Исправление: если использовался параметр max_size, то cache manager | |
5193 мог удалить весь кэш; ошибка появилась в 0.7.46. | |
5194 | |
5195 *) Изменение: в рабочем процессе мог произойти segmentation fault, если | |
5196 директивы proxy_cache/fastcgi_cache и proxy_cache_valid/ | |
5197 fastcgi_cache_valid не были заданы на одном уровне; ошибка появилась | |
5198 в 0.7.46. | |
5199 | |
5200 *) Исправление: в рабочем процессе мог произойти segmentation fault при | |
5201 перенаправлении запроса проксированному или FastCGI-серверу с помощью | |
5202 error_page или try_files; ошибка появилась в 0.7.44. | |
5203 | |
5204 | |
5205 Изменения в nginx 0.7.46 30.03.2009 | |
5206 | |
5207 *) Исправление: архив предыдущего релиза был неверным. | |
5208 | |
5209 | |
5210 Изменения в nginx 0.7.45 30.03.2009 | |
5211 | |
5212 *) Изменение: теперь директивы proxy_cache и proxy_cache_valid можно | |
5213 задавать на разных уровнях. | |
5214 | |
5215 *) Изменение: параметр clean_time в директиве proxy_cache_path удалён. | |
5216 | |
5217 *) Добавление: параметр max_size в директиве proxy_cache_path. | |
5218 | |
5219 *) Добавление: предварительная поддержка кэширования в модуле | |
5220 ngx_http_fastcgi_module. | |
5221 | |
5222 *) Добавление: теперь при ошибках выделения в разделяемой памяти в логе | |
5223 указываются названия директивы и зоны. | |
5224 | |
5225 *) Исправление: директива "add_header last-modified ''" не удаляла в | |
5226 заголовке ответа строку "Last-Modified"; ошибка появилась в 0.7.44. | |
5227 | |
5228 *) Исправление: в директиве auth_basic_user_file не работал | |
5229 относительный путь, заданный строкой без переменных; ошибка появилась | |
5230 в 0.7.44. | |
5231 Спасибо Jerome Loyet. | |
5232 | |
5233 *) Исправление: в директиве alias, заданной переменными без ссылок на | |
5234 выделения в регулярных выражениях; ошибка появилась в 0.7.42. | |
5235 | |
5236 | |
5237 Изменения в nginx 0.7.44 23.03.2009 | |
5238 | |
5239 *) Добавление: предварительная поддержка кэширования в модуле | |
5240 ngx_http_proxy_module. | |
5241 | |
5242 *) Добавление: параметр --with-pcre в configure. | |
5243 | |
5244 *) Добавление: теперь директива try_files может быть использована на | |
5245 уровне server. | |
5246 | |
5247 *) Исправление: директива try_files неправильно обрабатывала строку | |
5248 запроса в последнем параметре. | |
5249 | |
5250 *) Исправление: директива try_files могла неверно тестировать каталоги. | |
5251 | |
5252 *) Исправление: если для пары адрес:порт описан только один сервер, то | |
5253 выделения в регулярных выражениях в директиве server_name не | |
5254 работали. | |
5255 | |
5256 | |
5257 Изменения в nginx 0.7.43 18.03.2009 | |
5258 | |
5259 *) Исправление: запрос обрабатывался неверно, если директива root | |
5260 использовала переменные; ошибка появилась в 0.7.42. | |
5261 | |
5262 *) Исправление: если сервер слушал на адресах типа "*", то значение | |
5263 переменной $server_addr было "0.0.0.0"; ошибка появилась в 0.7.36. | |
5264 | |
5265 | |
5266 Изменения в nginx 0.7.42 16.03.2009 | |
5267 | |
5268 *) Изменение: ошибка "Invalid argument", возвращаемая | |
5269 setsockopt(TCP_NODELAY) на Solaris, теперь игнорируется. | |
5270 | |
5271 *) Изменение: при отсутствии файла, указанного в директиве | |
5272 auth_basic_user_file, теперь возвращается ошибка 403 вместо 500. | |
5273 | |
5274 *) Добавление: директива auth_basic_user_file поддерживает переменные. | |
5275 Спасибо Кириллу Коринскому. | |
5276 | |
5277 *) Добавление: директива listen поддерживает параметр ipv6only. | |
5278 Спасибо Zhang Hua. | |
5279 | |
5280 *) Исправление: в директиве alias со ссылками на выделения в регулярных | |
5281 выражениях; ошибка появилась в 0.7.40. | |
5282 | |
5283 *) Исправление: совместимость с Tru64 UNIX. | |
5284 Спасибо Dustin Marquess. | |
5285 | |
5286 *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась | |
5287 в 0.7.41. | |
5288 | |
5289 | |
5290 Изменения в nginx 0.7.41 11.03.2009 | |
5291 | |
5292 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
5293 если в server_name или location были выделения в регулярных | |
5294 выражениях; ошибка появилась в 0.7.40. | |
5295 Спасибо Владимиру Сопоту. | |
5296 | |
5297 | |
5298 Изменения в nginx 0.7.40 09.03.2009 | |
5299 | |
5300 *) Добавление: директива location поддерживает выделения в регулярных | |
5301 выражениях. | |
5302 | |
5303 *) Добавление: директиву alias с ссылками на выделения в регулярных | |
5304 выражениях можно использовать внутри location'а, заданного регулярным | |
5305 выражением с выделениями. | |
5306 | |
5307 *) Добавление: директива server_name поддерживает выделения в регулярных | |
5308 выражениях. | |
5309 | |
5310 *) Изменение: модуль ngx_http_autoindex_module не показывал последний | |
5311 слэш для каталогов на файловой системе XFS; ошибка появилась в | |
5312 0.7.15. | |
5313 Спасибо Дмитрию Кузьменко. | |
5314 | |
5315 | |
5316 Изменения в nginx 0.7.39 02.03.2009 | |
5317 | |
5318 *) Исправление: при включённом сжатии большие ответы с использованием | |
5319 SSI могли зависать; ошибка появилась в 0.7.28. | |
5320 Спасибо Артёму Бохану. | |
5321 | |
5322 *) Исправление: при использовании коротких статических вариантов в | |
5323 директиве try_files в рабочем процессе мог произойти segmentation | |
5324 fault. | |
5325 | |
5326 | |
5327 Изменения в nginx 0.7.38 23.02.2009 | |
5328 | |
5329 *) Добавление: логгирование ошибок аутентификации. | |
5330 | |
5331 *) Исправление: имя/пароль, заданные в auth_basic_user_file, | |
5332 игнорировались после нечётного числа пустых строк. | |
5333 Спасибо Александру Загребину. | |
5334 | |
5335 *) Исправление: при использовании длинного пути в unix domain сокете в | |
5336 главном процессе происходил segmentation fault; ошибка появилась в | |
5337 0.7.36. | |
5338 | |
5339 | |
5340 Изменения в nginx 0.7.37 21.02.2009 | |
5341 | |
5342 *) Исправление: директивы, использующие upstream'ы, не работали; ошибка | |
5343 появилась в 0.7.36. | |
5344 | |
5345 | |
5346 Изменения в nginx 0.7.36 21.02.2009 | |
5347 | |
5348 *) Добавление: предварительная поддержка IPv6; директива listen модуля | |
5349 HTTP поддерживает IPv6. | |
5350 | |
5351 *) Исправление: переменная $ancient_browser не работала для браузеров, | |
5352 заданных директивами modern_browser. | |
5353 | |
5354 | |
5355 Изменения в nginx 0.7.35 16.02.2009 | |
5356 | |
5357 *) Исправление: директива ssl_engine не использовала SSL-акселератор для | |
5358 асимметричных шифров. | |
5359 Спасибо Marcin Gozdalik. | |
5360 | |
5361 *) Исправление: директива try_files выставляла MIME-type, исходя из | |
5362 расширения первоначального запроса. | |
5363 | |
5364 *) Исправление: в директивах server_name, valid_referers и map | |
5365 неправильно обрабатывались имена вида "*domain.tld", если | |
5366 использовались маски вида ".domain.tld" и ".subdomain.domain.tld"; | |
5367 ошибка появилась в 0.7.9. | |
5368 | |
5369 | |
5370 Изменения в nginx 0.7.34 10.02.2009 | |
5371 | |
5372 *) Добавление: параметр off в директиве if_modified_since. | |
5373 | |
5374 *) Добавление: теперь после команды XCLIENT nginx посылает команду | |
5375 HELO/EHLO. | |
5376 Спасибо Максиму Дунину. | |
5377 | |
5378 *) Добавление: поддержка Microsoft-специфичного режима | |
5379 "AUTH LOGIN with User Name" в почтовом прокси-сервере. | |
5380 Спасибо Максиму Дунину. | |
5381 | |
5382 *) Исправление: в директиве rewrite, возвращающей редирект, старые | |
5383 аргументы присоединялись к новым через символ "?" вместо "&"; | |
5384 ошибка появилась в 0.1.18. | |
5385 Спасибо Максиму Дунину. | |
5386 | |
5387 *) Исправление: nginx не собирался на AIX. | |
5388 | |
5389 | |
5390 Изменения в nginx 0.7.33 02.02.2009 | |
5391 | |
5392 *) Исправление: если на запрос с телом возвращался редирект, то ответ | |
5393 мог быть двойным при использовании методов epoll или rtsig. | |
5394 Спасибо Eden Li. | |
5395 | |
5396 *) Исправление: для некоторых типов редиректов в переменной | |
5397 $sent_http_location было пустое значение. | |
5398 | |
5399 *) Исправление: при использовании директивы resolver в SMTP | |
5400 прокси-сервере в рабочем процессе мог произойти segmentation fault. | |
5401 | |
5402 | |
5403 Изменения в nginx 0.7.32 26.01.2009 | |
5404 | |
5405 *) Добавление: теперь в директиве try_files можно явно указать проверку | |
5406 каталога. | |
5407 | |
5408 *) Исправление: fastcgi_store не всегда сохранял файлы. | |
5409 | |
5410 *) Исправление: в гео-диапазонах. | |
5411 | |
5412 *) Исправление: ошибки выделения больших блоков в разделяемой памяти, | |
5413 если nginx был собран без отладки. | |
5414 Спасибо Андрею Квасову. | |
5415 | |
5416 | |
5417 Изменения в nginx 0.7.31 19.01.2009 | |
5418 | |
5419 *) Изменение: теперь директива try_files проверяет только файлы, | |
5420 игнорируя каталоги. | |
5421 | |
5422 *) Добавление: директива fastcgi_split_path_info. | |
5423 | |
5424 *) Исправления в поддержке строки "Expect" в заголовке запроса. | |
5425 | |
5426 *) Исправления в гео-диапазонах. | |
5427 | |
5428 *) Исправление: при отсутствии ответа ngx_http_memcached_module | |
5429 возвращал в теле ответа строку "END" вместо 404-ой страницы по | |
5430 умолчанию; ошибка появилась в 0.7.18. | |
5431 Спасибо Максиму Дунину. | |
5432 | |
5433 *) Исправление: при проксировании SMTP nginx выдавал сообщение | |
5434 "250 2.0.0 OK" вместо "235 2.0.0 OK"; ошибка появилась в 0.7.22. | |
5435 Спасибо Максиму Дунину. | |
5436 | |
5437 | |
5438 Изменения в nginx 0.7.30 24.12.2008 | |
5439 | |
5440 *) Исправление: в рабочем процессе происходил segmentation fault, если в | |
5441 директивах fastcgi_pass или proxy_pass использовались переменные и | |
5442 имя хоста должно было резолвиться; ошибка появилась в 0.7.29. | |
5443 | |
5444 | |
5445 Изменения в nginx 0.7.29 24.12.2008 | |
5446 | |
5447 *) Исправление: директивы fastcgi_pass и proxy_pass не поддерживали | |
5448 переменные при использовании unix domain сокетов. | |
5449 | |
5450 *) Исправления в обработке подзапросов; ошибки появились в 0.7.25. | |
5451 | |
5452 *) Исправление: ответ "100 Continue" выдавался для запросов версии | |
5453 HTTP/1.0; | |
5454 Спасибо Максиму Дунину. | |
5455 | |
5456 *) Исправление: в выделении памяти в модуле ngx_http_gzip_filter_module | |
5457 под Cygwin. | |
5458 | |
5459 | |
5460 Изменения в nginx 0.7.28 22.12.2008 | |
5461 | |
5462 *) Изменение: в выделении памяти в модуле ngx_http_gzip_filter_module. | |
5463 | |
5464 *) Изменение: значения по умолчанию для директивы gzip_buffers изменены | |
5465 с 4 4k/8k на 32 4k или 16 8k. | |
5466 | |
5467 | |
5468 Изменения в nginx 0.7.27 15.12.2008 | |
5469 | |
5470 *) Добавление: директива try_files. | |
5471 | |
5472 *) Добавление: директива fastcgi_pass поддерживает переменные. | |
5473 | |
5474 *) Добавление: теперь директива geo может брать адрес из переменной. | |
5475 Спасибо Андрею Нигматулину. | |
5476 | |
5477 *) Добавление: теперь модификатор location'а можно указывать без пробела | |
5478 перед названием. | |
5479 | |
5480 *) Добавление: переменная $upstream_response_length. | |
5481 | |
5482 *) Исправление: теперь директива add_header не добавляет пустое | |
5483 значение. | |
5484 | |
5485 *) Исправление: при запросе файла нулевой длины nginx закрывал | |
5486 соединение, ничего не передав; ошибка появилась в 0.7.25. | |
5487 | |
5488 *) Исправление: метод MOVE не мог перемещать файл в несуществующий | |
5489 каталог. | |
5490 | |
5491 *) Исправление: если в сервере не был описан ни один именованный | |
5492 location, но такой location использовался в директиве error_page, то | |
5493 в рабочем процессе происходил segmentation fault. | |
5494 Спасибо Сергею Боченкову. | |
5495 | |
5496 | |
5497 Изменения в nginx 0.7.26 08.12.2008 | |
5498 | |
5499 *) Исправление: в обработке подзапросов; ошибка появилась в 0.7.25. | |
5500 | |
5501 | |
5502 Изменения в nginx 0.7.25 08.12.2008 | |
5503 | |
5504 *) Изменение: в обработке подзапросов. | |
5505 | |
5506 *) Изменение: теперь разрешаются POST'ы без строки "Content-Length" в | |
5507 заголовке запроса. | |
5508 | |
5509 *) Исправление: теперь директивы limit_req и limit_conn указывают | |
5510 причину запрета запроса. | |
5511 | |
5512 *) Исправление: в параметре delete директивы geo. | |
5513 | |
5514 | |
5515 Изменения в nginx 0.7.24 01.12.2008 | |
5516 | |
5517 *) Добавление: директива if_modified_since. | |
5518 | |
5519 *) Исправление: nginx не обрабатывал ответ FastCGI-сервера, если перед | |
5520 ответом сервер передавал много сообщений в stderr. | |
5521 | |
5522 *) Исправление: переменные "$cookie_..." не работали в SSI and в | |
5523 перловом модуле. | |
5524 | |
5525 | |
5526 Изменения в nginx 0.7.23 27.11.2008 | |
5527 | |
5528 *) Добавление: параметры delete и ranges в директиве geo. | |
5529 | |
5530 *) Добавление: ускорение загрузки geo-базы с большим числом значений. | |
5531 | |
5532 *) Добавление: уменьшение памяти, необходимой для загрузки geo-базы. | |
5533 | |
5534 | |
5535 Изменения в nginx 0.7.22 20.11.2008 | |
5536 | |
5537 *) Добавление: параметр none в директиве smtp_auth. | |
5538 Спасибо Максиму Дунину. | |
5539 | |
5540 *) Добавление: переменные "$cookie_...". | |
5541 | |
5542 *) Исправление: директива directio не работала с файловой системой XFS. | |
5543 | |
5544 *) Исправление: resolver не понимал большие DNS-ответы. | |
5545 Спасибо Zyb. | |
5546 | |
5547 | |
5548 Изменения в nginx 0.7.21 11.11.2008 | |
5549 | |
5550 *) Изменения в модуле ngx_http_limit_req_module. | |
5551 | |
5552 *) Добавление: поддержка EXSLT в модуле ngx_http_xslt_module. | |
5553 Спасибо Денису Латыпову. | |
5554 | |
5555 *) Изменение: совместимость с glibc 2.3. | |
5556 Спасибо Eric Benson и Максиму Дунину. | |
5557 | |
5558 *) Исправление: nginx не запускался на MacOSX 10.4 и более ранних; | |
5559 ошибка появилась в 0.7.6. | |
5560 | |
5561 | |
5562 Изменения в nginx 0.7.20 10.11.2008 | |
5563 | |
5564 *) Изменения в модуле ngx_http_gzip_filter_module. | |
5565 | |
5566 *) Добавление: модуль ngx_http_limit_req_module. | |
5567 | |
5568 *) Исправление: на платформах sparc и ppc рабочие процессы могли | |
5569 выходить по сигналу SIGBUS; ошибка появилась в 0.7.3. | |
5570 Спасибо Максиму Дунину. | |
5571 | |
5572 *) Исправление: директивы вида "proxy_pass http://host/some:uri" не | |
5573 работали; ошибка появилась в 0.7.12. | |
5574 | |
5575 *) Исправление: при использовании HTTPS запросы могли завершаться с | |
5576 ошибкой "bad write retry". | |
5577 | |
5578 *) Исправление: модуль ngx_http_secure_link_module не работал внутри | |
5579 location'ов с именами меньше 3 символов. | |
5580 | |
5581 *) Исправление: переменная $server_addr могла не иметь значения. | |
5582 | |
5583 | |
5584 Изменения в nginx 0.7.19 13.10.2008 | |
5585 | |
5586 *) Исправление: обновление номера версии. | |
5587 | |
5588 | |
5589 Изменения в nginx 0.7.18 13.10.2008 | |
5590 | |
5591 *) Изменение: директива underscores_in_headers; теперь nginx по | |
5592 умолчанию не разрешает подчёркивания в именах строк в заголовке | |
5593 запроса клиента. | |
5594 | |
5595 *) Добавление: модуль ngx_http_secure_link_module. | |
5596 | |
5597 *) Добавление: директива real_ip_header поддерживает любой заголовок. | |
5598 | |
5599 *) Добавление: директива log_subrequest. | |
5600 | |
5601 *) Добавление: переменная $realpath_root. | |
5602 | |
5603 *) Добавление: параметры http_502 и http_504 в директиве | |
5604 proxy_next_upstream. | |
5605 | |
5606 *) Исправление: параметр http_503 в директивах proxy_next_upstream или | |
5607 fastcgi_next_upstream не работал. | |
5608 | |
5609 *) Исправление: nginx мог выдавать строку "Transfer-Encoding: chunked" | |
5610 для запросов HEAD. | |
5611 | |
5612 *) Исправление: теперь accept-лимит зависит от числа worker_connections. | |
5613 | |
5614 | |
5615 Изменения в nginx 0.7.17 15.09.2008 | |
5616 | |
5617 *) Добавление: директива directio теперь работает на Linux. | |
5618 | |
5619 *) Добавление: переменная $pid. | |
5620 | |
5621 *) Исправление: оптимизация directio, появившаяся в 0.7.15, не работала | |
5622 при использовании open_file_cache. | |
5623 | |
5624 *) Исправление: access_log с переменными не работал на Linux; ошибка | |
5625 появилась в 0.7.7. | |
5626 | |
5627 *) Исправление: модуль ngx_http_charset_module не понимал название | |
5628 кодировки в кавычках, полученное от бэкенда. | |
5629 | |
5630 | |
5631 Изменения в nginx 0.7.16 08.09.2008 | |
5632 | |
5633 *) Исправление: nginx не собирался на 64-битных платформах; ошибка | |
5634 появилась в 0.7.15. | |
5635 | |
5636 | |
5637 Изменения в nginx 0.7.15 08.09.2008 | |
5638 | |
5639 *) Добавление: модуль ngx_http_random_index_module. | |
5640 | |
5641 *) Добавление: директива directio оптимизирована для запросов файлов, | |
5642 начинающихся с произвольной позиции. | |
5643 | |
5644 *) Добавление: директива directio при необходимости запрещает | |
5645 использование sendfile. | |
5646 | |
5647 *) Добавление: теперь nginx разрешает подчёркивания в именах строк в | |
5648 заголовке запроса клиента. | |
5649 | |
5650 | |
5651 Изменения в nginx 0.7.14 01.09.2008 | |
5652 | |
5653 *) Изменение: теперь директивы ssl_certificate и ssl_certificate_key не | |
5654 имеют значений по умолчанию. | |
5655 | |
5656 *) Добавление: директива listen поддерживает параметр ssl. | |
5657 | |
5658 *) Добавление: теперь при переконфигурации nginx учитывает изменение | |
5659 временной зоны на FreeBSD и Linux. | |
5660 | |
5661 *) Исправление: параметры директивы listen, такие как backlog, rcvbuf и | |
5662 прочие, не устанавливались, если сервером по умолчанию был не первый | |
5663 сервер. | |
5664 | |
5665 *) Исправление: при использовании в качестве аргументов части URI, | |
5666 выделенного с помощью директивы rewrite, эти аргументы не | |
5667 экранировались. | |
5668 | |
5669 *) Исправление: улучшения тестирования правильности конфигурационного | |
5670 файла. | |
5671 | |
5672 | |
5673 Изменения в nginx 0.7.13 26.08.2008 | |
5674 | |
5675 *) Исправление: nginx не собирался на Linux и Solaris; ошибка появилась | |
5676 в 0.7.12. | |
5677 | |
5678 | |
5679 Изменения в nginx 0.7.12 26.08.2008 | |
5680 | |
5681 *) Добавление: директива server_name поддерживает пустое имя "". | |
5682 | |
5683 *) Добавление: директива gzip_disable поддерживает специальную маску | |
5684 msie6. | |
5685 | |
5686 *) Исправление: при использовании параметра max_fails=0 в upstream'е с | |
5687 несколькими серверами рабочий процесс выходил по сигналу SIGFPE. | |
5688 Спасибо Максиму Дунину. | |
5689 | |
5690 *) Исправление: при перенаправлении запроса с помощью директивы | |
5691 error_page терялось тело запроса. | |
5692 | |
5693 *) Исправление: при перенаправлении запроса с методом HEAD с помощью | |
5694 директивы error_page возвращался полный ответ. | |
5695 | |
5696 *) Исправление: метод $r->header_in() не возвращал значения строк | |
5697 "Host", "User-Agent", и "Connection" из заголовка запроса; ошибка | |
5698 появилась в 0.7.0. | |
5699 | |
5700 | |
5701 Изменения в nginx 0.7.11 18.08.2008 | |
5702 | |
5703 *) Изменение: теперь ngx_http_charset_module по умолчанию не работает | |
5704 MIME-типом text/css. | |
5705 | |
5706 *) Добавление: теперь nginx возвращает код 405 для метода POST при | |
5707 запросе статического файла, только если файл существует. | |
5708 | |
5709 *) Добавление: директива proxy_ssl_session_reuse. | |
5710 | |
5711 *) Исправление: после перенаправления запроса с помощью | |
5712 "X-Accel-Redirect" директива proxy_pass без URI могла использовать | |
5713 оригинальный запрос. | |
5714 | |
5715 *) Исправление: если у каталога были права доступа только на поиск | |
5716 файлов и первый индексный файл отсутствовал, то nginx возвращал | |
5717 ошибку 500. | |
5718 | |
5719 *) Исправление: ошибок во вложенных location'ах; ошибки появились в | |
5720 0.7.1. | |
5721 | |
5722 | |
5723 Изменения в nginx 0.7.10 13.08.2008 | |
5724 | |
5725 *) Исправление: ошибок в директивах addition_types, charset_types, | |
5726 gzip_types, ssi_types, sub_filter_types и xslt_types; ошибки | |
5727 появились в 0.7.9. | |
5728 | |
5729 *) Исправление: рекурсивной error_page для 500 ошибки. | |
5730 | |
5731 *) Исправление: теперь модуль ngx_http_realip_module устанавливает адрес | |
5732 не для всего keepalive соединения, а для каждого запроса по этому | |
5733 соединению. | |
5734 | |
5735 | |
5736 Изменения в nginx 0.7.9 12.08.2008 | |
5737 | |
5738 *) Изменение: теперь ngx_http_charset_module по умолчанию работает со | |
5739 следующими MIME-типами: text/html, text/css, text/xml, text/plain, | |
5740 text/vnd.wap.wml, application/x-javascript и application/rss+xml. | |
5741 | |
5742 *) Добавление: директивы charset_types и addition_types. | |
5743 | |
5744 *) Добавление: теперь директивы gzip_types, ssi_types и sub_filter_types | |
5745 используют хэш. | |
5746 | |
5747 *) Добавление: модуль ngx_cpp_test_module. | |
5748 | |
5749 *) Добавление: директива expires поддерживает суточное время. | |
5750 | |
5751 *) Добавление: улучшения и исправления в модуле ngx_http_xslt_module. | |
5752 Спасибо Денису Латыпову и Максиму Дунину. | |
5753 | |
5754 *) Исправление: директива log_not_found не работала при поиске индексных | |
5755 файлов. | |
5756 | |
5757 *) Исправление: HTTPS-соединения могли зависнуть, если использовались | |
5758 методы kqueue, epoll, rtsig или eventport; ошибка появилась в 0.7.7. | |
5759 | |
5760 *) Исправление: если в директивах server_name, valid_referers и map | |
5761 использовалась маска вида "*.domain.tld" и при этом полное имя вида | |
5762 "domain.tld" не было описано, то это имя попадало под маску; ошибка | |
5763 появилась в 0.3.18. | |
5764 | |
5765 | |
5766 Изменения в nginx 0.7.8 04.08.2008 | |
5767 | |
5768 *) Добавление: модуль ngx_http_xslt_module. | |
5769 | |
5770 *) Добавление: переменные "$arg_...". | |
5771 | |
5772 *) Добавление: поддержка directio в Solaris. | |
5773 Спасибо Ivan Debnar. | |
5774 | |
5775 *) Исправление: теперь, если FastCGI-сервер присылает строку "Location" | |
5776 в заголовке ответа без строки статуса, то nginx использует код | |
5777 статуса 302. | |
5778 Спасибо Максиму Дунину. | |
5779 | |
5780 | |
5781 Изменения в nginx 0.7.7 30.07.2008 | |
5782 | |
5783 *) Изменение: теперь ошибка EAGAIN при вызове connect() не считается | |
5784 временной. | |
5785 | |
5786 *) Изменение: значением переменной $ssl_client_cert теперь является | |
5787 сертификат, перед каждой строкой которого, кроме первой, вставляется | |
5788 символ табуляции; неизменённый сертификат доступен через переменную | |
5789 $ssl_client_raw_cert. | |
5790 | |
5791 *) Добавление: параметр ask директивы ssl_verify_client. | |
5792 | |
5793 *) Добавление: улучшения в обработке byte-range. | |
5794 Спасибо Максиму Дунину. | |
5795 | |
5796 *) Добавление: директива directio. | |
5797 Спасибо Jiang Hong. | |
5798 | |
5799 *) Добавление: поддержка sendfile() в MacOSX 10.5. | |
5800 | |
5801 *) Исправление: в MacOSX и Cygwin при проверке location'ов теперь | |
5802 делается сравнение без учёта регистра символов; однако, сравнение | |
5803 ограничено только однобайтными locale'ями. | |
5804 | |
5805 *) Исправление: соединения почтового прокси-сервера зависали в режиме | |
5806 SSL, если использовались методы select, poll или /dev/poll. | |
5807 | |
5808 *) Исправление: ошибки при использовании кодировки UTF-8 в | |
5809 ngx_http_autoindex_module. | |
5810 | |
5811 | |
5812 Изменения в nginx 0.7.6 07.07.2008 | |
5813 | |
5814 *) Исправление: теперь при использовании переменных в директиве | |
5815 access_log всегда проверяется существовании root'а для запроса. | |
5816 | |
5817 *) Исправление: модуль ngx_http_flv_module не поддерживал несколько | |
5818 значений в аргументах запроса. | |
5819 | |
5820 | |
5821 Изменения в nginx 0.7.5 01.07.2008 | |
5822 | |
5823 *) Исправления в поддержке переменных в директиве access_log; ошибки | |
5824 появились в 0.7.4. | |
5825 | |
5826 *) Исправление: nginx не собирался с параметром | |
5827 --without-http_gzip_module; ошибка появилась в 0.7.3. | |
5828 Спасибо Кириллу Коринскому. | |
5829 | |
5830 *) Исправление: при совместном использовании sub_filter и SSI ответы | |
5831 могли передаваться неверно. | |
5832 | |
5833 | |
5834 Изменения в nginx 0.7.4 30.06.2008 | |
5835 | |
5836 *) Добавление: директива access_log поддерживает переменные. | |
5837 | |
5838 *) Добавление: директива open_log_file_cache. | |
5839 | |
5840 *) Добавление: ключ -g. | |
5841 | |
5842 *) Добавление: поддержка строки "Expect" в заголовке запроса. | |
5843 | |
5844 *) Исправление: большие включения в SSI могли передавались не полностью. | |
5845 | |
5846 | |
5847 Изменения в nginx 0.7.3 23.06.2008 | |
5848 | |
5849 *) Изменение: MIME-тип для расширения rss изменён на | |
5850 "application/rss+xml". | |
5851 | |
5852 *) Изменение: теперь директива "gzip_vary on" выдаёт строку | |
5853 "Vary: Accept-Encoding" в заголовке ответа и для несжатых ответов. | |
5854 | |
5855 *) Добавление: теперь при использовании протокола "https://" в директиве | |
5856 rewrite автоматически делается редирект. | |
5857 | |
5858 *) Исправление: директива proxy_pass не работала с протоколом HTTPS; | |
5859 ошибка появилась в 0.6.9. | |
5860 | |
5861 | |
5862 Изменения в nginx 0.7.2 16.06.2008 | |
5863 | |
5864 *) Добавление: теперь nginx поддерживает шифры с обменом EDH-ключами. | |
5865 | |
5866 *) Добавление: директива ssl_dhparam. | |
5867 | |
5868 *) Добавление: переменная $ssl_client_cert. | |
5869 Спасибо Manlio Perillo. | |
5870 | |
5871 *) Исправление: после изменения URI с помощью директивы rewrite nginx не | |
5872 искал новый location; ошибка появилась в 0.7.1. | |
5873 Спасибо Максиму Дунину. | |
5874 | |
5875 *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась | |
5876 в 0.7.1. | |
5877 | |
5878 *) Исправление: при редиректе запроса к каталогу с добавлением слэша | |
5879 nginx не добавлял аргументы из оригинального запроса. | |
5880 | |
5881 | |
5882 Изменения в nginx 0.7.1 26.05.2008 | |
5883 | |
5884 *) Изменение: теперь поиск location'а делается с помощью дерева. | |
5885 | |
5886 *) Изменение: директива optimize_server_names упразднена в связи с | |
5887 появлением директивы server_name_in_redirect. | |
5888 | |
5889 *) Изменение: некоторые давно устаревшие директивы больше не | |
5890 поддерживаются. | |
5891 | |
5892 *) Изменение: параметр "none" в директиве ssl_session_cache; теперь этот | |
5893 параметр используется по умолчанию. | |
5894 Спасибо Rob Mueller. | |
5895 | |
5896 *) Исправление: рабочие процессы могли не реагировать на сигналы | |
5897 переконфигурации и ротации логов. | |
5898 | |
5899 *) Исправление: nginx не собирался на последних Fedora 9 Linux. | |
5900 Спасибо Roxis. | |
5901 | |
5902 | |
5903 Изменения в nginx 0.7.0 19.05.2008 | |
5904 | |
5905 *) Изменение: теперь символы 0x00-0x1F, '"' и '\' в access_log | |
5906 записываются в виде \xXX. | |
5907 Спасибо Максиму Дунину. | |
5908 | |
5909 *) Изменение: теперь nginx разрешает несколько строк "Host" в заголовке | |
5910 запроса. | |
5911 | |
5912 *) Добавление: директива expires поддерживает флаг modified. | |
5913 | |
5914 *) Добавление: переменные $uid_got и $uid_set можно использовать на | |
5915 любой стадии обработки запроса. | |
5916 | |
5917 *) Добавление: переменная $hostname. | |
5918 Спасибо Андрею Нигматулину. | |
5919 | |
5920 *) Добавление: поддержка DESTDIR. | |
5921 Спасибо Todd A. Fisher и Andras Voroskoi. | |
5922 | |
5923 *) Исправление: при использовании keepalive на Linux в рабочем процессе | |
5924 мог произойти segmentation fault. | |
5925 | |
5926 | |
5927 Изменения в nginx 0.6.31 12.05.2008 | |
5928 | |
5929 *) Исправление: nginx не обрабатывал ответ FastCGI-сервера, если строка | |
5930 заголовка ответа была в конце записи FastCGI; ошибка появилась в | |
5931 0.6.2. | |
5932 Спасибо Сергею Серову. | |
5933 | |
5934 *) Исправление: при удалении файла и использовании директивы | |
5935 open_file_cache_errors off в рабочем процессе мог произойти | |
5936 segmentation fault. | |
5937 | |
5938 | |
5939 Изменения в nginx 0.6.30 29.04.2008 | |
5940 | |
5941 *) Изменение: теперь, если маске, заданной в директиве include, не | |
5942 соответствует ни один файл, то nginx не выдаёт ошибку. | |
5943 | |
5944 *) Добавление: теперь время в директивах можно задавать без пробела, | |
5945 например, "1h50m". | |
5946 | |
5947 *) Исправление: утечек памяти, если директива ssl_verify_client имела | |
5948 значение on. | |
5949 Спасибо Chavelle Vincent. | |
5950 | |
5951 *) Исправление: директива sub_filter могла вставлять заменяемый текст в | |
5952 вывод. | |
5953 | |
5954 *) Исправление: директива error_page не воспринимала параметры в | |
5955 перенаправляемом URI. | |
5956 | |
5957 *) Исправление: теперь при сборке с Cygwin nginx всегда открывает файлы | |
5958 в бинарном режиме. | |
5959 | |
5960 *) Исправление: nginx не собирался под OpenBSD; ошибка появилась в | |
5961 0.6.15. | |
5962 | |
5963 | |
5964 Изменения в nginx 0.6.29 18.03.2008 | |
5965 | |
5966 *) Добавление: модуль ngx_google_perftools_module. | |
5967 | |
5968 *) Исправление: модуль ngx_http_perl_module не собирался на 64-битных | |
5969 платформах; ошибка появилась в 0.6.27. | |
5970 | |
5971 | |
5972 Изменения в nginx 0.6.28 13.03.2008 | |
5973 | |
5974 *) Исправление: метод rtsig не собирался; ошибка появилась в 0.6.27. | |
5975 | |
5976 | |
5977 Изменения в nginx 0.6.27 12.03.2008 | |
5978 | |
5979 *) Изменение: теперь на Linux 2.6.18+ по умолчанию не собирается метод | |
5980 rtsig. | |
5981 | |
5982 *) Изменение: теперь при перенаправлении запроса в именованный location | |
5983 с помощью директивы error_page метод запроса не изменяется. | |
5984 | |
5985 *) Добавление: директивы resolver и resolver_timeout в SMTP | |
5986 прокси-сервере. | |
5987 | |
5988 *) Добавление: директива post_action поддерживает именованные | |
5989 location'ы. | |
5990 | |
5991 *) Исправление: при перенаправлении запроса из location'а c обработчиком | |
5992 proxy, FastCGI или memcached в именованный location со статическим | |
5993 обработчиком в рабочем процессе происходил segmentation fault. | |
5994 | |
5995 *) Исправление: браузеры не повторяли SSL handshake, если при первом | |
5996 handshake не оказалось правильного клиентского сертификата. | |
5997 Спасибо Александру Инюхину. | |
5998 | |
5999 *) Исправление: при перенаправлении ошибок 495-497 с помощью директивы | |
6000 error_page без изменения кода ошибки nginx пытался выделить очень | |
6001 много памяти. | |
6002 | |
6003 *) Исправление: утечки памяти в долгоживущих небуфферизированных | |
6004 соединениях. | |
6005 | |
6006 *) Исправление: утечки памяти в resolver'е. | |
6007 | |
6008 *) Исправление: при перенаправлении запроса из location'а c обработчиком | |
6009 proxy в другой location с обработчиком proxy в рабочем процессе | |
6010 происходил segmentation fault. | |
6011 | |
6012 *) Исправление: ошибки в кэшировании переменных $proxy_host и | |
6013 $proxy_port. | |
6014 Спасибо Сергею Боченкову. | |
6015 | |
6016 *) Исправление: директива proxy_pass с переменными использовала порт, | |
6017 описанной в другой директиве proxy_pass без переменных, но с таким же | |
6018 именем хоста. | |
6019 Спасибо Сергею Боченкову. | |
6020 | |
6021 *) Исправление: во время переконфигурации на некоторых 64-битном | |
6022 платформах в лог записывался alert "sendmsg() failed (9: Bad file | |
6023 descriptor)". | |
6024 | |
6025 *) Исправление: при повторном использовании в SSI пустого block'а в | |
6026 качестве заглушки в рабочем процессе происходил segmentation fault. | |
6027 | |
6028 *) Исправление: ошибки при копировании части URI, содержащего | |
6029 экранированные символы, в аргументы. | |
6030 | |
6031 | |
6032 Изменения в nginx 0.6.26 11.02.2008 | |
6033 | |
6034 *) Исправление: директивы proxy_store и fastcgi_store не проверяли длину | |
6035 ответа. | |
6036 | |
6037 *) Исправление: при использовании большого значения в директиве expires | |
6038 в рабочем процессе происходил segmentation fault. | |
6039 Спасибо Joaquin Cuenca Abela. | |
6040 | |
6041 *) Исправление: nginx неверно определял длину строки кэша на Pentium 4. | |
6042 Спасибо Геннадию Махомеду. | |
6043 | |
6044 *) Исправление: в проксированных подзапросах и подзапросах к | |
6045 FastCGI-серверу вместо метода GET использовался оригинальный метод | |
6046 клиента. | |
6047 | |
6048 *) Исправление: утечки сокетов в режиме HTTPS при использовании | |
6049 отложенного accept'а. | |
6050 Спасибо Ben Maurer. | |
6051 | |
6052 *) Исправление: nginx выдавал ошибочное сообщение "SSL_shutdown() failed | |
6053 (SSL: )"; ошибка появилась в 0.6.23. | |
6054 | |
6055 *) Исправление: при использовании HTTPS запросы могли завершаться с | |
6056 ошибкой "bad write retry"; ошибка появилась в 0.6.23. | |
6057 | |
6058 | |
6059 Изменения в nginx 0.6.25 08.01.2008 | |
6060 | |
6061 *) Изменение: вместо специального параметра "*" в директиве server_name | |
6062 теперь используется директива server_name_in_redirect. | |
6063 | |
6064 *) Изменение: в качестве основного имени в директиве server_name теперь | |
6065 можно использовать имена с масками и регулярными выражениями. | |
6066 | |
6067 *) Изменение: директива satisfy_any заменена директивой satisfy. | |
6068 | |
6069 *) Изменение: после переконфигурации старые рабочие процесс могли сильно | |
6070 нагружать процессор при запуске под Linux OpenVZ. | |
6071 | |
6072 *) Добавление: директива min_delete_depth. | |
6073 | |
6074 *) Исправление: методы COPY и MOVE не работали с одиночными файлами. | |
6075 | |
6076 *) Исправление: модуль ngx_http_gzip_static_module не позволял работать | |
6077 модулю ngx_http_dav_module; ошибка появилась в 0.6.23. | |
6078 | |
6079 *) Исправление: утечки сокетов в режиме HTTPS при использовании | |
6080 отложенного accept'а. | |
6081 Спасибо Ben Maurer. | |
6082 | |
6083 *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась | |
6084 в 0.6.23. | |
6085 | |
6086 | |
6087 Изменения в nginx 0.6.24 27.12.2007 | |
6088 | |
6089 *) Исправление: при использовании HTTPS в рабочем процессе мог произойти | |
6090 segmentation fault; ошибка появилась в 0.6.23. | |
6091 | |
6092 | |
6093 Изменения в nginx 0.6.23 27.12.2007 | |
6094 | |
6095 *) Изменение: параметр "off" в директиве ssl_session_cache; теперь этот | |
6096 параметр используется по умолчанию. | |
6097 | |
6098 *) Изменение: директива open_file_cache_retest переименована в | |
6099 open_file_cache_valid. | |
6100 | |
6101 *) Добавление: директива open_file_cache_min_uses. | |
6102 | |
6103 *) Добавление: модуль ngx_http_gzip_static_module. | |
6104 | |
6105 *) Добавление: директива gzip_disable. | |
6106 | |
6107 *) Добавление: директиву memcached_pass можно использовать внутри блока | |
6108 if. | |
6109 | |
6110 *) Исправление: если внутри одного location'а использовались директивы | |
6111 "memcached_pass" и "if", то в рабочем процессе происходил | |
6112 segmentation fault. | |
6113 | |
6114 *) Исправление: если при использовании директивы satisfy_any on" были | |
6115 заданы директивы не всех модулей доступа, то заданные директивы не | |
6116 проверялись. | |
6117 | |
6118 *) Исправление: параметры, заданные регулярным выражением в директиве | |
6119 valid_referers, не наследовалась с предыдущего уровня. | |
6120 | |
6121 *) Исправление: директива post_action не работала, если запрос | |
6122 завершался с кодом 499. | |
6123 | |
6124 *) Исправление: оптимизация использования 16K буфера для SSL-соединения. | |
6125 Спасибо Ben Maurer. | |
6126 | |
6127 *) Исправление: STARTTLS в режиме SMTP не работал. | |
6128 Спасибо Олегу Мотиенко. | |
6129 | |
6130 *) Исправление: при использовании HTTPS запросы могли завершаться с | |
6131 ошибкой "bad write retry"; ошибка появилась в 0.5.13. | |
6132 | |
6133 | |
6134 Изменения в nginx 0.6.22 19.12.2007 | |
6135 | |
6136 *) Изменение: теперь все методы модуля ngx_http_perl_module возвращают | |
6137 значения, скопированные в память, выделенную perl'ом. | |
6138 | |
6139 *) Исправление: если nginx был собран с модулем ngx_http_perl_module, | |
6140 использовался perl до версии 5.8.6 и perl поддерживал потоки, то во | |
6141 время переконфигурации основной процесс аварийно выходил; ошибка | |
6142 появилась в 0.5.9. | |
6143 Спасибо Борису Жмурову. | |
6144 | |
6145 *) Исправление: в методы модуля ngx_http_perl_module могли передаваться | |
6146 неверные результаты выделения в регулярных выражениях. | |
6147 | |
6148 *) Исправление: если метод $r->has_request_body() вызывался для запроса, | |
6149 у которого небольшое тело запроса было уже полностью получено, то в | |
6150 рабочем процессе происходил segmentation fault. | |
6151 | |
6152 *) Исправление: large_client_header_buffers не освобождались перед | |
6153 переходом в состояние keep-alive. | |
6154 Спасибо Олександру Штепе. | |
6155 | |
6156 *) Исправление: в переменной $upstream_addr не записывался последний | |
6157 адрес; ошибка появилась в 0.6.18. | |
6158 | |
6159 *) Исправление: директива fastcgi_catch_stderr не возвращала ошибку; | |
6160 теперь она возвращает ошибку 502, которую можно направить на | |
6161 следующий сервер с помощью "fastcgi_next_upstream invalid_header". | |
6162 | |
6163 *) Исправление: при использовании директивы fastcgi_catch_stderr в | |
6164 основном процессе происходил segmentation fault; ошибка появилась в | |
6165 0.6.10. | |
6166 Спасибо Manlio Perillo. | |
6167 | |
6168 | |
6169 Изменения в nginx 0.6.21 03.12.2007 | |
6170 | |
6171 *) Изменение: если в значениях переменных директивы proxy_pass | |
6172 используются только IP-адреса, то указывать resolver не нужно. | |
6173 | |
6174 *) Исправление: при использовании директивы proxy_pass c URI-частью в | |
6175 рабочем процессе мог произойти segmentation fault; ошибка появилась в | |
6176 0.6.19. | |
6177 | |
6178 *) Исправление: если resolver использовался на платформах, не | |
6179 поддерживающих метод kqueue, то nginx выдавал alert "name is out of | |
6180 response". | |
6181 Спасибо Андрею Нигматулину. | |
6182 | |
6183 *) Исправление: При использовании переменной $server_protocol в | |
6184 FastCGI-параметрах и запросе, длина которого была близка к значению | |
6185 директивы client_header_buffer_size, nginx выдавал alert "fastcgi: | |
6186 the request record is too big". | |
6187 | |
6188 *) Исправление: при обычном запросе версии HTTP/0.9 к HTTPS серверу | |
6189 nginx возвращал обычный ответ. | |
6190 | |
6191 | |
6192 Изменения в nginx 0.6.20 28.11.2007 | |
6193 | |
6194 *) Исправление: при использовании директивы proxy_pass c URI-частью в | |
6195 рабочем процессе мог произойти segmentation fault; ошибка появилась в | |
6196 0.6.19. | |
6197 | |
6198 | |
6199 Изменения в nginx 0.6.19 27.11.2007 | |
6200 | |
6201 *) Исправление: версия 0.6.18 не собиралась. | |
6202 | |
6203 | |
6204 Изменения в nginx 0.6.18 27.11.2007 | |
6205 | |
6206 *) Изменение: теперь модуль ngx_http_userid_module в поле куки с номером | |
6207 процесса добавляет микросекунды на время старта. | |
6208 | |
6209 *) Изменение: в error_log теперь записывается полная строка запроса | |
6210 вместо только URI. | |
6211 | |
6212 *) Добавление: директива proxy_pass поддерживает переменные. | |
6213 | |
6214 *) Добавление: директивы resolver и resolver_timeout. | |
6215 | |
6216 *) Добавление: теперь директива "add_header last-modified ''" удаляет в | |
6217 заголовке ответа строку "Last-Modified". | |
6218 | |
6219 *) Исправление: директива limit_rate не позволяла передавать на полной | |
6220 скорости, даже если был указан очень большой лимит. | |
6221 | |
6222 | |
6223 Изменения в nginx 0.6.17 15.11.2007 | |
6224 | |
6225 *) Добавление: поддержка строки "If-Range" в заголовке запроса. | |
6226 Спасибо Александру Инюхину. | |
6227 | |
6228 *) Исправление: при использовании директивы msie_refresh повторно | |
6229 экранировались уже экранированные символы; ошибка появилась в 0.6.4. | |
6230 | |
6231 *) Исправление: директива autoindex не работала при использовании "alias | |
6232 /". | |
6233 | |
6234 *) Исправление: при использовании подзапросов в рабочем процессе мог | |
6235 произойти segmentation fault. | |
6236 | |
6237 *) Исправление: при использовании SSL и gzip большие ответы могли | |
6238 передаваться не полностью. | |
6239 | |
6240 *) Исправление: если ответ проксированного сервера был версии HTTP/0.9, | |
6241 то переменная $status была равна 0. | |
6242 | |
6243 | |
6244 Изменения в nginx 0.6.16 29.10.2007 | |
6245 | |
6246 *) Изменение: теперь на Linux используется uname(2) вместо procfs. | |
6247 Спасибо Илье Новикову. | |
6248 | |
6249 *) Исправление: если в директиве error_page использовался символ "?", то | |
6250 он экранировался при проксировании запроса; ошибка появилась в | |
6251 0.6.11. | |
6252 | |
6253 *) Исправление: совместимость с mget. | |
6254 | |
6255 | |
6256 Изменения в nginx 0.6.15 22.10.2007 | |
6257 | |
6258 *) Добавление: совместимость с Cygwin. | |
6259 Спасибо Владимиру Кутакову. | |
6260 | |
6261 *) Добавление: директива merge_slashes. | |
6262 | |
6263 *) Добавление: директива gzip_vary. | |
6264 | |
6265 *) Добавление: директива server_tokens. | |
6266 | |
6267 *) Исправление: nginx не раскодировал URI в команде SSI include. | |
6268 | |
6269 *) Исправление: при использовании переменной в директивах charset или | |
6270 source_charset на старте или во время переконфигурации происходил | |
6271 segmentation fault, | |
6272 | |
6273 *) Исправление: nginx возвращал ошибку 400 на запросы вида | |
6274 "GET http://www.domain.com HTTP/1.0". | |
6275 Спасибо James Oakley. | |
6276 | |
6277 *) Исправление: после перенаправления запроса с телом запроса с помощью | |
6278 директивы error_page nginx пытался снова прочитать тело запроса; | |
6279 ошибка появилась в 0.6.7. | |
6280 | |
6281 *) Исправление: в рабочем процессе происходил segmentation fault, если у | |
6282 сервера, обрабатывающему запрос, не был явно определён server_name; | |
6283 ошибка появилась в 0.6.7. | |
6284 | |
6285 | |
6286 Изменения в nginx 0.6.14 15.10.2007 | |
6287 | |
6288 *) Изменение: теперь по умолчанию команда SSI echo использует | |
6289 кодирование entity. | |
6290 | |
6291 *) Добавление: параметр encoding в команде SSI echo. | |
6292 | |
6293 *) Добавление: директиву access_log можно использовать внутри блока | |
6294 limit_except. | |
6295 | |
6296 *) Исправление: если все сервера апстрима оказывались недоступными, то | |
6297 до восстановления работоспособности у всех серверов вес становился | |
6298 равным одному; ошибка появилась в 0.6.6. | |
6299 | |
6300 *) Исправление: при использовании переменных $date_local и $date_gmt вне | |
6301 модуля ngx_http_ssi_filter_module в рабочем процессе происходил | |
6302 segmentation fault. | |
6303 | |
6304 *) Исправление: при использовании включённом отладочном логе в рабочем | |
6305 процессе мог произойти segmentation fault. | |
6306 Спасибо Андрею Нигматулину. | |
6307 | |
6308 *) Исправление: ngx_http_memcached_module не устанавливал | |
6309 $upstream_response_time. | |
6310 Спасибо Максиму Дунину. | |
6311 | |
6312 *) Исправление: рабочий процесс мог зациклиться при использовании | |
6313 memcached. | |
6314 | |
6315 *) Исправление: nginx распознавал параметры "close" и "keep-alive" в | |
6316 строке "Connection" в заголовке запроса только, если они были в | |
6317 нижнем регистре; ошибка появилась в 0.6.11. | |
6318 | |
6319 *) Исправление: sub_filter не работал с пустой строкой замены. | |
6320 | |
6321 *) Исправление: в парсинге sub_filter. | |
6322 | |
6323 | |
6324 Изменения в nginx 0.6.13 24.09.2007 | |
6325 | |
6326 *) Исправление: nginx не закрывал файл каталога для запроса HEAD, если | |
6327 использовался autoindex | |
6328 Спасибо Arkadiusz Patyk. | |
6329 | |
6330 | |
6331 Изменения в nginx 0.6.12 21.09.2007 | |
6332 | |
6333 *) Изменение: почтовый прокси-сервер разделён на три модуля: pop3, imap | |
6334 и smtp. | |
6335 | |
6336 *) Добавление: параметры конфигурации --without-mail_pop3_module, | |
6337 --without-mail_imap_module и --without-mail_smtp_module. | |
6338 | |
6339 *) Добавление: директивы smtp_greeting_delay и smtp_client_buffer модуля | |
6340 ngx_mail_smtp_module. | |
6341 | |
6342 *) Исправление: wildcard в конце имени сервера не работали; ошибка | |
6343 появилась в 0.6.9. | |
6344 | |
6345 *) Исправление: при использовании разделяемой библиотеки PCRE, | |
6346 расположенной в нестандартном месте, nginx не запускался на Solaris. | |
6347 | |
6348 *) Исправление: директивы proxy_hide_header и fastcgi_hide_header не | |
6349 скрывали строки заголовка ответа с именем больше 32 символов. | |
6350 Спасибо Manlio Perillo. | |
6351 | |
6352 | |
6353 Изменения в nginx 0.6.11 11.09.2007 | |
6354 | |
6355 *) Исправление: счётчик активных соединений всегда рос при использовании | |
6356 почтового прокси-сервера. | |
6357 | |
6358 *) Исправление: если бэкенд возвращал только заголовок ответа при | |
6359 небуферизированном проксировании, то nginx закрывал соединение с | |
6360 бэкендом по таймауту. | |
6361 | |
6362 *) Исправление: nginx не поддерживал несколько строк "Connection" в | |
6363 заголовке запроса. | |
6364 | |
6365 *) Исправление: если в сервере апстрима был задан max_fails, то после | |
6366 первой же неудачной попытки вес сервера навсегда становился равным | |
6367 одному; ошибка появилась в 0.6.6. | |
6368 | |
6369 | |
6370 Изменения в nginx 0.6.10 03.09.2007 | |
6371 | |
6372 *) Добавление: директивы open_file_cache, open_file_cache_retest и | |
6373 open_file_cache_errors. | |
6374 | |
6375 *) Исправление: утечки сокетов; ошибка появилась в 0.6.7. | |
6376 | |
6377 *) Исправление: В строку заголовка ответа "Content-Type", указанную в | |
6378 методе $r->send_http_header(), не добавлялась кодировка, указанная в | |
6379 директиве charset. | |
6380 | |
6381 *) Исправление: при использовании метода /dev/poll в рабочем процессе | |
6382 мог произойти segmentation fault. | |
6383 | |
6384 | |
6385 Изменения в nginx 0.6.9 28.08.2007 | |
6386 | |
6387 *) Исправление: рабочий процесс мог зациклиться при использовании | |
6388 протокола HTTPS; ошибка появилась в 0.6.7. | |
6389 | |
6390 *) Исправление: если сервер слушал на двух адресах или портах, то nginx | |
6391 не запускался при использовании wildcard в конце имени сервера. | |
6392 | |
6393 *) Исправление: директива ip_hash могла неверно помечать сервера как | |
6394 нерабочие. | |
6395 | |
6396 *) Исправление: nginx не собирался на amd64; ошибка появилась в 0.6.8. | |
6397 | |
6398 | |
6399 Изменения в nginx 0.6.8 20.08.2007 | |
6400 | |
6401 *) Изменение: теперь nginx пытается установить директивы | |
6402 worker_priority, worker_rlimit_nofile, worker_rlimit_core, | |
6403 worker_rlimit_sigpending без привилегий root'а. | |
6404 | |
6405 *) Изменение: теперь nginx экранирует символы пробела и "%" при передаче | |
6406 запроса серверу аутентификации почтового прокси-сервера. | |
6407 | |
6408 *) Изменение: теперь nginx экранирует символ "%" в переменной | |
6409 $memcached_key. | |
6410 | |
6411 *) Исправление: при указании относительного пути к конфигурационному | |
6412 файлу в качестве параметра ключа -c nginx определял путь относительно | |
6413 конфигурационного префикса; ошибка появилась в 0.6.6. | |
6414 | |
6415 *) Исправление: nginx не работал на FreeBSD/sparc64. | |
6416 | |
6417 | |
6418 Изменения в nginx 0.6.7 15.08.2007 | |
6419 | |
6420 *) Изменение: теперь пути, указанные в директивах include, | |
6421 auth_basic_user_file, perl_modules, ssl_certificate, | |
6422 ssl_certificate_key и ssl_client_certificate, определяются | |
6423 относительно каталога конфигурационного файла nginx.conf, а не | |
6424 относительно префикса. | |
6425 | |
6426 *) Изменение: параметр --sysconfdir=PATH в configure упразднён. | |
6427 | |
6428 *) Изменение: для обновления на лету версий 0.1.x создан специальный | |
6429 сценарий make upgrade1. | |
6430 | |
6431 *) Добавление: директивы server_name и valid_referers поддерживают | |
6432 регулярные выражения. | |
6433 | |
6434 *) Добавление: директива server в блоке upstream поддерживает параметр | |
6435 backup. | |
6436 | |
6437 *) Добавление: модуль ngx_http_perl_module поддерживает метод | |
6438 $r->discard_request_body. | |
6439 | |
6440 *) Добавление: директива "add_header Last-Modified ..." меняет строку | |
6441 "Last-Modified" в заголовке ответа. | |
6442 | |
6443 *) Исправление: если на запрос с телом возвращался ответ с кодом HTTP | |
6444 отличным от 200, и после этого запроса соединение переходило в | |
6445 состояние keep-alive, то на следующий запрос nginx возвращал 400. | |
6446 | |
6447 *) Исправление: если в директиве auth_http был задан неправильный адрес, | |
6448 то в рабочем процессе происходил segmentation fault. | |
6449 | |
6450 *) Исправление: теперь по умолчанию nginx использует значение 511 для | |
6451 listen backlog на всех платформах, кроме FreeBSD. | |
6452 Спасибо Jiang Hong. | |
6453 | |
6454 *) Исправление: рабочий процесс мог зациклиться, если server в блоке | |
6455 upstream был помечен как down; ошибка появилась в 0.6.6. | |
6456 | |
6457 *) Исправление: sendfilev() в Solaris теперь не используется при | |
6458 передаче тела запроса FastCGI-серверу через unix domain сокет. | |
6459 | |
6460 | |
6461 Изменения в nginx 0.6.6 30.07.2007 | |
6462 | |
6463 *) Добавление: параметр --sysconfdir=PATH в configure. | |
6464 | |
6465 *) Добавление: именованные location'ы. | |
6466 | |
6467 *) Добавление: переменную $args можно устанавливать с помощью set. | |
6468 | |
6469 *) Добавление: переменная $is_args. | |
6470 | |
6471 *) Исправление: равномерное распределение запросов к апстримам с | |
6472 большими весами. | |
6473 | |
6474 *) Исправление: если клиент в почтовом прокси-сервере закрывал | |
6475 соединение, то nginx мог не закрывать соединение с бэкендом. | |
6476 | |
6477 *) Исправление: при использовании одного хоста в качестве бэкендов для | |
6478 протоколов HTTP и HTTPS без явного указания портов, nginx использовал | |
6479 только один порт - 80 или 443. | |
6480 | |
6481 *) Исправление: nginx не собирался на Solaris/amd64 Sun Studio 11 и | |
6482 более ранними версиями; ошибка появилась в 0.6.4. | |
6483 | |
6484 | |
6485 Изменения в nginx 0.6.5 23.07.2007 | |
6486 | |
6487 *) Добавление: переменная $nginx_version. | |
6488 Спасибо Николаю Гречуху. | |
6489 | |
6490 *) Добавление: почтовый прокси-сервер поддерживает AUTHENTICATE в режиме | |
6491 IMAP. | |
6492 Спасибо Максиму Дунину. | |
6493 | |
6494 *) Добавление: почтовый прокси-сервер поддерживает STARTTLS в режиме | |
6495 SMTP. | |
6496 Спасибо Максиму Дунину. | |
6497 | |
6498 *) Исправление: теперь nginx экранирует пробел в переменной | |
6499 $memcached_key. | |
6500 | |
6501 *) Исправление: nginx неправильно собирался Sun Studio на Solaris/amd64. | |
6502 Спасибо Jiang Hong. | |
6503 | |
6504 *) Исправление: незначительных потенциальных ошибок. | |
6505 Спасибо Coverity's Scan. | |
6506 | |
6507 | |
6508 Изменения в nginx 0.6.4 17.07.2007 | |
6509 | |
6510 *) Безопасность: при использовании директивы msie_refresh был возможен | |
6511 XSS. | |
6512 Спасибо Максиму Богуку. | |
6513 | |
6514 *) Изменение: директивы proxy_store и fastcgi_store изменены. | |
6515 | |
6516 *) Добавление: директивы proxy_store_access и fastcgi_store_access. | |
6517 | |
6518 *) Исправление: nginx не работал на Solaris/sparc64, если был собран Sun | |
6519 Studio. | |
6520 Спасибо Андрею Нигматулину. | |
6521 | |
6522 *) Изменение: обход ошибки в Sun Studio 12. | |
6523 Спасибо Jiang Hong. | |
6524 | |
6525 | |
6526 Изменения в nginx 0.6.3 12.07.2007 | |
6527 | |
6528 *) Добавление: директивы proxy_store и fastcgi_store. | |
6529 | |
6530 *) Исправление: при использовании директивы auth_http_header в рабочем | |
6531 процессе мог произойти segmentation fault. | |
6532 Спасибо Максиму Дунину. | |
6533 | |
6534 *) Исправление: если использовался метод аутентификации CRAM-MD5, но он | |
6535 не был разрешён, то в рабочем процессе происходил segmentation fault. | |
6536 | |
6537 *) Исправление: при использовании протокола HTTPS в директиве proxy_pass | |
6538 в рабочем процессе мог произойти segmentation fault. | |
6539 | |
6540 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
6541 если использовался метод eventport. | |
6542 | |
6543 *) Исправление: директивы proxy_ignore_client_abort и | |
6544 fastcgi_ignore_client_abort не работали; ошибка появилась в 0.5.13. | |
6545 | |
6546 | |
6547 Изменения в nginx 0.6.2 09.07.2007 | |
6548 | |
6549 *) Исправление: если заголовок ответа был разделён в FastCGI-записях, то | |
6550 nginx передавал клиенту мусор в таких заголовках. | |
6551 | |
6552 | |
6553 Изменения в nginx 0.6.1 17.06.2007 | |
6554 | |
6555 *) Исправление: в парсинге SSI. | |
6556 | |
6557 *) Исправление: при использовании удалённого подзапроса в SSI | |
6558 последующий подзапрос локального файла мог отдаваться клиенту в | |
6559 неверном порядке. | |
6560 | |
6561 *) Исправление: большие включения в SSI, сохранённые во временные файлы, | |
6562 передавались не полностью. | |
6563 | |
6564 *) Исправление: значение perl'овой переменной $$ модуля | |
6565 ngx_http_perl_module было равно номеру главного процесса. | |
6566 | |
6567 | |
6568 Изменения в nginx 0.6.0 14.06.2007 | |
6569 | |
6570 *) Добавление: директивы "server_name", "map", and "valid_referers" | |
6571 поддерживают маски вида "www.example.*". | |
6572 | |
6573 | |
6574 Изменения в nginx 0.5.25 11.06.2007 | |
6575 | |
6576 *) Исправление: nginx не собирался с параметром | |
6577 --without-http_rewrite_module; ошибка появилась в 0.5.24. | |
6578 | |
6579 | |
6580 Изменения в nginx 0.5.24 06.06.2007 | |
6581 | |
6582 *) Безопасность: директива ssl_verify_client не работала, если запрос | |
6583 выполнялся по протоколу HTTP/0.9. | |
6584 | |
6585 *) Исправление: при использовании сжатия часть ответа могла передаваться | |
6586 несжатой; ошибка появилась в 0.5.23. | |
6587 | |
6588 | |
6589 Изменения в nginx 0.5.23 04.06.2007 | |
6590 | |
6591 *) Добавление: модуль ngx_http_ssl_module поддерживает расширение TLS | |
6592 Server Name Indication. | |
6593 | |
6594 *) Добавление: директива fastcgi_catch_stderr. | |
6595 Спасибо Николаю Гречуху, проект OWOX. | |
6596 | |
6597 *) Исправление: на Линуксе в основном процессе происходил segmentation | |
6598 fault, если два виртуальных сервера должны bind()ится к | |
6599 пересекающимся портам. | |
6600 | |
6601 *) Исправление: если nginx был собран с модулем ngx_http_perl_module и | |
6602 perl поддерживал потоки, то во время второй переконфигурации | |
6603 выдавались ошибки "panic: MUTEX_LOCK" и "perl_parse() failed". | |
6604 | |
6605 *) Исправление: в использовании протокола HTTPS в директиве proxy_pass. | |
6606 | |
6607 | |
6608 Изменения в nginx 0.5.22 29.05.2007 | |
6609 | |
6610 *) Исправление: большое тело запроса могло не передаваться бэкенду; | |
6611 ошибка появилась в 0.5.21. | |
6612 | |
6613 | |
6614 Изменения в nginx 0.5.21 28.05.2007 | |
6615 | |
6616 *) Исправление: если внутри сервера описано больше примерно десяти | |
6617 location'ов, то location'ы, заданные с помощью регулярного выражения, | |
6618 могли выполняться не в том, порядке, в каком они описаны. | |
6619 | |
6620 *) Исправление: на 64-битной платформе рабочий процесс мог зациклиться, | |
6621 если 33-тий по счёту или последующий бэкенд упал. | |
6622 Спасибо Антону Поварову. | |
6623 | |
6624 *) Исправление: при использовании библиотеки PCRE на Solaris/sparc64 мог | |
6625 произойти bus error. | |
6626 Спасибо Андрею Нигматулину. | |
6627 | |
6628 *) Исправление: в использовании протокола HTTPS в директиве proxy_pass. | |
6629 | |
6630 | |
6631 Изменения в nginx 0.5.20 07.05.2007 | |
6632 | |
6633 *) Добавление: директива sendfile_max_chunk. | |
6634 | |
6635 *) Добавление: переменные "$http_...", "$sent_http_..." и | |
6636 "$upstream_http_..." можно менять директивой set. | |
6637 | |
6638 *) Исправление: при использовании SSI-команды 'if expr="$var = /"' в | |
6639 рабочем процессе мог произойти segmentation fault. | |
6640 | |
6641 *) Исправление: завершающая строка multipart range ответа передавалась | |
6642 неверно. | |
6643 Спасибо Evan Miller. | |
6644 | |
6645 *) Исправление: nginx не работал на Solaris/sparc64, если был собран Sun | |
6646 Studio. | |
6647 Спасибо Андрею Нигматулину. | |
6648 | |
6649 *) Исправление: модуль ngx_http_perl_module не собирался make в Solaris. | |
6650 Спасибо Андрею Нигматулину. | |
6651 | |
6652 | |
6653 Изменения в nginx 0.5.19 24.04.2007 | |
6654 | |
6655 *) Изменение: значение переменной $request_time теперь записывается с | |
6656 точностью до миллисекунд. | |
6657 | |
6658 *) Изменение: метод $r->rflush в модуле ngx_http_perl_module | |
6659 переименован в $r->flush. | |
6660 | |
6661 *) Добавление: переменная $upstream_addr. | |
6662 | |
6663 *) Добавление: директивы proxy_headers_hash_max_size и | |
6664 proxy_headers_hash_bucket_size. | |
6665 Спасибо Володымыру Костырко. | |
6666 | |
6667 *) Исправление: при использовании sendfile и limit_rate на 64-битных | |
6668 платформах нельзя было передавать файлы больше 2G. | |
6669 | |
6670 *) Исправление: при использовании sendfile на 64-битном Linux нельзя | |
6671 было передавать файлы больше 2G. | |
6672 | |
6673 | |
6674 Изменения в nginx 0.5.18 19.04.2007 | |
6675 | |
6676 *) Добавление: модуль ngx_http_sub_filter_module. | |
6677 | |
6678 *) Добавление: переменные "$upstream_http_...". | |
6679 | |
6680 *) Добавление: теперь переменные $upstream_status и | |
6681 $upstream_response_time содержат данные о всех обращениях к | |
6682 апстримам, сделанным до X-Accel-Redirect. | |
6683 | |
6684 *) Исправление: если nginx был собран с модулем ngx_http_perl_module и | |
6685 perl не поддерживал multiplicity, то после первой переконфигурации и | |
6686 после получения любого сигнала в основном процессе происходил | |
6687 segmentation fault; ошибка появилась в 0.5.9. | |
6688 | |
6689 *) Исправление: если perl не поддерживал multiplicity, то после | |
6690 переконфигурации перловый код не работал; ошибка появилась в 0.3.38. | |
6691 | |
6692 | |
6693 Изменения в nginx 0.5.17 02.04.2007 | |
6694 | |
6695 *) Изменение: теперь nginx для метода TRACE всегда возвращает код 405. | |
6696 | |
6697 *) Добавление: теперь nginx поддерживает директиву include внутри блока | |
6698 types. | |
6699 | |
6700 *) Исправление: использование переменной $document_root в директиве root | |
6701 и alias запрещено: оно вызывало рекурсивное переполнение стека. | |
6702 | |
6703 *) Исправление: в использовании протокола HTTPS в директиве proxy_pass. | |
6704 | |
6705 *) Исправление: в некоторых случаях некэшируемые переменные (такие, как | |
6706 $uri) возвращали старое закэшированное значение. | |
6707 | |
6708 | |
6709 Изменения в nginx 0.5.16 26.03.2007 | |
6710 | |
6711 *) Исправление: в качестве ключа для хэша в директиве ip_hash не | |
6712 использовалась сеть класса С. | |
6713 Спасибо Павлу Ярковому. | |
6714 | |
6715 *) Исправление: если в строке "Content-Type" в заголовке ответа бэкенда | |
6716 был указан charset и строка завершалась символом ";", то в рабочем | |
6717 процессе мог произойти segmentation fault; ошибка появилась в 0.3.50. | |
6718 | |
6719 *) Исправление: ошибки "[alert] zero size buf" при работе с | |
6720 FastCGI-сервером, если тело запроса, записанное во временный файл, | |
6721 было кратно 32K. | |
6722 | |
6723 *) Исправление: nginx не собирался на Solaris без параметра | |
6724 --with-debug; ошибка появилась в 0.5.15. | |
6725 | |
6726 | |
6727 Изменения в nginx 0.5.15 19.03.2007 | |
6728 | |
6729 *) Добавление: почтовый прокси-сервер поддерживает аутентифицированное | |
6730 SMTP-проксирование и директивы smtp_auth, smtp_capabilities и | |
6731 xclient. | |
6732 Спасибо Антону Южанинову и Максиму Дунину. | |
6733 | |
6734 *) Добавление: теперь keep-alive соединения закрываются сразу же по | |
6735 получении сигнала переконфигурации. | |
6736 | |
6737 *) Изменение: директивы imap и auth переименованы соответственно в mail | |
6738 и pop3_auth. | |
6739 | |
6740 *) Исправление: если использовался метод аутентификации CRAM-MD5 и не | |
6741 был разрешён метод APOP, то в рабочем процессе происходил | |
6742 segmentation fault. | |
6743 | |
6744 *) Исправление: при использовании директивы starttls only в протоколе | |
6745 POP3 nginx разрешал аутентификацию без перехода в режим SSL. | |
6746 | |
6747 *) Исправление: рабочие процессы не выходили после переконфигурации и не | |
6748 переоткрывали логи, если использовался метод eventport. | |
6749 | |
6750 *) Исправление: при использовании директивы ip_hash рабочий процесс мог | |
6751 зациклиться. | |
6752 | |
6753 *) Исправление: теперь nginx не пишет в лог некоторые alert'ы, если | |
6754 используются методы eventport или /dev/poll. | |
6755 | |
6756 | |
6757 Изменения в nginx 0.5.14 23.02.2007 | |
6758 | |
6759 *) Исправление: nginx игнорировал лишние закрывающие скобки "}" в конце | |
6760 конфигурационного файла. | |
6761 | |
6762 | |
6763 Изменения в nginx 0.5.13 19.02.2007 | |
6764 | |
6765 *) Добавление: методы COPY и MOVE. | |
6766 | |
6767 *) Исправление: модуль ngx_http_realip_module устанавливал мусор для | |
6768 запросов, переданных по keep-alive соединению. | |
6769 | |
6770 *) Исправление: nginx не работал на 64-битном big-endian Linux. | |
6771 Спасибо Андрею Нигматулину. | |
6772 | |
6773 *) Исправление: при получении слишком длинной команды IMAP/POP3-прокси | |
6774 теперь сразу закрывает соединение, а не по таймауту. | |
6775 | |
6776 *) Исправление: если при использовании метода epoll клиент закрывал | |
6777 преждевременно соединение со своей стороны, то nginx закрывал это | |
6778 соединение только по истечении таймаута на передачу. | |
6779 | |
6780 *) Исправление: nginx не собирался на платформах, отличных от i386, | |
6781 amd64, sparc и ppc; ошибка появилась в 0.5.8. | |
6782 | |
6783 | |
6784 Изменения в nginx 0.5.12 12.02.2007 | |
6785 | |
6786 *) Исправление: nginx не собирался на платформах, отличных от i386, | |
6787 amd64, sparc и ppc; ошибка появилась в 0.5.8. | |
6788 | |
6789 *) Исправление: при использовании временных файлов в время работы с | |
6790 FastCGI-сервером в рабочем процессе мог произойти segmentation fault; | |
6791 ошибка появилась в 0.5.8. | |
6792 | |
6793 *) Исправление: если переменная $fastcgi_script_name записывалась в лог, | |
6794 то в рабочем процессе мог произойти segmentation fault. | |
6795 | |
6796 *) Исправление: ngx_http_perl_module не собирался на Solaris. | |
6797 | |
6798 | |
6799 Изменения в nginx 0.5.11 05.02.2007 | |
6800 | |
6801 *) Добавление: теперь configure определяет библиотеку PCRE в MacPorts. | |
6802 Спасибо Chris McGrath. | |
6803 | |
6804 *) Исправление: ответ был неверным, если запрашивалось несколько | |
6805 диапазонов; ошибка появилась в 0.5.6. | |
6806 | |
6807 *) Исправление: директива create_full_put_path не могла создавать | |
6808 промежуточные каталоги, если не была установлена директива | |
6809 dav_access. | |
6810 Спасибо Evan Miller. | |
6811 | |
6812 *) Исправление: вместо кодов ошибок "400" и "408" в access_log мог | |
6813 записываться код "0". | |
6814 | |
6815 *) Исправление: при сборке с оптимизацией -O2 в рабочем процессе мог | |
6816 произойти segmentation fault. | |
6817 | |
6818 | |
6819 Изменения в nginx 0.5.10 26.01.2007 | |
6820 | |
6821 *) Исправление: во время обновления исполняемого файла новый процесс не | |
6822 наследовал слушающие сокеты; ошибка появилась в 0.5.9. | |
6823 | |
6824 *) Исправление: при сборке с оптимизацией -O2 в рабочем процессе мог | |
6825 произойти segmentation fault; ошибка появилась в 0.5.1. | |
6826 | |
6827 | |
6828 Изменения в nginx 0.5.9 25.01.2007 | |
6829 | |
6830 *) Изменение: модуль ngx_http_memcached_module теперь в качестве ключа | |
6831 использует значение переменной $memcached_key. | |
6832 | |
6833 *) Добавление: переменная $memcached_key. | |
6834 | |
6835 *) Добавление: параметр clean в директиве client_body_in_file_only. | |
6836 | |
6837 *) Добавление: директива env. | |
6838 | |
6839 *) Добавление: директива sendfile работает внутри блока if. | |
6840 | |
6841 *) Добавление: теперь при ошибке записи в access_log nginx записывает | |
6842 сообщение в error_log, но не чаще одного раза в минуту. | |
6843 | |
6844 *) Исправление: директива "access_log off" не всегда запрещала запись в | |
6845 лог. | |
6846 | |
6847 | |
6848 Изменения в nginx 0.5.8 19.01.2007 | |
6849 | |
6850 *) Исправление: если использовалась директива | |
6851 "client_body_in_file_only on" и тело запроса было небольшое, то мог | |
6852 произойти segmentation fault. | |
6853 | |
6854 *) Исправление: происходил segmentation fault, если использовались | |
6855 директивы "client_body_in_file_only on" и | |
6856 "proxy_pass_request_body off" или "fastcgi_pass_request_body off", и | |
6857 делался переход к следующему бэкенду. | |
6858 | |
6859 *) Исправление: если при использовании директивы "proxy_buffering off" | |
6860 соединение с клиентом было неактивно, то оно закрывалось по таймауту, | |
6861 заданному директивой send_timeout; ошибка появилась в 0.4.7. | |
6862 | |
6863 *) Исправление: если при использовании метода epoll клиент закрывал | |
6864 преждевременно соединение со своей стороны, то nginx закрывал это | |
6865 соединение только по истечении таймаута на передачу. | |
6866 | |
6867 *) Исправление: ошибки "[alert] zero size buf" при работе с | |
6868 FastCGI-сервером. | |
6869 | |
6870 *) Исправление ошибок в директиве limit_zone. | |
6871 | |
6872 | |
6873 Изменения в nginx 0.5.7 15.01.2007 | |
6874 | |
6875 *) Добавление: оптимизация использования памяти в ssl_session_cache. | |
6876 | |
6877 *) Исправление ошибок в директивах ssl_session_cache и limit_zone. | |
6878 | |
6879 *) Исправление: на старте или во время переконфигурации происходил | |
6880 segmentation fault, если директивы ssl_session_cache или limit_zone | |
6881 использовались на 64-битных платформах. | |
6882 | |
6883 *) Исправление: при использовании директив add_before_body или | |
6884 add_after_body происходил segmentation fault, если в заголовке ответа | |
6885 нет строки "Content-Type". | |
6886 | |
6887 *) Исправление: библиотека OpenSSL всегда собиралась с поддержкой | |
6888 потоков. | |
6889 Спасибо Дену Иванову. | |
6890 | |
6891 *) Исправление: совместимость библиотеки PCRE-6.5+ и компилятора icc. | |
6892 | |
6893 | |
6894 Изменения в nginx 0.5.6 09.01.2007 | |
6895 | |
6896 *) Изменение: теперь модуль ngx_http_index_module игнорирует все методы, | |
6897 кроме GET, HEAD и POST. | |
6898 | |
6899 *) Добавление: модуль ngx_http_limit_zone_module. | |
6900 | |
6901 *) Добавление: переменная $binary_remote_addr. | |
6902 | |
6903 *) Добавление: директивы ssl_session_cache модулей ngx_http_ssl_module и | |
6904 ngx_imap_ssl_module. | |
6905 | |
6906 *) Добавление: метод DELETE поддерживает рекурсивное удаление. | |
6907 | |
6908 *) Исправление: при использовании $r->sendfile() byte-ranges | |
6909 передавались неверно. | |
6910 | |
6911 | |
6912 Изменения в nginx 0.5.5 24.12.2006 | |
6913 | |
6914 *) Изменение: ключ -v больше не выводит информацию о компиляторе. | |
6915 | |
6916 *) Добавление: ключ -V. | |
6917 | |
6918 *) Добавление: директива worker_rlimit_core поддерживает указание | |
6919 размера в K, M и G. | |
6920 | |
6921 *) Исправление: модуль nginx.pm теперь может устанавливаться | |
6922 непривилегированным пользователем. | |
6923 | |
6924 *) Исправление: при использовании методов $r->request_body или | |
6925 $r->request_body_file мог произойти segmentation fault. | |
6926 | |
6927 *) Исправление: ошибок, специфичных для платформы ppc. | |
6928 | |
6929 | |
6930 Изменения в nginx 0.5.4 15.12.2006 | |
6931 | |
6932 *) Добавление: директиву perl можно использовать внутри блока | |
6933 limit_except. | |
6934 | |
6935 *) Исправление: модуль ngx_http_dav_module требовал строку "Date" в | |
6936 заголовке запроса для метода DELETE. | |
6937 | |
6938 *) Исправление: при использовании одного параметра в директиве | |
6939 dav_access nginx мог сообщить об ошибке в конфигурации. | |
6940 | |
6941 *) Исправление: при использовании переменной $host мог произойти | |
6942 segmentation fault; ошибка появилась в 0.4.14. | |
6943 | |
6944 | |
6945 Изменения в nginx 0.5.3 13.12.2006 | |
6946 | |
6947 *) Добавление: модуль ngx_http_perl_module поддерживает методы | |
6948 $r->status, $r->log_error и $r->sleep. | |
6949 | |
6950 *) Добавление: метод $r->variable поддерживает переменные, неописанные в | |
6951 конфигурации nginx'а. | |
6952 | |
6953 *) Исправление: метод $r->has_request_body не работал. | |
6954 | |
6955 | |
6956 Изменения в nginx 0.5.2 11.12.2006 | |
6957 | |
6958 *) Исправление: если в директивах proxy_pass использовалось имя, | |
6959 указанное в upstream, то nginx пытался найти IP-адрес этого имени; | |
6960 ошибка появилась в 0.5.1. | |
6961 | |
6962 | |
6963 Изменения в nginx 0.5.1 11.12.2006 | |
6964 | |
6965 *) Исправление: директива post_action могла не работать после неудачного | |
6966 завершения запроса. | |
6967 | |
6968 *) Изменение: обход ошибки в Eudora для Mac; ошибка появилась в 0.4.11. | |
6969 Спасибо Bron Gondwana. | |
6970 | |
6971 *) Исправление: при указании в директиве fastcgi_pass имени описанного | |
6972 upstream'а выдавалось сообщение "no port in upstream"; ошибка | |
6973 появилась в 0.5.0. | |
6974 | |
6975 *) Исправление: если в директивах proxy_pass и fastcgi_pass | |
6976 использовались одинаковых имена серверов, но с разными портами, то | |
6977 эти директивы использовали первый описанный порт; ошибка появилась в | |
6978 0.5.0. | |
6979 | |
6980 *) Исправление: если в директивах proxy_pass и fastcgi_pass | |
6981 использовались unix domain сокеты, то эти директивы использовали | |
6982 первый описанный сокет; ошибка появилась в 0.5.0. | |
6983 | |
6984 *) Исправление: ngx_http_auth_basic_module игнорировал пользователя, | |
6985 если он был указан в последней строке файла паролей и после пароля не | |
6986 было перевода строки, возврата каретки или символа ":". | |
6987 | |
6988 *) Исправление: переменная $upstream_response_time могла быть равна | |
6989 "0.000", хотя время обработки было больше 1 миллисекунды. | |
6990 | |
6991 | |
6992 Изменения в nginx 0.5.0 04.12.2006 | |
6993 | |
6994 *) Изменение: параметры в виде "%name" в директиве log_format больше не | |
6995 поддерживаются. | |
6996 | |
6997 *) Изменение: директивы proxy_upstream_max_fails, | |
6998 proxy_upstream_fail_timeout, fastcgi_upstream_max_fails, и | |
6999 fastcgi_upstream_fail_timeout, memcached_upstream_max_fails и | |
7000 memcached_upstream_fail_timeout больше не поддерживаются. | |
7001 | |
7002 *) Добавление: директива server в блоке upstream поддерживает параметры | |
7003 max_fails, fail_timeout и down. | |
7004 | |
7005 *) Добавление: директива ip_hash в блоке upstream. | |
7006 | |
7007 *) Добавление: статус WAIT в строке "Auth-Status" в заголовке ответа | |
7008 сервера аутентификации IMAP/POP3 прокси. | |
7009 | |
7010 *) Исправление: nginx не собирался на 64-битных платформах; ошибка | |
7011 появилась в 0.4.14. | |
7012 | |
7013 | |
7014 Изменения в nginx 0.4.14 27.11.2006 | |
7015 | |
7016 *) Добавление: директива proxy_pass_error_message в IMAP/POP3 прокси. | |
7017 | |
7018 *) Добавление: теперь configure определяет библиотеку PCRE на FreeBSD, | |
7019 Linux и NetBSD. | |
7020 | |
7021 *) Исправление: ngx_http_perl_module не работал с перлом, собранным с | |
7022 поддержкой потоков; ошибка появилась в 0.3.38. | |
7023 | |
7024 *) Исправление: ngx_http_perl_module не работал корректно, если перл | |
7025 вызывался рекурсивно. | |
7026 | |
7027 *) Исправление: nginx игнорировал имя сервера в строке запроса. | |
7028 | |
7029 *) Исправление: если FastCGI сервер передавал много в stderr, то рабочий | |
7030 процесс мог зациклиться. | |
7031 | |
7032 *) Исправление: при изменении системного времени переменная | |
7033 $upstream_response_time могла быть отрицательной. | |
7034 | |
7035 *) Исправление: при использовании POP3 серверу аутентификации IMAP/POP3 | |
7036 прокси не передавался параметр Auth-Login-Attempt. | |
7037 | |
7038 *) Исправление: при ошибке соединения с сервером аутентификации | |
7039 IMAP/POP3 прокси мог произойти segmentation fault. | |
7040 | |
7041 | |
7042 Изменения в nginx 0.4.13 15.11.2006 | |
7043 | |
7044 *) Добавление: директиву proxy_pass можно использовать внутри блока | |
7045 limit_except. | |
7046 | |
7047 *) Добавление: директива limit_except поддерживает все WebDAV методы. | |
7048 | |
7049 *) Исправление: при использовании директивы add_before_body без | |
7050 директивы add_after_body ответ передавался не полностью. | |
7051 | |
7052 *) Исправление: большое тело запроса не принималось, если использовались | |
7053 метод epoll и deferred accept(). | |
7054 | |
7055 *) Исправление: для ответов модуля ngx_http_autoindex_module не | |
7056 выставлялась кодировка; ошибка появилась в 0.3.50. | |
7057 | |
7058 *) Исправление: ошибки "[alert] zero size buf" при работе с | |
7059 FastCGI-сервером; | |
7060 | |
7061 *) Исправление: параметр конфигурации --group= игнорировался. | |
7062 Спасибо Thomas Moschny. | |
7063 | |
7064 *) Исправление: 50-й подзапрос в SSI ответе не работал; ошибка появилась | |
7065 в 0.3.50. | |
7066 | |
7067 | |
7068 Изменения в nginx 0.4.12 31.10.2006 | |
7069 | |
7070 *) Добавление: модуль ngx_http_perl_module поддерживает метод | |
7071 $r->variable. | |
7072 | |
7073 *) Исправление: при включении в ответ большого статического файла с | |
7074 помощью SSI ответ мог передаваться не полностью. | |
7075 | |
7076 *) Исправление: nginx не убирал "#fragment" в URI. | |
7077 | |
7078 | |
7079 Изменения в nginx 0.4.11 25.10.2006 | |
7080 | |
7081 *) Добавление: POP3 прокси поддерживает AUTH LOGIN PLAIN и CRAM-MD5. | |
7082 | |
7083 *) Добавление: модуль ngx_http_perl_module поддерживает метод | |
7084 $r->allow_ranges. | |
7085 | |
7086 *) Исправление: при включённой поддержке команды APOP в POP3 прокси | |
7087 могли не работать команды USER/PASS; ошибка появилась в 0.4.10. | |
7088 | |
7089 | |
7090 Изменения в nginx 0.4.10 23.10.2006 | |
7091 | |
7092 *) Добавление: POP3 прокси поддерживает APOP. | |
7093 | |
7094 *) Исправление: при использовании методов select, poll и /dev/poll во | |
7095 время ожидания ответа от сервера аутентификации IMAP/POP3 прокси | |
7096 нагружал процессор. | |
7097 | |
7098 *) Исправление: при использовании переменной $server_addr в директиве | |
7099 map мог произойти segmentation fault. | |
7100 | |
7101 *) Исправление: модуль ngx_http_flv_module не поддерживал byte ranges | |
7102 для полных ответов; ошибка появилась в 0.4.7. | |
7103 | |
7104 *) Исправление: nginx не собирался на Debian amd64; ошибка появилась в | |
7105 0.4.9. | |
7106 | |
7107 | |
7108 Изменения в nginx 0.4.9 13.10.2006 | |
7109 | |
7110 *) Добавление: параметр set в команде SSI include. | |
7111 | |
7112 *) Добавление: модуль ngx_http_perl_module теперь проверяет версию | |
7113 модуля nginx.pm. | |
7114 | |
7115 | |
7116 Изменения в nginx 0.4.8 11.10.2006 | |
7117 | |
7118 *) Исправление: если до команды SSI include с параметром wait | |
7119 выполнялась ещё одна команда SSI include, то параметр wait мог не | |
7120 работать. | |
7121 | |
7122 *) Исправление: модуль ngx_http_flv_module добавлял FLV-заголовок для | |
7123 полных ответов. | |
7124 Спасибо Алексею Ковырину. | |
7125 | |
7126 | |
7127 Изменения в nginx 0.4.7 10.10.2006 | |
7128 | |
7129 *) Добавление: модуль ngx_http_flv_module. | |
7130 | |
7131 *) Добавление: переменная $request_body_file. | |
7132 | |
7133 *) Добавление: директивы charset и source_charset поддерживают | |
7134 переменные. | |
7135 | |
7136 *) Исправление: если до команды SSI include с параметром wait | |
7137 выполнялась ещё одна команда SSI include, то параметр wait мог не | |
7138 работать. | |
7139 | |
7140 *) Исправление: при использовании директивы "proxy_buffering off" или | |
7141 при работе с memcached соединения могли не закрываться по таймауту. | |
7142 | |
7143 *) Исправление: nginx не запускался на 64-битных платформах, отличных от | |
7144 amd64, sparc64 и ppc64. | |
7145 | |
7146 | |
7147 Изменения в nginx 0.4.6 06.10.2006 | |
7148 | |
7149 *) Исправление: nginx не запускался на 64-битных платформах, отличных от | |
7150 amd64, sparc64 и ppc64. | |
7151 | |
7152 *) Исправление: при запросе версии HTTP/1.1 nginx передавал ответ | |
7153 chunk'ами, если длина ответа в методе | |
7154 $r->headers_out("Content-Length", ...) была задана текстовой строкой. | |
7155 | |
7156 *) Исправление: после перенаправления ошибки с помощью директивы | |
7157 error_page любая директива модуля ngx_http_rewrite_module возвращала | |
7158 эту ошибку; ошибка появилась в 0.4.4. | |
7159 | |
7160 | |
7161 Изменения в nginx 0.4.5 02.10.2006 | |
7162 | |
7163 *) Исправление: nginx не собирался на Linux и Solaris; ошибка появилась | |
7164 в 0.4.4. | |
7165 | |
7166 | |
7167 Изменения в nginx 0.4.4 02.10.2006 | |
7168 | |
7169 *) Добавление: переменная $scheme. | |
7170 | |
7171 *) Добавление: директива expires поддерживает параметр max. | |
7172 | |
7173 *) Добавление: директива include поддерживает маску "*". | |
7174 Спасибо Jonathan Dance. | |
7175 | |
7176 *) Исправление: директива return всегда изменяла код ответа, | |
7177 перенаправленного директивой error_page. | |
7178 | |
7179 *) Исправление: происходил segmentation fault, если в методе PUT | |
7180 передавалось тело нулевой длины. | |
7181 | |
7182 *) Исправление: при использовании переменных в директиве proxy_redirect | |
7183 редирект изменялся неверно. | |
7184 | |
7185 | |
7186 Изменения в nginx 0.4.3 26.09.2006 | |
7187 | |
7188 *) Изменение: ошибку 499 теперь нельзя перенаправить с помощью директивы | |
7189 error_page. | |
7190 | |
7191 *) Добавление: поддержка Solaris 10 event ports. | |
7192 | |
7193 *) Добавление: модуль ngx_http_browser_module. | |
7194 | |
7195 *) Исправление: при перенаправлении ошибки 400 проксированному серверу | |
7196 помощью директивы error_page мог произойти segmentation fault. | |
7197 | |
7198 *) Исправление: происходил segmentation fault, если в директиве | |
7199 proxy_pass использовался unix domain сокет; ошибка появилась в | |
7200 0.3.47. | |
7201 | |
7202 *) Исправление: SSI не работал с ответами memcached и | |
7203 небуферизированными проксированными ответами. | |
7204 | |
7205 *) Изменение: обход ошибки PAUSE hardware capability в Sun Studio. | |
7206 | |
7207 | |
7208 Изменения в nginx 0.4.2 14.09.2006 | |
7209 | |
7210 *) Исправление: убрана поддержка флага O_NOATIME на Linux; ошибка | |
7211 появилась в 0.4.1. | |
7212 | |
7213 | |
7214 Изменения в nginx 0.4.1 14.09.2006 | |
7215 | |
7216 *) Исправление: совместимость с DragonFlyBSD. | |
7217 Спасибо Павлу Назарову. | |
7218 | |
7219 *) Изменение: обход ошибки в sendfile() в 64-битном Linux при передаче | |
7220 файлов больше 2G. | |
7221 | |
7222 *) Добавление: теперь на Linux nginx для статических запросов использует | |
7223 флаг O_NOATIME. | |
7224 Спасибо Yusuf Goolamabbas. | |
7225 | |
7226 | |
7227 Изменения в nginx 0.4.0 30.08.2006 | |
7228 | |
7229 *) Изменение во внутреннем API: инициализация модулей HTTP перенесена из | |
7230 фазы init module в фазу HTTP postconfiguration. | |
7231 | |
7232 *) Изменение: теперь тело запроса в модуле ngx_http_perl_module не | |
7233 считывается заранее: нужно явно инициировать чтение с помощью метода | |
7234 $r->has_request_body. | |
7235 | |
7236 *) Добавление: модуль ngx_http_perl_module поддерживает код возврата | |
7237 DECLINED. | |
7238 | |
7239 *) Добавление: модуль ngx_http_dav_module поддерживает входящую строку | |
7240 заголовка "Date" для метода PUT. | |
7241 | |
7242 *) Добавление: директива ssi работает внутри блока if. | |
7243 | |
7244 *) Исправление: происходил segmentation fault, если в директиве index | |
7245 использовалась переменные и при этом первое имя индексного файла было | |
7246 без переменных; ошибка появилась в 0.1.29. | |
7247 | |
7248 | |
7249 Изменения в nginx 0.3.61 28.08.2006 | |
7250 | |
7251 *) Изменение: директива tcp_nodelay теперь по умолчанию включена. | |
7252 | |
7253 *) Добавление: директива msie_refresh. | |
7254 | |
7255 *) Добавление: директива recursive_error_pages. | |
7256 | |
7257 *) Исправление: директива rewrite возвращала неправильный редирект, если | |
7258 редирект включал в себя выделенные закодированные символы из | |
7259 оригинального URI. | |
7260 | |
7261 | |
7262 Изменения в nginx 0.3.60 18.08.2006 | |
7263 | |
7264 *) Исправление: во время перенаправления ошибки рабочий процесс мог | |
7265 зациклиться; ошибка появилась в 0.3.59. | |
7266 | |
7267 | |
7268 Изменения в nginx 0.3.59 16.08.2006 | |
7269 | |
7270 *) Добавление: теперь можно делать несколько перенаправлений через | |
7271 директиву error_page. | |
7272 | |
7273 *) Исправление: директива dav_access не поддерживала три параметра. | |
7274 | |
7275 *) Исправление: директива error_page не изменяла строку "Content-Type" | |
7276 после перенаправления с помощью "X-Accel-Redirect"; ошибка появилась | |
7277 в 0.3.58. | |
7278 | |
7279 | |
7280 Изменения в nginx 0.3.58 14.08.2006 | |
7281 | |
7282 *) Добавление: директива error_page поддерживает переменные. | |
7283 | |
7284 *) Изменение: теперь на Linux используется интерфейс procfs вместо | |
7285 sysctl. | |
7286 | |
7287 *) Изменение: теперь при использовании "X-Accel-Redirect" строка | |
7288 "Content-Type" наследуется из первоначального ответа. | |
7289 | |
7290 *) Исправление: директива error_page не перенаправляла ошибку 413. | |
7291 | |
7292 *) Исправление: завершающий "?" не удалял старые аргументы, если в | |
7293 переписанном URI не было новых аргументов. | |
7294 | |
7295 *) Исправление: nginx не запускался на 64-битной FreeBSD 7.0-CURRENT. | |
7296 | |
7297 | |
7298 Изменения в nginx 0.3.57 09.08.2006 | |
7299 | |
7300 *) Добавление: переменная $ssl_client_serial. | |
7301 | |
7302 *) Исправление: в операторе "!-e" в директиве if. | |
7303 Спасибо Андриану Буданцову. | |
7304 | |
7305 *) Исправление: при проверке клиентского сертификата nginx не передавал | |
7306 клиенту информацию о требуемых сертификатах. | |
7307 | |
7308 *) Исправление: переменная $document_root не поддерживала переменные в | |
7309 директиве root. | |
7310 | |
7311 | |
7312 Изменения в nginx 0.3.56 04.08.2006 | |
7313 | |
7314 *) Добавление: директива dav_access. | |
7315 | |
7316 *) Добавление: директива if поддерживает операторы "-d", "!-d", "-e", | |
7317 "!-e", "-x" и "!-x". | |
7318 | |
7319 *) Исправление: при записи в access_log некоторых передаваемых клиенту | |
7320 строк заголовков происходил segmentation fault, если запрос возвращал | |
7321 редирект. | |
7322 | |
7323 | |
7324 Изменения в nginx 0.3.55 28.07.2006 | |
7325 | |
7326 *) Добавление: параметр stub в команде SSI include. | |
7327 | |
7328 *) Добавление: команда SSI block. | |
7329 | |
7330 *) Добавление: скрипт unicode2nginx добавлен в contrib. | |
7331 | |
7332 *) Исправление: если root был задан только переменной, то корень | |
7333 задавался относительно префикса сервера. | |
7334 | |
7335 *) Исправление: если в запросе был "//" или "/.", и после этого | |
7336 закодированные символы в виде "%XX", то проксируемый запрос | |
7337 передавался незакодированным. | |
7338 | |
7339 *) Исправление: метод $r->header_in("Cookie") модуля | |
7340 ngx_http_perl_module теперь возвращает все строки "Cookie" в | |
7341 заголовке запроса. | |
7342 | |
7343 *) Исправление: происходил segmentation fault, если использовался | |
7344 "client_body_in_file_only on" и делался переход к следующему бэкенду. | |
7345 | |
7346 *) Исправление: при некоторых условиях во время переконфигурации коды | |
7347 символов внутри директивы charset_map могли считаться неверными; | |
7348 ошибка появилась в 0.3.50. | |
7349 | |
7350 | |
7351 Изменения в nginx 0.3.54 11.07.2006 | |
7352 | |
7353 *) Добавление: nginx теперь записывает в лог информацию о подзапросах. | |
7354 | |
7355 *) Добавление: директивы proxy_next_upstream, fastcgi_next_upstream и | |
7356 memcached_next_upstream поддерживают параметр off. | |
7357 | |
7358 *) Добавление: директива debug_connection поддерживает запись адресов в | |
7359 формате CIDR. | |
7360 | |
7361 *) Исправление: при перекодировании ответа проксированного сервера или | |
7362 сервера FastCGI в UTF-8 или наоборот ответ мог передаваться не | |
7363 полностью. | |
7364 | |
7365 *) Исправление: переменная $upstream_response_time содержала время | |
7366 только первого обращения к бэкенду. | |
7367 | |
7368 *) Исправление: nginx не собирался на платформе amd64; ошибка появилась | |
7369 в 0.3.53. | |
7370 | |
7371 | |
7372 Изменения в nginx 0.3.53 07.07.2006 | |
7373 | |
7374 *) Изменение: директива add_header добавляет строки в ответы с кодом | |
7375 204, 301 и 302. | |
7376 | |
7377 *) Добавление: директива server в блоке upstream поддерживает параметр | |
7378 weight. | |
7379 | |
7380 *) Добавление: директива server_name поддерживает маску "*". | |
7381 | |
7382 *) Добавление: nginx поддерживает тело запроса больше 2G. | |
7383 | |
7384 *) Исправление: если при использовании "satisfy_any on" клиент успешно | |
7385 проходил аутентификацию, в лог всё равно записалоcь сообщение "access | |
7386 forbidden by rule". | |
7387 | |
7388 *) Исправление: метод PUT мог ошибочно не создать файл и вернуть код | |
7389 409. | |
7390 | |
7391 *) Исправление: если во время аутентификации IMAP/POP3 бэкенд возвращал | |
7392 ошибку, nginx продолжал проксирование. | |
7393 | |
7394 | |
7395 Изменения в nginx 0.3.52 03.07.2006 | |
7396 | |
7397 *) Изменение: восстановлено поведение модуля ngx_http_index_module для | |
7398 запросов "POST /": как в версии до 0.3.40, модуль теперь не выдаёт | |
7399 ошибку 405. | |
7400 | |
7401 *) Исправление: при использовании ограничения скорости рабочий процесс | |
7402 мог зациклиться; ошибка появилась в 0.3.37. | |
7403 | |
7404 *) Исправление: модуль ngx_http_charset_module записывал в лог ошибку | |
7405 "unknown charset", даже если перекодировка не требовалась; ошибка | |
7406 появилась в 0.3.50. | |
7407 | |
7408 *) Исправление: если в результате запроса PUT возвращался код 409, то | |
7409 временный файл не удалялся. | |
7410 | |
7411 | |
7412 Изменения в nginx 0.3.51 30.06.2006 | |
7413 | |
7414 *) Исправление: при некоторых условиях в SSI мог пропадать символы "<"; | |
7415 ошибка появилась в 0.3.50. | |
7416 | |
7417 | |
7418 Изменения в nginx 0.3.50 28.06.2006 | |
7419 | |
7420 *) Изменение: директивы proxy_redirect_errors и fastcgi_redirect_errors | |
7421 переименованы соответственно в proxy_intercept_errors и | |
7422 fastcgi_intercept_errors. | |
7423 | |
7424 *) Добавление: модуль ngx_http_charset_module поддерживает | |
7425 перекодирование из однобайтных кодировок в UTF-8 и обратно. | |
7426 | |
7427 *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка | |
7428 "X-Accel-Charset" в ответе бэкенда. | |
7429 | |
7430 *) Исправление: символ "\" в парах "\"" и "\'" в SSI командах убирался, | |
7431 только если также использовался символ "$". | |
7432 | |
7433 *) Исправление: при некоторых условиях в SSI после вставки могла быть | |
7434 добавлена строка "<!--". | |
7435 | |
7436 *) Исправление: если в заголовке ответа была строка "Content-Length: 0", | |
7437 то при использовании небуферизированного проксировании не закрывалось | |
7438 соединение с клиентом. | |
7439 | |
7440 | |
7441 Изменения в nginx 0.3.49 31.05.2006 | |
7442 | |
7443 *) Исправление: в директиве set. | |
7444 | |
7445 *) Исправление: при включении в ssi двух и более подзапросов, | |
7446 обрабатываемых через FastCGI, вместо вывода второго и остальных | |
7447 подзапросов в ответ включался вывод первого подзапроса. | |
7448 | |
7449 | |
7450 Изменения в nginx 0.3.48 29.05.2006 | |
7451 | |
7452 *) Изменение: теперь модуль ngx_http_charset_module работает для | |
7453 подзапросов, в ответах которых нет строки заголовка "Content-Type". | |
7454 | |
7455 *) Исправление: если в директиве proxy_pass не было URI, то директива | |
7456 "proxy_redirect default" добавляла в переписанный редирект в начало | |
7457 лишний слэш. | |
7458 | |
7459 *) Исправление: внутренний редирект всегда превращал любой HTTP-метод в | |
7460 GET, теперь это делается только для редиректов, выполняемых с помощью | |
7461 X-Accel-Redirect, и у которых метод не равен HEAD; ошибка появилась в | |
7462 0.3.42. | |
7463 | |
7464 *) Исправление: модуль ngx_http_perl_module не собирался, если перл был | |
7465 с поддержкой потоков; ошибка появилась в 0.3.46. | |
7466 | |
7467 | |
7468 Изменения в nginx 0.3.47 23.05.2006 | |
7469 | |
7470 *) Добавление: директива upstream. | |
7471 | |
7472 *) Изменение: символ "\" в парах "\"" и "\'" в SSI командах теперь | |
7473 всегда убирается. | |
7474 | |
7475 | |
7476 Изменения в nginx 0.3.46 11.05.2006 | |
7477 | |
7478 *) Добавление: директивы proxy_hide_header, proxy_pass_header, | |
7479 fastcgi_hide_header и fastcgi_pass_header. | |
7480 | |
7481 *) Изменение: директивы proxy_pass_x_powered_by, fastcgi_x_powered_by и | |
7482 proxy_pass_server упразднены. | |
7483 | |
7484 *) Добавление: в режиме прокси поддерживается строка заголовка | |
7485 "X-Accel-Buffering" в ответе бэкенда. | |
7486 | |
7487 *) Исправление: ошибок и утечек памяти при переконфигурации в модуле | |
7488 ngx_http_perl_module. | |
7489 | |
7490 | |
7491 Изменения в nginx 0.3.45 06.05.2006 | |
7492 | |
7493 *) Добавление: директивы ssl_verify_client, ssl_verify_depth и | |
7494 ssl_client_certificate. | |
7495 | |
7496 *) Изменение: теперь переменная $request_method возвращает метод только | |
7497 основного запроса. | |
7498 | |
7499 *) Изменение: в таблице перекодировки koi-win изменены коды символа | |
7500 °. | |
7501 | |
7502 *) Добавление: в таблицу перекодировки koi-win добавлены символы евро и | |
7503 номера. | |
7504 | |
7505 *) Исправление: если nginx распределял запросы на несколько машин, то | |
7506 при падении одной из них запросы, предназначенные для этой машины, | |
7507 перенаправлялись только на одну машину вместо того, чтобы равномерно | |
7508 распределяться между остальными. | |
7509 | |
7510 | |
7511 Изменения в nginx 0.3.44 04.05.2006 | |
7512 | |
7513 *) Добавление: параметр wait в команде SSI include. | |
7514 | |
7515 *) Добавление: в таблицу перекодировки koi-win добавлены украинские и | |
7516 белорусские символы. | |
7517 | |
7518 *) Исправление: в SSI. | |
7519 | |
7520 | |
7521 Изменения в nginx 0.3.43 26.04.2006 | |
7522 | |
7523 *) Исправление: в SSI. | |
7524 | |
7525 | |
7526 Изменения в nginx 0.3.42 26.04.2006 | |
7527 | |
7528 *) Добавление: параметр bind в директиве listen в IMAP/POP3 прокси. | |
7529 | |
7530 *) Исправление: ошибки при использовании в директиве rewrite одного и | |
7531 того же выделения более одного раза. | |
7532 | |
7533 *) Исправление: в лог не записывались переменные | |
7534 $sent_http_content_type, $sent_http_content_length, | |
7535 $sent_http_last_modified, $sent_http_connection, | |
7536 $sent_http_keep_alive и $sent_http_transfer_encoding. | |
7537 | |
7538 *) Исправление: переменная $sent_http_cache_control возвращала | |
7539 содержимое только одной строки "Cache-Control" в заголовке ответа. | |
7540 | |
7541 | |
7542 Изменения в nginx 0.3.41 21.04.2006 | |
7543 | |
7544 *) Добавление: ключ -v. | |
7545 | |
7546 *) Исправление: при включении в SSI удалённых подзапросов мог произойти | |
7547 segmentation fault. | |
7548 | |
7549 *) Исправление: в обработке FastCGI. | |
7550 | |
7551 *) Исправление: если путь к перловым модулям не был указан с помощью | |
7552 --with-perl_modules_path=PATH или директивы perl_modules, то на | |
7553 старте происходил segmentation fault. | |
7554 | |
7555 | |
7556 Изменения в nginx 0.3.40 19.04.2006 | |
7557 | |
7558 *) Добавление: модуль ngx_http_dav_module поддерживает метод MKCOL. | |
7559 | |
7560 *) Добавление: директива create_full_put_path. | |
7561 | |
7562 *) Добавление: переменная $limit_rate. | |
7563 | |
7564 | |
7565 Изменения в nginx 0.3.39 17.04.2006 | |
7566 | |
7567 *) Добавление: директива uninitialized_variable_warn; уровень | |
7568 логгирования сообщения о неинициализированной переменной понижен с | |
7569 уровня alert на warn. | |
7570 | |
7571 *) Добавление: директива override_charset. | |
7572 | |
7573 *) Изменение: при использовании неизвестной переменной в SSI-командах | |
7574 echo и if expr='$name' теперь не записывается в лог сообщение о | |
7575 неизвестной переменной. | |
7576 | |
7577 *) Исправление: счётчик активных соединений рос при превышении лимита | |
7578 соединений, заданного директивой worker_connections; ошибка появилась | |
7579 в 0.2.0. | |
7580 | |
7581 *) Исправление: при некоторых условия ограничение скорости соединения | |
7582 могло не работать; ошибка появилась в 0.3.38. | |
7583 | |
7584 | |
7585 Изменения в nginx 0.3.38 14.04.2006 | |
7586 | |
7587 *) Добавление: модуль ngx_http_dav_module. | |
7588 | |
7589 *) Изменение: оптимизация модуля ngx_http_perl_module. | |
7590 Спасибо Сергею Скворцову. | |
7591 | |
7592 *) Добавление: модуль ngx_http_perl_module поддерживает метод | |
7593 $r->request_body_file. | |
7594 | |
7595 *) Добавление: директива client_body_in_file_only. | |
7596 | |
7597 *) Изменение: теперь при переполнении диска nginx пытается писать | |
7598 access_log'и только раз в секунду. | |
7599 Спасибо Антону Южанинову и Максиму Дунину. | |
7600 | |
7601 *) Исправление: теперь директива limit_rate точнее ограничивает скорость | |
7602 при значениях больше 100 Kbyte/s. | |
7603 Спасибо ForJest. | |
7604 | |
7605 *) Исправление: IMAP/POP3 прокси теперь передаёт серверу авторизации | |
7606 символы "\r" и "\n" в логине и пароле в закодированном виде. | |
7607 Спасибо Максиму Дунину. | |
7608 | |
7609 | |
7610 Изменения в nginx 0.3.37 07.04.2006 | |
7611 | |
7612 *) Добавление: директива limit_except. | |
7613 | |
7614 *) Добавление: директива if поддерживает операторы "!~", "!~*", "-f" и | |
7615 "!-f". | |
7616 | |
7617 *) Добавление: модуль ngx_http_perl_module поддерживает метод | |
7618 $r->request_body. | |
7619 | |
7620 *) Исправление: в модуле ngx_http_addition_filter_module. | |
7621 | |
7622 | |
7623 Изменения в nginx 0.3.36 05.04.2006 | |
7624 | |
7625 *) Добавление: модуль ngx_http_addition_filter_module. | |
7626 | |
7627 *) Добавление: директивы proxy_pass и fastcgi_pass можно использовать | |
7628 внутри блока if. | |
7629 | |
7630 *) Добавление: директивы proxy_ignore_client_abort и | |
7631 fastcgi_ignore_client_abort. | |
7632 | |
7633 *) Добавление: переменная $request_completion. | |
7634 | |
7635 *) Добавление: модуль ngx_http_perl_module поддерживает методы | |
7636 $r->request_method и $r->remote_addr. | |
7637 | |
7638 *) Добавление: модуль ngx_http_ssi_module поддерживает команду elif. | |
7639 | |
7640 *) Исправление: строка "\/" в начале выражения команды if модуля | |
7641 ngx_http_ssi_module воспринималась неверно. | |
7642 | |
7643 *) Исправление: в использовании регулярных выражениях в команде if | |
7644 модуля ngx_http_ssi_module. | |
7645 | |
7646 *) Исправление: при задании относительного пути в директивах | |
7647 client_body_temp_path, proxy_temp_path, fastcgi_temp_path и | |
7648 perl_modules использовался каталог относительно текущего каталога, а | |
7649 не относительно префикса сервера. | |
7650 | |
7651 | |
7652 Изменения в nginx 0.3.35 22.03.2006 | |
7653 | |
7654 *) Исправление: accept-фильтр и TCP_DEFER_ACCEPT устанавливались только | |
7655 для первой директивы listen; ошибка появилась в 0.3.31. | |
7656 | |
7657 *) Исправление: в директиве proxy_pass без URI при использовании в | |
7658 подзапросе. | |
7659 | |
7660 | |
7661 Изменения в nginx 0.3.34 21.03.2006 | |
7662 | |
7663 *) Добавление: директива add_header поддерживает переменные. | |
7664 | |
7665 | |
7666 Изменения в nginx 0.3.33 15.03.2006 | |
7667 | |
7668 *) Добавление: параметр http_503 в директивах proxy_next_upstream или | |
7669 fastcgi_next_upstream. | |
7670 | |
7671 *) Исправление: ngx_http_perl_module не работал со встроенным в | |
7672 конфигурационный файл кодом, если он не начинался сразу же с "sub". | |
7673 | |
7674 *) Исправление: в директиве post_action. | |
7675 | |
7676 | |
7677 Изменения в nginx 0.3.32 11.03.2006 | |
7678 | |
7679 *) Исправление: удаление отладочного логгирования на старте и при | |
7680 переконфигурации; ошибка появилась в 0.3.31. | |
7681 | |
7682 | |
7683 Изменения в nginx 0.3.31 10.03.2006 | |
7684 | |
7685 *) Изменение: теперь nginx передаёт неверные ответы проксированного | |
7686 бэкенда. | |
7687 | |
7688 *) Добавление: директивы listen поддерживают адрес в виде "*:порт". | |
7689 | |
7690 *) Добавление: поддержка EVFILER_TIMER в MacOSX 10.4. | |
7691 | |
7692 *) Изменение: обход ошибки обработки миллисекундных таймаутов kqueue в | |
7693 64-битном ядре MacOSX. | |
7694 Спасибо Андрею Нигматулину. | |
7695 | |
7696 *) Исправление: если внутри одного сервера описаны несколько директив | |
7697 listen, слушающих на разных адресах, то имена серверов вида | |
7698 "*.domain.tld" работали только для первого адреса; ошибка появилась в | |
7699 0.3.18. | |
7700 | |
7701 *) Исправление: при использовании протокола HTTPS в директиве proxy_pass | |
7702 не передавались запросы с телом, записанным во временный файл. | |
7703 | |
7704 *) Исправление: совместимость с perl 5.8.8. | |
7705 | |
7706 | |
7707 Изменения в nginx 0.3.30 22.02.2006 | |
7708 | |
7709 *) Изменение: уровень записи в лог ошибки ECONNABORTED изменён на error | |
7710 с уровня crit. | |
7711 | |
7712 *) Исправление: модуль ngx_http_perl_module не собирался без модуля | |
7713 ngx_http_ssi_filter_module. | |
7714 | |
7715 *) Исправление: nginx не собирался на i386 платформе, если использовался | |
7716 PIC; ошибка появилась в 0.3.27. | |
7717 | |
7718 | |
7719 Изменения в nginx 0.3.29 20.02.2006 | |
7720 | |
7721 *) Добавление: теперь nginx использует меньше памяти, если PHP в режиме | |
7722 FastCGI передаёт большое количество предупреждений перед ответом. | |
7723 | |
7724 *) Исправление: в ответах 204 для запросов версии HTTP/1.1 выдавалась | |
7725 строка заголовка "Transfer-Encoding: chunked". | |
7726 | |
7727 *) Исправление: nginx возвращал 502 код ответа, если FastCGI сервер | |
7728 передавал полные строки заголовка ответа в отдельных FastCGI записях. | |
7729 | |
7730 *) Исправление: если в директиве post_action был указан проксируемый | |
7731 URI, то он выполнялся только после успешного завершения запроса. | |
7732 | |
7733 | |
7734 Изменения в nginx 0.3.28 16.02.2006 | |
7735 | |
7736 *) Добавление: директива restrict_host_names упразднена. | |
7737 | |
7738 *) Добавление: параметр конфигурации --with-cpu-opt=ppc64. | |
7739 | |
7740 *) Исправление: при некоторых условиях проксированное соединение с | |
7741 клиентом завершалось преждевременно. | |
7742 Спасибо Владимиру Шутову. | |
7743 | |
7744 *) Исправление: строка заголовка "X-Accel-Limit-Rate" не учитывалась для | |
7745 запросов, перенаправленных с помощью строки "X-Accel-Redirect". | |
7746 | |
7747 *) Исправление: директива post_action работала только после успешного | |
7748 завершения запроса. | |
7749 | |
7750 *) Исправление: тело проксированного ответа, создаваемого директивой | |
7751 post_action, передавалось клиенту. | |
7752 | |
7753 | |
7754 Изменения в nginx 0.3.27 08.02.2006 | |
7755 | |
7756 *) Изменение: директивы variables_hash_max_size и | |
7757 variables_hash_bucket_size. | |
7758 | |
7759 *) Добавление: переменная $body_bytes_sent доступна не только в | |
7760 директиве log_format. | |
7761 | |
7762 *) Добавление: переменные $ssl_protocol и $ssl_cipher. | |
7763 | |
7764 *) Добавление: определение размера строки кэша распространённых | |
7765 процессоров при старте. | |
7766 | |
7767 *) Добавление: директива accept_mutex теперь поддерживается посредством | |
7768 fcntl(2) на платформах, отличных от i386, amd64, sparc64 и ppc. | |
7769 | |
7770 *) Добавление: директива lock_file и параметр автоконфигурации | |
7771 --with-lock-path=PATH. | |
7772 | |
7773 *) Исправление: при использовании протокола HTTPS в директиве proxy_pass | |
7774 не передавались запросы с телом. | |
7775 | |
7776 | |
7777 Изменения в nginx 0.3.26 03.02.2006 | |
7778 | |
7779 *) Изменение: директива optimize_host_names переименована в | |
7780 optimize_server_names. | |
7781 | |
7782 *) Исправление: при проксировании подзапроса в SSI бэкенду передавался | |
7783 URI основного запроса, если в директиве proxy_pass отсутствовал URI. | |
7784 | |
7785 | |
7786 Изменения в nginx 0.3.25 01.02.2006 | |
7787 | |
7788 *) Исправление: при неверной конфигурации на старте или во время | |
7789 переконфигурации происходил segmentation fault; ошибка появилась в | |
7790 0.3.24. | |
7791 | |
7792 | |
7793 Изменения в nginx 0.3.24 01.02.2006 | |
7794 | |
7795 *) Изменение: обход ошибки в kqueue во FreeBSD. | |
7796 | |
7797 *) Исправление: ответ, создаваемый директивой post_action, теперь не | |
7798 передаётся клиенту. | |
7799 | |
7800 *) Исправление: при использовании большого количества лог-файлов | |
7801 происходила утечка памяти. | |
7802 | |
7803 *) Исправление: внутри одного location работала только первая директива | |
7804 proxy_redirect. | |
7805 | |
7806 *) Исправление: на 64-битных платформах при старте мог произойти | |
7807 segmentation fault, если использовалось большое количество имён в | |
7808 директивах server_name; ошибка появилась в 0.3.18. | |
7809 | |
7810 | |
7811 Изменения в nginx 0.3.23 24.01.2006 | |
7812 | |
7813 *) Добавление: директива optimize_host_names. | |
7814 | |
7815 *) Исправление: ошибки при использовании переменных в директивах path и | |
7816 alias. | |
7817 | |
7818 *) Исправление: модуль ngx_http_perl_module неправильно собирался на | |
7819 Linux и Solaris. | |
7820 | |
7821 | |
7822 Изменения в nginx 0.3.22 17.01.2006 | |
7823 | |
7824 *) Добавление: модуль ngx_http_perl_module поддерживает методы $r->args | |
7825 и $r->unescape. | |
7826 | |
7827 *) Добавление: метод $r->query_string в модуле ngx_http_perl_module | |
7828 упразднён. | |
7829 | |
7830 *) Исправление: если в директиве valid_referers указаны только none или | |
7831 blocked, то происходил segmentation fault; ошибка появилась в 0.3.18. | |
7832 | |
7833 | |
7834 Изменения в nginx 0.3.21 16.01.2006 | |
7835 | |
7836 *) Добавление: модуль ngx_http_perl_module. | |
7837 | |
7838 *) Изменение: директива valid_referers разрешает использовать рефереры | |
7839 совсем без URI. | |
7840 | |
7841 | |
7842 Изменения в nginx 0.3.20 11.01.2006 | |
7843 | |
7844 *) Исправление: ошибки в обработке SSI. | |
7845 | |
7846 *) Исправление: модуль ngx_http_memcached_module не поддерживал ключи в | |
7847 виде /uri?args. | |
7848 | |
7849 | |
7850 Изменения в nginx 0.3.19 28.12.2005 | |
7851 | |
7852 *) Добавление: директивы path и alias поддерживают переменные. | |
7853 | |
7854 *) Изменение: теперь директива valid_referers опять учитывает URI. | |
7855 | |
7856 *) Исправление: ошибки в обработке SSI. | |
7857 | |
7858 | |
7859 Изменения в nginx 0.3.18 26.12.2005 | |
7860 | |
7861 *) Добавление: директива server_names поддерживает имена вида | |
7862 ".domain.tld". | |
7863 | |
7864 *) Добавление: директива server_names использует хэш для имён вида | |
7865 "*.domain.tld" и более эффективный хэш для обычных имён. | |
7866 | |
7867 *) Изменение: директивы server_names_hash_max_size и | |
7868 server_names_hash_bucket_size. | |
7869 | |
7870 *) Изменение: директивы server_names_hash и server_names_hash_threshold | |
7871 упразднены. | |
7872 | |
7873 *) Добавление: директива valid_referers использует хэш для имён сайтов. | |
7874 | |
7875 *) Изменение: теперь директива valid_referers проверяет только имена | |
7876 сайтов без учёта URI. | |
7877 | |
7878 *) Исправление: некоторые имена вида ".domain.tld" неверно | |
7879 обрабатывались модулем ngx_http_map_module. | |
7880 | |
7881 *) Исправление: если конфигурационного файла не было, то происходил | |
7882 segmentation fault; ошибка появилась в 0.3.12. | |
7883 | |
7884 *) Исправление: на 64-битных платформах при старте мог произойти | |
7885 segmentation fault; ошибка появилась в 0.3.16. | |
7886 | |
7887 | |
7888 Изменения в nginx 0.3.17 18.12.2005 | |
7889 | |
7890 *) Изменение: на Linux configure теперь проверяет наличие epoll и | |
7891 sendfile64() в ядре. | |
7892 | |
7893 *) Добавление: директива map поддерживает доменные имена в формате | |
7894 ".domain.tld". | |
7895 | |
7896 *) Исправление: во время SSL handshake не иcпользовались таймауты; | |
7897 ошибка появилась в 0.2.4. | |
7898 | |
7899 *) Исправление: в использовании протокола HTTPS в директиве proxy_pass. | |
7900 | |
7901 *) Исправление: при использовании протокола HTTPS в директиве proxy_pass | |
7902 по умолчанию использовался порт 80. | |
7903 | |
7904 | |
7905 Изменения в nginx 0.3.16 16.12.2005 | |
7906 | |
7907 *) Добавление: модуль ngx_http_map_module. | |
7908 | |
7909 *) Добавление: директивы types_hash_max_size и types_hash_bucket_size. | |
7910 | |
7911 *) Добавление: директива ssi_value_length. | |
7912 | |
7913 *) Добавление: директива worker_rlimit_core. | |
7914 | |
7915 *) Изменение: при сборке компиляторами icc 8.1 и 9.0 с оптимизацией для | |
7916 Pentium 4 номер соединения в логах всегда был равен 1. | |
7917 | |
7918 *) Исправление: команда config timefmt в SSI задавала неверный формат | |
7919 времени. | |
7920 | |
7921 *) Исправление: nginx не закрывал соединения с IMAP/POP3 бэкендом при | |
7922 использовании SSL соединений; ошибка появилась в 0.3.13. | |
7923 Спасибо Rob Mueller. | |
7924 | |
7925 *) Исправление: segmentation fault мог произойти во время SSL shutdown; | |
7926 ошибка появилась в 0.3.13. | |
7927 | |
7928 | |
7929 Изменения в nginx 0.3.15 07.12.2005 | |
7930 | |
7931 *) Добавление: новой код 444 в директиве return для закрытия соединения. | |
7932 | |
7933 *) Добавление: директива so_keepalive в IMAP/POP3 прокси. | |
7934 | |
7935 *) Исправление: nginx теперь вызывает abort() при обнаружении незакрытых | |
7936 соединений только при плавном выходе и включённой директиве | |
7937 debug_points. | |
7938 | |
7939 | |
7940 Изменения в nginx 0.3.14 05.12.2005 | |
7941 | |
7942 *) Исправление: в ответе 304 передавалось тело ответа; ошибка появилась | |
7943 в 0.3.13. | |
7944 | |
7945 | |
7946 Изменения в nginx 0.3.13 05.12.2005 | |
7947 | |
7948 *) Добавление: IMAP/POP3 прокси поддерживает STARTTLS и STLS. | |
7949 | |
7950 *) Исправление: IMAP/POP3 прокси не работала с методами select, poll и | |
7951 /dev/poll. | |
7952 | |
7953 *) Исправление: ошибки в обработке SSI. | |
7954 | |
7955 *) Исправление: sendfilev() в Solaris теперь не используется при | |
7956 передаче тела запроса FastCGI-серверу через unix domain сокет. | |
7957 | |
7958 *) Исправление: директива auth_basic не запрещала аутентификацию; ошибка | |
7959 появилась в 0.3.11. | |
7960 | |
7961 | |
7962 Изменения в nginx 0.3.12 26.11.2005 | |
7963 | |
7964 *) Безопасность: если nginx был собран с модулем ngx_http_realip_module, | |
7965 то при использовании директивы "satisfy_any on" директивы доступа и | |
7966 аутентификации не работали. Модуль ngx_http_realip_module не | |
7967 собирался и не собирается по умолчанию. | |
7968 | |
7969 *) Изменение: имя переменной "$time_gmt" изменено на "$time_local". | |
7970 | |
7971 *) Изменение: директивы proxy_header_buffer_size и | |
7972 fastcgi_header_buffer_size переименованы соответственно в | |
7973 proxy_buffer_size и fastcgi_buffer_size. | |
7974 | |
7975 *) Добавление: модуль ngx_http_memcached_module. | |
7976 | |
7977 *) Добавление: директива proxy_buffering. | |
7978 | |
7979 *) Исправление: изменение в работе с accept mutex при использовании | |
7980 метода rtsig; ошибка появилась в 0.3.0. | |
7981 | |
7982 *) Исправление: если клиент передал строку "Transfer-Encoding: chunked" | |
7983 в заголовке запроса, то nginx теперь выдаёт ошибку 411. | |
7984 | |
7985 *) Исправление: при наследовании директивы auth_basic с уровня http в | |
7986 строке "WWW-Authenticate" заголовка ответа выводился realm без текста | |
7987 "Basic realm". | |
7988 | |
7989 *) Исправление: если в директиве access_log был явно указан формат | |
7990 combined, то в лог записывались пустые строки; ошибка появилась в | |
7991 0.3.8. | |
7992 | |
7993 *) Исправление: nginx не работал на платформе sparc под любыми OS, кроме | |
7994 Solaris. | |
7995 | |
7996 *) Исправление: в директиве if теперь не нужно разделять пробелом строку | |
7997 в кавычках и закрывающую скобку. | |
7998 | |
7999 | |
8000 Изменения в nginx 0.3.11 15.11.2005 | |
8001 | |
8002 *) Исправление: nginx не передавал при проксировании тело запроса и | |
8003 строки заголовка клиента; ошибка появилась в 0.3.10. | |
8004 | |
8005 | |
8006 Изменения в nginx 0.3.10 15.11.2005 | |
8007 | |
8008 *) Изменение: директива valid_referers и переменная $invalid_referer | |
8009 перенесены из модуля ngx_http_rewrite_module в новый модуль | |
8010 ngx_http_referer_module. | |
8011 | |
8012 *) Изменение: имя переменной "$apache_bytes_sent" изменено на | |
8013 "$body_bytes_sent". | |
8014 | |
8015 *) Добавление: переменные "$sent_http_...". | |
8016 | |
8017 *) Добавление: директива if поддерживает операции "=" и "!=". | |
8018 | |
8019 *) Добавление: директива proxy_pass поддерживает протокол HTTPS. | |
8020 | |
8021 *) Добавление: директива proxy_set_body. | |
8022 | |
8023 *) Добавление: директива post_action. | |
8024 | |
8025 *) Добавление: модуль ngx_http_empty_gif_module. | |
8026 | |
8027 *) Добавление: директива worker_cpu_affinity для Linux. | |
8028 | |
8029 *) Исправление: директива rewrite не раскодировала символы в редиректах | |
8030 в URI, теперь символы раскодируются, кроме символов %00-%25 и | |
8031 %7F-%FF. | |
8032 | |
8033 *) Исправление: nginx не собирался компилятором icc 9.0. | |
8034 | |
8035 *) Исправление: если для статического файла нулевого размера был | |
8036 разрешён SSI, то ответ передавался неверно при кодировании chunk'ами. | |
8037 | |
8038 | |
8039 Изменения в nginx 0.3.9 10.11.2005 | |
8040 | |
8041 *) Исправление: nginx считал небезопасными URI, в которых между двумя | |
8042 слэшами находилось два любых символа; ошибка появилась в 0.3.8. | |
8043 | |
8044 | |
8045 Изменения в nginx 0.3.8 09.11.2005 | |
8046 | |
8047 *) Безопасность: nginx теперь проверят URI, полученные от бэкенда в | |
8048 строке "X-Accel-Redirect" в заголовке ответа, или в SSI файле на | |
8049 наличие путей "/../" и нулей. | |
8050 | |
8051 *) Изменение: nginx теперь не воспринимает пустое имя как правильное в | |
8052 строке "Authorization" в заголовке запроса. | |
8053 | |
8054 *) Добавление: директива ssl_session_timeout модулей ngx_http_ssl_module | |
8055 и ngx_imap_ssl_module. | |
8056 | |
8057 *) Добавление: директива auth_http_header модуля | |
8058 ngx_imap_auth_http_module. | |
8059 | |
8060 *) Добавление: директива add_header. | |
8061 | |
8062 *) Добавление: модуль ngx_http_realip_module. | |
8063 | |
8064 *) Добавление: новые переменные для использования в директиве | |
8065 log_format: $bytes_sent, $apache_bytes_sent, $status, $time_gmt, | |
8066 $uri, $request_time, $request_length, $upstream_status, | |
8067 $upstream_response_time, $gzip_ratio, $uid_got, $uid_set, | |
8068 $connection, $pipe и $msec. Параметры в виде "%name" скоро будут | |
8069 упразднены. | |
8070 | |
8071 *) Изменение: в директиве "if" ложными значениями переменных теперь | |
8072 являются пустая строка "" и строки, начинающиеся на "0". | |
8073 | |
8074 *) Исправление: при работает с проксированными или FastCGI-серверами | |
8075 nginx мог оставлять открытыми соединения и временные файлы с | |
8076 запросами клиентов. | |
8077 | |
8078 *) Исправление: рабочие процессы не сбрасывали буферизированные логи при | |
8079 плавном выходе. | |
8080 | |
8081 *) Исправление: если URI запроса изменялось с помощью rewrite, а затем | |
8082 запрос проксировался в location, заданном регулярным выражением, то | |
8083 бэкенду передавался неверный запрос; ошибка появилась в 0.2.6. | |
8084 | |
8085 *) Исправление: директива expires не удаляла уже установленную строку | |
8086 заголовка "Expires". | |
8087 | |
8088 *) Исправление: при использовании метода rtsig и нескольких рабочих | |
8089 процессах nginx мог перестать принимать запросы. | |
8090 | |
8091 *) Исправление: в SSI командах неверно обрабатывались строки "\"" и | |
8092 "\'". | |
8093 | |
8094 *) Исправление: если ответ заканчивался сразу же после SSI команды, то | |
8095 при использовании сжатия ответ передавался не до конца или не | |
8096 передавался вообще. | |
8097 | |
8098 | |
8099 Изменения в nginx 0.3.7 27.10.2005 | |
8100 | |
8101 *) Добавление: директива access_log поддерживает параметр buffer=. | |
8102 | |
8103 *) Исправление: nginx не собирался на платформах, отличных от i386, | |
8104 amd64, sparc и ppc; ошибка появилась в 0.3.2. | |
8105 | |
8106 | |
8107 Изменения в nginx 0.3.6 24.10.2005 | |
8108 | |
8109 *) Изменение: IMAP/POP3 прокси теперь не передаёт серверу авторизации | |
8110 пустой логин. | |
8111 | |
8112 *) Добавление: директива log_format поддерживает переменные в виде | |
8113 $name. | |
8114 | |
8115 *) Исправление: если хотя бы в одном сервере не было описано ни одной | |
8116 директивы listen, то nginx не слушал на 80 порту; ошибка появилась в | |
8117 0.3.3. | |
8118 | |
8119 *) Исправление: если в директиве proxy_pass отсутствовал URI, то всегда | |
8120 использовался порт 80. | |
8121 | |
8122 | |
8123 Изменения в nginx 0.3.5 21.10.2005 | |
8124 | |
8125 *) Исправление: если логин IMAP/POP3 менялся сервером авторизации, то | |
8126 мог произойти segmentation fault; ошибка появилась в 0.2.2. | |
8127 | |
8128 *) Исправление: accept mutex не работал, все соединения обрабатывались | |
8129 одним рабочим процессом; ошибка появилась в 0.3.3. | |
8130 | |
8131 *) Исправление: при использовании метода rtsig и директивы | |
8132 timer_resolution не работали таймауты. | |
8133 | |
8134 | |
8135 Изменения в nginx 0.3.4 19.10.2005 | |
8136 | |
8137 *) Исправление: nginx не собирался на Linux 2.4+ и MacOS X; ошибка | |
8138 появилась в 0.3.3. | |
8139 | |
8140 | |
8141 Изменения в nginx 0.3.3 19.10.2005 | |
8142 | |
8143 *) Изменение: параметры "bl" и "af" директивы listen переименованы в | |
8144 "backlog" и "accept_filter". | |
8145 | |
8146 *) Добавление: параметры "rcvbuf" и "sndbuf" в директиве listen. | |
8147 | |
8148 *) Изменение: параметр лога $msec теперь не требует дополнительного | |
8149 системного вызова gettimeofday(). | |
8150 | |
8151 *) Добавление: ключ -t теперь проверяет директивы listen. | |
8152 | |
8153 *) Исправление: если в директиве listen был указан неверный адрес, то | |
8154 nginx после сигнала -HUP оставлял открытый сокет в состоянии CLOSED. | |
8155 | |
8156 *) Исправление: для индексных файлов, содержащих в имени переменную, мог | |
8157 неверно выставляться тип mime по умолчанию; ошибка появилась в 0.3.0. | |
8158 | |
8159 *) Добавление: директива timer_resolution. | |
8160 | |
8161 *) Добавление: параметр лога $upstream_response_time в миллисекундах. | |
8162 | |
8163 *) Исправление: временный файл с телом запроса клиента теперь удаляется | |
8164 сразу после того, как клиенту передан заголовок ответа. | |
8165 | |
8166 *) Исправление: совместимость с OpenSSL 0.9.6. | |
8167 | |
8168 *) Исправление: пути к файлам с SSL сертификатом и ключом не могли быть | |
8169 относительными. | |
8170 | |
8171 *) Исправление: директива ssl_prefer_server_ciphers не работала для | |
8172 модуля ngx_imap_ssl_module. | |
8173 | |
8174 *) Исправление: директива ssl_protocols позволяла задать только один | |
8175 протокол. | |
8176 | |
8177 | |
8178 Изменения в nginx 0.3.2 12.10.2005 | |
8179 | |
8180 *) Добавление: поддержка Sun Studio 10 C compiler. | |
8181 | |
8182 *) Добавление: директивы proxy_upstream_max_fails, | |
8183 proxy_upstream_fail_timeout, fastcgi_upstream_max_fails и | |
8184 fastcgi_upstream_fail_timeout. | |
8185 | |
8186 | |
8187 Изменения в nginx 0.3.1 10.10.2005 | |
8188 | |
8189 *) Исправление: во время переполнения очереди сигналов при использовании | |
8190 метода rtsig происходил segmentation fault; ошибка появилась в 0.2.0. | |
8191 | |
8192 *) Изменение: корректная обработка пар "\\", "\"", "\'" и "\$" в SSI. | |
8193 | |
8194 | |
8195 Изменения в nginx 0.3.0 07.10.2005 | |
8196 | |
8197 *) Изменение: убрано десятидневное ограничение времени работы рабочего | |
8198 процесса. Ограничение было введено из-за переполнения миллисекундных | |
8199 таймеров. | |
8200 | |
8201 | |
8202 Изменения в nginx 0.2.6 05.10.2005 | |
8203 | |
8204 *) Изменение: с 60 до 10 секунд уменьшено время повторного обращения к | |
8205 бэкенду при использовании распределения нагрузки. | |
8206 | |
8207 *) Изменение: директива proxy_pass_unparsed_uri упразднена, оригинальный | |
8208 запрос теперь передаётся, если в директиве proxy_pass отсутствует | |
8209 URI. | |
8210 | |
8211 *) Добавление: директива error_page поддерживает редиректы и позволяет | |
8212 более гибко менять код ошибки. | |
8213 | |
8214 *) Изменение: в проксированных подзапросах теперь игнорируется | |
8215 переданный charset. | |
8216 | |
8217 *) Исправление: если после изменения URI в блоке if для запроса не | |
8218 находилась новая конфигурация, то правила модуля | |
8219 ngx_http_rewrite_module выполнялись снова. | |
8220 | |
8221 *) Исправление: если директива set устанавливала переменную модуля | |
8222 ngx_http_geo_module в какой-либо части конфигурации, то эта | |
8223 переменная не была доступна в других частях конфигурации и выдавалась | |
8224 ошибка "using uninitialized variable"; ошибка появилась в 0.2.2. | |
8225 | |
8226 | |
8227 Изменения в nginx 0.2.5 04.10.2005 | |
8228 | |
8229 *) Изменение: дублирующее значение переменной модуля ngx_http_geo_module | |
8230 теперь выдаёт предупреждение и изменяет старое значение. | |
8231 | |
8232 *) Добавление: модуль ngx_http_ssi_module поддерживает команду set. | |
8233 | |
8234 *) Добавление: модуль ngx_http_ssi_module поддерживает параметр file в | |
8235 команде include. | |
8236 | |
8237 *) Добавление: модуль ngx_http_ssi_module поддерживает подстановку | |
8238 значений переменных в выражениях команды if. | |
8239 | |
8240 | |
8241 Изменения в nginx 0.2.4 03.10.2005 | |
8242 | |
8243 *) Добавление: модуль ngx_http_ssi_module поддерживает выражения | |
8244 "$var=text", "$var!=text", "$var=/text/" и "$var!=/text/" в команде | |
8245 if. | |
8246 | |
8247 *) Исправление: ошибки при проксировании location без слэша в конце; | |
8248 ошибка появилась в 0.1.44. | |
8249 | |
8250 *) Исправление: при использовании метода rtsig мог произойти | |
8251 segmentation fault; ошибка появилась в 0.2.0. | |
8252 | |
8253 | |
8254 Изменения в nginx 0.2.3 30.09.2005 | |
8255 | |
8256 *) Исправление: nginx не собирался без параметра --with-debug; ошибка | |
8257 появилась в 0.2.2. | |
8258 | |
8259 | |
8260 Изменения в nginx 0.2.2 30.09.2005 | |
8261 | |
8262 *) Добавление: команда config errmsg в модуле ngx_http_ssi_module. | |
8263 | |
8264 *) Изменение: переменные модуля ngx_http_geo_module можно переопределять | |
8265 директивой set. | |
8266 | |
8267 *) Добавление: директивы ssl_protocols и ssl_prefer_server_ciphers | |
8268 модулей ngx_http_ssl_module и ngx_imap_ssl_module. | |
8269 | |
8270 *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе | |
8271 длинных имён файлов; | |
8272 | |
8273 *) Исправление: модуль ngx_http_autoindex_module теперь не показывает | |
8274 файлы, начинающиеся на точку. | |
8275 | |
8276 *) Исправление: если SSL handshake завершался с ошибкой, то это могло | |
8277 привести также к закрытию другого соединения. | |
8278 Спасибо Rob Mueller. | |
8279 | |
8280 *) Исправление: экспортные версии MSIE 5.x не могли соединиться по | |
8281 HTTPS. | |
8282 | |
8283 | |
8284 Изменения в nginx 0.2.1 23.09.2005 | |
8285 | |
8286 *) Исправление: если все бэкенды, используемые для балансировки | |
8287 нагрузки, оказывались в нерабочем состоянии после одной ошибки, то | |
8288 nginx мог зациклится; ошибка появилась в 0.2.0. | |
8289 | |
8290 | |
8291 Изменения в nginx 0.2.0 23.09.2005 | |
8292 | |
8293 *) Изменились имена pid-файлов, используемые во время обновления | |
8294 исполняемого файла. Ручное переименование теперь не нужно. Старый | |
8295 основной процесс добавляет к своему pid-файл суффикс ".oldbin" и | |
8296 запускает новый исполняемый файл. Новый основной процесс создаёт | |
8297 обычный pid-файл без суффикса ".newbin". Если новый основной процесс | |
8298 выходит, то старый процесс переименовывает свой pid-файл c суффиксом | |
8299 ".oldbin" в pid-файл без суффикса. При обновлении с версии 0.1.х до | |
8300 0.2.0 нужно учитывать, что оба процесса - старый 0.1.x и новый | |
8301 0.2.0 - используют pid-файл без суффиксов. | |
8302 | |
8303 *) Изменение: директива worker_connections, новое название директивы | |
8304 connections; директива теперь задаёт максимальное число соединений, а | |
8305 не максимально возможный номер дескриптора для сокета. | |
8306 | |
8307 *) Добавление: SSL поддерживает кэширование сессий в пределах одного | |
8308 рабочего процесса. | |
8309 | |
8310 *) Добавление: директива satisfy_any. | |
8311 | |
8312 *) Изменение: модули ngx_http_access_module и ngx_http_auth_basic_module | |
8313 не работают для подзапросов. | |
8314 | |
8315 *) Добавление: директивы worker_rlimit_nofile и | |
8316 worker_rlimit_sigpending. | |
8317 | |
8318 *) Исправление: если все бэкенды, используемые для балансировки | |
8319 нагрузки, оказывались в нерабочем состоянии после одной ошибки, то | |
8320 nginx не обращался к ним в течение 60 секунд. | |
8321 | |
8322 *) Исправление: в парсинге аргументов IMAP/POP3 команд. | |
8323 Спасибо Rob Mueller. | |
8324 | |
8325 *) Исправление: ошибки при использовании SSL в IMAP/POP3 прокси. | |
8326 | |
8327 *) Исправление: ошибки при использовании SSI и сжатия. | |
8328 | |
8329 *) Исправление: в ответах 304 не добавлялись строки заголовка ответа | |
8330 "Expires" и "Cache-Control". | |
8331 Спасибо Александру Кукушкину. | |
8332 | |
8333 | |
8334 Изменения в nginx 0.1.45 08.09.2005 | |
8335 | |
8336 *) Изменение: директива ssl_engine упразднена в модуле | |
8337 ngx_http_ssl_module и перенесена на глобальный уровень. | |
8338 | |
8339 *) Исправление: ответы с подзапросами, включённые с помощью SSI, не | |
8340 передавались через SSL соединение. | |
8341 | |
8342 *) Разные исправления в IMAP/POP3 прокси. | |
8343 | |
8344 | |
8345 Изменения в nginx 0.1.44 06.09.2005 | |
8346 | |
8347 *) Добавление: IMAP/POP3 прокси поддерживает SSL. | |
8348 | |
8349 *) Добавление: директива proxy_timeout модуля ngx_imap_proxy_module. | |
8350 | |
8351 *) Добавление: директива userid_mark. | |
8352 | |
8353 *) Добавление: значение переменной $remote_user определяется независимо | |
8354 от того, используется ли авторизация или нет. | |
8355 | |
8356 | |
8357 Изменения в nginx 0.1.43 30.08.2005 | |
8358 | |
8359 *) Добавление: listen(2) backlog в директиве listen можно менять по | |
8360 сигналу -HUP. | |
8361 | |
8362 *) Добавление: скрипт geo2nginx.pl добавлен в contrib. | |
8363 | |
8364 *) Изменение: параметры FastCGI с пустым значениями теперь передаются | |
8365 серверу. | |
8366 | |
8367 *) Исправление: если в ответе проксированного сервера или FastCGI | |
8368 сервера была строка "Cache-Control", то при использовании директивы | |
8369 expires происходил segmentation fault или рабочий процесс мог | |
8370 зациклится; в режиме прокси ошибка появилась в 0.1.29. | |
8371 | |
8372 | |
8373 Изменения в nginx 0.1.42 23.08.2005 | |
8374 | |
8375 *) Исправление: если URI запроса получался нулевой длины после обработки | |
8376 модулем ngx_http_rewrite_module, то в модуле ngx_http_proxy_module | |
8377 происходил segmentation fault или bus error. | |
8378 | |
8379 *) Исправление: директива limit_rate не работала внутри блока if; ошибка | |
8380 появилась в 0.1.38. | |
8381 | |
8382 | |
8383 Изменения в nginx 0.1.41 25.07.2005 | |
8384 | |
8385 *) Исправление: если переменная использовалась в файле конфигурации, то | |
8386 она не могла использоваться в SSI. | |
8387 | |
8388 | |
8389 Изменения в nginx 0.1.40 22.07.2005 | |
8390 | |
8391 *) Исправление: если клиент слал очень длинную строку заголовка, то в | |
8392 логе не помещалась информация, связанная с этим запросом. | |
8393 | |
8394 *) Исправление: при использовании "X-Accel-Redirect" не передавалась | |
8395 строка "Set-Cookie"; ошибка появилась в 0.1.39. | |
8396 | |
8397 *) Исправление: при использовании "X-Accel-Redirect" не передавалась | |
8398 строка "Content-Disposition". | |
8399 | |
8400 *) Исправление: по сигналу SIGQUIT основной процесс не закрывал сокеты, | |
8401 на которых он слушал. | |
8402 | |
8403 *) Исправление: после обновления исполняемого файла на лету на Linux и | |
8404 Solaris название процесса в команде ps становилось короче. | |
8405 | |
8406 | |
8407 Изменения в nginx 0.1.39 14.07.2005 | |
8408 | |
8409 *) Изменения в модуле ngx_http_charset_module: директива default_charset | |
8410 упразднена; директива charset задаёт кодировку ответа; директива | |
8411 source_charset задаёт только исходную кодировку. | |
8412 | |
8413 *) Исправление: при перенаправлении ошибки 401, полученной от бэкенда, | |
8414 не передавалась строка заголовка "WWW-Authenticate". | |
8415 | |
8416 *) Исправление: модули ngx_http_proxy_module и ngx_http_fastcgi_module | |
8417 могли закрыть соединение до того, как что-нибудь было передано | |
8418 клиенту; ошибка появилась в 0.1.38. | |
8419 | |
8420 *) Изменение: обработка ошибки инициализации в crypt_r() в Linux glibc. | |
8421 | |
8422 *) Исправление: модуль ngx_http_ssi_module не поддерживал относительные | |
8423 URI в команде include virtual. | |
8424 | |
8425 *) Исправление: если в строке заголовка ответа бэкенда была строка | |
8426 "Location", которую nginx не должен был изменять, то в ответе | |
8427 передавалось тело 500 ошибки; ошибка появилась в 0.1.29. | |
8428 | |
8429 *) Исправление: некоторые директивы модулей ngx_http_proxy_module и | |
8430 ngx_http_fastcgi_module не наследовались с уровня server на уровень | |
8431 location; ошибка появилась в 0.1.29. | |
8432 | |
8433 *) Исправление: модуль ngx_http_ssl_module не поддерживал цепочки | |
8434 сертификатов. | |
8435 | |
8436 *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе | |
8437 длинных имён файлов; ошибка появилась в 0.1.38. | |
8438 | |
8439 *) Исправления в IMAP/POP3 прокси при взаимодействии с бэкендом на | |
8440 стадии login. | |
8441 | |
8442 | |
8443 Изменения в nginx 0.1.38 08.07.2005 | |
8444 | |
8445 *) Добавление: директива limit_rate поддерживается в режиме прокси и | |
8446 FastCGI. | |
8447 | |
8448 *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка | |
8449 "X-Accel-Limit-Rate" в ответе бэкенда. | |
8450 | |
8451 *) Добавление: директива break. | |
8452 | |
8453 *) Добавление: директива log_not_found. | |
8454 | |
8455 *) Исправление: при перенаправлении запроса с помощью строки заголовка | |
8456 "X-Accel-Redirect" не изменялся код ответа. | |
8457 | |
8458 *) Исправление: переменные, установленные директивой set не могли | |
8459 использоваться в SSI. | |
8460 | |
8461 *) Исправление: при включении в SSI более одного удалённого подзапроса | |
8462 мог произойти segmentation fault. | |
8463 | |
8464 *) Исправление: если статусная строка в ответе бэкенда передавалась в | |
8465 двух пакетах, то nginx считал ответ неверным; ошибка появилась в | |
8466 0.1.29. | |
8467 | |
8468 *) Добавление: директива ssi_types. | |
8469 | |
8470 *) Добавление: директива autoindex_exact_size. | |
8471 | |
8472 *) Исправление: модуль ngx_http_autoindex_module не поддерживал длинные | |
8473 имена файлов в UTF-8. | |
8474 | |
8475 *) Добавление: IMAP/POP3 прокси. | |
8476 | |
8477 | |
8478 Изменения в nginx 0.1.37 23.06.2005 | |
8479 | |
8480 *) Изменение: в конце файла nginx.pid теперь добавляется "\n". | |
8481 | |
8482 *) Исправление: при включении большого количества вставок или нескольких | |
8483 больших вставок с помощью SSI ответ мог передаваться не полностью. | |
8484 | |
8485 *) Исправление: если все бэкенды возвращали ответ 404, то при | |
8486 использовании параметра http_404 в директивах proxy_next_upstream или | |
8487 fastcgi_next_upstream, nginx начинал запрашивать все бэкенды снова. | |
8488 | |
8489 | |
8490 Изменения в nginx 0.1.36 15.06.2005 | |
8491 | |
8492 *) Изменение: если в заголовке запроса есть дублирующиеся строки "Host", | |
8493 "Connection", "Content-Length" и "Authorization", то nginx теперь | |
8494 выдаёт ошибку 400. | |
8495 | |
8496 *) Изменение: директива post_accept_timeout упразднена. | |
8497 | |
8498 *) Добавление: параметры default, af=, bl=, deferred и bind в директиве | |
8499 listen. | |
8500 | |
8501 *) Добавление: поддержка accept фильтров во FreeBSD. | |
8502 | |
8503 *) Добавление: поддержка TCP_DEFER_ACCEPT в Linux. | |
8504 | |
8505 *) Исправление: модуль ngx_http_autoindex_module не поддерживал имена | |
8506 файлов в UTF-8. | |
8507 | |
8508 *) Исправление: после добавления новый лог-файл ротация этого лога по | |
8509 сигналу -USR1 выполнялась, только если переконфигурировать nginx два | |
8510 раза по сигналу -HUP. | |
8511 | |
8512 | |
8513 Изменения в nginx 0.1.35 07.06.2005 | |
8514 | |
8515 *) Добавление: директива working_directory. | |
8516 | |
8517 *) Добавление: директива port_in_redirect. | |
8518 | |
8519 *) Исправление: если заголовок ответа бэкенда не помещался в один пакет, | |
8520 то происходил segmentation fault; ошибка появилась в 0.1.29. | |
8521 | |
8522 *) Исправление: если было сконфигурировано более 10 серверов или в | |
8523 сервере не описана директива "listen", то при запуске мог произойти | |
8524 segmentation fault. | |
8525 | |
8526 *) Исправление: если ответ не помещался во временный файл, то мог | |
8527 произойти segmentation fault. | |
8528 | |
8529 *) Исправление: nginx возвращал ошибку 400 на запросы вида | |
8530 "GET http://www.domain.com/uri HTTP/1.0"; ошибка появилась в 0.1.28. | |
8531 | |
8532 | |
8533 Изменения в nginx 0.1.34 26.05.2005 | |
8534 | |
8535 *) Исправление: при включении больших ответов с помощью SSI рабочий | |
8536 процесс мог зациклиться. | |
8537 | |
8538 *) Исправление: переменные, устанавливаемые директивой "set", не были | |
8539 доступны в SSI. | |
8540 | |
8541 *) Добавление: директива autoindex_localtime. | |
8542 | |
8543 *) Исправление: пустое значение в директиве proxy_set_header запрещает | |
8544 передачу заголовка. | |
8545 | |
8546 | |
8547 Изменения в nginx 0.1.33 23.05.2005 | |
8548 | |
8549 *) Исправление: nginx не собирался с параметром --without-pcre; ошибка | |
8550 появилась в 0.1.29. | |
8551 | |
8552 *) Исправление: 3, 5, 7 и 8 директив proxy_set_header на одном уровне | |
8553 вызывали bus fault при запуске. | |
8554 | |
8555 *) Исправление: в редиректах внутри HTTPS сервера был указан протокол | |
8556 HTTP. | |
8557 | |
8558 *) Исправление: если директива rewrite использовала выделения внутри | |
8559 директивы if, то возвращалась ошибка 500. | |
8560 | |
8561 | |
8562 Изменения в nginx 0.1.32 19.05.2005 | |
8563 | |
8564 *) Исправление: в редиректах, выдаваемых с помощью директивы rewrite, не | |
8565 передавались аргументы; ошибка появилась в 0.1.29. | |
8566 | |
8567 *) Добавление: директива if поддерживает выделения в регулярных | |
8568 выражениях. | |
8569 | |
8570 *) Добавление: директива set поддерживает переменные и выделения из | |
8571 регулярных выражений. | |
8572 | |
8573 *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка | |
8574 "X-Accel-Redirect" в ответе бэкенда. | |
8575 | |
8576 | |
8577 Изменения в nginx 0.1.31 16.05.2005 | |
8578 | |
8579 *) Исправление: при использовании SSL ответ мог передаваться не до | |
8580 конца. | |
8581 | |
8582 *) Исправление: ошибки при обработке SSI в ответе, полученного от | |
8583 FastCGI-сервера. | |
8584 | |
8585 *) Исправление: ошибки при использовании SSI и сжатия. | |
8586 | |
8587 *) Исправление: редирект с кодом 301 передавался без тела ответа; ошибка | |
8588 появилась в 0.1.30. | |
8589 | |
8590 | |
8591 Изменения в nginx 0.1.30 14.05.2005 | |
8592 | |
8593 *) Исправление: при использовании SSI рабочий процесс мог зациклиться. | |
8594 | |
8595 *) Исправление: при использовании SSL ответ мог передаваться не до | |
8596 конца. | |
8597 | |
8598 *) Исправление: если длина части ответа, полученного за один раз от | |
8599 проксируемого или FastCGI сервера была равна 500 байт, то nginx | |
8600 возвращал код ответа 500; в режиме прокси ошибка появилась только в | |
8601 0.1.29. | |
8602 | |
8603 *) Исправление: nginx не считал неверными директивы с 8-ю или 9-ю | |
8604 параметрами. | |
8605 | |
8606 *) Добавление: директива return может возвращать код ответа 204. | |
8607 | |
8608 *) Добавление: директива ignore_invalid_headers. | |
8609 | |
8610 | |
8611 Изменения в nginx 0.1.29 12.05.2005 | |
8612 | |
8613 *) Добавление: модуль ngx_http_ssi_module поддерживает команду include | |
8614 virtual. | |
8615 | |
8616 *) Добавление: модуль ngx_http_ssi_module поддерживает условную команду | |
8617 вида 'if expr="$NAME"' и команды else и endif. Допускается только | |
8618 один уровень вложенности. | |
8619 | |
8620 *) Добавление: модуль ngx_http_ssi_module поддерживает две переменные | |
8621 DATE_LOCAL и DATE_GMT и команду config timefmt. | |
8622 | |
8623 *) Добавление: директива ssi_ignore_recycled_buffers. | |
8624 | |
8625 *) Исправление: если переменная QUERY_STRING не была определена, то в | |
8626 команде echo не ставилось значение по умолчанию. | |
8627 | |
8628 *) Изменение: модуль ngx_http_proxy_module полностью переписан. | |
8629 | |
8630 *) Добавление: директивы proxy_redirect, proxy_pass_request_headers, | |
8631 proxy_pass_request_body и proxy_method. | |
8632 | |
8633 *) Добавление: директива proxy_set_header. Директива proxy_x_var | |
8634 упразднена и должна быть заменена директивой proxy_set_header. | |
8635 | |
8636 *) Изменение: директива proxy_preserve_host упразднена и должна быть | |
8637 заменена директивами "proxy_set_header Host $host" и "proxy_redirect | |
8638 off" или директивой "proxy_set_header Host $host:$proxy_port" и | |
8639 соответствующими ей директивами proxy_redirect. | |
8640 | |
8641 *) Изменение: директива proxy_set_x_real_ip упразднена и должна быть | |
8642 заменена директивой "proxy_set_header X-Real-IP $remote_addr". | |
8643 | |
8644 *) Изменение: директива proxy_add_x_forwarded_for упразднена и должна | |
8645 быть заменена директивой | |
8646 "proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for". | |
8647 | |
8648 *) Изменение: директива proxy_set_x_url упразднена и должна быть | |
8649 заменена директивой | |
8650 "proxy_set_header X-URL http://$host:$server_port$request_uri". | |
8651 | |
8652 *) Добавление: директива fastcgi_param. | |
8653 | |
8654 *) Изменение: директивы fastcgi_root, fastcgi_set_var и fastcgi_params | |
8655 упразднены и должны быть замены директивами fastcgi_param. | |
8656 | |
8657 *) Добавление: директива index может использовать переменные. | |
8658 | |
8659 *) Добавление: директива index может быть указана на уровне http и | |
8660 server. | |
8661 | |
8662 *) Изменение: только последний параметр в директиве index может быть | |
8663 абсолютным. | |
8664 | |
8665 *) Добавление: в директиве rewrite могут использоваться переменные. | |
8666 | |
8667 *) Добавление: директива internal. | |
8668 | |
8669 *) Добавление: переменные CONTENT_LENGTH, CONTENT_TYPE, REMOTE_PORT, | |
8670 SERVER_ADDR, SERVER_PORT, SERVER_PROTOCOL, DOCUMENT_ROOT, | |
8671 SERVER_NAME, REQUEST_METHOD, REQUEST_URI и REMOTE_USER. | |
8672 | |
8673 *) Изменение: nginx теперь передаёт неверные строки в заголовках запроса | |
8674 клиента и ответа бэкенда. | |
8675 | |
8676 *) Исправление: если бэкенд долго не передавал ответ и send_timeout был | |
8677 меньше, чем proxy_read_timeout, то клиенту возвращался ответ 408. | |
8678 | |
8679 *) Исправление: если бэкенд передавал неверную строку в заголовке | |
8680 ответа, то происходил segmentation fault; ошибка появилась в 0.1.26. | |
8681 | |
8682 *) Исправление: при использовании отказоустойчивой конфигурации в | |
8683 FastCGI мог происходить segmentation fault. | |
8684 | |
8685 *) Исправление: директива expires не удаляла уже установленные строки | |
8686 заголовка "Expires" и "Cache-Control". | |
8687 | |
8688 *) Исправление: nginx не учитывал завершающую точку в строке заголовка | |
8689 запроса "Host". | |
8690 | |
8691 *) Исправление: модуль ngx_http_auth_module не работал на Linux. | |
8692 | |
8693 *) Исправление: директива rewrite неверно работала, если в запросе | |
8694 присутствовали аргументы. | |
8695 | |
8696 *) Исправление: nginx не собирался на MacOS X. | |
8697 | |
8698 | |
8699 Изменения в nginx 0.1.28 08.04.2005 | |
8700 | |
8701 *) Исправление: при проксировании больших файлов nginx сильно нагружал | |
8702 процессор. | |
8703 | |
8704 *) Исправление: nginx не собирался gcc 4.0 на Linux. | |
8705 | |
8706 | |
8707 Изменения в nginx 0.1.27 28.03.2005 | |
8708 | |
8709 *) Добавление: параметр blocked в директиве valid_referers. | |
8710 | |
8711 *) Изменение: ошибки обработки заголовка запроса теперь записываются на | |
8712 уровне info, в лог также записывается имя сервера и строки заголовка | |
8713 запроса "Host" и "Referer". | |
8714 | |
8715 *) Изменение: при записи ошибок в лог записывается также строка | |
8716 заголовка запроса "Host". | |
8717 | |
8718 *) Добавление: директива proxy_pass_unparsed_uri. Специальная обработка | |
8719 символов "://" в URI, введённая в версии 0.1.11, теперь упразднена. | |
8720 | |
8721 *) Исправление: nginx не собирался на FreeBSD и Linux, если был указан | |
8722 параметр конфигурации --without-ngx_http_auth_basic_module. | |
8723 | |
8724 | |
8725 Изменения в nginx 0.1.26 22.03.2005 | |
8726 | |
8727 *) Изменение: неверные строки заголовка, переданные клиентом, теперь | |
8728 игнорируется и записываются в error_log на уровне info. | |
8729 | |
8730 *) Изменение: при записи ошибок в лог записывается также имя сервера, | |
8731 при обращении к которому произошла ошибка. | |
8732 | |
8733 *) Добавление: модуль ngx_http_auth_basic_module и директивы auth_basic | |
8734 и auth_basic_user_file. | |
8735 | |
8736 | |
8737 Изменения в nginx 0.1.25 19.03.2005 | |
8738 | |
8739 *) Исправление: nginx не работал на Linux parisc. | |
8740 | |
8741 *) Добавление: nginx теперь не запускается под FreeBSD, если значение | |
8742 sysctl kern.ipc.somaxconn слишком большое. | |
8743 | |
8744 *) Исправление: если модуль ngx_http_index_module делал внутреннее | |
8745 перенаправление запроса в модули ngx_http_proxy_module или | |
8746 ngx_http_fastcgi_module, то файл индекса не закрывался после | |
8747 обслуживания запроса. | |
8748 | |
8749 *) Добавление: директива proxy_pass может использоваться в location, | |
8750 заданных регулярным выражением. | |
8751 | |
8752 *) Добавление: модуль ngx_http_rewrite_filter_module поддерживает | |
8753 условия вида "if ($HTTP_USER_AGENT ~ MSIE)". | |
8754 | |
8755 *) Исправление: nginx очень медленно запускался при большом количестве | |
8756 адресов и использовании текстовых значений в директиве geo. | |
8757 | |
8758 *) Изменение: имя переменной в директиве geo нужно указывать, как $name. | |
8759 Прежний вариант без "$" пока работает, но вскоре будет убран. | |
8760 | |
8761 *) Добавление: параметр лога "%{VARIABLE}v". | |
8762 | |
8763 *) Добавление: директива "set $name value". | |
8764 | |
8765 *) Исправление: совместимость с gcc 4.0. | |
8766 | |
8767 *) Добавление: параметр автоконфигурации --with-openssl-opt=OPTIONS. | |
8768 | |
8769 | |
8770 Изменения в nginx 0.1.24 04.03.2005 | |
8771 | |
8772 *) Добавление: модуль ngx_http_ssi_filter_module поддерживает переменные | |
8773 QUERY_STRING и DOCUMENT_URI. | |
8774 | |
8775 *) Исправление: модуль ngx_http_autoindex_module мог выдавать ответ 404 | |
8776 на существующий каталог, если этот каталог был указан как alias. | |
8777 | |
8778 *) Исправление: модуль ngx_http_ssi_filter_module неправильно работал | |
8779 при больших ответах. | |
8780 | |
8781 *) Исправление: отсутствие строки заголовка "Referer" всегда считалось | |
8782 правильным referrer'ом. | |
8783 | |
8784 | |
8785 Изменения в nginx 0.1.23 01.03.2005 | |
8786 | |
8787 *) Добавление: модуль ngx_http_ssi_filter_module и директивы ssi, | |
8788 ssi_silent_errors и ssi_min_file_chunk. Поддерживаются команды 'echo | |
8789 var="HTTP_..." default=""' и 'echo var="REMOTE_ADDR"'. | |
8790 | |
8791 *) Добавление: параметр лога %request_time. | |
8792 | |
8793 *) Добавление: если запрос пришёл без строки заголовка "Host", то | |
8794 директива proxy_preserve_host устанавливает в качестве этого | |
8795 заголовка первое имя сервера из директивы server_name. | |
8796 | |
8797 *) Исправление: nginx не собирался на платформах, отличных от i386, | |
8798 amd64, sparc и ppc; ошибка появилась в 0.1.22. | |
8799 | |
8800 *) Исправление: модуль ngx_http_autoindex_module теперь показывает | |
8801 информацию не о символическом линке, а о файле или каталоге, на | |
8802 который он указывает. | |
8803 | |
8804 *) Исправление: если клиенту ничего не передавалось, то параметр | |
8805 %apache_length записывал в лог отрицательную длину заголовка ответа. | |
8806 | |
8807 | |
8808 Изменения в nginx 0.1.22 22.02.2005 | |
8809 | |
8810 *) Исправление: модуль ngx_http_stub_status_module показывал неверную | |
8811 статистику для обработанных соединений, если использовалось | |
8812 проксирование или FastCGI-сервер. | |
8813 | |
8814 *) Исправление: на Linux и Solaris установочные пути были неверно | |
8815 заключены в кавычки; ошибка появилась в 0.1.21. | |
8816 | |
8817 | |
8818 Изменения в nginx 0.1.21 22.02.2005 | |
8819 | |
8820 *) Исправление: модуль ngx_http_stub_status_module показывал неверную | |
8821 статистику при использовании метода rtsig или при использовании | |
8822 нескольких рабочих процессов на SMP машине. | |
8823 | |
8824 *) Исправление: nginx не собирался компилятором icc под Линуксом или | |
8825 если библиотека zlib-1.2.x собиралась из исходных текстов. | |
8826 | |
8827 *) Исправление: nginx не собирался под NetBSD 2.0. | |
8828 | |
8829 | |
8830 Изменения в nginx 0.1.20 17.02.2005 | |
8831 | |
8832 *) Добавление: новые параметры script_filename и remote_port в директиве | |
8833 fastcgi_params. | |
8834 | |
8835 *) Исправление: неправильно обрабатывался поток stderr от | |
8836 FastCGI-сервера. | |
8837 | |
8838 | |
8839 Изменения в nginx 0.1.19 16.02.2005 | |
8840 | |
8841 *) Исправление: если в запросе есть нуль, то для локальных запросов | |
8842 теперь возвращается ошибка 404. | |
8843 | |
8844 *) Исправление: nginx не собирался под NetBSD 2.0. | |
8845 | |
8846 *) Исправление: во время чтения тела запроса клиента в SSL соединении | |
8847 мог произойти таймаут. | |
8848 | |
8849 | |
8850 Изменения в nginx 0.1.18 09.02.2005 | |
8851 | |
8852 *) Изменение: для совместимости с Solaris 10 в директивах devpoll_events | |
8853 и devpoll_changes значения по умолчанию уменьшены с 512 до 32. | |
8854 | |
8855 *) Исправление: директивы proxy_set_x_var и fastcgi_set_var не | |
8856 наследовались. | |
8857 | |
8858 *) Исправление: в директиве rewrite, возвращающей редирект, аргументы | |
8859 присоединялись к URI через символ "&" вместо "?". | |
8860 | |
8861 *) Исправление: строки для модуля ngx_http_geo_module без символа ";" во | |
8862 включённом файле игнорировались. | |
8863 | |
8864 *) Добавление: модуль ngx_http_stub_status_module. | |
8865 | |
8866 *) Исправление: неизвестный формат лог-файла в директиве access_log | |
8867 вызывал segmentation fault. | |
8868 | |
8869 *) Добавление: новый параметр document_root в директиве fastcgi_params. | |
8870 | |
8871 *) Добавление: директива fastcgi_redirect_errors. | |
8872 | |
8873 *) Добавление: новый модификатор break в директиве rewrite позволяет | |
8874 прекратить цикл rewrite/location и устанавливает текущую конфигурацию | |
8875 для запроса. | |
8876 | |
8877 | |
8878 Изменения в nginx 0.1.17 03.02.2005 | |
8879 | |
8880 *) Изменение: модуль ngx_http_rewrite_module полностью переписан. Теперь | |
8881 можно делать редиректы, возвращать коды ошибок и проверять переменные | |
8882 и рефереры. Эти директивы можно использовать внутри location. | |
8883 Директива redirect упразднена. | |
8884 | |
8885 *) Добавление: модуль ngx_http_geo_module. | |
8886 | |
8887 *) Добавление: директивы proxy_set_x_var и fastcgi_set_var. | |
8888 | |
8889 *) Исправление: конфигурация location с модификатором "=" могла | |
8890 использоваться в другом location. | |
8891 | |
8892 *) Исправление: правильный тип ответа выставлялся только для запросов, у | |
8893 которых в расширении были только маленькие буквы. | |
8894 | |
8895 *) Исправление: если для location установлен proxy_pass или | |
8896 fastcgi_pass, и доступ к нему запрещался, а ошибка перенаправлялась | |
8897 на статическую страницу, то происходил segmentation fault. | |
8898 | |
8899 *) Исправление: если в проксированном ответе в заголовке "Location" | |
8900 передавался относительный URL, то к нему добавлялось имя хоста и | |
8901 слэш; ошибка появилась в 0.1.14. | |
8902 | |
8903 *) Исправление: на Linux в лог не записывался текст системной ошибки. | |
8904 | |
8905 | |
8906 Изменения в nginx 0.1.16 25.01.2005 | |
8907 | |
8908 *) Исправление: если ответ передавался chunk'ами, то при запросе HEAD | |
8909 выдавался завершающий chunk. | |
8910 | |
8911 *) Исправление: заголовок "Connection: keep-alive" выдавался, даже если | |
8912 директива keepalive_timeout запрещала использование keep-alive. | |
8913 | |
8914 *) Исправление: ошибки в модуле ngx_http_fastcgi_module вызывали | |
8915 segmentation fault. | |
8916 | |
8917 *) Исправление: при использовании SSL сжатый ответ мог передаваться не | |
8918 до конца. | |
8919 | |
8920 *) Исправление: опции TCP_NODELAY, TCP_NOPUSH и TCP_CORK, специфичные | |
8921 для TCP сокетов, не используются для unix domain сокетов. | |
8922 | |
8923 *) Добавление: директива rewrite поддерживает перезаписывание | |
8924 аргументов. | |
8925 | |
8926 *) Исправление: на запрос POST с заголовком "Content-Length: 0" | |
8927 возвращался ответ 400; ошибка появилась в 0.1.14. | |
8928 | |
8929 | |
8930 Изменения в nginx 0.1.15 19.01.2005 | |
8931 | |
8932 *) Исправление: ошибка соединения с FastCGI-сервером вызывала | |
8933 segmentation fault. | |
8934 | |
8935 *) Исправление: корректная обработка регулярного выражения, в котором | |
8936 число выделенных частей не совпадает с числом подстановок. | |
8937 | |
8938 *) Добавление: location, который передаётся FastCGI-серверу, может быть | |
8939 задан с помощью регулярного выражения. | |
8940 | |
8941 *) Исправление: параметр FastCGI REQUEST_URI теперь передаётся вместе с | |
8942 аргументами и в том виде, в котором был получен от клиента. | |
8943 | |
8944 *) Исправление: для использования регулярных выражений в location нужно | |
8945 было собирать nginx вместе с ngx_http_rewrite_module. | |
8946 | |
8947 *) Исправление: если бэкенд слушал на 80-ом порту, то при использовании | |
8948 директивы "proxy_preserve_host on" в заголовке "Host" указывался | |
8949 также порт 80; ошибка появилась в 0.1.14. | |
8950 | |
8951 *) Исправление: если задать одинаковые пути в параметрах | |
8952 автоконфигурации --http-client-body-temp-path=PATH и | |
8953 --http-proxy-temp-path=PATH или --http-client-body-temp-path=PATH и | |
8954 --http-fastcgi-temp-path=PATH, то происходил segmentation fault. | |
8955 | |
8956 | |
8957 Изменения в nginx 0.1.14 18.01.2005 | |
8958 | |
8959 *) Добавление: параметры автоконфигурации | |
8960 --http-client-body-temp-path=PATH, --http-proxy-temp-path=PATH и | |
8961 --http-fastcgi-temp-path=PATH | |
8962 | |
8963 *) Изменение: имя каталога с временными файлами, содержащие тело запроса | |
8964 клиента, задаётся директивой client_body_temp_path, по умолчанию | |
8965 <prefix>/client_body_temp. | |
8966 | |
8967 *) Добавление: модуль ngx_http_fastcgi_module и директивы fastcgi_pass, | |
8968 fastcgi_root, fastcgi_index, fastcgi_params, fastcgi_connect_timeout, | |
8969 fastcgi_send_timeout, fastcgi_read_timeout, fastcgi_send_lowat, | |
8970 fastcgi_header_buffer_size, fastcgi_buffers, | |
8971 fastcgi_busy_buffers_size, fastcgi_temp_path, | |
8972 fastcgi_max_temp_file_size, fastcgi_temp_file_write_size, | |
8973 fastcgi_next_upstream и fastcgi_x_powered_by. | |
8974 | |
8975 *) Исправление: ошибка "[alert] zero size buf"; ошибка появилась в | |
8976 0.1.3. | |
8977 | |
8978 *) Изменение: в директиве proxy_pass нужно обязательно указывать URI | |
8979 после имени хоста. | |
8980 | |
8981 *) Изменение: если в URI встречался символ %3F, то он считался началом | |
8982 строки аргументов. | |
8983 | |
8984 *) Добавление: поддержка unix domain сокетов в модуле | |
8985 ngx_http_proxy_module. | |
8986 | |
8987 *) Добавление: директивы ssl_engine и ssl_ciphers. | |
8988 Спасибо Сергею Скворцову за SSL-акселератор. | |
8989 | |
8990 | |
8991 Изменения в nginx 0.1.13 21.12.2004 | |
8992 | |
8993 *) Добавление: директивы server_names_hash и | |
8994 server_names_hash_threshold. | |
8995 | |
8996 *) Исправление: имена *.domain.tld в директиве server_name не работали. | |
8997 | |
8998 *) Исправление: параметр лога %request_length записывал неверную длину. | |
8999 | |
9000 | |
9001 Изменения в nginx 0.1.12 06.12.2004 | |
9002 | |
9003 *) Добавление: параметр лога %request_length. | |
9004 | |
9005 *) Исправление: при использовании /dev/poll, select и poll на | |
9006 платформах, где возможны ложные срабатывания указанных методов, могли | |
9007 быть длительные задержки при обработке запроса по keep-alive | |
9008 соединению. Наблюдалось по крайней мере на Solaris с использованием | |
9009 /dev/poll. | |
9010 | |
9011 *) Исправление: директива send_lowat игнорируется на Linux, так как | |
9012 Linux не поддерживает опцию SO_SNDLOWAT. | |
9013 | |
9014 | |
9015 Изменения в nginx 0.1.11 02.12.2004 | |
9016 | |
9017 *) Добавление: директива worker_priority. | |
9018 | |
9019 *) Изменение: под FreeBSD директивы tcp_nopush и tcp_nodelay вместе | |
9020 влияют на передачу ответа. | |
9021 | |
9022 *) Исправление: nginx не вызывал initgroups(). | |
9023 Спасибо Андрею Ситникову и Андрею Нигматулину. | |
9024 | |
9025 *) Изменение: ngx_http_auto_index_module теперь выдаёт размер файлов в | |
9026 байтах. | |
9027 | |
9028 *) Исправление: ngx_http_auto_index_module возвращал ошибку 500, если в | |
9029 каталоге есть битый symlink. | |
9030 | |
9031 *) Исправление: файлы больше 4G не передавались с использованием | |
9032 sendfile. | |
9033 | |
9034 *) Исправление: если бэкенд резолвился в несколько адресов и при | |
9035 ожидании от него ответа происходила ошибка, то процесс зацикливался. | |
9036 | |
9037 *) Исправление: при использовании метода /dev/poll рабочий процесс мог | |
9038 завершиться с сообщением "unknown cycle". | |
9039 | |
9040 *) Исправление: ошибки "close() channel failed". | |
9041 | |
9042 *) Исправление: автоматическое определение групп nobody и nogroup. | |
9043 | |
9044 *) Исправление: директива send_lowat не работала на Linux. | |
9045 | |
9046 *) Исправление: если в конфигурации не было раздела events, то | |
9047 происходил segmentation fault. | |
9048 | |
9049 *) Исправление: nginx не собирался под OpenBSD. | |
9050 | |
9051 *) Исправление: двойные слэшы в "://" в URI превращались в ":/". | |
9052 | |
9053 | |
9054 Изменения в nginx 0.1.10 26.11.2004 | |
9055 | |
9056 *) Исправление: если в запросе без аргументов есть "//", "/./", "/../" | |
9057 или "%XX", то терялся последний символ в строке запроса; ошибка | |
9058 появилась в 0.1.9. | |
9059 | |
9060 *) Исправление: исправление в версии 0.1.9 для файлов больше 2G на Linux | |
9061 не работало. | |
9062 | |
9063 | |
9064 Изменения в nginx 0.1.9 25.11.2004 | |
9065 | |
9066 *) Исправление: если в запросе есть "//", "/./", "/../" или "%XX", то | |
9067 проксируемый запрос передавался без аргументов. | |
9068 | |
9069 *) Исправление: при сжатии больших ответов иногда они передавались не | |
9070 полностью. | |
9071 | |
9072 *) Исправление: не передавались файлы больше 2G на Linux, | |
9073 неподдерживающем sendfile64(). | |
9074 | |
9075 *) Исправление: на Linux при конфигурации сборки нужно было обязательно | |
9076 использовать параметр --with-poll_module; ошибка появилась в 0.1.8. | |
9077 | |
9078 | |
9079 Изменения в nginx 0.1.8 20.11.2004 | |
9080 | |
9081 *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе | |
9082 длинных имён файлов. | |
9083 | |
9084 *) Добавление: модификатор "^~" в директиве location. | |
9085 | |
9086 *) Добавление: директива proxy_max_temp_file_size. | |
9087 | |
9088 | |
9089 Изменения в nginx 0.1.7 12.11.2004 | |
9090 | |
9091 *) Исправление: при использовании sendfile, если передаваемый файл | |
9092 менялся, то мог произойти segmentation fault на FreeBSD; ошибка | |
9093 появилась в 0.1.5. | |
9094 | |
9095 | |
9096 Изменения в nginx 0.1.6 11.11.2004 | |
9097 | |
9098 *) Исправление: при некоторых комбинациях директив location c | |
9099 регулярными выражениями использовалась конфигурация не из того | |
9100 location. | |
9101 | |
9102 | |
9103 Изменения в nginx 0.1.5 11.11.2004 | |
9104 | |
9105 *) Исправление: на Solaris и Linux могло быть очень много сообщений | |
9106 "recvmsg() returned not enough data". | |
9107 | |
9108 *) Исправление: в режиме прокси без использования sendfile на Solaris | |
9109 возникала ошибка "writev() failed (22: Invalid argument)". На других | |
9110 платформах, не поддерживающих sendfile, процесс зацикливался. | |
9111 | |
9112 *) Исправление: при использовании sendfile в режиме прокси на Solaris | |
9113 возникал segmentation fault. | |
9114 | |
9115 *) Исправление: segmentation fault на Solaris. | |
9116 | |
9117 *) Исправление: обновление исполняемого файла на лету не работало на | |
9118 Linux. | |
9119 | |
9120 *) Исправление: в списке файлов, выдаваемом модулем | |
9121 ngx_http_autoindex_module, не перекодировались пробелы, кавычки и | |
9122 знаки процента. | |
9123 | |
9124 *) Изменение: уменьшение операций копирования. | |
9125 | |
9126 *) Добавление: директива userid_p3p. | |
9127 | |
9128 | |
9129 Изменения в nginx 0.1.4 26.10.2004 | |
9130 | |
9131 *) Исправление: ошибка в модуле ngx_http_autoindex_module. | |
9132 | |
9133 | |
9134 Изменения в nginx 0.1.3 25.10.2004 | |
9135 | |
9136 *) Добавление: модуль ngx_http_autoindex_module и директива autoindex. | |
9137 | |
9138 *) Добавление: директива proxy_set_x_url. | |
9139 | |
9140 *) Исправление: модуль проксировании мог привести к зацикливанию, если | |
9141 не использовался sendfile. | |
9142 | |
9143 | |
9144 Изменения в nginx 0.1.2 21.10.2004 | |
9145 | |
9146 *) Добавление: параметры --user=USER, --group=GROUP и | |
9147 --with-ld-opt=OPTIONS в configure. | |
9148 | |
9149 *) Добавление: директива server_name поддерживает *.domain.tld. | |
9150 | |
9151 *) Исправление: улучшена переносимость на неизвестные платформы. | |
9152 | |
9153 *) Исправление: нельзя переконфигурировать nginx, если конфигурационный | |
9154 файл указан в командной строке; ошибка появилась в 0.1.1. | |
9155 | |
9156 *) Исправление: модуль проксировании мог привести к зацикливанию, если | |
9157 не использовался sendfile. | |
9158 | |
9159 *) Исправление: при использовании sendfile текст ответа не | |
9160 перекодировался согласно директивам модуля charset; ошибка появилась | |
9161 в 0.1.1. | |
9162 | |
9163 *) Исправление: очень редкая ошибка при обработке kqueue. | |
9164 | |
9165 *) Исправление: модуль сжатия сжимал уже сжатые ответы, полученные при | |
9166 проксировании. | |
9167 | |
9168 | |
9169 Изменения в nginx 0.1.1 11.10.2004 | |
9170 | |
9171 *) Добавление: директива gzip_types. | |
9172 | |
9173 *) Добавление: директива tcp_nodelay. | |
9174 | |
9175 *) Добавление: директива send_lowat работает не только на платформах, | |
9176 поддерживающих kqueue NOTE_LOWAT, но и на всех, поддерживающих | |
9177 SO_SNDLOWAT. | |
9178 | |
9179 *) Добавление: эмуляция setproctitle() для Linux и Solaris. | |
9180 | |
9181 *) Исправление: ошибка при переписывании заголовка "Location" при | |
9182 проксировании. | |
9183 | |
9184 *) Исправление: ошибка в модуле ngx_http_chunked_module, приводившая к | |
9185 зацикливанию. | |
9186 | |
9187 *) Исправление: ошибки в модуле /dev/poll. | |
9188 | |
9189 *) Исправление: при проксировании и использовании временных файлов | |
9190 ответы портились. | |
9191 | |
9192 *) Исправление: бэкенду передавались запросы с неперекодированными | |
9193 символами. | |
9194 | |
9195 *) Исправление: на Linux 2.4 при конфигурации сборки нужно было | |
9196 обязательно использовать параметр --with-poll_module. | |
9197 | |
9198 | |
9199 Изменения в nginx 0.1.0 04.10.2004 | |
9200 | |
9201 *) Первая публично доступная версия. | |
9202 |