Mercurial > hg > nginx-site
comparison text/ru/CHANGES.ru-1.22 @ 2852:a9ebed59b64f
nginx-1.22.0
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Tue, 24 May 2022 16:24:47 +0300 |
parents | text/ru/CHANGES.ru@1ecf0e0526da |
children | 0b7e004b5061 |
comparison
equal
deleted
inserted
replaced
2851:04b2f591b5af | 2852:a9ebed59b64f |
---|---|
1 | |
2 Изменения в nginx 1.22.0 24.05.2022 | |
3 | |
4 *) Стабильная ветка 1.22.x. | |
5 | |
6 | |
7 Изменения в nginx 1.21.6 25.01.2022 | |
8 | |
9 *) Исправление: при использование EPOLLEXCLUSIVE на Linux распределение | |
10 клиентских соединений между рабочими процессами было неравномерным. | |
11 | |
12 *) Исправление: во время плавного завершения старых рабочих процессов | |
13 nginx возвращал в ответах строку заголовка "Connection: keep-alive". | |
14 | |
15 *) Исправление: в директиве ssl_session_ticket_key при использовании | |
16 TLSv1.3. | |
17 | |
18 | |
19 Изменения в nginx 1.21.5 28.12.2021 | |
20 | |
21 *) Изменение: теперь nginx по умолчанию собирается с библиотекой PCRE2. | |
22 | |
23 *) Изменение: теперь nginx всегда использует sendfile(SF_NODISKIO) на | |
24 FreeBSD. | |
25 | |
26 *) Добавление: поддержка sendfile(SF_NOCACHE) на FreeBSD. | |
27 | |
28 *) Добавление: переменная $ssl_curve. | |
29 | |
30 *) Исправление: при использовании HTTP/2 без SSL вместе с директивами | |
31 sendfile и aio соединения могли зависать. | |
32 | |
33 | |
34 Изменения в nginx 1.21.4 02.11.2021 | |
35 | |
36 *) Изменение: поддержка NPN вместо ALPN для установления | |
37 HTTP/2-соединений упразднена. | |
38 | |
39 *) Изменение: теперь nginx закрывает SSL соединение, если клиент | |
40 использует ALPN, но nginx не поддерживает ни один из присланных | |
41 клиентом протоколов. | |
42 | |
43 *) Изменение: в директиве sendfile_max_chunk значение по умолчанию | |
44 изменено на 2 мегабайта. | |
45 | |
46 *) Добавление: директива proxy_half_close в модуле stream. | |
47 | |
48 *) Добавление: директива ssl_alpn в модуле stream. | |
49 | |
50 *) Добавление: переменная $ssl_alpn_protocol. | |
51 | |
52 *) Добавление: поддержка SSL_sendfile() при использовании OpenSSL 3.0. | |
53 | |
54 *) Добавление: директива mp4_start_key_frame в модуле | |
55 ngx_http_mp4_module. | |
56 Спасибо Tracey Jaquith. | |
57 | |
58 *) Исправление: в переменной $content_length при использовании chunked | |
59 transfer encoding. | |
60 | |
61 *) Исправление: при получении ответа некорректной длины от проксируемого | |
62 бэкенда nginx мог тем не менее закэшировать соединение. | |
63 Спасибо Awdhesh Mathpal. | |
64 | |
65 *) Исправление: некорректные заголовки от бэкендов логгировались на | |
66 уровне info вместо error; ошибка появилась в 1.21.1. | |
67 | |
68 *) Исправление: при использовании HTTP/2 и директивы aio_write запросы | |
69 могли зависать. | |
70 | |
71 | |
72 Изменения в nginx 1.21.3 07.09.2021 | |
73 | |
74 *) Изменение: оптимизация чтения тела запроса при использовании HTTP/2. | |
75 | |
76 *) Исправление: во внутреннем API для обработки тела запроса при | |
77 использовании HTTP/2 и буферизации обрабатываемых данных. | |
78 | |
79 | |
80 Изменения в nginx 1.21.2 31.08.2021 | |
81 | |
82 *) Изменение: теперь nginx возвращает ошибку, если в запросе по | |
83 протоколу HTTP/1.0 присутствует строка заголовка "Transfer-Encoding". | |
84 | |
85 *) Изменение: экспортные шифры больше не поддерживаются. | |
86 | |
87 *) Добавление: совместимость с OpenSSL 3.0. | |
88 | |
89 *) Добавление: теперь серверу аутентификации почтового прокси-сервера | |
90 передаются строки заголовка "Auth-SSL-Protocol" и "Auth-SSL-Cipher". | |
91 Спасибо Rob Mueller. | |
92 | |
93 *) Добавление: API для обработки тела запроса теперь позволяет | |
94 буферизировать обрабатываемые данные. | |
95 | |
96 *) Исправление: SSL-соединения к бэкендам в модуле stream могли зависать | |
97 после SSL handshake. | |
98 | |
99 *) Исправление: уровень безопасности, доступный в OpenSSL 1.1.0 и новее, | |
100 не учитывался при загрузке сертификатов сервера, если был задан через | |
101 "@SECLEVEL=N" в директиве ssl_ciphers. | |
102 | |
103 *) Исправление: SSL-соединения с gRPC-бэкендами могли зависать, если | |
104 использовались методы select, poll или /dev/poll. | |
105 | |
106 *) Исправление: при использовании HTTP/2 тело запроса всегда | |
107 записывалось на диск, если в запросе не было строки заголовка | |
108 "Content-Length". | |
109 | |
110 | |
111 Изменения в nginx 1.21.1 06.07.2021 | |
112 | |
113 *) Изменение: теперь nginx для метода CONNECT всегда возвращает ошибку. | |
114 | |
115 *) Изменение: теперь nginx всегда возвращает ошибку, если в запросе | |
116 одновременно присутствуют строки заголовка "Content-Length" и | |
117 "Transfer-Encoding". | |
118 | |
119 *) Изменение: теперь nginx всегда возвращает ошибку, если в строке | |
120 запроса используются пробелы или управляющие символы. | |
121 | |
122 *) Изменение: теперь nginx всегда возвращает ошибку, если в имени | |
123 заголовка используются пробелы или управляющие символы. | |
124 | |
125 *) Изменение: теперь nginx всегда возвращает ошибку, если в строке | |
126 "Host" заголовка запроса используются пробелы или управляющие | |
127 символы. | |
128 | |
129 *) Изменение: оптимизация тестирования конфигурации при использовании | |
130 большого количества listen-сокетов. | |
131 | |
132 *) Исправление: nginx не экранировал символы """, "<", ">", "\", "^", | |
133 "`", "{", "|", и "}" при проксировании с изменением URI запроса. | |
134 | |
135 *) Исправление: SSL-переменные могли быть пустыми при записи в лог; | |
136 ошибка появилась в 1.19.5. | |
137 | |
138 *) Исправление: keepalive-соединения с gRPC-бэкендами могли не | |
139 закрываться после получения GOAWAY-фрейма. | |
140 | |
141 *) Исправление: уменьшено потребление памяти для долгоживущих запросов | |
142 при проксировании с использованием более 64 буферов. | |
143 | |
144 | |
145 Изменения в nginx 1.21.0 25.05.2021 | |
146 | |
147 *) Безопасность: при использовании директивы resolver во время обработки | |
148 ответа DNS-сервера могла происходить перезапись одного байта памяти, | |
149 что позволяло атакующему, имеющему возможность подделывать UDP-пакеты | |
150 от DNS-сервера, вызвать падение рабочего процесса или, потенциально, | |
151 выполнение произвольного кода (CVE-2021-23017). | |
152 | |
153 *) Добавление: директивы proxy_ssl_certificate, | |
154 proxy_ssl_certificate_key, grpc_ssl_certificate, | |
155 grpc_ssl_certificate_key, uwsgi_ssl_certificate и | |
156 uwsgi_ssl_certificate_key поддерживают переменные. | |
157 | |
158 *) Добавление: директива max_errors в почтовом прокси-сервере. | |
159 | |
160 *) Добавление: почтовый прокси-сервер поддерживает POP3 и IMAP | |
161 pipelining. | |
162 | |
163 *) Добавление: параметр fastopen директивы listen в модуле stream. | |
164 Спасибо Anbang Wen. | |
165 | |
166 *) Исправление: специальные символы не экранировались при автоматическом | |
167 перенаправлении с добавлением завершающего слэша. | |
168 | |
169 *) Исправление: при использовании SMTP pipelining соединения с клиентами | |
170 в почтовом прокси-сервере могли неожиданно закрываться. | |
171 | |
172 | |
173 Изменения в nginx 1.19.10 13.04.2021 | |
174 | |
175 *) Изменение: в директиве keepalive_requests значение по умолчанию | |
176 изменено на 1000. | |
177 | |
178 *) Добавление: директива keepalive_time. | |
179 | |
180 *) Добавление: переменная $connection_time. | |
181 | |
182 *) Изменение: при использовании zlib-ng в логах появлялись сообщения | |
183 "gzip filter failed to use preallocated memory". | |
184 | |
185 | |
186 Изменения в nginx 1.19.9 30.03.2021 | |
187 | |
188 *) Исправление: nginx не собирался с почтовым прокси-сервером, но без | |
189 модуля ngx_mail_ssl_module; ошибка появилась в 1.19.8. | |
190 | |
191 *) Исправление: при работе с gRPC-бэкендами могли возникать ошибки | |
192 "upstream sent response body larger than indicated content length"; | |
193 ошибка появилась в 1.19.1. | |
194 | |
195 *) Исправление: если клиент закрывал соединение в момент отбрасывания | |
196 тела запроса, nginx мог не закрыть соединение до истечения | |
197 keepalive-таймаута. | |
198 | |
199 *) Исправление: при ожидании задержки limit_req или auth_delay, а также | |
200 при работе с бэкендами nginx мог не обнаружить, что соединение уже | |
201 закрыто клиентом. | |
202 | |
203 *) Исправление: в методе обработки соединений eventport. | |
204 | |
205 | |
206 Изменения в nginx 1.19.8 09.03.2021 | |
207 | |
208 *) Добавление: в директиве proxy_cookie_flags теперь флаги можно | |
209 задавать с помощью переменных. | |
210 | |
211 *) Добавление: параметр proxy_protocol в директиве listen, директивы | |
212 proxy_protocol и set_real_ip_from в почтовом прокси-сервере. | |
213 | |
214 *) Исправление: HTTP/2-соединения сразу закрывались при использовании | |
215 "keepalive_timeout 0"; ошибка появилась в 1.19.7. | |
216 | |
217 *) Исправление: некоторые ошибки логгировались как неизвестные, если | |
218 nginx был собран с glibc 2.32. | |
219 | |
220 *) Исправление: в методе обработки соединений eventport. | |
221 | |
222 | |
223 Изменения в nginx 1.19.7 16.02.2021 | |
224 | |
225 *) Изменение: обработка соединений в HTTP/2 была изменена и теперь более | |
226 соответствует HTTP/1.x; директивы http2_recv_timeout, | |
227 http2_idle_timeout и http2_max_requests упразднены, вместо них | |
228 следует использовать директивы keepalive_timeout и | |
229 keepalive_requests. | |
230 | |
231 *) Изменение: директивы http2_max_field_size и http2_max_header_size | |
232 упразднены, вместо них следует использовать директиву | |
233 large_client_header_buffers. | |
234 | |
235 *) Добавление: теперь при исчерпании свободных соединений nginx | |
236 закрывает не только keepalive-соединения, но и соединения в lingering | |
237 close. | |
238 | |
239 *) Исправление: в логах могли появляться сообщения "zero size buf in | |
240 output", если бэкенд возвращал некорректный ответ при | |
241 небуферизированном проксировании; ошибка появилась в 1.19.1. | |
242 | |
243 *) Исправление: при использовании директивы return вместе с image_filter | |
244 или xslt_stylesheet HEAD-запросы обрабатывались некорректно. | |
245 | |
246 *) Исправление: в директиве add_trailer. | |
247 | |
248 | |
249 Изменения в nginx 1.19.6 15.12.2020 | |
250 | |
251 *) Исправление: ошибки "no live upstreams", если server в блоке upstream | |
252 был помечен как down. | |
253 | |
254 *) Исправление: при использовании HTTPS в рабочем процессе мог произойти | |
255 segmentation fault; ошибка появилась в 1.19.5. | |
256 | |
257 *) Исправление: nginx возвращал ошибку 400 на запросы вида | |
258 "GET http://example.com?args HTTP/1.0". | |
259 | |
260 *) Исправление: в модулях ngx_http_flv_module и ngx_http_mp4_module. | |
261 Спасибо Chris Newton. | |
262 | |
263 | |
264 Изменения в nginx 1.19.5 24.11.2020 | |
265 | |
266 *) Добавление: ключ -e. | |
267 | |
268 *) Добавление: при сборке дополнительных модулей теперь можно указывать | |
269 одни и те же исходные файлы в разных модулях. | |
270 | |
271 *) Исправление: SSL shutdown не работал при закрытии соединений с | |
272 ожиданием дополнительных данных (lingering close). | |
273 | |
274 *) Исправление: при работе с gRPC-бэкендами могли возникать ошибки | |
275 "upstream sent frame for closed stream". | |
276 | |
277 *) Исправление: во внутреннем API для обработки тела запроса. | |
278 | |
279 | |
280 Изменения в nginx 1.19.4 27.10.2020 | |
281 | |
282 *) Добавление: директивы ssl_conf_command, proxy_ssl_conf_command, | |
283 grpc_ssl_conf_command и uwsgi_ssl_conf_command. | |
284 | |
285 *) Добавление: директива ssl_reject_handshake. | |
286 | |
287 *) Добавление: директива proxy_smtp_auth в почтовом прокси-сервере. | |
288 | |
289 | |
290 Изменения в nginx 1.19.3 29.09.2020 | |
291 | |
292 *) Добавление: модуль ngx_stream_set_module. | |
293 | |
294 *) Добавление: директива proxy_cookie_flags. | |
295 | |
296 *) Добавление: директива userid_flags. | |
297 | |
298 *) Исправление: расширение управления кэшированием stale-if-error | |
299 ошибочно применялось, если бэкенд возвращал ответ с кодом 500, 502, | |
300 503, 504, 403, 404 или 429. | |
301 | |
302 *) Исправление: если использовалось кэширование и бэкенд возвращал | |
303 ответы с строкой заголовка Vary, в логах могли появляться сообщения | |
304 "[crit] cache file ... has too long header". | |
305 | |
306 *) Изменение: при использовании OpenSSL 1.1.1 в логах могли появляться | |
307 сообщения "[crit] SSL_write() failed". | |
308 | |
309 *) Исправление: в логах могли появляться сообщения "SSL_shutdown() | |
310 failed (SSL: ... bad write retry)"; ошибка появилась в 1.19.2. | |
311 | |
312 *) Исправление: при использовании HTTP/2 в рабочем процессе мог | |
313 произойти segmentation fault, если ошибки с кодом 400 с помощью | |
314 директивы error_page перенаправлялись в проксируемый location. | |
315 | |
316 *) Исправление: утечки сокетов при использовании HTTP/2 и подзапросов в | |
317 модуле njs. | |
318 | |
319 | |
320 Изменения в nginx 1.19.2 11.08.2020 | |
321 | |
322 *) Изменение: теперь nginx начинает закрывать keepalive-соединения, не | |
323 дожидаясь исчерпания всех свободных соединений, а также пишет об этом | |
324 предупреждение в лог ошибок. | |
325 | |
326 *) Изменение: оптимизация чтения тела запроса при использовании chunked | |
327 transfer encoding. | |
328 | |
329 *) Исправление: утечки памяти при использовании директивы ssl_ocsp. | |
330 | |
331 *) Исправление: в логах могли появляться сообщения "zero size buf in | |
332 output", если FastCGI-сервер возвращал некорректный ответ; ошибка | |
333 появилась в 1.19.1. | |
334 | |
335 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
336 если размеры large_client_header_buffers отличались в разных | |
337 виртуальных серверах. | |
338 | |
339 *) Исправление: SSL shutdown мог не работать. | |
340 | |
341 *) Исправление: в логах могли появляться сообщения "SSL_shutdown() | |
342 failed (SSL: ... bad write retry)". | |
343 | |
344 *) Исправление: в модуле ngx_http_slice_module. | |
345 | |
346 *) Исправление: в модуле ngx_http_xslt_filter_module. | |
347 | |
348 | |
349 Изменения в nginx 1.19.1 07.07.2020 | |
350 | |
351 *) Изменение: директивы lingering_close, lingering_time и | |
352 lingering_timeout теперь работают при использовании HTTP/2. | |
353 | |
354 *) Изменение: теперь лишние данные, присланные бэкендом, всегда | |
355 отбрасываются. | |
356 | |
357 *) Изменение: теперь при получении слишком короткого ответа от | |
358 FastCGI-сервера nginx пытается отправить клиенту доступную часть | |
359 ответа, после чего закрывает соединение с клиентом. | |
360 | |
361 *) Изменение: теперь при получении ответа некорректной длины от | |
362 gRPC-бэкенда nginx прекращает обработку ответа с ошибкой. | |
363 | |
364 *) Добавление: параметр min_free в директивах proxy_cache_path, | |
365 fastcgi_cache_path, scgi_cache_path и uwsgi_cache_path. | |
366 Спасибо Adam Bambuch. | |
367 | |
368 *) Исправление: nginx не удалял unix domain listen-сокеты при плавном | |
369 завершении по сигналу SIGQUIT. | |
370 | |
371 *) Исправление: UDP-пакеты нулевого размера не проксировались. | |
372 | |
373 *) Исправление: проксирование на uwsgi-бэкенды с использованием SSL | |
374 могло не работать. | |
375 Спасибо Guanzhong Chen. | |
376 | |
377 *) Исправление: в обработке ошибок при использовании директивы ssl_ocsp. | |
378 | |
379 *) Исправление: при использовании файловых систем XFS и NFS размер кэша | |
380 на диске мог считаться некорректно. | |
381 | |
382 *) Исправление: если сервер memcached возвращал некорректный ответ, в | |
383 логах могли появляться сообщения "negative size buf in writer". | |
384 | |
385 | |
386 Изменения в nginx 1.19.0 26.05.2020 | |
387 | |
388 *) Добавление: проверка клиентских сертификатов с помощью OCSP. | |
389 | |
390 *) Исправление: при работе с gRPC-бэкендами могли возникать ошибки | |
391 "upstream sent frame for closed stream". | |
392 | |
393 *) Исправление: OCSP stapling мог не работать, если не была указана | |
394 директива resolver. | |
395 | |
396 *) Исправление: соединения с некорректным HTTP/2 preface не | |
397 логгировались. | |
398 | |
399 | |
400 Изменения в nginx 1.17.10 14.04.2020 | |
401 | |
402 *) Добавление: директива auth_delay. | |
403 | |
404 | |
405 Изменения в nginx 1.17.9 03.03.2020 | |
406 | |
407 *) Изменение: теперь nginx не разрешает несколько строк "Host" в | |
408 заголовке запроса. | |
409 | |
410 *) Исправление: nginx игнорировал дополнительные строки | |
411 "Transfer-Encoding" в заголовке запроса. | |
412 | |
413 *) Исправление: утечки сокетов при использовании HTTP/2. | |
414 | |
415 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
416 если использовался OCSP stapling. | |
417 | |
418 *) Исправление: в модуле ngx_http_mp4_module. | |
419 | |
420 *) Исправление: при перенаправлении ошибок с кодом 494 с помощью | |
421 директивы error_page nginx возвращал ответ с кодом 494 вместо 400. | |
422 | |
423 *) Исправление: утечки сокетов при использовании подзапросов в модуле | |
424 njs и директивы aio. | |
425 | |
426 | |
427 Изменения в nginx 1.17.8 21.01.2020 | |
428 | |
429 *) Добавление: директива grpc_pass поддерживает переменные. | |
430 | |
431 *) Исправление: при обработке pipelined-запросов по SSL-соединению мог | |
432 произойти таймаут; ошибка появилась в 1.17.5. | |
433 | |
434 *) Исправление: в директиве debug_points при использовании HTTP/2. | |
435 Спасибо Даниилу Бондареву. | |
436 | |
437 | |
438 Изменения в nginx 1.17.7 24.12.2019 | |
439 | |
440 *) Исправление: на старте или во время переконфигурации мог произойти | |
441 segmentation fault, если в конфигурации использовалась директива | |
442 rewrite с пустой строкой замены. | |
443 | |
444 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
445 если директива break использовалась совместно с директивой alias или | |
446 директивой proxy_pass с URI. | |
447 | |
448 *) Исправление: строка Location заголовка ответа могла содержать мусор, | |
449 если URI запроса был изменён на URI, содержащий нулевой символ. | |
450 | |
451 *) Исправление: при возврате перенаправлений с помощью директивы | |
452 error_page запросы с телом обрабатывались некорректно; ошибка | |
453 появилась в 0.7.12. | |
454 | |
455 *) Исправление: утечки сокетов при использовании HTTP/2. | |
456 | |
457 *) Исправление: при обработке pipelined-запросов по SSL-соединению мог | |
458 произойти таймаут; ошибка появилась в 1.17.5. | |
459 | |
460 *) Исправление: в модуле ngx_http_dav_module. | |
461 | |
462 | |
463 Изменения в nginx 1.17.6 19.11.2019 | |
464 | |
465 *) Добавление: переменные $proxy_protocol_server_addr и | |
466 $proxy_protocol_server_port. | |
467 | |
468 *) Добавление: директива limit_conn_dry_run. | |
469 | |
470 *) Добавление: переменные $limit_req_status и $limit_conn_status. | |
471 | |
472 | |
473 Изменения в nginx 1.17.5 22.10.2019 | |
474 | |
475 *) Добавление: теперь nginx использует вызов ioctl(FIONREAD), если он | |
476 доступен, чтобы избежать чтения из быстрого соединения в течение | |
477 долгого времени. | |
478 | |
479 *) Исправление: неполные закодированные символы в конце URI запроса | |
480 игнорировались. | |
481 | |
482 *) Исправление: "/." и "/.." в конце URI запроса не нормализовывались. | |
483 | |
484 *) Исправление: в директиве merge_slashes. | |
485 | |
486 *) Исправление: в директиве ignore_invalid_headers. | |
487 Спасибо Alan Kemp. | |
488 | |
489 *) Исправление: nginx не собирался с MinGW-w64 gcc 8.1 и новее. | |
490 | |
491 | |
492 Изменения в nginx 1.17.4 24.09.2019 | |
493 | |
494 *) Изменение: улучшено детектирование некорректного поведения клиентов в | |
495 HTTP/2. | |
496 | |
497 *) Изменение: в обработке непрочитанного тела запроса при возврате | |
498 ошибок в HTTP/2. | |
499 | |
500 *) Исправление: директива worker_shutdown_timeout могла не работать при | |
501 использовании HTTP/2. | |
502 | |
503 *) Исправление: при использовании HTTP/2 и директивы | |
504 proxy_request_buffering в рабочем процессе мог произойти segmentation | |
505 fault. | |
506 | |
507 *) Исправление: на Windows при использовании SSL уровень записи в лог | |
508 ошибки ECONNABORTED был "crit" вместо "error". | |
509 | |
510 *) Исправление: nginx игнорировал лишние данные при использовании | |
511 chunked transfer encoding. | |
512 | |
513 *) Исправление: если использовалась директива return и при чтении тела | |
514 запроса возникала ошибка, nginx всегда возвращал ошибку 500. | |
515 | |
516 *) Исправление: в обработке ошибок выделения памяти. | |
517 | |
518 | |
519 Изменения в nginx 1.17.3 13.08.2019 | |
520 | |
521 *) Безопасность: при использовании HTTP/2 клиент мог вызвать чрезмерное | |
522 потребление памяти и ресурсов процессора (CVE-2019-9511, | |
523 CVE-2019-9513, CVE-2019-9516). | |
524 | |
525 *) Исправление: при использовании сжатия в логах могли появляться | |
526 сообщения "zero size buf"; ошибка появилась в 1.17.2. | |
527 | |
528 *) Исправление: при использовании директивы resolver в SMTP | |
529 прокси-сервере в рабочем процессе мог произойти segmentation fault. | |
530 | |
531 | |
532 Изменения в nginx 1.17.2 23.07.2019 | |
533 | |
534 *) Изменение: минимальная поддерживаемая версия zlib - 1.2.0.4. | |
535 Спасибо Илье Леошкевичу. | |
536 | |
537 *) Изменение: метод $r->internal_redirect() встроенного перла теперь | |
538 ожидает закодированный URI. | |
539 | |
540 *) Добавление: теперь с помощью метода $r->internal_redirect() | |
541 встроенного перла можно перейти в именованный location. | |
542 | |
543 *) Исправление: в обработке ошибок во встроенном перле. | |
544 | |
545 *) Исправление: на старте или во время переконфигурации мог произойти | |
546 segmentation fault, если в конфигурации использовалось значение hash | |
547 bucket size больше 64 килобайт. | |
548 | |
549 *) Исправление: при использовании методов обработки соединений select, | |
550 poll и /dev/poll nginx мог нагружать процессор во время | |
551 небуферизованного проксирования и при проксировании | |
552 WebSocket-соединений. | |
553 | |
554 *) Исправление: в модуле ngx_http_xslt_filter_module. | |
555 | |
556 *) Исправление: в модуле ngx_http_ssi_filter_module. | |
557 | |
558 | |
559 Изменения в nginx 1.17.1 25.06.2019 | |
560 | |
561 *) Добавление: директива limit_req_dry_run. | |
562 | |
563 *) Добавление: при использовании директивы hash в блоке upstream пустой | |
564 ключ хэширования теперь приводит к переключению на round-robin | |
565 балансировку. | |
566 Спасибо Niklas Keller. | |
567 | |
568 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
569 если использовалось кэширование и директива image_filter, а ошибки с | |
570 кодом 415 перенаправлялись с помощью директивы error_page; ошибка | |
571 появилась в 1.11.10. | |
572 | |
573 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
574 если использовался встроенный перл; ошибка появилась в 1.7.3. | |
575 | |
576 | |
577 Изменения в nginx 1.17.0 21.05.2019 | |
578 | |
579 *) Добавление: директивы limit_rate и limit_rate_after поддерживают | |
580 переменные. | |
581 | |
582 *) Добавление: директивы proxy_upload_rate и proxy_download_rate в | |
583 модуле stream поддерживают переменные. | |
584 | |
585 *) Изменение: минимальная поддерживаемая версия OpenSSL - 0.9.8. | |
586 | |
587 *) Изменение: теперь postpone-фильтр собирается всегда. | |
588 | |
589 *) Исправление: директива include не работала в блоках if и | |
590 limit_except. | |
591 | |
592 *) Исправление: в обработке byte ranges. | |
593 | |
594 | |
595 Изменения в nginx 1.15.12 16.04.2019 | |
596 | |
597 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
598 если в директивах ssl_certificate или ssl_certificate_key | |
599 использовались переменные и был включён OCSP stapling. | |
600 | |
601 | |
602 Изменения в nginx 1.15.11 09.04.2019 | |
603 | |
604 *) Исправление: в директиве ssl_stapling_file на Windows. | |
605 | |
606 | |
607 Изменения в nginx 1.15.10 26.03.2019 | |
608 | |
609 *) Изменение: теперь при использовании имени хоста в директиве listen | |
610 nginx создаёт listen-сокеты для всех адресов, соответствующих этому | |
611 имени (ранее использовался только первый адрес). | |
612 | |
613 *) Добавление: диапазоны портов в директиве listen. | |
614 | |
615 *) Добавление: возможность загрузки SSL-сертификатов и секретных ключей | |
616 из переменных. | |
617 | |
618 *) Изменение: переменная $ssl_server_name могла быть пустой при | |
619 использовании OpenSSL 1.1.1. | |
620 | |
621 *) Исправление: nginx/Windows не собирался с Visual Studio 2015 и новее; | |
622 ошибка появилась в 1.15.9. | |
623 | |
624 | |
625 Изменения в nginx 1.15.9 26.02.2019 | |
626 | |
627 *) Добавление: директивы ssl_certificate и ssl_certificate_key | |
628 поддерживают переменные. | |
629 | |
630 *) Добавление: метод poll теперь доступен на Windows при использовании | |
631 Windows Vista и новее. | |
632 | |
633 *) Исправление: если при использовании метода select на Windows | |
634 происходила ошибка при установлении соединения с бэкендом, nginx | |
635 ожидал истечения таймаута на установление соединения. | |
636 | |
637 *) Исправление: директивы proxy_upload_rate и proxy_download_rate в | |
638 модуле stream работали некорректно при проксировании UDP-пакетов. | |
639 | |
640 | |
641 Изменения в nginx 1.15.8 25.12.2018 | |
642 | |
643 *) Добавление: переменная $upstream_bytes_sent. | |
644 Спасибо Piotr Sikora. | |
645 | |
646 *) Добавление: новые директивы в скриптах подсветки синтаксиса для vim. | |
647 Спасибо Геннадию Махомеду. | |
648 | |
649 *) Исправление: в директиве proxy_cache_background_update. | |
650 | |
651 *) Исправление: в директиве geo при использовании unix domain | |
652 listen-сокетов. | |
653 | |
654 *) Изменение: при использовании директивы ssl_early_data с OpenSSL в | |
655 логах могли появляться сообщения "ignoring stale global SSL error ... | |
656 bad length". | |
657 | |
658 *) Исправление: в nginx/Windows. | |
659 | |
660 *) Исправление: в модуле ngx_http_autoindex_module на 32-битных | |
661 платформах. | |
662 | |
663 | |
664 Изменения в nginx 1.15.7 27.11.2018 | |
665 | |
666 *) Добавление: директива proxy_requests в модуле stream. | |
667 | |
668 *) Добавление: параметр "delay" директивы "limit_req". | |
669 Спасибо Владиславу Шабанову и Петру Щучкину. | |
670 | |
671 *) Исправление: утечки памяти в случае ошибок при переконфигурации. | |
672 | |
673 *) Исправление: в переменных $upstream_response_time, | |
674 $upstream_connect_time и $upstream_header_time. | |
675 | |
676 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
677 если использовался модуль ngx_http_mp4_module на 32-битных | |
678 платформах. | |
679 | |
680 | |
681 Изменения в nginx 1.15.6 06.11.2018 | |
682 | |
683 *) Безопасность: при использовании HTTP/2 клиент мог вызвать чрезмерное | |
684 потреблению памяти (CVE-2018-16843) и ресурсов процессора | |
685 (CVE-2018-16844). | |
686 | |
687 *) Безопасность: при обработке специально созданного mp4-файла модулем | |
688 ngx_http_mp4_module содержимое памяти рабочего процесса могло быть | |
689 отправлено клиенту (CVE-2018-16845). | |
690 | |
691 *) Добавление: директивы proxy_socket_keepalive, | |
692 fastcgi_socket_keepalive, grpc_socket_keepalive, | |
693 memcached_socket_keepalive, scgi_socket_keepalive и | |
694 uwsgi_socket_keepalive. | |
695 | |
696 *) Исправление: если nginx был собран с OpenSSL 1.1.0, а использовался с | |
697 OpenSSL 1.1.1, протокол TLS 1.3 всегда был разрешён. | |
698 | |
699 *) Исправление: при работе с gRPC-бэкендами могло расходоваться большое | |
700 количество памяти. | |
701 | |
702 | |
703 Изменения в nginx 1.15.5 02.10.2018 | |
704 | |
705 *) Исправление: при использовании OpenSSL 1.1.0h и новее в рабочем | |
706 процессе мог произойти segmentation fault; ошибка появилась в 1.15.4. | |
707 | |
708 *) Исправление: незначительных потенциальных ошибок. | |
709 | |
710 | |
711 Изменения в nginx 1.15.4 25.09.2018 | |
712 | |
713 *) Добавление: теперь директиву ssl_early_data можно использовать с | |
714 OpenSSL. | |
715 | |
716 *) Исправление: в модуле ngx_http_uwsgi_module. | |
717 Спасибо Chris Caputo. | |
718 | |
719 *) Исправление: соединения к некоторым gRPC-бэкендам могли не | |
720 кэшироваться при использовании директивы keepalive. | |
721 | |
722 *) Исправление: при использовании директивы error_page для | |
723 перенаправления ошибок, возникающих на ранних этапах обработки | |
724 запроса, в частности ошибок с кодом 400, могла происходить утечка | |
725 сокетов. | |
726 | |
727 *) Исправление: директива return при возврате ошибок не изменяла код | |
728 ответа, если запрос был перенаправлен с помощью директивы error_page. | |
729 | |
730 *) Исправление: стандартные сообщения об ошибках и ответы модуля | |
731 ngx_http_autoindex_module содержали атрибут bgcolor, что могло | |
732 приводить к их некорректному отображению при использовании | |
733 пользовательских настроек цветов в браузерах. | |
734 Спасибо Nova DasSarma. | |
735 | |
736 *) Изменение: уровень логгирования ошибок SSL "no suitable key share" и | |
737 "no suitable signature algorithm" понижен с уровня crit до info. | |
738 | |
739 | |
740 Изменения в nginx 1.15.3 28.08.2018 | |
741 | |
742 *) Добавление: теперь TLSv1.3 можно использовать с BoringSSL. | |
743 | |
744 *) Добавление: директива ssl_early_data, сейчас доступна при | |
745 использовании BoringSSL. | |
746 | |
747 *) Добавление: директивы keepalive_timeout и keepalive_requests в блоке | |
748 upstream. | |
749 | |
750 *) Исправление: модуль ngx_http_dav_module при копировании файла поверх | |
751 существующего файла с помощью метода COPY не обнулял целевой файл. | |
752 | |
753 *) Исправление: модуль ngx_http_dav_module при перемещении файла между | |
754 файловыми системами с помощью метода MOVE устанавливал нулевые права | |
755 доступа на результирующий файл и не сохранял время изменения файла. | |
756 | |
757 *) Исправление: модуль ngx_http_dav_module при копировании файла с | |
758 помощью метода COPY для результирующего файла использовал права | |
759 доступа по умолчанию. | |
760 | |
761 *) Изменение: некоторые клиенты могли не работать при использовании | |
762 HTTP/2; ошибка появилась в 1.13.5. | |
763 | |
764 *) Исправление: nginx не собирался с LibreSSL 2.8.0. | |
765 | |
766 | |
767 Изменения в nginx 1.15.2 24.07.2018 | |
768 | |
769 *) Добавление: переменная $ssl_preread_protocol в модуле | |
770 ngx_stream_ssl_preread_module. | |
771 | |
772 *) Добавление: теперь при использовании директивы | |
773 reset_timedout_connection nginx сбрасывает соединения, закрываемые с | |
774 кодом 444. | |
775 | |
776 *) Изменение: уровень логгирования ошибок SSL "http request", "https | |
777 proxy request", "unsupported protocol" и "version too low" понижен с | |
778 уровня crit до info. | |
779 | |
780 *) Исправление: запросы к DNS-серверу не отправлялись повторно, если при | |
781 первой попытке отправки происходила ошибка. | |
782 | |
783 *) Исправление: параметр reuseport директивы listen игнорировался, если | |
784 количество рабочих процессов было задано после директивы listen. | |
785 | |
786 *) Исправление: при использовании OpenSSL 1.1.0 и новее директиву | |
787 ssl_prefer_server_ciphers нельзя было выключить в виртуальном | |
788 сервере, если она была включена в сервере по умолчанию. | |
789 | |
790 *) Исправление: повторное использование SSL-сессий к бэкендам не | |
791 работало с протоколом TLS 1.3. | |
792 | |
793 | |
794 Изменения в nginx 1.15.1 03.07.2018 | |
795 | |
796 *) Добавление: директива random в блоке upstream. | |
797 | |
798 *) Добавление: улучшена производительность при использовании директив | |
799 hash и ip_hash совместно с директивой zone. | |
800 | |
801 *) Добавление: параметр reuseport директивы listen теперь использует | |
802 SO_REUSEPORT_LB на FreeBSD 12. | |
803 | |
804 *) Исправление: HTTP/2 server push не работал, если SSL терминировался | |
805 прокси-сервером перед nginx'ом. | |
806 | |
807 *) Исправление: директива tcp_nopush всегда использовалась для | |
808 соединений к бэкендам. | |
809 | |
810 *) Исправление: при отправке сохранённого на диск тела запроса на | |
811 gRPC-бэкенд могли возникать ошибки. | |
812 | |
813 | |
814 Изменения в nginx 1.15.0 05.06.2018 | |
815 | |
816 *) Изменение: директива "ssl" теперь считается устаревшей; вместо неё | |
817 следует использовать параметр ssl директивы listen. | |
818 | |
819 *) Изменение: теперь при использовании директивы listen с параметром ssl | |
820 nginx определяет отсутствие SSL-сертификатов при тестировании | |
821 конфигурации. | |
822 | |
823 *) Добавление: теперь модуль stream умеет обрабатывать несколько | |
824 входящих UDP-пакетов от клиента в рамках одной сессии. | |
825 | |
826 *) Исправление: в директиве proxy_cache_valid можно было указать | |
827 некорректный код ответа. | |
828 | |
829 *) Исправление: nginx не собирался gcc 8.1. | |
830 | |
831 *) Исправление: логгирование в syslog останавливалось при изменении | |
832 локального IP-адреса. | |
833 | |
834 *) Исправление: nginx не собирался компилятором clang, если был | |
835 установлен CUDA SDK; ошибка появилась в 1.13.8. | |
836 | |
837 *) Исправление: при использовании unix domain listen-сокетов на FreeBSD | |
838 в процессе обновления исполняемого файла в логе могли появляться | |
839 сообщения "getsockopt(TCP_FASTOPEN) ... failed". | |
840 | |
841 *) Исправление: nginx не собирался на Fedora 28 Linux. | |
842 | |
843 *) Исправление: при использовании директивы limit_req заданная скорость | |
844 обработки запросов могла не соблюдаться. | |
845 | |
846 *) Исправление: в обработке адресов клиентов при использовании unix | |
847 domain listen-сокетов для работы с датаграммами на Linux. | |
848 | |
849 *) Исправление: в обработке ошибок выделения памяти. | |
850 | |
851 | |
852 Изменения в nginx 1.13.12 10.04.2018 | |
853 | |
854 *) Исправление: при возврате большого ответа соединения с gRPC-бэкендами | |
855 могли неожиданно закрываться. | |
856 | |
857 | |
858 Изменения в nginx 1.13.11 03.04.2018 | |
859 | |
860 *) Добавление: параметр proxy_protocol директивы listen теперь | |
861 поддерживает протокол PROXY версии 2. | |
862 | |
863 *) Исправление: nginx не собирался с OpenSSL 1.1.1 статически на Linux. | |
864 | |
865 *) Исправление: в параметрах http_404, http_500 и им подобных директивы | |
866 proxy_next_upstream. | |
867 | |
868 | |
869 Изменения в nginx 1.13.10 20.03.2018 | |
870 | |
871 *) Добавление: теперь параметр set в SSI-директиве include позволяет | |
872 сохранять в переменную любые ответы; максимальный размер ответа | |
873 задаётся директивой subrequest_output_buffer_size. | |
874 | |
875 *) Добавление: теперь nginx использует вызов | |
876 clock_gettime(CLOCK_MONOTONIC), если он доступен, что позволяет | |
877 избежать некорректного срабатывания таймаутов при изменениях | |
878 системного времени. | |
879 | |
880 *) Добавление: параметр "escape=none" директивы log_format. | |
881 Спасибо Johannes Baiter и Calin Don. | |
882 | |
883 *) Добавление: переменная $ssl_preread_alpn_protocols в модуле | |
884 ngx_stream_ssl_preread_module. | |
885 | |
886 *) Добавление: модуль ngx_http_grpc_module. | |
887 | |
888 *) Исправление: в обработке ошибок выделения памяти в директиве geo. | |
889 | |
890 *) Исправление: при использовании переменных в директиве | |
891 auth_basic_user_file в лог мог выводиться символ '\0'. | |
892 Спасибо Вадиму Филимонову. | |
893 | |
894 | |
895 Изменения в nginx 1.13.9 20.02.2018 | |
896 | |
897 *) Добавление: поддержка HTTP/2 server push; директивы http2_push и | |
898 http2_push_preload. | |
899 | |
900 *) Исправление: при использовании кэша в логах могли появляться | |
901 сообщения "header already sent"; ошибка появилась в 1.9.13. | |
902 | |
903 *) Исправление: при использовании директивы ssl_verify_client в рабочем | |
904 процессе мог произойти segmentation fault, если в виртуальном сервере | |
905 не был указан SSL-сертификат. | |
906 | |
907 *) Исправление: в модуле ngx_http_v2_module. | |
908 | |
909 *) Исправление: в модуле ngx_http_dav_module. | |
910 | |
911 | |
912 Изменения в nginx 1.13.8 26.12.2017 | |
913 | |
914 *) Добавление: теперь при использовании параметра transparent директив | |
915 proxy_bind, fastcgi_bind, memcached_bind, scgi_bind и uwsgi_bind | |
916 nginx автоматически сохраняет capability CAP_NET_RAW в рабочих | |
917 процессах. | |
918 | |
919 *) Добавление: улучшения в определении размера строки кэша процессора. | |
920 Спасибо Debayan Ghosh. | |
921 | |
922 *) Добавление: новые директивы в скриптах подсветки синтаксиса для vim. | |
923 Спасибо Геннадию Махомеду. | |
924 | |
925 *) Исправление: процедура обновления исполняемого файла не работала, | |
926 если после завершения родительского процесса новым родительским | |
927 процессом nginx'а становился процесс с PID, отличным от 1. | |
928 | |
929 *) Исправление: модуль ngx_http_autoindex_module неправильно обрабатывал | |
930 запросы с телом. | |
931 | |
932 *) Исправление: в директиве proxy_limit_rate при использовании с | |
933 директивой keepalive. | |
934 | |
935 *) Исправление: при использовании "proxy_buffering off" часть ответа | |
936 могла буферизироваться, если клиентское соединение использовало SSL. | |
937 Спасибо Patryk Lesiewicz. | |
938 | |
939 *) Исправление: в директиве proxy_cache_background_update. | |
940 | |
941 *) Исправление: переменную вида "${name}" с именем в фигурных скобках | |
942 нельзя было использовать в начале параметра не заключив весь параметр | |
943 в кавычки. | |
944 | |
945 | |
946 Изменения в nginx 1.13.7 21.11.2017 | |
947 | |
948 *) Исправление: в переменной $upstream_status. | |
949 | |
950 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
951 если бэкенд возвращал ответ "101 Switching Protocols" на подзапрос. | |
952 | |
953 *) Исправление: если при переконфигурации изменялся размер зоны | |
954 разделяемой памяти и переконфигурация завершалась неудачно, то в | |
955 главном процессе происходил segmentation fault. | |
956 | |
957 *) Исправление: в модуле ngx_http_fastcgi_module. | |
958 | |
959 *) Исправление: nginx возвращал ошибку 500, если в директиве | |
960 xslt_stylesheet были заданы параметры без использования переменных. | |
961 | |
962 *) Изменение: при использовании варианта библиотеки zlib от Intel в лог | |
963 писались сообщения "gzip filter failed to use preallocated memory". | |
964 | |
965 *) Исправление: директива worker_shutdown_timeout не работала при | |
966 использовании почтового прокси-сервера и при проксировании | |
967 WebSocket-соединений. | |
968 | |
969 | |
970 Изменения в nginx 1.13.6 10.10.2017 | |
971 | |
972 *) Исправление: при использовании директивы ssl_preread в модуле stream | |
973 не работало переключение на следующий бэкенд. | |
974 | |
975 *) Исправление: в модуле ngx_http_v2_module. | |
976 Спасибо Piotr Sikora. | |
977 | |
978 *) Исправление: nginx не поддерживал даты после 2038 года на 32-битных | |
979 платформах с 64-битным time_t. | |
980 | |
981 *) Исправление: в обработке дат до 1970 года и после 10000 года. | |
982 | |
983 *) Исправление: в модуле stream таймауты ожидания UDP-пакетов от | |
984 бэкендов не логгировались или логгировались на уровне info вместо | |
985 error. | |
986 | |
987 *) Исправление: при использовании HTTP/2 nginx мог вернуть ошибку 400, | |
988 не указав в логе причину. | |
989 | |
990 *) Исправление: в обработке повреждённых файлов кэша. | |
991 | |
992 *) Исправление: при кэшировании ошибок, перехваченных error_page, не | |
993 учитывались заголовки управления кэшированием. | |
994 | |
995 *) Исправление: при использовании HTTP/2 тело запроса могло быть | |
996 повреждено. | |
997 | |
998 *) Исправление: в обработке адресов клиентов при использовании unix | |
999 domain сокетов. | |
1000 | |
1001 *) Исправление: при использовании директивы "hash ... consistent" в | |
1002 блоке upstream nginx нагружал процессор, если использовались большие | |
1003 веса и все или почти все бэкенды были недоступны. | |
1004 | |
1005 | |
1006 Изменения в nginx 1.13.5 05.09.2017 | |
1007 | |
1008 *) Добавление: переменная $ssl_client_escaped_cert. | |
1009 | |
1010 *) Исправление: директива ssl_session_ticket_key и параметр include | |
1011 директивы geo не работали на Windows. | |
1012 | |
1013 *) Исправление: на 32-битных платформах при запросе более 4 гигабайт с | |
1014 помощью нескольких диапазонов возвращалась некорректная длина ответа. | |
1015 | |
1016 *) Исправление: директива "expires modified" и обработка строки If-Range | |
1017 заголовка запроса не учитывали время последнего изменения ответа, | |
1018 если использовалось проксирование без кэширования. | |
1019 | |
1020 | |
1021 Изменения в nginx 1.13.4 08.08.2017 | |
1022 | |
1023 *) Добавление: модуль ngx_http_mirror_module. | |
1024 | |
1025 *) Исправление: клиентские соединения могли сбрасываться при | |
1026 тестировании конфигурации, если использовался параметр reuseport | |
1027 директивы listen на Linux. | |
1028 | |
1029 *) Исправление: тело запроса могло быть недоступно в подзапросах, если | |
1030 оно было сохранено в файл и использовалось проксирование. | |
1031 | |
1032 *) Исправление: очистка кэша по max_size не работала на Windows. | |
1033 | |
1034 *) Исправление: любое выделение разделяемой памяти на Windows требовало | |
1035 4096 байт памяти. | |
1036 | |
1037 *) Исправление: при использовании директивы zone в блоке upstream на | |
1038 Windows рабочий процесс мог завершаться аварийно. | |
1039 | |
1040 | |
1041 Изменения в nginx 1.13.3 11.07.2017 | |
1042 | |
1043 *) Безопасность: специально созданный запрос мог вызвать целочисленное | |
1044 переполнение в range-фильтре и последующую некорректную обработку | |
1045 запрошенных диапазонов, что потенциально могло привести к утечке | |
1046 конфиденциальной информации (CVE-2017-7529). | |
1047 | |
1048 | |
1049 Изменения в nginx 1.13.2 27.06.2017 | |
1050 | |
1051 *) Изменение: теперь при запросе диапазона, начинающегося с 0, из | |
1052 пустого файла nginx возвращает ответ 200 вместо 416. | |
1053 | |
1054 *) Добавление: директива add_trailer. | |
1055 Спасибо Piotr Sikora. | |
1056 | |
1057 *) Исправление: nginx не собирался под Cygwin и NetBSD; ошибка появилась | |
1058 в 1.13.0. | |
1059 | |
1060 *) Исправление: nginx не собирался под MSYS2 / MinGW 64-bit. | |
1061 Спасибо Orgad Shaneh. | |
1062 | |
1063 *) Исправление: при использовании SSI с большим количеством подзапросов | |
1064 и proxy_pass с переменными в рабочем процессе мог произойти | |
1065 segmentation fault. | |
1066 | |
1067 *) Исправление: в модуле ngx_http_v2_module. | |
1068 Спасибо Piotr Sikora. | |
1069 | |
1070 | |
1071 Изменения в nginx 1.13.1 30.05.2017 | |
1072 | |
1073 *) Добавление: теперь в качестве параметра директивы set_real_ip_from | |
1074 можно указывать имя хоста. | |
1075 | |
1076 *) Добавление: улучшения в скриптах подсветки синтаксиса для vim. | |
1077 | |
1078 *) Добавление: директива worker_cpu_affinity теперь работает на | |
1079 DragonFly BSD. | |
1080 Спасибо Sepherosa Ziehau. | |
1081 | |
1082 *) Исправление: SSL renegotiation в соединениях к бэкендам не работал | |
1083 при использовании OpenSSL до 1.1.0. | |
1084 | |
1085 *) Изменение: nginx не собирался с Oracle Developer Studio 12.5. | |
1086 | |
1087 *) Изменение: теперь cache manager пропускает заблокированные записи при | |
1088 очистке кэша по max_size. | |
1089 | |
1090 *) Исправление: клиентские SSL-соединения сразу закрывались, если | |
1091 использовался отложенный accept и параметр proxy_protocol директивы | |
1092 listen. | |
1093 | |
1094 *) Исправление: в директиве proxy_cache_background_update. | |
1095 | |
1096 *) Изменение: теперь директива tcp_nodelay устанавливает опцию | |
1097 TCP_NODELAY перед SSL handshake. | |
1098 | |
1099 | |
1100 Изменения в nginx 1.13.0 25.04.2017 | |
1101 | |
1102 *) Изменение: теперь SSL renegotiation допускается в соединениях к | |
1103 бэкендам. | |
1104 | |
1105 *) Добавление: параметры rcvbuf и sndbuf директив listen в почтовом | |
1106 прокси-сервере и модуле stream. | |
1107 | |
1108 *) Добавление: директивы return и error_page теперь могут использоваться | |
1109 для возврата перенаправлений с кодом 308. | |
1110 Спасибо Simon Leblanc. | |
1111 | |
1112 *) Добавление: параметр TLSv1.3 в директиве ssl_protocols. | |
1113 | |
1114 *) Добавление: при логгировании сигналов теперь указывается PID | |
1115 отправившего сигнал процесса. | |
1116 | |
1117 *) Исправление: в обработке ошибок выделения памяти. | |
1118 | |
1119 *) Исправление: если сервер в модуле stream слушал на wildcard-адресе, | |
1120 исходящий адрес ответного UDP-пакета мог отличаться от адреса | |
1121 назначения исходного пакета. | |
1122 | |
1123 | |
1124 Изменения в nginx 1.11.13 04.04.2017 | |
1125 | |
1126 *) Добавление: параметр http_429 в директивах proxy_next_upstream, | |
1127 fastcgi_next_upstream, scgi_next_upstream и uwsgi_next_upstream. | |
1128 Спасибо Piotr Sikora. | |
1129 | |
1130 *) Исправление: в обработке ошибок выделения памяти. | |
1131 | |
1132 *) Исправление: при использовании директив sendfile и timer_resolution | |
1133 на Linux запросы могли зависать. | |
1134 | |
1135 *) Исправление: при использовании с подзапросами директив sendfile и | |
1136 aio_write запросы могли зависать. | |
1137 | |
1138 *) Исправление: в модуле ngx_http_v2_module. | |
1139 Спасибо Piotr Sikora. | |
1140 | |
1141 *) Исправление: при использовании HTTP/2 в рабочем процессе мог | |
1142 произойти segmentation fault. | |
1143 | |
1144 *) Исправление: запросы могли зависать при использовании с подзапросами | |
1145 директив limit_rate, sendfile_max_chunk, limit_req или метода | |
1146 $r->sleep() встроенного перла. | |
1147 | |
1148 *) Исправление: в модуле ngx_http_slice_module. | |
1149 | |
1150 | |
1151 Изменения в nginx 1.11.12 24.03.2017 | |
1152 | |
1153 *) Исправление: nginx мог нагружать процессор; ошибка появилась в | |
1154 1.11.11. | |
1155 | |
1156 | |
1157 Изменения в nginx 1.11.11 21.03.2017 | |
1158 | |
1159 *) Добавление: директива worker_shutdown_timeout. | |
1160 | |
1161 *) Добавление: улучшения в скриптах подсветки синтаксиса для vim. | |
1162 Спасибо Wei-Ko Kao. | |
1163 | |
1164 *) Исправление: при попытке установить переменную $limit_rate в пустую | |
1165 строку в рабочем процессе мог произойти segmentation fault. | |
1166 | |
1167 *) Исправление: директивы proxy_cache_background_update, | |
1168 fastcgi_cache_background_update, scgi_cache_background_update и | |
1169 uwsgi_cache_background_update могли работать некорректно, если | |
1170 использовалась директива if. | |
1171 | |
1172 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
1173 если количество large_client_header_buffers в виртуальном сервере | |
1174 отличалось от такового в сервере по умолчанию. | |
1175 | |
1176 *) Исправление: в почтовом прокси-сервере. | |
1177 | |
1178 | |
1179 Изменения в nginx 1.11.10 14.02.2017 | |
1180 | |
1181 *) Изменение: формат заголовка кэша был изменен, ранее закэшированные | |
1182 ответы будут загружены заново. | |
1183 | |
1184 *) Добавление: поддержка расширений stale-while-revalidate и | |
1185 stale-if-error в строке "Cache-Control" в заголовке ответа бэкенда. | |
1186 | |
1187 *) Добавление: директивы proxy_cache_background_update, | |
1188 fastcgi_cache_background_update, scgi_cache_background_update и | |
1189 uwsgi_cache_background_update. | |
1190 | |
1191 *) Добавление: теперь nginx может кэшировать ответы со строкой Vary | |
1192 заголовка длиной до 128 символов (вместо 42 символов в предыдущих | |
1193 версиях). | |
1194 | |
1195 *) Добавление: параметр build директивы server_tokens. | |
1196 Спасибо Tom Thorogood. | |
1197 | |
1198 *) Исправление: при обработке запросов со строкой "Expect: 100-continue" | |
1199 в заголовке запроса в логах могли появляться сообщения "[crit] | |
1200 SSL_write() failed". | |
1201 | |
1202 *) Исправление: модуль ngx_http_slice_module не работал в именованных | |
1203 location'ах. | |
1204 | |
1205 *) Исправление: при использовании AIO после перенаправления запроса с | |
1206 помощью X-Accel-Redirect в рабочем процессе мог произойти | |
1207 segmentation fault. | |
1208 | |
1209 *) Исправление: уменьшено потребление памяти для долгоживущих запросов, | |
1210 использующих сжатие. | |
1211 | |
1212 | |
1213 Изменения в nginx 1.11.9 24.01.2017 | |
1214 | |
1215 *) Исправление: при использовании модуля stream nginx мог нагружать | |
1216 процессор; ошибка появилась в 1.11.5. | |
1217 | |
1218 *) Исправление: метод аутентификации EXTERNAL в почтовом прокси-сервере | |
1219 можно было использовать, даже если он не был разрешён в конфигурации. | |
1220 | |
1221 *) Исправление: при использовании директивы ssl_verify_client модуля | |
1222 stream в рабочем процессе мог произойти segmentation fault. | |
1223 | |
1224 *) Исправление: директива ssl_verify_client модуля stream могла не | |
1225 работать. | |
1226 | |
1227 *) Исправление: при исчерпании рабочим процессом свободных соединений | |
1228 keepalive-соединения могли закрываться излишне агрессивно. | |
1229 Спасибо Joel Cunningham. | |
1230 | |
1231 *) Исправление: при использовании директивы sendfile на FreeBSD и macOS | |
1232 мог возвращаться некорректный ответ; ошибка появилась в 1.7.8. | |
1233 | |
1234 *) Исправление: при использовании директивы aio_write ответ мог | |
1235 сохраняться в кэш не полностью. | |
1236 | |
1237 *) Исправление: при использовании директивы aio_write могла происходить | |
1238 утечка сокетов. | |
1239 | |
1240 | |
1241 Изменения в nginx 1.11.8 27.12.2016 | |
1242 | |
1243 *) Добавление: директива absolute_redirect. | |
1244 | |
1245 *) Добавление: параметр escape директивы log_format. | |
1246 | |
1247 *) Добавление: проверка клиентских SSL-сертификатов в модуле stream. | |
1248 | |
1249 *) Добавление: директива ssl_session_ticket_key поддерживает шифрование | |
1250 TLS session tickets с помощью AES256 при использовании с 80-байтными | |
1251 ключами. | |
1252 | |
1253 *) Добавление: поддержка vim-commentary в скриптах для vim. | |
1254 Спасибо Armin Grodon. | |
1255 | |
1256 *) Исправление: рекурсия при получении значений переменных не | |
1257 ограничивалась. | |
1258 | |
1259 *) Исправление: в модуле ngx_stream_ssl_preread_module. | |
1260 | |
1261 *) Исправление: если сервер, описанный в блоке upstream в модуле stream, | |
1262 был признан неработающим, то после истечения fail_timeout он | |
1263 признавался работающим только после завершения тестового соединения; | |
1264 теперь достаточно, чтобы соединение было успешно установлено. | |
1265 | |
1266 *) Исправление: nginx/Windows не собирался с 64-битным Visual Studio. | |
1267 | |
1268 *) Исправление: nginx/Windows не собирался с OpenSSL 1.1.0. | |
1269 | |
1270 | |
1271 Изменения в nginx 1.11.7 13.12.2016 | |
1272 | |
1273 *) Изменение: переменная $ssl_client_verify теперь в случае ошибки | |
1274 проверки клиентского сертификата содержит строку с описанием ошибки, | |
1275 например, "FAILED:certificate has expired". | |
1276 | |
1277 *) Добавление: переменные $ssl_ciphers, $ssl_curves, | |
1278 $ssl_client_v_start, $ssl_client_v_end и $ssl_client_v_remain. | |
1279 | |
1280 *) Добавление: параметр volatile директивы map. | |
1281 | |
1282 *) Исправление: при сборке динамических модулей не учитывались заданные | |
1283 для модуля зависимости. | |
1284 | |
1285 *) Исправление: при использовании HTTP/2 и директив limit_req или | |
1286 auth_request тело запроса могло быть повреждено; ошибка появилась в | |
1287 1.11.0. | |
1288 | |
1289 *) Исправление: при использовании HTTP/2 в рабочем процессе мог | |
1290 произойти segmentation fault; ошибка появилась в 1.11.3. | |
1291 | |
1292 *) Исправление: в модуле ngx_http_mp4_module. | |
1293 Спасибо Congcong Hu. | |
1294 | |
1295 *) Исправление: в модуле ngx_http_perl_module. | |
1296 | |
1297 | |
1298 Изменения в nginx 1.11.6 15.11.2016 | |
1299 | |
1300 *) Изменение: формат переменных $ssl_client_s_dn и $ssl_client_i_dn | |
1301 изменён на соответствующий RFC 2253 (RFC 4514); значения в старом | |
1302 формате доступны через переменные $ssl_client_s_dn_legacy и | |
1303 $ssl_client_i_dn_legacy. | |
1304 | |
1305 *) Изменение: при сохранении временных файлов в каталоге кэша они теперь | |
1306 располагаются не в отдельном подкаталоге для временных файлов, а в | |
1307 том же подкаталоге, что и соответствующие файлы в кэше. | |
1308 | |
1309 *) Добавление: поддержка метода аутентификации EXTERNAL в почтовом | |
1310 прокси-сервере. | |
1311 Спасибо Robert Norris. | |
1312 | |
1313 *) Добавление: поддержка WebP в модуле ngx_http_image_filter_module. | |
1314 | |
1315 *) Добавление: директива proxy_method поддерживает переменные. | |
1316 Спасибо Дмитрию Лазуркину. | |
1317 | |
1318 *) Добавление: директива http2_max_requests в модуле ngx_http_v2_module. | |
1319 | |
1320 *) Добавление: директивы proxy_cache_max_range_offset, | |
1321 fastcgi_cache_max_range_offset, scgi_cache_max_range_offset и | |
1322 uwsgi_cache_max_range_offset. | |
1323 | |
1324 *) Исправление: плавное завершение старых рабочих процессов могло | |
1325 занимать бесконечное время при использовании HTTP/2. | |
1326 | |
1327 *) Исправление: в модуле ngx_http_mp4_module. | |
1328 | |
1329 *) Исправление: при проксировании WebSocket-соединений и включённом | |
1330 кэшировании в логах могли появляться сообщения "ignore long locked | |
1331 inactive cache entry". | |
1332 | |
1333 *) Исправление: если во время SSL handshake с бэкендом происходил | |
1334 таймаут, nginx ничего не писал в лог и возвращал ответ с кодом 502 | |
1335 вместо 504. | |
1336 | |
1337 | |
1338 Изменения в nginx 1.11.5 11.10.2016 | |
1339 | |
1340 *) Изменение: параметр configure --with-ipv6 упразднён, поддержка IPv6 | |
1341 теперь собирается автоматически. | |
1342 | |
1343 *) Изменение: теперь, если в блоке upstream не оказалось доступных | |
1344 серверов, nginx не сбрасывает статистику ошибок всех серверов, как | |
1345 делал ранее, а ожидает истечения fail_timeout. | |
1346 | |
1347 *) Добавление: модуль ngx_stream_ssl_preread_module. | |
1348 | |
1349 *) Добавление: директива server в блоке upstream поддерживает параметр | |
1350 max_conns. | |
1351 | |
1352 *) Добавление: параметр configure --with-compat. | |
1353 | |
1354 *) Добавление: параметры manager_files, manager_threshold и | |
1355 manager_sleep директив proxy_cache_path, fastcgi_cache_path, | |
1356 scgi_cache_path и uwsgi_cache_path. | |
1357 | |
1358 *) Исправление: при сборке perl-модуля не использовались флаги, заданные | |
1359 с помощью параметра configure --with-ld-opt. | |
1360 | |
1361 *) Исправление: в директиве add_after_body при использовании совместно с | |
1362 директивой sub_filter. | |
1363 | |
1364 *) Исправление: в переменной $realip_remote_addr. | |
1365 | |
1366 *) Исправление: директивы dav_access, proxy_store_access, | |
1367 fastcgi_store_access, scgi_store_access и uwsgi_store_access | |
1368 игнорировали права, заданные для пользователя. | |
1369 | |
1370 *) Исправление: unix domain listen-сокеты могли не наследоваться при | |
1371 обновлении исполняемого файла на Linux. | |
1372 | |
1373 *) Исправление: nginx возвращал ошибку 400 на запросы с символом "-" в | |
1374 HTTP-методе. | |
1375 | |
1376 | |
1377 Изменения в nginx 1.11.4 13.09.2016 | |
1378 | |
1379 *) Добавление: переменная $upstream_bytes_received. | |
1380 | |
1381 *) Добавление: переменные $bytes_received, $session_time, $protocol, | |
1382 $status, $upstream_addr, $upstream_bytes_sent, | |
1383 $upstream_bytes_received, $upstream_connect_time, | |
1384 $upstream_first_byte_time и $upstream_session_time в модуле stream. | |
1385 | |
1386 *) Добавление: модуль ngx_stream_log_module. | |
1387 | |
1388 *) Добавление: параметр proxy_protocol в директиве listen, переменные | |
1389 $proxy_protocol_addr и $proxy_protocol_port в модуле stream. | |
1390 | |
1391 *) Добавление: модуль ngx_stream_realip_module. | |
1392 | |
1393 *) Исправление: nginx не собирался с модулем stream и модулем | |
1394 ngx_http_ssl_module, но без модуля ngx_stream_ssl_module; ошибка | |
1395 появилась в 1.11.3. | |
1396 | |
1397 *) Добавление: опция сокета IP_BIND_ADDRESS_NO_PORT не использовалась; | |
1398 ошибка появилась в 1.11.2. | |
1399 | |
1400 *) Исправление: в параметре ranges директивы geo. | |
1401 | |
1402 *) Исправление: при использовании директив "aio threads" и sendfile мог | |
1403 возвращаться некорректный ответ; ошибка появилась в 1.9.13. | |
1404 | |
1405 | |
1406 Изменения в nginx 1.11.3 26.07.2016 | |
1407 | |
1408 *) Изменение: теперь accept_mutex по умолчанию выключен. | |
1409 | |
1410 *) Добавление: теперь nginx использует EPOLLEXCLUSIVE на Linux. | |
1411 | |
1412 *) Добавление: модуль ngx_stream_geo_module. | |
1413 | |
1414 *) Добавление: модуль ngx_stream_geoip_module. | |
1415 | |
1416 *) Добавление: модуль ngx_stream_split_clients_module. | |
1417 | |
1418 *) Добавление: директивы proxy_pass и proxy_ssl_name в модуле stream | |
1419 поддерживают переменные. | |
1420 | |
1421 *) Исправление: утечки сокетов при использовании HTTP/2. | |
1422 | |
1423 *) Исправление: в configure. | |
1424 Спасибо Piotr Sikora. | |
1425 | |
1426 | |
1427 Изменения в nginx 1.11.2 05.07.2016 | |
1428 | |
1429 *) Изменение: теперь nginx всегда использует внутренние реализации MD5 и | |
1430 SHA1; параметры configure --with-md5 и --with-sha1 упразднены. | |
1431 | |
1432 *) Добавление: поддержка переменных в модуле stream. | |
1433 | |
1434 *) Добавление: модуль ngx_stream_map_module. | |
1435 | |
1436 *) Добавление: модуль ngx_stream_return_module. | |
1437 | |
1438 *) Добавление: в директивах proxy_bind, fastcgi_bind, memcached_bind, | |
1439 scgi_bind и uwsgi_bind теперь можно указывать порт. | |
1440 | |
1441 *) Добавление: теперь nginx использует опцию сокета | |
1442 IP_BIND_ADDRESS_NO_PORT, если она доступна. | |
1443 | |
1444 *) Исправление: при использовании HTTP/2 и директивы | |
1445 proxy_request_buffering в рабочем процессе мог произойти segmentation | |
1446 fault. | |
1447 | |
1448 *) Исправление: при использовании HTTP/2 к запросам, передаваемым на | |
1449 бэкенд, всегда добавлялась строка заголовка "Content-Length", даже | |
1450 если у запроса не было тела. | |
1451 | |
1452 *) Исправление: при использовании HTTP/2 в логах могли появляться | |
1453 сообщения "http request count is zero". | |
1454 | |
1455 *) Исправление: при использовании директивы sub_filter могло | |
1456 буферизироваться больше данных, чем это необходимо; проблема | |
1457 появилась в 1.9.4. | |
1458 | |
1459 | |
1460 Изменения в nginx 1.11.1 31.05.2016 | |
1461 | |
1462 *) Безопасность: при записи тела специально созданного запроса во | |
1463 временный файл в рабочем процессе мог происходить segmentation fault | |
1464 (CVE-2016-4450); ошибка появилась в 1.3.9. | |
1465 | |
1466 | |
1467 Изменения в nginx 1.11.0 24.05.2016 | |
1468 | |
1469 *) Добавление: параметр transparent директив proxy_bind, fastcgi_bind, | |
1470 memcached_bind, scgi_bind и uwsgi_bind. | |
1471 | |
1472 *) Добавление: переменная $request_id. | |
1473 | |
1474 *) Добавление: директива map поддерживает комбинации нескольких | |
1475 переменных в качестве результирующих значений. | |
1476 | |
1477 *) Добавление: теперь при использовании метода epoll nginx проверяет, | |
1478 поддерживает ли ядро события EPOLLRDHUP, и соответственно | |
1479 оптимизирует обработку соединений. | |
1480 | |
1481 *) Добавление: директивы ssl_certificate и ssl_certificate_key теперь | |
1482 можно указывать несколько раз для загрузки сертификатов разных типов | |
1483 (например, RSA и ECDSA). | |
1484 | |
1485 *) Добавление: при использовании OpenSSL 1.0.2 и новее с помощью | |
1486 директивы ssl_ecdh_curve теперь можно задать список кривых; по | |
1487 умолчанию используется встроенный в OpenSSL список кривых. | |
1488 | |
1489 *) Изменение: для использования DHE-шифров теперь надо явно задавать | |
1490 файл параметров с помощью директивы ssl_dhparam. | |
1491 | |
1492 *) Добавление: переменная $proxy_protocol_port. | |
1493 | |
1494 *) Добавление: переменная $realip_remote_port в модуле | |
1495 ngx_http_realip_module. | |
1496 | |
1497 *) Добавление: модуль ngx_http_realip_module теперь позволяет | |
1498 устанавливать не только адрес, но и порт клиента. | |
1499 | |
1500 *) Изменение: при попытке запросить виртуальный сервер, отличающийся от | |
1501 согласованного в процессе SSL handshake, теперь возвращается ответ | |
1502 "421 Misdirected Request"; это улучшает совместимость с некоторыми | |
1503 HTTP/2-клиентами в случае использования клиентских сертификатов. | |
1504 | |
1505 *) Изменение: HTTP/2-клиенты теперь могут сразу присылать тело запроса; | |
1506 директива http2_body_preread_size позволяет указать размер буфера, | |
1507 который будет использоваться до того, как nginx начнёт читать тело. | |
1508 | |
1509 *) Исправление: при использовании директивы proxy_cache_bypass не | |
1510 обновлялись закэшированные ошибочные ответы. | |
1511 | |
1512 | |
1513 Изменения в nginx 1.9.15 19.04.2016 | |
1514 | |
1515 *) Исправление: при использовании HHVM в качестве FastCGI-сервера могли | |
1516 возникать ошибки "recv() failed". | |
1517 | |
1518 *) Исправление: при использовании HTTP/2 и директив limit_req или | |
1519 auth_request при чтении тела запроса мог произойти таймаут или ошибка | |
1520 "client violated flow control"; ошибка появилась в 1.9.14. | |
1521 | |
1522 *) Изменение: при использовании HTTP/2 ответ мог не показываться | |
1523 некоторыми браузерами, если тело запроса было прочитано не целиком; | |
1524 ошибка появилась в 1.9.14. | |
1525 | |
1526 *) Исправление: при использовании директивы "aio threads" соединения | |
1527 могли зависать. | |
1528 Спасибо Mindaugas Rasiukevicius. | |
1529 | |
1530 | |
1531 Изменения в nginx 1.9.14 05.04.2016 | |
1532 | |
1533 *) Добавление: совместимость с OpenSSL 1.1.0. | |
1534 | |
1535 *) Добавление: директивы proxy_request_buffering, | |
1536 fastcgi_request_buffering, scgi_request_buffering и | |
1537 uwsgi_request_buffering теперь работают при использовании HTTP/2. | |
1538 | |
1539 *) Исправление: при использовании HTTP/2 в логах могли появляться | |
1540 сообщения "zero size buf in output". | |
1541 | |
1542 *) Исправление: при использовании HTTP/2 директива client_max_body_size | |
1543 могла работать неверно. | |
1544 | |
1545 *) Исправление: незначительных ошибок логгирования. | |
1546 | |
1547 | |
1548 Изменения в nginx 1.9.13 29.03.2016 | |
1549 | |
1550 *) Изменение: неидемпотентные запросы (POST, LOCK, PATCH) теперь по | |
1551 умолчанию не передаются на другой сервер, если запрос уже был | |
1552 отправлен на бэкенд; параметр non_idempotent директивы | |
1553 proxy_next_upstream явно разрешает повторять такие запросы. | |
1554 | |
1555 *) Добавление: модуль ngx_http_perl_module теперь можно собрать | |
1556 динамически. | |
1557 | |
1558 *) Добавление: поддержка UDP в модуле stream. | |
1559 | |
1560 *) Добавление: директива aio_write. | |
1561 | |
1562 *) Добавление: теперь cache manager следит за количеством элементов в | |
1563 кэше и старается не допускать переполнений зоны разделяемой памяти. | |
1564 | |
1565 *) Исправление: при использовании директив sendfile и aio с подзапросами | |
1566 в логах могли появляться сообщения "task already active" и "second | |
1567 aio post". | |
1568 | |
1569 *) Исправление: при использовании кэширования в логах могли появляться | |
1570 сообщения "zero size buf in output", если клиент закрывал соединение | |
1571 преждевременно. | |
1572 | |
1573 *) Исправление: при использовании кэширования соединения с клиентами | |
1574 могли закрываться без необходимости. | |
1575 Спасибо Justin Li. | |
1576 | |
1577 *) Исправление: nginx мог нагружать процессор при использовании | |
1578 директивы sendfile на Linux и Solaris, если отправляемый файл был | |
1579 изменён в процессе отправки. | |
1580 | |
1581 *) Исправление: при использовании директив sendfile и "aio threads" | |
1582 соединения могли зависать. | |
1583 | |
1584 *) Исправление: в директивах proxy_pass, fastcgi_pass, scgi_pass и | |
1585 uwsgi_pass при использовании переменных. | |
1586 Спасибо Piotr Sikora. | |
1587 | |
1588 *) Исправление: в модуле ngx_http_sub_filter_module. | |
1589 | |
1590 *) Исправление: если в закэшированном соединении к бэкенду происходила | |
1591 ошибка, запрос передавался на другой сервер без учёта директивы | |
1592 proxy_next_upstream. | |
1593 | |
1594 *) Исправление: ошибки "CreateFile() failed" при создании временных | |
1595 файлов на Windows. | |
1596 | |
1597 | |
1598 Изменения в nginx 1.9.12 24.02.2016 | |
1599 | |
1600 *) Добавление: кодирование Хаффмана заголовков ответов в HTTP/2. | |
1601 Спасибо Владу Краснову. | |
1602 | |
1603 *) Добавление: директива worker_cpu_affinity теперь поддерживает более | |
1604 64 процессоров. | |
1605 | |
1606 *) Исправление: совместимость со сторонними модулями на C++; ошибка | |
1607 появилась в 1.9.11. | |
1608 Спасибо Piotr Sikora. | |
1609 | |
1610 *) Исправление: nginx не собирался статически с OpenSSL на Linux; ошибка | |
1611 появилась в 1.9.11. | |
1612 | |
1613 *) Исправление: директива "add_header ... always" с пустым значением не | |
1614 удаляла из заголовков ошибочных ответов строки Last-Modified и ETag. | |
1615 | |
1616 *) Изменение: при использовании OpenSSL 1.0.2f в логах могли появляться | |
1617 сообщения "called a function you should not call" и "shutdown while | |
1618 in init". | |
1619 | |
1620 *) Исправление: ошибочные заголовки могли логгироваться некорректно. | |
1621 | |
1622 *) Исправление: утечки сокетов при использовании HTTP/2. | |
1623 | |
1624 *) Исправление: в модуле ngx_http_v2_module. | |
1625 | |
1626 | |
1627 Изменения в nginx 1.9.11 09.02.2016 | |
1628 | |
1629 *) Добавление: теперь resolver поддерживает TCP. | |
1630 | |
1631 *) Добавление: динамические модули. | |
1632 | |
1633 *) Исправление: при использовании HTTP/2 переменная $request_length не | |
1634 учитывала размер заголовков запроса. | |
1635 | |
1636 *) Исправление: в модуле ngx_http_v2_module. | |
1637 | |
1638 | |
1639 Изменения в nginx 1.9.10 26.01.2016 | |
1640 | |
1641 *) Безопасность: при использовании директивы resolver во время обработки | |
1642 ответов DNS-сервера могло происходить разыменование некорректного | |
1643 адреса, что позволяло атакующему, имеющему возможность подделывать | |
1644 UDP-пакеты от DNS-сервера, вызвать segmentation fault в рабочем | |
1645 процессе (CVE-2016-0742). | |
1646 | |
1647 *) Безопасность: при использовании директивы resolver во время обработки | |
1648 CNAME-записей могло произойти обращение к ранее освобождённой памяти, | |
1649 что позволяло атакующему, имеющему возможность инициировать | |
1650 преобразование произвольных имён в адреса, вызвать segmentation fault | |
1651 в рабочем процессе, а также потенциально могло иметь другие | |
1652 последствия (CVE-2016-0746). | |
1653 | |
1654 *) Безопасность: при использовании директивы resolver во время обработки | |
1655 CNAME-записей не во всех случаях проверялось ограничение на | |
1656 максимальное количество записей в цепочке, что позволяло атакующему, | |
1657 имеющему возможность инициировать преобразование произвольных имён в | |
1658 адреса, вызвать чрезмерное потребление ресурсов рабочими процессами | |
1659 (CVE-2016-0747). | |
1660 | |
1661 *) Добавление: параметр auto директивы worker_cpu_affinity. | |
1662 | |
1663 *) Исправление: параметр proxy_protocol директивы listen не работал с | |
1664 IPv6 listen-сокетами. | |
1665 | |
1666 *) Исправление: при использовании директивы keepalive соединения к | |
1667 бэкендам могли кэшироваться некорректно. | |
1668 | |
1669 *) Исправление: после перенаправления запроса с помощью X-Accel-Redirect | |
1670 при проксировании использовался HTTP-метод оригинального запроса. | |
1671 | |
1672 | |
1673 Изменения в nginx 1.9.9 09.12.2015 | |
1674 | |
1675 *) Исправление: проксирование в unix domain сокеты не работало при | |
1676 использовании переменных; ошибка появилась в 1.9.8. | |
1677 | |
1678 | |
1679 Изменения в nginx 1.9.8 08.12.2015 | |
1680 | |
1681 *) Добавление: поддержка pwritev(). | |
1682 | |
1683 *) Добавление: директива include в блоке upstream. | |
1684 | |
1685 *) Добавление: модуль ngx_http_slice_module. | |
1686 | |
1687 *) Исправление: при использовании LibreSSL в рабочем процессе мог | |
1688 произойти segmentation fault; ошибка появилась в 1.9.6. | |
1689 | |
1690 *) Исправление: nginx мог не собираться на OS X. | |
1691 | |
1692 | |
1693 Изменения в nginx 1.9.7 17.11.2015 | |
1694 | |
1695 *) Добавление: параметр nohostname логгирования в syslog. | |
1696 | |
1697 *) Добавление: директива proxy_cache_convert_head. | |
1698 | |
1699 *) Добавление: переменная $realip_remote_addr в модуле | |
1700 ngx_http_realip_module. | |
1701 | |
1702 *) Исправление: директива expires могла не срабатывать при использовании | |
1703 переменных. | |
1704 | |
1705 *) Исправление: при использовании HTTP/2 в рабочем процессе мог | |
1706 произойти segmentation fault; ошибка появилась в 1.9.6. | |
1707 | |
1708 *) Исправление: если nginx был собран с модулем ngx_http_v2_module, | |
1709 протокол HTTP/2 мог быть использован клиентом, даже если не был | |
1710 указан параметр http2 директивы listen. | |
1711 | |
1712 *) Исправление: в модуле ngx_http_v2_module. | |
1713 | |
1714 | |
1715 Изменения в nginx 1.9.6 27.10.2015 | |
1716 | |
1717 *) Исправление: при использовании HTTP/2 в рабочем процессе мог | |
1718 произойти segmentation fault. | |
1719 Спасибо Piotr Sikora и Denis Andzakovic. | |
1720 | |
1721 *) Исправление: при использовании HTTP/2 переменная $server_protocol | |
1722 была пустой. | |
1723 | |
1724 *) Исправление: SSL-соединения к бэкендам в модуле stream могли | |
1725 неожиданно завершаться по таймауту. | |
1726 | |
1727 *) Исправление: при использовании различных настроек ssl_session_cache в | |
1728 разных виртуальных серверах в рабочем процессе мог произойти | |
1729 segmentation fault. | |
1730 | |
1731 *) Исправление: nginx/Windows не собирался с MinGW gcc; ошибка появилась | |
1732 в 1.9.4. | |
1733 Спасибо Kouhei Sutou. | |
1734 | |
1735 *) Исправление: при использовании директивы timer_resolution на Windows | |
1736 время не обновлялось. | |
1737 | |
1738 *) Незначительные исправления и улучшения. | |
1739 Спасибо Markus Linnala, Kurtis Nusbaum и Piotr Sikora. | |
1740 | |
1741 | |
1742 Изменения в nginx 1.9.5 22.09.2015 | |
1743 | |
1744 *) Добавление: модуль ngx_http_v2_module (заменяет модуль | |
1745 ngx_http_spdy_module). | |
1746 Спасибо Dropbox и Automattic за спонсирование разработки. | |
1747 | |
1748 *) Изменение: теперь по умолчанию директива output_buffers использует | |
1749 два буфера. | |
1750 | |
1751 *) Изменение: теперь nginx ограничивает максимальную вложенность | |
1752 подзапросов, а не количество одновременных подзапросов. | |
1753 | |
1754 *) Изменение: теперь при возврате ответов из кэша nginx проверяет ключ | |
1755 полностью. | |
1756 Спасибо Геннадию Махомеду и Сергею Брестеру. | |
1757 | |
1758 *) Исправление: при использовании кэша в логах могли появляться | |
1759 сообщения "header already sent"; ошибка появилась в 1.7.5. | |
1760 | |
1761 *) Исправление: при использовании CephFS и директивы timer_resolution на | |
1762 Linux в логах могли появляться сообщения "writev() failed (4: | |
1763 Interrupted system call)". | |
1764 | |
1765 *) Исправление: в обработке ошибок конфигурации. | |
1766 Спасибо Markus Linnala. | |
1767 | |
1768 *) Исправление: при использовании директивы sub_filter на уровне http в | |
1769 рабочем процессе происходил segmentation fault; ошибка появилась в | |
1770 1.9.4. | |
1771 | |
1772 | |
1773 Изменения в nginx 1.9.4 18.08.2015 | |
1774 | |
1775 *) Изменение: директивы proxy_downstream_buffer и proxy_upstream_buffer | |
1776 в модуле stream заменены директивой proxy_buffer_size. | |
1777 | |
1778 *) Добавление: директива tcp_nodelay в модуле stream. | |
1779 | |
1780 *) Добавление: теперь можно указать несколько директив sub_filter | |
1781 одновременно. | |
1782 | |
1783 *) Добавление: директива sub_filter поддерживает переменные в строке | |
1784 поиска. | |
1785 | |
1786 *) Изменение: тестирование конфигурации могло не работать под Linux | |
1787 OpenVZ. | |
1788 Спасибо Геннадию Махомеду. | |
1789 | |
1790 *) Исправление: после переконфигурации старые рабочие процессы могли | |
1791 сильно нагружать процессор при больших значениях worker_connections. | |
1792 | |
1793 *) Исправление: при совместном использовании директив try_files и alias | |
1794 внутри location'а, заданного регулярным выражением, в рабочем | |
1795 процессе мог произойти segmentation fault; ошибка появилась в 1.7.1. | |
1796 | |
1797 *) Исправление: директива try_files внутри вложенного location'а, | |
1798 заданного регулярным выражением, работала неправильно, если во | |
1799 внешнем location'е использовалась директива alias. | |
1800 | |
1801 *) Исправление: в обработке ошибок при построении хэш-таблиц. | |
1802 | |
1803 *) Исправление: nginx не собирался с Visual Studio 2015. | |
1804 | |
1805 | |
1806 Изменения в nginx 1.9.3 14.07.2015 | |
1807 | |
1808 *) Изменение: дублирующиеся блоки http, mail и stream теперь запрещены. | |
1809 | |
1810 *) Добавление: ограничение количества соединений в модуле stream. | |
1811 | |
1812 *) Добавление: ограничение скорости в модуле stream. | |
1813 | |
1814 *) Исправление: директива zone в блоке upstream не работала на Windows. | |
1815 | |
1816 *) Исправление: совместимость с LibreSSL в модуле stream. | |
1817 Спасибо Piotr Sikora. | |
1818 | |
1819 *) Исправление: в параметре --builddir в configure. | |
1820 Спасибо Piotr Sikora. | |
1821 | |
1822 *) Исправление: директива ssl_stapling_file не работала; ошибка | |
1823 появилась в 1.9.2. | |
1824 Спасибо Faidon Liambotis и Brandon Black. | |
1825 | |
1826 *) Исправление: при использовании директивы ssl_stapling в рабочем | |
1827 процессе мог произойти segmentation fault; ошибка появилась в 1.9.2. | |
1828 Спасибо Matthew Baldwin. | |
1829 | |
1830 | |
1831 Изменения в nginx 1.9.2 16.06.2015 | |
1832 | |
1833 *) Добавление: параметр backlog директивы listen в почтовом | |
1834 прокси-сервере и модуле stream. | |
1835 | |
1836 *) Добавление: директивы allow и deny в модуле stream. | |
1837 | |
1838 *) Добавление: директива proxy_bind в модуле stream. | |
1839 | |
1840 *) Добавление: директива proxy_protocol в модуле stream. | |
1841 | |
1842 *) Добавление: ключ -T. | |
1843 | |
1844 *) Добавление: параметр REQUEST_SCHEME добавлен в стандартные | |
1845 конфигурационные файлы fastcgi.conf, fastcgi_params, scgi_params и | |
1846 uwsgi_params. | |
1847 | |
1848 *) Исправление: параметр reuseport директивы listen в модуле stream не | |
1849 работал. | |
1850 | |
1851 *) Исправление: OCSP stapling в некоторых случаях мог вернуть устаревший | |
1852 OCSP-ответ. | |
1853 | |
1854 | |
1855 Изменения в nginx 1.9.1 26.05.2015 | |
1856 | |
1857 *) Изменение: теперь протокол SSLv3 по умолчанию запрещён. | |
1858 | |
1859 *) Изменение: некоторые давно устаревшие директивы больше не | |
1860 поддерживаются. | |
1861 | |
1862 *) Добавление: параметр reuseport директивы listen. | |
1863 Спасибо Yingqi Lu из Intel и Sepherosa Ziehau. | |
1864 | |
1865 *) Добавление: переменная $upstream_connect_time. | |
1866 | |
1867 *) Исправление: в директиве hash на big-endian платформах. | |
1868 | |
1869 *) Исправление: nginx мог не запускаться на некоторых старых версиях | |
1870 Linux; ошибка появилась в 1.7.11. | |
1871 | |
1872 *) Исправление: в парсинге IP-адресов. | |
1873 Спасибо Сергею Половко. | |
1874 | |
1875 | |
1876 Изменения в nginx 1.9.0 28.04.2015 | |
1877 | |
1878 *) Изменение: устаревшие методы обработки соединений aio и rtsig больше | |
1879 не поддерживаются. | |
1880 | |
1881 *) Добавление: директива zone в блоке upstream. | |
1882 | |
1883 *) Добавление: модуль stream. | |
1884 | |
1885 *) Добавление: поддержка byte ranges для ответов модуля | |
1886 ngx_http_memcached_module. | |
1887 Спасибо Martin Mlynář. | |
1888 | |
1889 *) Добавление: разделяемую память теперь можно использовать на версиях | |
1890 Windows с рандомизацией адресного пространства. | |
1891 Спасибо Сергею Брестеру. | |
1892 | |
1893 *) Добавление: директиву error_log теперь можно использовать на уровнях | |
1894 mail и server в почтовом прокси-сервере. | |
1895 | |
1896 *) Исправление: параметр proxy_protocol директивы listen не работал, | |
1897 если не был указан в первой директиве listen для данного | |
1898 listen-сокета. | |
1899 | |
1900 | |
1901 Изменения в nginx 1.7.12 07.04.2015 | |
1902 | |
1903 *) Добавление: теперь директива tcp_nodelay работает для SSL-соединений | |
1904 с бэкендами. | |
1905 | |
1906 *) Добавление: теперь потоки могут использоваться для чтения заголовков | |
1907 файлов в кэше. | |
1908 | |
1909 *) Исправление: в директиве proxy_request_buffering. | |
1910 | |
1911 *) Исправление: при использовании потоков на Linux в рабочем процессе | |
1912 мог произойти segmentation fault. | |
1913 | |
1914 *) Исправление: в обработке ошибок при использовании директивы | |
1915 ssl_stapling. | |
1916 Спасибо Filipe da Silva. | |
1917 | |
1918 *) Исправление: в модуле ngx_http_spdy_module. | |
1919 | |
1920 | |
1921 Изменения в nginx 1.7.11 24.03.2015 | |
1922 | |
1923 *) Изменение: параметр sendfile директивы aio более не нужен; теперь | |
1924 nginx автоматически использует AIO для подгрузки данных для sendfile, | |
1925 если одновременно используются директивы aio и sendfile. | |
1926 | |
1927 *) Добавление: экспериментальная поддержка потоков. | |
1928 | |
1929 *) Добавление: директивы proxy_request_buffering, | |
1930 fastcgi_request_buffering, scgi_request_buffering и | |
1931 uwsgi_request_buffering. | |
1932 | |
1933 *) Добавление: экспериментальное API для обработки тела запроса. | |
1934 | |
1935 *) Добавление: проверка клиентских SSL-сертификатов в почтовом | |
1936 прокси-сервере. | |
1937 Спасибо Sven Peter, Franck Levionnois и Filipe Da Silva. | |
1938 | |
1939 *) Добавление: уменьшение времени запуска при использовании директивы | |
1940 "hash ... consistent" в блоке upstream. | |
1941 Спасибо Wai Keen Woon. | |
1942 | |
1943 *) Добавление: отладочное логгирование в кольцевой буфер в памяти. | |
1944 | |
1945 *) Исправление: в обработке хэш-таблиц. | |
1946 Спасибо Chris West. | |
1947 | |
1948 *) Исправление: в директиве proxy_cache_revalidate. | |
1949 | |
1950 *) Исправление: SSL-соединения могли зависать, если использовался | |
1951 отложенный accept или параметр proxy_protocol директивы listen. | |
1952 Спасибо James Hamlin. | |
1953 | |
1954 *) Исправление: переменная $upstream_response_time могла содержать | |
1955 неверное значение при использовании директивы image_filter. | |
1956 | |
1957 *) Исправление: в обработке целочисленных переполнений. | |
1958 Спасибо Régis Leroy. | |
1959 | |
1960 *) Исправление: при использовании LibreSSL было невозможно включить | |
1961 поддержку SSLv3. | |
1962 | |
1963 *) Исправление: при использовании LibreSSL в логах появлялись сообщения | |
1964 "ignoring stale global SSL error ... called a function you should not | |
1965 call". | |
1966 | |
1967 *) Исправление: сертификаты, указанные в директивах | |
1968 ssl_client_certificate и ssl_trusted_certificate, использовались для | |
1969 автоматического построения цепочек сертификатов. | |
1970 | |
1971 | |
1972 Изменения в nginx 1.7.10 10.02.2015 | |
1973 | |
1974 *) Добавление: параметр use_temp_path директив proxy_cache_path, | |
1975 fastcgi_cache_path, scgi_cache_path и uwsgi_cache_path. | |
1976 | |
1977 *) Добавление: переменная $upstream_header_time. | |
1978 | |
1979 *) Изменение: теперь при переполнении диска nginx пытается писать | |
1980 error_log'и только раз в секунду. | |
1981 | |
1982 *) Исправление: директива try_files при тестировании каталогов не | |
1983 игнорировала обычные файлы. | |
1984 Спасибо Damien Tournoud. | |
1985 | |
1986 *) Исправление: при использовании директивы sendfile на OS X возникали | |
1987 ошибки "sendfile() failed"; ошибка появилась в nginx 1.7.8. | |
1988 | |
1989 *) Исправление: в лог могли писаться сообщения "sem_post() failed". | |
1990 | |
1991 *) Исправление: nginx не собирался с musl libc. | |
1992 Спасибо James Taylor. | |
1993 | |
1994 *) Исправление: nginx не собирался на Tru64 UNIX. | |
1995 Спасибо Goetz T. Fischer. | |
1996 | |
1997 | |
1998 Изменения в nginx 1.7.9 23.12.2014 | |
1999 | |
2000 *) Добавление: директивы proxy_cache, fastcgi_cache, scgi_cache и | |
2001 uwsgi_cache поддерживают переменные. | |
2002 | |
2003 *) Добавление: директива expires поддерживает переменные. | |
2004 | |
2005 *) Добавление: возможность загрузки секретных ключей с аппаратных | |
2006 устройств с помощью OpenSSL engines. | |
2007 Спасибо Дмитрию Пичулину. | |
2008 | |
2009 *) Добавление: директива autoindex_format. | |
2010 | |
2011 *) Исправление: ревалидация элементов кэша теперь используется только | |
2012 для ответов с кодами 200 и 206. | |
2013 Спасибо Piotr Sikora. | |
2014 | |
2015 *) Исправление: строка "TE" заголовка запроса клиента передавалась на | |
2016 бэкенд при проксировании. | |
2017 | |
2018 *) Исправление: директивы proxy_pass, fastcgi_pass, scgi_pass и | |
2019 uwsgi_pass могли неправильно работать внутри блоков if и | |
2020 limit_except. | |
2021 | |
2022 *) Исправление: директива proxy_store с параметром "on" игнорировалась, | |
2023 если на предыдущем уровне использовалась директива proxy_store с явно | |
2024 заданным путём к файлам. | |
2025 | |
2026 *) Исправление: nginx не собирался с BoringSSL. | |
2027 Спасибо Lukas Tribus. | |
2028 | |
2029 | |
2030 Изменения в nginx 1.7.8 02.12.2014 | |
2031 | |
2032 *) Изменение: теперь строки "If-Modified-Since", "If-Range" и им | |
2033 подобные в заголовке запроса клиента передаются бэкенду при | |
2034 включённом кэшировании, если nginx заранее знает, что не будет | |
2035 кэшировать ответ (например, при использовании proxy_cache_min_uses). | |
2036 | |
2037 *) Изменение: теперь после истечения proxy_cache_lock_timeout nginx | |
2038 отправляет запрос на бэкенд без кэширования; новые директивы | |
2039 proxy_cache_lock_age, fastcgi_cache_lock_age, scgi_cache_lock_age и | |
2040 uwsgi_cache_lock_age позволяют указать, через какое время блокировка | |
2041 будет принудительно снята и будет сделана ещё одна попытка | |
2042 закэшировать ответ. | |
2043 | |
2044 *) Изменение: директива log_format теперь может использоваться только на | |
2045 уровне http. | |
2046 | |
2047 *) Добавление: директивы proxy_ssl_certificate, | |
2048 proxy_ssl_certificate_key, proxy_ssl_password_file, | |
2049 uwsgi_ssl_certificate, uwsgi_ssl_certificate_key и | |
2050 uwsgi_ssl_password_file. | |
2051 Спасибо Piotr Sikora. | |
2052 | |
2053 *) Добавление: теперь с помощью X-Accel-Redirect можно перейти в | |
2054 именованный location. | |
2055 Спасибо Toshikuni Fukaya. | |
2056 | |
2057 *) Добавление: теперь директива tcp_nodelay работает для | |
2058 SPDY-соединений. | |
2059 | |
2060 *) Добавление: новые директивы в скриптах подсветки синтаксиса для vim. | |
2061 Спасибо Peter Wu. | |
2062 | |
2063 *) Исправление: nginx игнорировал значение "s-maxage" в строке | |
2064 "Cache-Control" в заголовке ответа бэкенда. | |
2065 Спасибо Piotr Sikora. | |
2066 | |
2067 *) Исправление: в модуле ngx_http_spdy_module. | |
2068 Спасибо Piotr Sikora. | |
2069 | |
2070 *) Исправление: в директиве ssl_password_file при использовании OpenSSL | |
2071 0.9.8zc, 1.0.0o, 1.0.1j. | |
2072 | |
2073 *) Исправление: при использовании директивы post_action в лог писались | |
2074 сообщения "header already sent"; ошибка появилась в nginx 1.5.4. | |
2075 | |
2076 *) Исправление: при использовании директивы "postpone_output 0" с | |
2077 SSI-подзапросами в лог могли писаться сообщения "the http output | |
2078 chain is empty". | |
2079 | |
2080 *) Исправление: в директиве proxy_cache_lock при использовании | |
2081 SSI-подзапросов. | |
2082 Спасибо Yichun Zhang. | |
2083 | |
2084 | |
2085 Изменения в nginx 1.7.7 28.10.2014 | |
2086 | |
2087 *) Изменение: теперь nginx учитывает при кэшировании строку "Vary" в | |
2088 заголовке ответа бэкенда. | |
2089 | |
2090 *) Добавление: директивы proxy_force_ranges, fastcgi_force_ranges, | |
2091 scgi_force_ranges и uwsgi_force_ranges. | |
2092 | |
2093 *) Добавление: директивы proxy_limit_rate, fastcgi_limit_rate, | |
2094 scgi_limit_rate и uwsgi_limit_rate. | |
2095 | |
2096 *) Добавление: параметр Vary директив proxy_ignore_headers, | |
2097 fastcgi_ignore_headers, scgi_ignore_headers и uwsgi_ignore_headers. | |
2098 | |
2099 *) Исправление: последняя часть ответа, полученного от бэкенда при | |
2100 небуферизированном проксировании, могла не отправляться клиенту, если | |
2101 использовались директивы gzip или gunzip. | |
2102 | |
2103 *) Исправление: в директиве proxy_cache_revalidate. | |
2104 Спасибо Piotr Sikora. | |
2105 | |
2106 *) Исправление: в обработке ошибок. | |
2107 Спасибо Yichun Zhang и Даниилу Бондареву. | |
2108 | |
2109 *) Исправление: в директивах proxy_next_upstream_tries и | |
2110 proxy_next_upstream_timeout. | |
2111 Спасибо Feng Gu. | |
2112 | |
2113 *) Исправление: nginx/Windows не собирался с MinGW-w64 gcc. | |
2114 Спасибо Kouhei Sutou. | |
2115 | |
2116 | |
2117 Изменения в nginx 1.7.6 30.09.2014 | |
2118 | |
2119 *) Изменение: устаревшая директива limit_zone больше не поддерживается. | |
2120 | |
2121 *) Добавление: в директивах limit_conn_zone и limit_req_zone теперь | |
2122 можно использовать комбинации нескольких переменных. | |
2123 | |
2124 *) Исправление: при повторной отправке FastCGI-запроса на бэкенд тело | |
2125 запроса могло передаваться неправильно. | |
2126 | |
2127 *) Исправление: в логгировании в syslog. | |
2128 | |
2129 | |
2130 Изменения в nginx 1.7.5 16.09.2014 | |
2131 | |
2132 *) Безопасность: при использовании общего для нескольких блоков server | |
2133 разделяемого кэша SSL-сессий или общего ключа для шифрования TLS | |
2134 session tickets было возможно повторно использовать SSL-сессию в | |
2135 контексте другого блока server (CVE-2014-3616). | |
2136 Спасибо Antoine Delignat-Lavaud. | |
2137 | |
2138 *) Изменение: директиву stub_status теперь можно указывать без | |
2139 параметров. | |
2140 | |
2141 *) Добавление: параметр always директивы add_header. | |
2142 | |
2143 *) Добавление: директивы proxy_next_upstream_tries, | |
2144 proxy_next_upstream_timeout, fastcgi_next_upstream_tries, | |
2145 fastcgi_next_upstream_timeout, memcached_next_upstream_tries, | |
2146 memcached_next_upstream_timeout, scgi_next_upstream_tries, | |
2147 scgi_next_upstream_timeout, uwsgi_next_upstream_tries и | |
2148 uwsgi_next_upstream_timeout. | |
2149 | |
2150 *) Исправление: в параметре if директивы access_log. | |
2151 | |
2152 *) Исправление: в модуле ngx_http_perl_module. | |
2153 Спасибо Piotr Sikora. | |
2154 | |
2155 *) Исправление: директива listen почтового прокси-сервера не позволяла | |
2156 указать более двух параметров. | |
2157 | |
2158 *) Исправление: директива sub_filter не работала с заменяемой строкой из | |
2159 одного символа. | |
2160 | |
2161 *) Исправление: запросы могли зависать, если использовался resolver и в | |
2162 процессе обращения к DNS-серверу происходил таймаут. | |
2163 | |
2164 *) Исправление: в модуле ngx_http_spdy_module при использовании | |
2165 совместно с AIO. | |
2166 | |
2167 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2168 если с помощью директивы set изменялись переменные "$http_...", | |
2169 "$sent_http_..." или "$upstream_http_...". | |
2170 | |
2171 *) Исправление: в обработке ошибок выделения памяти. | |
2172 Спасибо Markus Linnala и Feng Gu. | |
2173 | |
2174 | |
2175 Изменения в nginx 1.7.4 05.08.2014 | |
2176 | |
2177 *) Безопасность: pipelined-команды не отбрасывались после команды | |
2178 STARTTLS в SMTP прокси-сервере (CVE-2014-3556); ошибка появилась в | |
2179 1.5.6. | |
2180 Спасибо Chris Boulton. | |
2181 | |
2182 *) Изменение: экранирование символов в URI теперь использует | |
2183 шестнадцатеричные цифры в верхнем регистре. | |
2184 Спасибо Piotr Sikora. | |
2185 | |
2186 *) Добавление: теперь nginx можно собрать с BoringSSL и LibreSSL. | |
2187 Спасибо Piotr Sikora. | |
2188 | |
2189 *) Исправление: запросы могли зависать, если использовался resolver и | |
2190 DNS-сервер возвращал некорректный ответ; ошибка появилась в 1.5.8. | |
2191 | |
2192 *) Исправление: в модуле ngx_http_spdy_module. | |
2193 Спасибо Piotr Sikora. | |
2194 | |
2195 *) Исправление: переменная $uri могла содержать мусор при возврате | |
2196 ошибок с кодом 400. | |
2197 Спасибо Сергею Боброву. | |
2198 | |
2199 *) Исправление: в обработке ошибок в директиве proxy_store и в модуле | |
2200 ngx_http_dav_module. | |
2201 Спасибо Feng Gu. | |
2202 | |
2203 *) Исправление: при логгировании ошибок в syslog мог происходить | |
2204 segmentation fault; ошибка появилась в 1.7.1. | |
2205 | |
2206 *) Исправление: переменные $geoip_latitude, $geoip_longitude, | |
2207 $geoip_dma_code и $geoip_area_code могли не работать. | |
2208 Спасибо Yichun Zhang. | |
2209 | |
2210 *) Исправление: в обработке ошибок выделения памяти. | |
2211 Спасибо Tatsuhiko Kubo и Piotr Sikora. | |
2212 | |
2213 | |
2214 Изменения в nginx 1.7.3 08.07.2014 | |
2215 | |
2216 *) Добавление: weak entity tags теперь не удаляются при изменениях | |
2217 ответа, а strong entity tags преобразуются в weak. | |
2218 | |
2219 *) Добавление: ревалидация элементов кэша теперь, если это возможно, | |
2220 использует заголовок If-None-Match. | |
2221 | |
2222 *) Добавление: директива ssl_password_file. | |
2223 | |
2224 *) Исправление: при возврате ответа из кэша заголовок запроса | |
2225 If-None-Match игнорировался, если в ответе не было заголовка | |
2226 Last-Modified. | |
2227 | |
2228 *) Исправление: сообщения "peer closed connection in SSL handshake" при | |
2229 соединении с бэкендами логгировались на уровне info вместо error. | |
2230 | |
2231 *) Исправление: в модуле ngx_http_dav_module в nginx/Windows. | |
2232 | |
2233 *) Исправление: SPDY-соединения могли неожиданно закрываться, если | |
2234 использовалось кэширование. | |
2235 | |
2236 | |
2237 Изменения в nginx 1.7.2 17.06.2014 | |
2238 | |
2239 *) Добавление: директива hash в блоке upstream. | |
2240 | |
2241 *) Добавление: дефрагментация свободных блоков разделяемой памяти. | |
2242 Спасибо Wandenberg Peixoto и Yichun Zhang. | |
2243 | |
2244 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2245 если использовалось значение access_log по умолчанию; ошибка | |
2246 появилась в 1.7.0. | |
2247 Спасибо Piotr Sikora. | |
2248 | |
2249 *) Исправление: завершающий слэш ошибочно удалялся из последнего | |
2250 параметра директивы try_files. | |
2251 | |
2252 *) Исправление: nginx мог не собираться на OS X. | |
2253 | |
2254 *) Исправление: в модуле ngx_http_spdy_module. | |
2255 | |
2256 | |
2257 Изменения в nginx 1.7.1 27.05.2014 | |
2258 | |
2259 *) Добавление: переменные "$upstream_cookie_...". | |
2260 | |
2261 *) Добавление: переменная $ssl_client_fingerprint. | |
2262 | |
2263 *) Добавление: директивы error_log и access_log теперь поддерживают | |
2264 логгирование в syslog. | |
2265 | |
2266 *) Добавление: почтовый прокси-сервер теперь логгирует порт клиента при | |
2267 соединении. | |
2268 | |
2269 *) Исправление: утечки памяти при использовании директивы | |
2270 "ssl_stapling". | |
2271 Спасибо Filipe da Silva. | |
2272 | |
2273 *) Исправление: директива alias внутри location'а, заданного регулярным | |
2274 выражением, работала неправильно, если использовались директивы if | |
2275 или limit_except. | |
2276 | |
2277 *) Исправление: директива charset не ставила кодировку для сжатых | |
2278 ответов бэкендов. | |
2279 | |
2280 *) Исправление: директива proxy_pass без URI могла использовать | |
2281 оригинальный запрос после установки переменной $args. | |
2282 Спасибо Yichun Zhang. | |
2283 | |
2284 *) Исправление: в работе параметра none директивы smtp_auth; ошибка | |
2285 появилась в 1.5.6. | |
2286 Спасибо Святославу Никольскому. | |
2287 | |
2288 *) Исправление: при совместном использовании sub_filter и SSI ответы | |
2289 могли передаваться неверно. | |
2290 | |
2291 *) Исправление: nginx не собирался с параметром --with-file-aio на | |
2292 Linux/aarch64. | |
2293 | |
2294 | |
2295 Изменения в nginx 1.7.0 24.04.2014 | |
2296 | |
2297 *) Добавление: проверка SSL-сертификатов бэкендов. | |
2298 | |
2299 *) Добавление: поддержка SNI при работе с бэкендами по SSL. | |
2300 | |
2301 *) Добавление: переменная $ssl_server_name. | |
2302 | |
2303 *) Добавление: параметр if директивы access_log. | |
2304 | |
2305 | |
2306 Изменения в nginx 1.5.13 08.04.2014 | |
2307 | |
2308 *) Изменение: улучшена обработка хэш-таблиц; в директивах | |
2309 variables_hash_max_size и types_hash_bucket_size значения по | |
2310 умолчанию изменены на 1024 и 64 соответственно. | |
2311 | |
2312 *) Добавление: модуль ngx_http_mp4_module теперь понимает аргумент end. | |
2313 | |
2314 *) Добавление: поддержка byte ranges модулем ngx_http_mp4_module и при | |
2315 сохранении ответов в кэш. | |
2316 | |
2317 *) Исправление: теперь nginx не пишет в лог сообщения "ngx_slab_alloc() | |
2318 failed: no memory" при использовании разделяемой памяти в | |
2319 ssl_session_cache и в модуле ngx_http_limit_req_module. | |
2320 | |
2321 *) Исправление: директива underscores_in_headers не разрешала | |
2322 подчёркивание в первом символе заголовка. | |
2323 Спасибо Piotr Sikora. | |
2324 | |
2325 *) Исправление: cache manager мог нагружать процессор при выходе в | |
2326 nginx/Windows. | |
2327 | |
2328 *) Исправление: при использовании ssl_session_cache с параметром shared | |
2329 рабочий процесс nginx/Windows завершался аварийно. | |
2330 | |
2331 *) Исправление: в модуле ngx_http_spdy_module. | |
2332 | |
2333 | |
2334 Изменения в nginx 1.5.12 18.03.2014 | |
2335 | |
2336 *) Безопасность: при обработке специально созданного запроса модулем | |
2337 ngx_http_spdy_module могло происходить переполнение буфера в рабочем | |
2338 процессе, что потенциально могло приводить к выполнению произвольного | |
2339 кода (CVE-2014-0133). | |
2340 Спасибо Lucas Molas из Programa STIC, Fundación Dr. Manuel Sadosky, | |
2341 Buenos Aires, Argentina. | |
2342 | |
2343 *) Добавление: параметр proxy_protocol в директивах listen и | |
2344 real_ip_header, переменная $proxy_protocol_addr. | |
2345 | |
2346 *) Исправление: в директиве fastcgi_next_upstream. | |
2347 Спасибо Lucas Molas. | |
2348 | |
2349 | |
2350 Изменения в nginx 1.5.11 04.03.2014 | |
2351 | |
2352 *) Безопасность: при обработке специально созданного запроса модулем | |
2353 ngx_http_spdy_module на 32-битных платформах могла повреждаться | |
2354 память рабочего процесса, что потенциально могло приводить к | |
2355 выполнению произвольного кода (CVE-2014-0088); ошибка появилась в | |
2356 1.5.10. | |
2357 Спасибо Lucas Molas из Programa STIC, Fundación Dr. Manuel Sadosky, | |
2358 Buenos Aires, Argentina. | |
2359 | |
2360 *) Добавление: переменная $ssl_session_reused. | |
2361 | |
2362 *) Исправление: директива client_max_body_size могла не работать при | |
2363 чтении тела запроса с использованием chunked transfer encoding; | |
2364 ошибка появилась в 1.3.9. | |
2365 Спасибо Lucas Molas. | |
2366 | |
2367 *) Исправление: при проксировании WebSocket-соединений в рабочем | |
2368 процессе мог произойти segmentation fault. | |
2369 | |
2370 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2371 если использовался модуль ngx_http_spdy_module на 32-битных | |
2372 платформах; ошибка появилась в 1.5.10. | |
2373 | |
2374 *) Исправление: значение переменной $upstream_status могло быть | |
2375 неверным, если использовались директивы proxy_cache_use_stale или | |
2376 proxy_cache_revalidate. | |
2377 Спасибо Piotr Sikora. | |
2378 | |
2379 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2380 если ошибки с кодом 400 с помощью директивы error_page | |
2381 перенаправлялись в именованный location. | |
2382 | |
2383 *) Исправление: nginx/Windows не собирался с Visual Studio 2013. | |
2384 | |
2385 | |
2386 Изменения в nginx 1.5.10 04.02.2014 | |
2387 | |
2388 *) Добавление: модуль ngx_http_spdy_module теперь использует протокол | |
2389 SPDY 3.1. | |
2390 Спасибо Automattic и MaxCDN за спонсирование разработки. | |
2391 | |
2392 *) Добавление: модуль ngx_http_mp4_module теперь пропускает дорожки, | |
2393 имеющие меньшую длину, чем запрошенная перемотка. | |
2394 | |
2395 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2396 если переменная $ssl_session_id использовалась при логгировании; | |
2397 ошибка появилась в 1.5.9. | |
2398 | |
2399 *) Исправление: переменные $date_local и $date_gmt использовали неверный | |
2400 формат вне модуля ngx_http_ssi_filter_module. | |
2401 | |
2402 *) Исправление: клиентские соединения могли сразу закрываться, если | |
2403 использовался отложенный accept; ошибка появилась в 1.3.15. | |
2404 | |
2405 *) Исправление: сообщения "getsockopt(TCP_FASTOPEN) ... failed" | |
2406 записывались в лог в процессе обновления исполняемого файла на Linux; | |
2407 ошибка появилась в 1.5.8. | |
2408 Спасибо Piotr Sikora. | |
2409 | |
2410 | |
2411 Изменения в nginx 1.5.9 22.01.2014 | |
2412 | |
2413 *) Изменение: теперь в заголовке X-Accel-Redirect nginx ожидает | |
2414 закодированный URI. | |
2415 | |
2416 *) Добавление: директива ssl_buffer_size. | |
2417 | |
2418 *) Добавление: директиву limit_rate теперь можно использовать для | |
2419 ограничения скорости передачи ответов клиенту в SPDY-соединениях. | |
2420 | |
2421 *) Добавление: директива spdy_chunk_size. | |
2422 | |
2423 *) Добавление: директива ssl_session_tickets. | |
2424 Спасибо Dirkjan Bussink. | |
2425 | |
2426 *) Исправление: переменная $ssl_session_id содержала всю сессию в | |
2427 сериализованном виде вместо её идентификатора. | |
2428 Спасибо Ivan Ristić. | |
2429 | |
2430 *) Исправление: nginx неправильно обрабатывал закодированный символ "?" | |
2431 в команде SSI include. | |
2432 | |
2433 *) Исправление: модуль ngx_http_dav_module не раскодировал целевой URI | |
2434 при обработке методов COPY и MOVE. | |
2435 | |
2436 *) Исправление: resolver не понимал доменные имена с точкой в конце. | |
2437 Спасибо Yichun Zhang. | |
2438 | |
2439 *) Исправление: при проксировании в логах могли появляться сообщения | |
2440 "zero size buf in output"; ошибка появилась в 1.3.9. | |
2441 | |
2442 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2443 если использовался модуль ngx_http_spdy_module. | |
2444 | |
2445 *) Исправление: при использовании методов обработки соединений select, | |
2446 poll и /dev/poll проксируемые WebSocket-соединения могли зависать | |
2447 сразу после открытия. | |
2448 | |
2449 *) Исправление: директива xclient почтового прокси-сервера некорректно | |
2450 передавала IPv6-адреса. | |
2451 | |
2452 | |
2453 Изменения в nginx 1.5.8 17.12.2013 | |
2454 | |
2455 *) Добавление: теперь resolver поддерживает IPv6. | |
2456 | |
2457 *) Добавление: директива listen поддерживает параметр fastopen. | |
2458 Спасибо Mathew Rodley. | |
2459 | |
2460 *) Добавление: поддержка SSL в модуле ngx_http_uwsgi_module. | |
2461 Спасибо Roberto De Ioris. | |
2462 | |
2463 *) Добавление: скрипты подсветки синтаксиса для vim добавлены в contrib. | |
2464 Спасибо Evan Miller. | |
2465 | |
2466 *) Исправление: при чтении тела запроса с использованием chunked | |
2467 transfer encoding по SSL-соединению мог произойти таймаут. | |
2468 | |
2469 *) Исправление: директива master_process работала неправильно в | |
2470 nginx/Windows. | |
2471 | |
2472 *) Исправление: параметр setfib директивы listen мог не работать. | |
2473 | |
2474 *) Исправление: в модуле ngx_http_spdy_module. | |
2475 | |
2476 | |
2477 Изменения в nginx 1.5.7 19.11.2013 | |
2478 | |
2479 *) Безопасность: символ, следующий за незакодированным пробелом в строке | |
2480 запроса, обрабатывался неправильно (CVE-2013-4547); ошибка появилась | |
2481 в 0.8.41. | |
2482 Спасибо Ivan Fratric из Google Security Team. | |
2483 | |
2484 *) Изменение: уровень логгирования ошибок auth_basic об отсутствии | |
2485 пароля понижен с уровня error до info. | |
2486 | |
2487 *) Добавление: директивы proxy_cache_revalidate, | |
2488 fastcgi_cache_revalidate, scgi_cache_revalidate и | |
2489 uwsgi_cache_revalidate. | |
2490 | |
2491 *) Добавление: директива ssl_session_ticket_key. | |
2492 Спасибо Piotr Sikora. | |
2493 | |
2494 *) Исправление: директива "add_header Cache-Control ''" добавляла строку | |
2495 заголовка ответа "Cache-Control" с пустым значением. | |
2496 | |
2497 *) Исправление: директива "satisfy any" могла вернуть ошибку 403 вместо | |
2498 401 при использовании директив auth_request и auth_basic. | |
2499 Спасибо Jan Marc Hoffmann. | |
2500 | |
2501 *) Исправление: параметры accept_filter и deferred директивы listen | |
2502 игнорировались для listen-сокетов, создаваемых в процессе обновления | |
2503 исполняемого файла. | |
2504 Спасибо Piotr Sikora. | |
2505 | |
2506 *) Исправление: часть данных, полученных от бэкенда при | |
2507 небуферизированном проксировании, могла не отправляться клиенту | |
2508 сразу, если использовались директивы gzip или gunzip. | |
2509 Спасибо Yichun Zhang. | |
2510 | |
2511 *) Исправление: в обработке ошибок в модуле | |
2512 ngx_http_gunzip_filter_module. | |
2513 | |
2514 *) Исправление: ответы могли зависать, если использовался модуль | |
2515 ngx_http_spdy_module и директива auth_request. | |
2516 | |
2517 *) Исправление: утечки памяти в nginx/Windows. | |
2518 | |
2519 | |
2520 Изменения в nginx 1.5.6 01.10.2013 | |
2521 | |
2522 *) Добавление: директива fastcgi_buffering. | |
2523 | |
2524 *) Добавление: директивы proxy_ssl_protocols и proxy_ssl_ciphers. | |
2525 Спасибо Piotr Sikora. | |
2526 | |
2527 *) Добавление: оптимизация SSL handshake при использовании длинных | |
2528 цепочек сертификатов. | |
2529 | |
2530 *) Добавление: почтовый прокси-сервер поддерживает SMTP pipelining. | |
2531 | |
2532 *) Исправление: в модуле ngx_http_auth_basic_module при использовании | |
2533 метода шифрования паролей "$apr1$". | |
2534 Спасибо Markus Linnala. | |
2535 | |
2536 *) Исправление: на MacOSX, Cygwin и nginx/Windows для обработки запроса | |
2537 мог использоваться неверный location, если для задания location'ов | |
2538 использовались символы разных регистров. | |
2539 | |
2540 *) Исправление: автоматическое перенаправление с добавлением | |
2541 завершающего слэша для проксированных location'ов могло не работать. | |
2542 | |
2543 *) Исправление: в почтовом прокси-сервере. | |
2544 | |
2545 *) Исправление: в модуле ngx_http_spdy_module. | |
2546 | |
2547 | |
2548 Изменения в nginx 1.5.5 17.09.2013 | |
2549 | |
2550 *) Изменение: теперь nginx по умолчанию использует HTTP/1.0, если точно | |
2551 определить протокол не удалось. | |
2552 | |
2553 *) Добавление: директива disable_symlinks теперь использует O_PATH на | |
2554 Linux. | |
2555 | |
2556 *) Добавление: для определения того, что клиент закрыл соединение, при | |
2557 использовании метода epoll теперь используются события EPOLLRDHUP. | |
2558 | |
2559 *) Исправление: в директиве valid_referers при использовании параметра | |
2560 server_names. | |
2561 | |
2562 *) Исправление: переменная $request_time не работала в nginx/Windows. | |
2563 | |
2564 *) Исправление: в директиве image_filter. | |
2565 Спасибо Lanshun Zhou. | |
2566 | |
2567 *) Исправление: совместимость с OpenSSL 1.0.1f. | |
2568 Спасибо Piotr Sikora. | |
2569 | |
2570 | |
2571 Изменения в nginx 1.5.4 27.08.2013 | |
2572 | |
2573 *) Изменение: MIME-тип для расширения js изменён на | |
2574 "application/javascript"; значение по умолчанию директивы | |
2575 charset_types изменено соответственно. | |
2576 | |
2577 *) Изменение: теперь директива image_filter с параметром size возвращает | |
2578 ответ с MIME-типом "application/json". | |
2579 | |
2580 *) Добавление: модуль ngx_http_auth_request_module. | |
2581 | |
2582 *) Исправление: на старте или во время переконфигурации мог произойти | |
2583 segmentation fault, если использовалась директива try_files с пустым | |
2584 параметром. | |
2585 | |
2586 *) Исправление: утечки памяти при использовании в директивах root и | |
2587 auth_basic_user_file относительных путей, заданных с помощью | |
2588 переменных. | |
2589 | |
2590 *) Исправление: директива valid_referers неправильно выполняла | |
2591 регулярные выражения, если заголовок Referer начинался с "https://". | |
2592 Спасибо Liangbin Li. | |
2593 | |
2594 *) Исправление: ответы могли зависать, если использовались подзапросы и | |
2595 при обработке подзапроса происходила ошибка во время SSL handshake с | |
2596 бэкендом. | |
2597 Спасибо Aviram Cohen. | |
2598 | |
2599 *) Исправление: в модуле ngx_http_autoindex_module. | |
2600 | |
2601 *) Исправление: в модуле ngx_http_spdy_module. | |
2602 | |
2603 | |
2604 Изменения в nginx 1.5.3 30.07.2013 | |
2605 | |
2606 *) Изменение во внутреннем API: теперь при небуферизированной работе с | |
2607 бэкендами u->length по умолчанию устанавливается в -1. | |
2608 | |
2609 *) Изменение: теперь при получении неполного ответа от бэкенда nginx | |
2610 отправляет полученную часть ответа, после чего закрывает соединение с | |
2611 клиентом. | |
2612 | |
2613 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2614 если использовался модуль ngx_http_spdy_module и директива | |
2615 client_body_in_file_only. | |
2616 | |
2617 *) Исправление: параметр so_keepalive директивы listen мог работать | |
2618 некорректно на DragonFlyBSD. | |
2619 Спасибо Sepherosa Ziehau. | |
2620 | |
2621 *) Исправление: в модуле ngx_http_xslt_filter_module. | |
2622 | |
2623 *) Исправление: в модуле ngx_http_sub_filter_module. | |
2624 | |
2625 | |
2626 Изменения в nginx 1.5.2 02.07.2013 | |
2627 | |
2628 *) Добавление: теперь можно использовать несколько директив error_log. | |
2629 | |
2630 *) Исправление: метод $r->header_in() встроенного перла не возвращал | |
2631 значения строк "Cookie" и "X-Forwarded-For" из заголовка запроса; | |
2632 ошибка появилась в 1.3.14. | |
2633 | |
2634 *) Исправление: в модуле ngx_http_spdy_module. | |
2635 Спасибо Jim Radford. | |
2636 | |
2637 *) Исправление: nginx не собирался на Linux при использовании x32 ABI. | |
2638 Спасибо Сергею Иванцову. | |
2639 | |
2640 | |
2641 Изменения в nginx 1.5.1 04.06.2013 | |
2642 | |
2643 *) Добавление: директивы ssi_last_modified, sub_filter_last_modified и | |
2644 xslt_last_modified. | |
2645 Спасибо Алексею Колпакову. | |
2646 | |
2647 *) Добавление: параметр http_403 в директивах proxy_next_upstream, | |
2648 fastcgi_next_upstream, scgi_next_upstream и uwsgi_next_upstream. | |
2649 | |
2650 *) Добавление: директивы allow и deny теперь поддерживают unix domain | |
2651 сокеты. | |
2652 | |
2653 *) Исправление: nginx не собирался с модулем ngx_mail_ssl_module, но без | |
2654 модуля ngx_http_ssl_module; ошибка появилась в 1.3.14. | |
2655 | |
2656 *) Исправление: в директиве proxy_set_body. | |
2657 Спасибо Lanshun Zhou. | |
2658 | |
2659 *) Исправление: в директиве lingering_time. | |
2660 Спасибо Lanshun Zhou. | |
2661 | |
2662 *) Исправление: параметр fail_timeout директивы server в блоке upstream | |
2663 мог не работать, если использовался параметр max_fails; ошибка | |
2664 появилась в 1.3.0. | |
2665 | |
2666 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2667 если использовалась директива ssl_stapling. | |
2668 Спасибо Piotr Sikora. | |
2669 | |
2670 *) Исправление: в почтовом прокси-сервере. | |
2671 Спасибо Filipe Da Silva. | |
2672 | |
2673 *) Исправление: nginx/Windows мог перестать принимать соединения, если | |
2674 использовалось несколько рабочих процессов. | |
2675 | |
2676 | |
2677 Изменения в nginx 1.5.0 07.05.2013 | |
2678 | |
2679 *) Безопасность: при обработке специально созданного запроса мог | |
2680 перезаписываться стек рабочего процесса, что могло приводить к | |
2681 выполнению произвольного кода (CVE-2013-2028); ошибка появилась в | |
2682 1.3.9. | |
2683 Спасибо Greg MacManus, iSIGHT Partners Labs. | |
2684 | |
2685 | |
2686 Изменения в nginx 1.4.0 24.04.2013 | |
2687 | |
2688 *) Исправление: nginx не собирался с модулем ngx_http_perl_module, если | |
2689 использовался параметр --with-openssl; ошибка появилась в 1.3.16. | |
2690 | |
2691 *) Исправление: в работе с телом запроса из модуля ngx_http_perl_module; | |
2692 ошибка появилась в 1.3.9. | |
2693 | |
2694 | |
2695 Изменения в nginx 1.3.16 16.04.2013 | |
2696 | |
2697 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2698 если использовались подзапросы; ошибка появилась в 1.3.9. | |
2699 | |
2700 *) Исправление: директива tcp_nodelay вызывала ошибку при проксировании | |
2701 WebSocket-соединений в unix domain сокет. | |
2702 | |
2703 *) Исправление: переменная $upstream_response_length возвращала значение | |
2704 "0", если не использовалась буферизация. | |
2705 Спасибо Piotr Sikora. | |
2706 | |
2707 *) Исправление: в методах обработки соединений eventport и /dev/poll. | |
2708 | |
2709 | |
2710 Изменения в nginx 1.3.15 26.03.2013 | |
2711 | |
2712 *) Изменение: открытие и закрытие соединения без отправки в нём | |
2713 каких-либо данных больше не записывается в access_log с кодом ошибки | |
2714 400. | |
2715 | |
2716 *) Добавление: модуль ngx_http_spdy_module. | |
2717 Спасибо Automattic за спонсирование разработки. | |
2718 | |
2719 *) Добавление: директивы limit_req_status и limit_conn_status. | |
2720 Спасибо Nick Marden. | |
2721 | |
2722 *) Добавление: директива image_filter_interlace. | |
2723 Спасибо Ивану Боброву. | |
2724 | |
2725 *) Добавление: переменная $connections_waiting в модуле | |
2726 ngx_http_stub_status_module. | |
2727 | |
2728 *) Добавление: теперь почтовый прокси-сервер поддерживает IPv6-бэкенды. | |
2729 | |
2730 *) Исправление: при повторной отправке запроса на бэкенд тело запроса | |
2731 могло передаваться неправильно; ошибка появилась в 1.3.9. | |
2732 Спасибо Piotr Sikora. | |
2733 | |
2734 *) Исправление: в директиве client_body_in_file_only; ошибка появилась в | |
2735 1.3.9. | |
2736 | |
2737 *) Исправление: ответы могли зависать, если использовались подзапросы и | |
2738 при обработке подзапроса происходила DNS-ошибка. | |
2739 Спасибо Lanshun Zhou. | |
2740 | |
2741 *) Исправление: в процедуре учёта использования бэкендов. | |
2742 | |
2743 | |
2744 Изменения в nginx 1.3.14 05.03.2013 | |
2745 | |
2746 *) Добавление: переменные $connections_active, $connections_reading и | |
2747 $connections_writing в модуле ngx_http_stub_status_module. | |
2748 | |
2749 *) Добавление: поддержка WebSocket-соединений в модулях | |
2750 ngx_http_uwsgi_module и ngx_http_scgi_module. | |
2751 | |
2752 *) Исправление: в обработке виртуальных серверов при использовании SNI. | |
2753 | |
2754 *) Исправление: при использовании директивы "ssl_session_cache shared" | |
2755 новые сессии могли не сохраняться, если заканчивалось место в | |
2756 разделяемой памяти. | |
2757 Спасибо Piotr Sikora. | |
2758 | |
2759 *) Исправление: несколько заголовков X-Forwarded-For обрабатывались | |
2760 неправильно. | |
2761 Спасибо Neal Poole за спонсирование разработки. | |
2762 | |
2763 *) Исправление: в модуле ngx_http_mp4_module. | |
2764 Спасибо Gernot Vormayr. | |
2765 | |
2766 | |
2767 Изменения в nginx 1.3.13 19.02.2013 | |
2768 | |
2769 *) Изменение: теперь для сборки по умолчанию используется компилятор с | |
2770 именем "cc". | |
2771 | |
2772 *) Добавление: поддержка проксирования WebSocket-соединений. | |
2773 Спасибо Apcera и CloudBees за спонсирование разработки. | |
2774 | |
2775 *) Добавление: директива auth_basic_user_file поддерживает шифрование | |
2776 паролей методом "{SHA}". | |
2777 Спасибо Louis Opter. | |
2778 | |
2779 | |
2780 Изменения в nginx 1.3.12 05.02.2013 | |
2781 | |
2782 *) Добавление: директивы proxy_bind, fastcgi_bind, memcached_bind, | |
2783 scgi_bind и uwsgi_bind поддерживают переменные. | |
2784 | |
2785 *) Добавление: переменные $pipe, $request_length, $time_iso8601 и | |
2786 $time_local теперь можно использовать не только в директиве | |
2787 log_format. | |
2788 Спасибо Kiril Kalchev. | |
2789 | |
2790 *) Добавление: поддержка IPv6 в модуле ngx_http_geoip_module. | |
2791 Спасибо Gregor Kališnik. | |
2792 | |
2793 *) Исправление: директива proxy_method работала неверно, если была | |
2794 указана на уровне http. | |
2795 | |
2796 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2797 если использовался resolver и метод poll. | |
2798 | |
2799 *) Исправление: nginx мог нагружать процессор во время SSL handshake с | |
2800 бэкендом при использовании методов обработки соединений select, poll | |
2801 и /dev/poll. | |
2802 | |
2803 *) Исправление: ошибка "[crit] SSL_write() failed (SSL:)". | |
2804 | |
2805 *) Исправление: в директиве client_body_in_file_only; ошибка появилась в | |
2806 1.3.9. | |
2807 | |
2808 *) Исправление: в директиве fastcgi_keep_conn. | |
2809 | |
2810 | |
2811 Изменения в nginx 1.3.11 10.01.2013 | |
2812 | |
2813 *) Исправление: при записи в лог мог происходить segmentation fault; | |
2814 ошибка появилась в 1.3.10. | |
2815 | |
2816 *) Исправление: директива proxy_pass не работала с IP-адресами без | |
2817 явного указания порта; ошибка появилась в 1.3.10. | |
2818 | |
2819 *) Исправление: на старте или во время переконфигурации происходил | |
2820 segmentation fault, если директива keepalive была указана несколько | |
2821 раз в одном блоке upstream. | |
2822 | |
2823 *) Исправление: параметр default директивы geo не определял значение по | |
2824 умолчанию для IPv6-адресов. | |
2825 | |
2826 | |
2827 Изменения в nginx 1.3.10 25.12.2012 | |
2828 | |
2829 *) Изменение: для указанных в конфигурационном файле доменных имён | |
2830 теперь используются не только IPv4, но и IPv6 адреса. | |
2831 | |
2832 *) Изменение: теперь при использовании директивы include с маской на | |
2833 Unix-системах включаемые файлы сортируются в алфавитном порядке. | |
2834 | |
2835 *) Изменение: директива add_header добавляет строки в ответы с кодом | |
2836 201. | |
2837 | |
2838 *) Добавление: директива geo теперь поддерживает IPv6 адреса в формате | |
2839 CIDR. | |
2840 | |
2841 *) Добавление: параметры flush и gzip в директиве access_log. | |
2842 | |
2843 *) Добавление: директива auth_basic поддерживает переменные. | |
2844 | |
2845 *) Исправление: nginx в некоторых случаях не собирался с модулем | |
2846 ngx_http_perl_module. | |
2847 | |
2848 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2849 если использовался модуль ngx_http_xslt_module. | |
2850 | |
2851 *) Исправление: nginx мог не собираться на MacOSX. | |
2852 Спасибо Piotr Sikora. | |
2853 | |
2854 *) Исправление: при использовании директивы limit_rate с большими | |
2855 значениями скорости на 32-битных системах ответ мог возвращаться не | |
2856 целиком. | |
2857 Спасибо Алексею Антропову. | |
2858 | |
2859 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2860 если использовалась директива if. | |
2861 Спасибо Piotr Sikora. | |
2862 | |
2863 *) Исправление: ответ "100 Continue" выдавался вместе с ответом "413 | |
2864 Request Entity Too Large". | |
2865 | |
2866 *) Исправление: директивы image_filter, image_filter_jpeg_quality и | |
2867 image_filter_sharpen могли наследоваться некорректно. | |
2868 Спасибо Ивану Боброву. | |
2869 | |
2870 *) Исправление: при использовании директивы auth_basic под Linux могли | |
2871 возникать ошибки "crypt_r() failed". | |
2872 | |
2873 *) Исправление: в обработке backup-серверов. | |
2874 Спасибо Thomas Chen. | |
2875 | |
2876 *) Исправление: при проксировании HEAD-запросов мог возвращаться | |
2877 некорректный ответ, если использовалась директива gzip. | |
2878 | |
2879 | |
2880 Изменения в nginx 1.3.9 27.11.2012 | |
2881 | |
2882 *) Добавление: поддержка chunked transfer encoding при получении тела | |
2883 запроса. | |
2884 | |
2885 *) Добавление: переменные $request_time и $msec теперь можно | |
2886 использовать не только в директиве log_format. | |
2887 | |
2888 *) Исправление: cache manager и cache loader могли не запускаться, если | |
2889 использовалось более 512 listen-сокетов. | |
2890 | |
2891 *) Исправление: в модуле ngx_http_dav_module. | |
2892 | |
2893 | |
2894 Изменения в nginx 1.3.8 30.10.2012 | |
2895 | |
2896 *) Добавление: параметр optional_no_ca директивы ssl_verify_client. | |
2897 Спасибо Михаилу Казанцеву и Eric O'Connor. | |
2898 | |
2899 *) Добавление: переменные $bytes_sent, $connection и | |
2900 $connection_requests теперь можно использовать не только в директиве | |
2901 log_format. | |
2902 Спасибо Benjamin Grössing. | |
2903 | |
2904 *) Добавление: параметр auto директивы worker_processes. | |
2905 | |
2906 *) Исправление: сообщения "cache file ... has md5 collision". | |
2907 | |
2908 *) Исправление: в модуле ngx_http_gunzip_filter_module. | |
2909 | |
2910 *) Исправление: в директиве ssl_stapling. | |
2911 | |
2912 | |
2913 Изменения в nginx 1.3.7 02.10.2012 | |
2914 | |
2915 *) Добавление: поддержка OCSP stapling. | |
2916 Спасибо Comodo, DigiCert и GlobalSign за спонсирование разработки. | |
2917 | |
2918 *) Добавление: директива ssl_trusted_certificate. | |
2919 | |
2920 *) Добавление: теперь resolver случайным образом меняет порядок | |
2921 возвращаемых закэшированных адресов. | |
2922 Спасибо Антону Жулину. | |
2923 | |
2924 *) Исправление: совместимость с OpenSSL 0.9.7. | |
2925 | |
2926 | |
2927 Изменения в nginx 1.3.6 12.09.2012 | |
2928 | |
2929 *) Добавление: модуль ngx_http_gunzip_filter_module. | |
2930 | |
2931 *) Добавление: директива memcached_gzip_flag. | |
2932 | |
2933 *) Добавление: параметр always директивы gzip_static. | |
2934 | |
2935 *) Исправление: в директиве "limit_req"; ошибка появилась в 1.1.14. | |
2936 Спасибо Charles Chen. | |
2937 | |
2938 *) Исправление: nginx не собирался gcc 4.7 с оптимизацией -O2 если | |
2939 использовался параметр --with-ipv6. | |
2940 | |
2941 | |
2942 Изменения в nginx 1.3.5 21.08.2012 | |
2943 | |
2944 *) Изменение: модуль ngx_http_mp4_module больше не отфильтровывает | |
2945 дорожки в форматах, отличных от H.264 и AAC. | |
2946 | |
2947 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
2948 если в директиве map в качестве значений использовались переменные. | |
2949 | |
2950 *) Исправление: в рабочем процессе мог произойти segmentation fault при | |
2951 использовании директивы geo с параметром ranges, но без параметра | |
2952 default; ошибка появилась в 0.8.43. | |
2953 Спасибо Zhen Chen и Weibin Yao. | |
2954 | |
2955 *) Исправление: в обработке параметра командной строки -p. | |
2956 | |
2957 *) Исправление: в почтовом прокси-сервере. | |
2958 | |
2959 *) Исправление: незначительных потенциальных ошибок. | |
2960 Спасибо Coverity. | |
2961 | |
2962 *) Исправление: nginx/Windows не собирался с Visual Studio 2005 Express. | |
2963 Спасибо HAYASHI Kentaro. | |
2964 | |
2965 | |
2966 Изменения в nginx 1.3.4 31.07.2012 | |
2967 | |
2968 *) Изменение: теперь на слушающих IPv6-сокетах параметр ipv6only включён | |
2969 по умолчанию. | |
2970 | |
2971 *) Добавление: поддержка компилятора Clang. | |
2972 | |
2973 *) Исправление: могли создаваться лишние слушающие сокеты. | |
2974 Спасибо Роману Одайскому. | |
2975 | |
2976 *) Исправление: nginx/Windows мог нагружать процессор, если при запуске | |
2977 рабочего процесса происходила ошибка. | |
2978 Спасибо Ricardo Villalobos Guevara. | |
2979 | |
2980 *) Исправление: директивы proxy_pass_header, fastcgi_pass_header, | |
2981 scgi_pass_header, uwsgi_pass_header, proxy_hide_header, | |
2982 fastcgi_hide_header, scgi_hide_header и uwsgi_hide_header могли | |
2983 наследоваться некорректно. | |
2984 | |
2985 | |
2986 Изменения в nginx 1.3.3 10.07.2012 | |
2987 | |
2988 *) Добавление: поддержка entity tags и директива etag. | |
2989 | |
2990 *) Исправление: при использовании директивы map с параметром hostnames | |
2991 не игнорировалась конечная точка в исходном значении. | |
2992 | |
2993 *) Исправление: для обработки запроса мог использоваться неверный | |
2994 location, если переход в именованный location происходил после | |
2995 изменения URI с помощью директивы rewrite. | |
2996 | |
2997 | |
2998 Изменения в nginx 1.3.2 26.06.2012 | |
2999 | |
3000 *) Изменение: параметр single директивы keepalive теперь игнорируется. | |
3001 | |
3002 *) Изменение: сжатие SSL теперь отключено в том числе при использовании | |
3003 OpenSSL старее 1.0.0. | |
3004 | |
3005 *) Добавление: директиву "ip_hash" теперь можно использовать для | |
3006 балансировки IPv6 клиентов. | |
3007 | |
3008 *) Добавление: переменную $status теперь можно использовать не только в | |
3009 директиве log_format. | |
3010 | |
3011 *) Исправление: при завершении рабочего процесса мог произойти | |
3012 segmentation fault, если использовалась директива resolver. | |
3013 | |
3014 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3015 если использовался модуль ngx_http_mp4_module. | |
3016 | |
3017 *) Исправление: в модуле ngx_http_mp4_module. | |
3018 | |
3019 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3020 если использовались конфликтующие имена серверов с масками. | |
3021 | |
3022 *) Исправление: на платформе ARM nginx мог аварийно завершаться по | |
3023 сигналу SIGBUS. | |
3024 | |
3025 *) Исправление: во время переконфигурации на HP-UX в лог записывался | |
3026 alert "sendmsg() failed (9: Bad file number)". | |
3027 | |
3028 | |
3029 Изменения в nginx 1.3.1 05.06.2012 | |
3030 | |
3031 *) Безопасность: теперь nginx/Windows игнорирует точку в конце | |
3032 компонента URI и не разрешает URI, содержащие последовательность | |
3033 ":$". | |
3034 Спасибо Владимиру Кочеткову, Positive Research Center. | |
3035 | |
3036 *) Добавление: директивы proxy_pass, fastcgi_pass, scgi_pass, uwsgi_pass | |
3037 и директива server в блоке upstream теперь поддерживают IPv6-адреса. | |
3038 | |
3039 *) Добавление: в директиве resolver теперь можно указывать порт и | |
3040 задавать IPv6-адреса DNS-серверов. | |
3041 | |
3042 *) Добавление: директива least_conn в блоке upstream. | |
3043 | |
3044 *) Добавление: при использовании директивы ip_hash теперь можно задавать | |
3045 веса серверов. | |
3046 | |
3047 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3048 если использовалась директива image_filter; ошибка появилась в 1.3.0. | |
3049 | |
3050 *) Исправление: nginx не собирался с модулем ngx_cpp_test_module; ошибка | |
3051 появилась в 1.1.12. | |
3052 | |
3053 *) Исправление: доступ к переменным из SSI и встроенного перла мог не | |
3054 работать после переконфигурации. | |
3055 Спасибо Yichun Zhang. | |
3056 | |
3057 *) Исправление: в модуле ngx_http_xslt_filter_module. | |
3058 Спасибо Kuramoto Eiji. | |
3059 | |
3060 *) Исправление: утечки памяти при использовании переменной $geoip_org. | |
3061 Спасибо Денису Латыпову. | |
3062 | |
3063 *) Исправление: в директивах proxy_cookie_domain и proxy_cookie_path. | |
3064 | |
3065 | |
3066 Изменения в nginx 1.3.0 15.05.2012 | |
3067 | |
3068 *) Добавление: директива debug_connection теперь поддерживает | |
3069 IPv6-адреса и параметр "unix:". | |
3070 | |
3071 *) Добавление: директива set_real_ip_from и параметр proxy директивы geo | |
3072 теперь поддерживают IPv6-адреса. | |
3073 | |
3074 *) Добавление: директивы real_ip_recursive, geoip_proxy и | |
3075 geoip_proxy_recursive. | |
3076 | |
3077 *) Добавление: параметр proxy_recursive директивы geo. | |
3078 | |
3079 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3080 если использовалась директива resolver. | |
3081 | |
3082 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3083 если использовались директивы fastcgi_pass, scgi_pass или uwsgi_pass | |
3084 и бэкенд возвращал некорректный ответ. | |
3085 | |
3086 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3087 если использовалась директива rewrite и в новых аргументах запроса в | |
3088 строке замены использовались переменные. | |
3089 | |
3090 *) Исправление: nginx мог нагружать процессор, если было достигнуто | |
3091 ограничение на количество открытых файлов. | |
3092 | |
3093 *) Исправление: при использовании директивы proxy_next_upstream с | |
3094 параметром http_404 nginx мог бесконечно перебирать бэкенды, если в | |
3095 блоке upstream был хотя бы один сервер с флагом backup. | |
3096 | |
3097 *) Исправление: при использовании директивы ip_hash установка параметра | |
3098 down директивы server могла приводить к ненужному перераспределению | |
3099 клиентов между бэкендами. | |
3100 | |
3101 *) Исправление: утечки сокетов. | |
3102 Спасибо Yichun Zhang. | |
3103 | |
3104 *) Исправление: в модуле ngx_http_fastcgi_module. | |
3105 | |
3106 | |
3107 Изменения в nginx 1.2.0 23.04.2012 | |
3108 | |
3109 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3110 если использовалась директива try_files; ошибка появилась в 1.1.19. | |
3111 | |
3112 *) Исправление: ответ мог быть передан не полностью, если использовалось | |
3113 больше IOV_MAX буферов. | |
3114 | |
3115 *) Исправление: в работе параметра crop директивы image_filter. | |
3116 Спасибо Maxim Bublis. | |
3117 | |
3118 | |
3119 Изменения в nginx 1.1.19 12.04.2012 | |
3120 | |
3121 *) Безопасность: при обработке специально созданного mp4 файла модулем | |
3122 ngx_http_mp4_module могли перезаписываться области памяти рабочего | |
3123 процесса, что могло приводить к выполнению произвольного кода | |
3124 (CVE-2012-2089). | |
3125 Спасибо Matthew Daley. | |
3126 | |
3127 *) Исправление: nginx/Windows мог завершаться аварийно. | |
3128 Спасибо Vincent Lee. | |
3129 | |
3130 *) Исправление: nginx нагружал процессор, если все серверы в upstream'е | |
3131 были помечены флагом backup. | |
3132 | |
3133 *) Исправление: директивы allow и deny могли наследоваться некорректно, | |
3134 если в них использовались IPv6 адреса. | |
3135 | |
3136 *) Исправление: директивы modern_browser и ancient_browser могли | |
3137 наследоваться некорректно. | |
3138 | |
3139 *) Исправление: таймауты могли работать некорректно на Solaris/SPARC. | |
3140 | |
3141 *) Исправление: в модуле ngx_http_mp4_module. | |
3142 | |
3143 | |
3144 Изменения в nginx 1.1.18 28.03.2012 | |
3145 | |
3146 *) Изменение: теперь keepalive соединения не запрещены для Safari по | |
3147 умолчанию. | |
3148 | |
3149 *) Добавление: переменная $connection_requests. | |
3150 | |
3151 *) Добавление: переменные $tcpinfo_rtt, $tcpinfo_rttvar, | |
3152 $tcpinfo_snd_cwnd и $tcpinfo_rcv_space. | |
3153 | |
3154 *) Добавление: директива worker_cpu_affinity теперь работает на FreeBSD. | |
3155 | |
3156 *) Добавление: директивы xslt_param и xslt_string_param. | |
3157 Спасибо Samuel Behan. | |
3158 | |
3159 *) Исправление: в configure. | |
3160 Спасибо Piotr Sikora. | |
3161 | |
3162 *) Исправление: в модуле ngx_http_xslt_filter_module. | |
3163 | |
3164 *) Исправление: nginx не собирался на Debian GNU/Hurd. | |
3165 | |
3166 | |
3167 Изменения в nginx 1.1.17 15.03.2012 | |
3168 | |
3169 *) Безопасность: содержимое ранее освобождённой памяти могло быть | |
3170 отправлено клиенту, если бэкенд возвращал специально созданный ответ. | |
3171 Спасибо Matthew Daley. | |
3172 | |
3173 *) Исправление: при использовании встроенного перла из SSI. | |
3174 Спасибо Matthew Daley. | |
3175 | |
3176 *) Исправление: в модуле ngx_http_uwsgi_module. | |
3177 | |
3178 | |
3179 Изменения в nginx 1.1.16 29.02.2012 | |
3180 | |
3181 *) Изменение: ограничение на количество одновременных подзапросов | |
3182 поднято до 200. | |
3183 | |
3184 *) Добавление: параметр from в директиве disable_symlinks. | |
3185 | |
3186 *) Добавление: директивы return и error_page теперь могут использоваться | |
3187 для возврата перенаправлений с кодом 307. | |
3188 | |
3189 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3190 если использовалась директива resolver и на глобальном уровне не была | |
3191 задана директива error_log. | |
3192 Спасибо Роману Арутюняну. | |
3193 | |
3194 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3195 если использовались директивы "proxy_http_version 1.1" или | |
3196 "fastcgi_keep_conn on". | |
3197 | |
3198 *) Исправление: утечек памяти. | |
3199 Спасибо Lanshun Zhou. | |
3200 | |
3201 *) Исправление: в директиве disable_symlinks. | |
3202 | |
3203 *) Исправление: при использовании ZFS размер кэша на диске мог считаться | |
3204 некорректно; ошибка появилась в 1.0.1. | |
3205 | |
3206 *) Исправление: nginx не собирался компилятором icc 12.1. | |
3207 | |
3208 *) Исправление: nginx не собирался gcc на Solaris; ошибка появилась в | |
3209 1.1.15. | |
3210 | |
3211 | |
3212 Изменения в nginx 1.1.15 15.02.2012 | |
3213 | |
3214 *) Добавление: директива disable_symlinks. | |
3215 | |
3216 *) Добавление: директивы proxy_cookie_domain и proxy_cookie_path. | |
3217 | |
3218 *) Исправление: nginx мог некорректно сообщать об ошибке "upstream | |
3219 prematurely closed connection" вместо "upstream sent too big header". | |
3220 Спасибо Feibo Li. | |
3221 | |
3222 *) Исправление: nginx не собирался с модулем ngx_http_perl_module, если | |
3223 использовался параметр --with-openssl. | |
3224 | |
3225 *) Исправление: количество внутренних перенаправлений в именованные | |
3226 location'ы не ограничивалось. | |
3227 | |
3228 *) Исправление: вызов $r->flush() несколько раз подряд мог приводить к | |
3229 ошибкам в модуле ngx_http_gzip_filter_module. | |
3230 | |
3231 *) Исправление: при использовании директивы proxy_store с | |
3232 SSI-подзапросами временные файлы могли не удаляться. | |
3233 | |
3234 *) Исправление: в некоторых случаях некэшируемые переменные (такие, как | |
3235 $args) возвращали старое пустое закэшированное значение. | |
3236 | |
3237 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3238 если одновременно создавалось слишком много SSI-подзапросов; ошибка | |
3239 появилась в 0.7.25. | |
3240 | |
3241 | |
3242 Изменения в nginx 1.1.14 30.01.2012 | |
3243 | |
3244 *) Добавление: теперь можно указать несколько ограничений limit_req | |
3245 одновременно. | |
3246 | |
3247 *) Исправление: в обработке ошибок при соединении с бэкендом. | |
3248 Спасибо Piotr Sikora. | |
3249 | |
3250 *) Исправление: в обработке ошибок при использовании AIO на FreeBSD. | |
3251 | |
3252 *) Исправление: в инициализации библиотеки OpenSSL. | |
3253 | |
3254 *) Исправление: директивы proxy_redirect могли наследоваться | |
3255 некорректно. | |
3256 | |
3257 *) Исправление: утечки памяти при переконфигурации, если использовалась | |
3258 директива pcre_jit. | |
3259 | |
3260 | |
3261 Изменения в nginx 1.1.13 16.01.2012 | |
3262 | |
3263 *) Добавление: параметры TLSv1.1 и TLSv1.2 в директиве ssl_protocols. | |
3264 | |
3265 *) Исправление: параметры директивы limit_req наследовались некорректно; | |
3266 ошибка появилась в 1.1.12. | |
3267 | |
3268 *) Исправление: директива proxy_redirect некорректно обрабатывала | |
3269 заголовок Refresh при использовании регулярных выражений. | |
3270 | |
3271 *) Исправление: директива proxy_cache_use_stale с параметром error не | |
3272 возвращала ответ из кэша, если все бэкенды были признаны | |
3273 неработающими. | |
3274 | |
3275 *) Исправление: директива worker_cpu_affinity могла не работать. | |
3276 | |
3277 *) Исправление: nginx не собирался на Solaris; ошибка появилась в | |
3278 1.1.12. | |
3279 | |
3280 *) Исправление: в модуле ngx_http_mp4_module. | |
3281 | |
3282 | |
3283 Изменения в nginx 1.1.12 26.12.2011 | |
3284 | |
3285 *) Изменение: после перенаправления запроса с помощью директивы | |
3286 error_page директива proxy_pass без URI теперь использует изменённый | |
3287 URI. | |
3288 Спасибо Lanshun Zhou. | |
3289 | |
3290 *) Добавление: директивы proxy/fastcgi/scgi/uwsgi_cache_lock, | |
3291 proxy/fastcgi/scgi/uwsgi_cache_lock_timeout. | |
3292 | |
3293 *) Добавление: директива pcre_jit. | |
3294 | |
3295 *) Добавление: SSI команда if поддерживает выделения в регулярных | |
3296 выражениях. | |
3297 | |
3298 *) Исправление: SSI команда if не работала внутри команды block. | |
3299 | |
3300 *) Исправление: директивы limit_conn_log_level и limit_req_log_level | |
3301 могли не работать. | |
3302 | |
3303 *) Исправление: директива limit_rate не позволяла передавать на полной | |
3304 скорости, даже если был указан очень большой лимит. | |
3305 | |
3306 *) Исправление: директива sendfile_max_chunk не работала, если | |
3307 использовалась директива limit_rate. | |
3308 | |
3309 *) Исправление: если в директиве proxy_pass использовались переменные и | |
3310 не был указан URI, всегда использовался URI исходного запроса. | |
3311 | |
3312 *) Исправление: после перенаправления запроса с помощью директивы | |
3313 try_files директива proxy_pass без URI могла использовать URI | |
3314 исходного запроса. | |
3315 Спасибо Lanshun Zhou. | |
3316 | |
3317 *) Исправление: в модуле ngx_http_scgi_module. | |
3318 | |
3319 *) Исправление: в модуле ngx_http_mp4_module. | |
3320 | |
3321 *) Исправление: nginx не собирался на Solaris; ошибка появилась в 1.1.9. | |
3322 | |
3323 | |
3324 Изменения в nginx 1.1.11 12.12.2011 | |
3325 | |
3326 *) Добавление: параметр so_keepalive в директиве listen. | |
3327 Спасибо Всеволоду Стахову. | |
3328 | |
3329 *) Добавление: параметр if_not_empty в директивах | |
3330 fastcgi/scgi/uwsgi_param. | |
3331 | |
3332 *) Добавление: переменная $https. | |
3333 | |
3334 *) Добавление: директива proxy_redirect поддерживает переменные в первом | |
3335 параметре. | |
3336 | |
3337 *) Добавление: директива proxy_redirect поддерживает регулярные | |
3338 выражения. | |
3339 | |
3340 *) Исправление: переменная $sent_http_cache_control могла содержать | |
3341 неверное значение при использовании директивы expires. | |
3342 Спасибо Yichun Zhang. | |
3343 | |
3344 *) Исправление: директива read_ahead могла не работать при использовании | |
3345 совместно с try_files и open_file_cache. | |
3346 | |
3347 *) Исправление: если в параметре inactive директивы proxy_cache_path | |
3348 было указано малое время, в рабочем процессе мог произойти | |
3349 segmentation fault. | |
3350 | |
3351 *) Исправление: ответы из кэша могли зависать. | |
3352 | |
3353 | |
3354 Изменения в nginx 1.1.10 30.11.2011 | |
3355 | |
3356 *) Исправление: при использовании AIO на Linux в рабочем процессе | |
3357 происходил segmentation fault; ошибка появилась в 1.1.9. | |
3358 | |
3359 | |
3360 Изменения в nginx 1.1.9 28.11.2011 | |
3361 | |
3362 *) Изменение: теперь двойные кавычки экранируется при выводе | |
3363 SSI-командой echo. | |
3364 Спасибо Зауру Абасмирзоеву. | |
3365 | |
3366 *) Добавление: параметр valid в директиве resolver. По умолчанию теперь | |
3367 используется TTL, возвращённый DNS-сервером. | |
3368 Спасибо Кириллу Коринскому. | |
3369 | |
3370 *) Исправление: nginx мог перестать отвечать, если рабочий процесс | |
3371 завершался аварийно. | |
3372 | |
3373 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3374 если использовалось SNI; ошибка появилась в 1.1.2. | |
3375 | |
3376 *) Исправление: в директиве keepalive_disable; ошибка появилась в 1.1.8. | |
3377 Спасибо Александру Усову. | |
3378 | |
3379 *) Исправление: сигнал SIGWINCH переставал работать после первого | |
3380 обновления исполняемого файла; ошибка появилась в 1.1.1. | |
3381 | |
3382 *) Исправление: теперь ответы бэкендов, длина которых не соответствует | |
3383 заголовку Content-Length, не кэширутся. | |
3384 | |
3385 *) Исправление: в директиве scgi_param при использовании составных | |
3386 параметров. | |
3387 | |
3388 *) Исправление: в методе epoll. | |
3389 Спасибо Yichun Zhang. | |
3390 | |
3391 *) Исправление: в модуле ngx_http_flv_module. | |
3392 Спасибо Piotr Sikora. | |
3393 | |
3394 *) Исправление: в модуле ngx_http_mp4_module. | |
3395 | |
3396 *) Исправление: теперь nginx понимает IPv6-адреса в строке запроса и в | |
3397 заголовке Host. | |
3398 | |
3399 *) Исправление: директивы add_header и expires не работали для ответов с | |
3400 кодом 206, если запрос проксировался. | |
3401 | |
3402 *) Исправление: nginx не собирался на FreeBSD 10. | |
3403 | |
3404 *) Исправление: nginx не собирался на AIX. | |
3405 | |
3406 | |
3407 Изменения в nginx 1.1.8 14.11.2011 | |
3408 | |
3409 *) Изменение: модуль ngx_http_limit_zone_module переименован в | |
3410 ngx_http_limit_conn_module. | |
3411 | |
3412 *) Изменение: директива limit_zone заменена директивой limit_conn_zone с | |
3413 новым синтаксисом. | |
3414 | |
3415 *) Добавление: поддержка ограничения по нескольким limit_conn на одном | |
3416 уровне. | |
3417 | |
3418 *) Добавление: директива image_filter_sharpen. | |
3419 | |
3420 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3421 если resolver получил большой DNS-ответ. | |
3422 Спасибо Ben Hawkes. | |
3423 | |
3424 *) Исправление: в вычислении ключа для кэширования, если использовалась | |
3425 внутренняя реализация MD5; ошибка появилась в 1.0.4. | |
3426 | |
3427 *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в | |
3428 заголовке запроса клиента могли передаваться бэкенду при кэшировании; | |
3429 или не передаваться при выключенном кэшировании, если кэширование | |
3430 было включено в другой части конфигурации. | |
3431 | |
3432 *) Исправление: модуль ngx_http_mp4_module выдавал неверную строку | |
3433 "Content-Length" в заголовке ответа, использовался аргумент start. | |
3434 Спасибо Piotr Sikora. | |
3435 | |
3436 | |
3437 Изменения в nginx 1.1.7 31.10.2011 | |
3438 | |
3439 *) Добавление: поддержка нескольких DNS серверов в директиве "resolver". | |
3440 Спасибо Кириллу Коринскому. | |
3441 | |
3442 *) Исправление: на старте или во время переконфигурации происходил | |
3443 segmentation fault, если директива ssl использовалась на уровне http | |
3444 и не был указан ssl_certificate. | |
3445 | |
3446 *) Исправление: уменьшено потребление памяти при проксировании больших | |
3447 файлов, если они буферизировались на диск. | |
3448 | |
3449 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
3450 если использовалась директива "proxy_http_version 1.1". | |
3451 | |
3452 *) Исправление: в директиве "expires @time". | |
3453 | |
3454 | |
3455 Изменения в nginx 1.1.6 17.10.2011 | |
3456 | |
3457 *) Изменение во внутреннем API: теперь при внутреннем редиректе в | |
3458 именованный location контексты модулей очищаются. | |
3459 По запросу Yichun Zhang. | |
3460 | |
3461 *) Изменение: теперь если сервер, описанный в блоке upstream, был | |
3462 признан неработающим, то после истечения fail_timeout на него будет | |
3463 отправлен только один запрос; сервер будет считаться работающим, если | |
3464 успешно ответит на этот запрос. | |
3465 | |
3466 *) Изменение: теперь символы 0x7F-0xFF в access_log записываются в виде | |
3467 \xXX. | |
3468 | |
3469 *) Добавление: директивы "proxy/fastcgi/scgi/uwsgi_ignore_headers" | |
3470 теперь поддерживают значения X-Accel-Limit-Rate, X-Accel-Buffering и | |
3471 X-Accel-Charset. | |
3472 | |
3473 *) Добавление: уменьшение потребления памяти при использовании SSL. | |
3474 | |
3475 *) Исправление: некоторые UTF-8 символы обрабатывались неправильно. | |
3476 Спасибо Алексею Куцу. | |
3477 | |
3478 *) Исправление: директивы модуля ngx_http_rewrite_module, заданные на | |
3479 уровне server, применялись повторно, если для запроса не находилось | |
3480 ни одного location'а. | |
3481 | |
3482 *) Исправление: при использовании "aio sendfile" могла происходить | |
3483 утечка сокетов. | |
3484 | |
3485 *) Исправление: при использовании файлового AIO соединения с быстрыми | |
3486 клиентами могли быть закрыты по истечению send_timeout. | |
3487 | |
3488 *) Исправление: в модуле ngx_http_autoindex_module. | |
3489 | |
3490 *) Исправление: модуль ngx_http_mp4_module не поддерживал перемотку на | |
3491 32-битных платформах. | |
3492 | |
3493 | |
3494 Изменения в nginx 1.1.5 05.10.2011 | |
3495 | |
3496 *) Добавление: директивы uwsgi_buffering и scgi_buffering. | |
3497 Спасибо Peter Smit. | |
3498 | |
3499 *) Исправление: при использовании proxy_cache_bypass могли быть | |
3500 закэшированы некэшируемые ответы. | |
3501 Спасибо John Ferlito. | |
3502 | |
3503 *) Исправление: в модуле ngx_http_proxy_module при работе с бэкендами по | |
3504 HTTP/1.1. | |
3505 | |
3506 *) Исправление: закэшированные ответы с пустым телом возвращались | |
3507 некорректно; ошибка появилась в 0.8.31. | |
3508 | |
3509 *) Исправление: ответы с кодом 201 модуля ngx_http_dav_module были | |
3510 некорректны; ошибка появилась в 0.8.32. | |
3511 | |
3512 *) Исправление: в директиве return. | |
3513 | |
3514 *) Исправление: при использовании директивы "ssl_session_cache builtin" | |
3515 происходил segmentation fault; ошибка появилась в 1.1.1. | |
3516 | |
3517 | |
3518 Изменения в nginx 1.1.4 20.09.2011 | |
3519 | |
3520 *) Добавление: модуль ngx_http_upstream_keepalive. | |
3521 | |
3522 *) Добавление: директива proxy_http_version. | |
3523 | |
3524 *) Добавление: директива fastcgi_keep_conn. | |
3525 | |
3526 *) Добавление: директива worker_aio_requests. | |
3527 | |
3528 *) Исправление: если nginx был собран с файловым AIO, он не мог | |
3529 запускаться на Linux без поддержки AIO. | |
3530 | |
3531 *) Исправление: в обработке ошибок при работе с Linux AIO. | |
3532 Спасибо Hagai Avrahami. | |
3533 | |
3534 *) Исправление: уменьшено потребление памяти для долгоживущих запросов. | |
3535 | |
3536 *) Исправление: модуль ngx_http_mp4_module не поддерживал 64-битный | |
3537 MP4-атом co64. | |
3538 | |
3539 | |
3540 Изменения в nginx 1.1.3 14.09.2011 | |
3541 | |
3542 *) Добавление: модуль ngx_http_mp4_module. | |
3543 | |
3544 *) Исправление: в Linux AIO, используемым совместно с open_file_cache. | |
3545 | |
3546 *) Исправление: open_file_cache не обновлял информацию о файле, если | |
3547 файл был изменён не атомарно. | |
3548 | |
3549 *) Исправление: nginx не собирался на MacOSX 10.7. | |
3550 | |
3551 | |
3552 Изменения в nginx 1.1.2 05.09.2011 | |
3553 | |
3554 *) Изменение: теперь, если суммарный размер всех диапазонов больше | |
3555 размера исходного ответа, то nginx возвращает только исходный ответ, | |
3556 не обрабатывая диапазоны. | |
3557 | |
3558 *) Добавление: директива max_ranges. | |
3559 | |
3560 *) Исправление: директивы ssl_verify_client, ssl_verify_depth и | |
3561 ssl_prefer_server_cipher могли работать некорректно, если | |
3562 использовался SNI. | |
3563 | |
3564 *) Исправление: в директивах proxy/fastcgi/scgi/ | |
3565 uwsgi_ignore_client_abort. | |
3566 | |
3567 | |
3568 Изменения в nginx 1.1.1 22.08.2011 | |
3569 | |
3570 *) Изменение: теперь загрузчик кэша за каждую итерацию либо обрабатывает | |
3571 число файлов, указанное в параметре load_files, либо работает не | |
3572 дольше времени, указанного в параметре loader_threshold. | |
3573 | |
3574 *) Изменение: SIGWINCH сигнал теперь работает только в режиме демона. | |
3575 | |
3576 *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX | |
3577 на Solaris. | |
3578 Спасибо Денису Иванову. | |
3579 | |
3580 *) Добавление: теперь на NetBSD поддерживаются accept фильтры. | |
3581 | |
3582 *) Исправление: nginx не собирался на Linux 3.0. | |
3583 | |
3584 *) Исправление: в некоторых случаях nginx не использовал сжатие; ошибка | |
3585 появилась в 1.1.0. | |
3586 | |
3587 *) Исправление: обработка тела запроса могла быть неверной, если клиент | |
3588 использовал pipelining. | |
3589 | |
3590 *) Исправление: в директиве request_body_in_single_buf. | |
3591 | |
3592 *) Исправление: в директивах proxy_set_body и proxy_pass_request_body | |
3593 при использовании SSL-соединения с бэкендом. | |
3594 | |
3595 *) Исправление: nginx нагружал процессор, если все серверы в upstream'е | |
3596 были помечены флагом down. | |
3597 | |
3598 *) Исправление: при переконфигурации мог произойти segmentation fault, | |
3599 если в предыдущей конфигурации был определён, но не использовался | |
3600 ssl_session_cache. | |
3601 | |
3602 *) Исправление: при использовании большого количества backup-серверов в | |
3603 рабочем процессе мог произойти segmentation fault. | |
3604 | |
3605 *) Исправление: при использовании директив fastcgi/scgi/uwsgi_param со | |
3606 значениями, начинающимися со строки "HTTP_", в рабочем процессе мог | |
3607 произойти segmentation fault; ошибка появилась в 0.8.40. | |
3608 | |
3609 | |
3610 Изменения в nginx 1.1.0 01.08.2011 | |
3611 | |
3612 *) Добавление: уменьшение времени работы загрузчика кэша. | |
3613 | |
3614 *) Добавление: параметры loader_files, loader_sleep и loader_threshold | |
3615 директив proxy/fastcgi/scgi/uwsgi_cache_path. | |
3616 | |
3617 *) Добавление: уменьшение времени загрузки конфигураций с большим | |
3618 количеством HTTPS серверов. | |
3619 | |
3620 *) Добавление: теперь nginx поддерживает шифры с обменом ECDHE-ключами. | |
3621 Спасибо Adrian Kotelba. | |
3622 | |
3623 *) Добавление: директива lingering_close. | |
3624 Спасибо Максиму Дунину. | |
3625 | |
3626 *) Исправление: закрытия соединения для pipelined-запросов. | |
3627 Спасибо Максиму Дунину. | |
3628 | |
3629 *) Исправление: nginx не запрещал сжатие при получении значения | |
3630 "gzip;q=0" в строке "Accept-Encoding" в заголовке запроса клиента. | |
3631 | |
3632 *) Исправление: таймаута при небуферизированном проксировании. | |
3633 Спасибо Максиму Дунину. | |
3634 | |
3635 *) Исправление: утечки памяти при использовании переменных в директиве | |
3636 proxy_pass при работе с бэкендом по HTTPS. | |
3637 Спасибо Максиму Дунину. | |
3638 | |
3639 *) Исправление: в проверке параметра директивы proxy_pass, заданного | |
3640 переменными. | |
3641 Спасибо Lanshun Zhou. | |
3642 | |
3643 *) Исправление: SSL не работал на QNX. | |
3644 Спасибо Максиму Дунину. | |
3645 | |
3646 *) Исправление: SSL модули не собирались gcc 4.6 без параметра | |
3647 --with-debug. | |
3648 | |
3649 | |
3650 Изменения в nginx 1.0.5 19.07.2011 | |
3651 | |
3652 *) Изменение: теперь по умолчанию используются следующие шифры SSL: | |
3653 "HIGH:!aNULL:!MD5". | |
3654 Спасибо Rob Stradling. | |
3655 | |
3656 *) Добавление: директивы referer_hash_max_size и | |
3657 referer_hash_bucket_size. | |
3658 Спасибо Witold Filipczyk. | |
3659 | |
3660 *) Добавление: переменная $uid_reset. | |
3661 | |
3662 *) Исправление: при использовании кэширования в рабочем процессе мог | |
3663 произойти segmentation fault. | |
3664 Спасибо Lanshun Zhou. | |
3665 | |
3666 *) Исправление: при использовании кэширования рабочие процессы могли | |
3667 зациклиться во время переконфигурации; ошибка появилась в 0.8.48. | |
3668 Спасибо Максиму Дунину. | |
3669 | |
3670 *) Исправление: сообщения "stalled cache updating". | |
3671 Спасибо Максиму Дунину. | |
3672 | |
3673 | |
3674 Изменения в nginx 1.0.4 01.06.2011 | |
3675 | |
3676 *) Изменение: теперь в регулярных выражениях в директиве map можно | |
3677 задать чувствительность к регистру с помощью префиксов "~" и "~*". | |
3678 | |
3679 *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX | |
3680 на Linux. | |
3681 Спасибо Денису Латыпову. | |
3682 | |
3683 *) Исправление: сообщения "stalled cache updating". | |
3684 | |
3685 *) Исправление: nginx не собирался с параметром | |
3686 --without-http_auth_basic_module; ошибка появилась в 1.0.3. | |
3687 | |
3688 | |
3689 Изменения в nginx 1.0.3 25.05.2011 | |
3690 | |
3691 *) Добавление: директива auth_basic_user_file поддерживает шифрование | |
3692 пароля методами "$apr1", "{PLAIN}" и "{SSHA}". | |
3693 Спасибо Максиму Дунину. | |
3694 | |
3695 *) Добавление: директива geoip_org и переменная $geoip_org. | |
3696 Спасибо Александру Ускову, Arnaud Granal и Денису Латыпову. | |
3697 | |
3698 *) Добавление: модули ngx_http_geo_module и ngx_http_geoip_module | |
3699 поддерживают адреса IPv4, отображённые на IPv6 адреса. | |
3700 | |
3701 *) Исправление: при проверке адреса IPv4, отображённого на адрес IPv6, в | |
3702 рабочем процессе происходил segmentation fault, если директивы access | |
3703 или deny были определены только для адресов IPv6; ошибка появилась в | |
3704 0.8.22. | |
3705 | |
3706 *) Исправление: закэшированный ответ мог быть испорчен, если значения | |
3707 директив proxy/fastcgi/scgi/uwsgi_cache_bypass и proxy/fastcgi/scgi/ | |
3708 uwsgi_no_cache были разными; ошибка появилась в 0.8.46. | |
3709 | |
3710 | |
3711 Изменения в nginx 1.0.2 10.05.2011 | |
3712 | |
3713 *) Добавление: теперь разделяемые зоны и кэши используют семафоры POSIX. | |
3714 | |
3715 *) Исправление: в работе параметра rotate директивы image_filter. | |
3716 Спасибо Adam Bocim. | |
3717 | |
3718 *) Исправление: nginx не собирался на Solaris; ошибка появилась в 1.0.1. | |
3719 | |
3720 | |
3721 Изменения в nginx 1.0.1 03.05.2011 | |
3722 | |
3723 *) Изменение: теперь директива split_clients использует алгоритм | |
3724 MurmurHash2 из-за лучшего распределения. | |
3725 Спасибо Олегу Мамонтову. | |
3726 | |
3727 *) Изменение: теперь длинные строки, начинающиеся с нуля, не считаются | |
3728 ложными значениями. | |
3729 Спасибо Максиму Дунину. | |
3730 | |
3731 *) Изменение: теперь по умолчанию nginx использует значение 511 для | |
3732 listen backlog на Linux. | |
3733 | |
3734 *) Добавление: переменные $upstream_... можно использовать в SSI и | |
3735 перловом модулях. | |
3736 | |
3737 *) Исправление: теперь nginx лучше ограничивает размер кэша на диске. | |
3738 Спасибо Олегу Мамонтову. | |
3739 | |
3740 *) Исправление: при парсинге неправильного IPv4 адреса мог произойти | |
3741 segmentation fault; ошибка появилась в 0.8.22. | |
3742 Спасибо Максиму Дунину. | |
3743 | |
3744 *) Исправление: nginx не собирался gcc 4.6 без параметра --with-debug. | |
3745 | |
3746 *) Исправление: nginx не собирался на Solaris 9 и более ранних; ошибка | |
3747 появилась в 0.9.3. | |
3748 Спасибо Dagobert Michelsen. | |
3749 | |
3750 *) Исправление: переменная $request_time имела неверные значения, если | |
3751 использовались подзапросы; ошибка появилась в 0.8.47. | |
3752 Спасибо Игорю А. Валькову. | |
3753 | |
3754 | |
3755 Изменения в nginx 1.0.0 12.04.2011 | |
3756 | |
3757 *) Исправление: cache manager мог нагружать процессор после | |
3758 переконфигурации. | |
3759 Спасибо Максиму Дунину. | |
3760 | |
3761 *) Исправление: директива "image_filter crop" неправильно работала в | |
3762 сочетании с "image_filter rotate 180". | |
3763 | |
3764 *) Исправление: директива "satisfy any" запрещала выдачу | |
3765 пользовательской страницы для 401 кода. | |
3766 | |
3767 | |
3768 Изменения в nginx 0.9.7 04.04.2011 | |
3769 | |
3770 *) Добавление: теперь соединения в состоянии keepalive могут быть | |
3771 закрыты преждевременно, если у воркера нет свободных соединений. | |
3772 Спасибо Максиму Дунину. | |
3773 | |
3774 *) Добавление: параметр rotate директивы image_filter. | |
3775 Спасибо Adam Bocim. | |
3776 | |
3777 *) Исправление: ситуации, когда бэкенд в директивах fastcgi_pass, | |
3778 scgi_pass или uwsgi_pass задан выражением и ссылается на описанный | |
3779 upstream. | |
3780 | |
3781 | |
3782 Изменения в nginx 0.9.6 21.03.2011 | |
3783 | |
3784 *) Добавление: директива map поддерживает регулярные выражения в | |
3785 качестве значения первого параметра. | |
3786 | |
3787 *) Добавление: переменная $time_iso8601 для access_log. | |
3788 Спасибо Michael Lustfield. | |
3789 | |
3790 | |
3791 Изменения в nginx 0.9.5 21.02.2011 | |
3792 | |
3793 *) Изменение: теперь по умолчанию nginx использует значение -1 для | |
3794 listen backlog на Linux. | |
3795 Спасибо Андрею Нигматулину. | |
3796 | |
3797 *) Добавление: параметр utf8 в директивах geoip_country и geoip_city. | |
3798 Спасибо Денису Латыпову. | |
3799 | |
3800 *) Исправление: исправление в умолчательной директиве proxy_redirect, | |
3801 если в директиве proxy_pass не был описан URI. | |
3802 Спасибо Максиму Дунину. | |
3803 | |
3804 *) Исправление: директива error_page не работала с нестандартными кодами | |
3805 ошибок; ошибка появилась в 0.8.53. | |
3806 Спасибо Максиму Дунину. | |
3807 | |
3808 | |
3809 Изменения в nginx 0.9.4 21.01.2011 | |
3810 | |
3811 *) Добавление: директива server_name поддерживает переменную $hostname. | |
3812 | |
3813 *) Добавление: 494 код для ошибки "Request Header Too Large". | |
3814 | |
3815 | |
3816 Изменения в nginx 0.9.3 13.12.2010 | |
3817 | |
3818 *) Исправление: если для пары IPv6-адрес:порт описан только один сервер, | |
3819 то выделения в регулярных выражениях в директиве server_name не | |
3820 работали. | |
3821 | |
3822 *) Исправление: nginx не собирался под Solaris; ошибка появилась в | |
3823 0.9.0. | |
3824 | |
3825 | |
3826 Изменения в nginx 0.9.2 06.12.2010 | |
3827 | |
3828 *) Добавление: поддержка строки "If-Unmodified-Since" в заголовке | |
3829 запроса клиента. | |
3830 | |
3831 *) Изменение: использование accept(), если accept4() не реализован; | |
3832 ошибка появилась в 0.9.0. | |
3833 | |
3834 *) Исправление: nginx не собирался под Cygwin; ошибка появилась в 0.9.0. | |
3835 | |
3836 *) Исправление: уязвимости в OpenSSL CVE-2010-4180. | |
3837 Спасибо Максиму Дунину. | |
3838 | |
3839 | |
3840 Изменения в nginx 0.9.1 30.11.2010 | |
3841 | |
3842 *) Исправление: директивы вида "return CODE message" не работали; ошибка | |
3843 появилась в 0.9.0. | |
3844 | |
3845 | |
3846 Изменения в nginx 0.9.0 29.11.2010 | |
3847 | |
3848 *) Добавление: директива keepalive_disable. | |
3849 | |
3850 *) Добавление: директива map поддерживает переменные в качестве значения | |
3851 определяемой переменной. | |
3852 | |
3853 *) Добавление: директива map поддерживает пустые строки в качестве | |
3854 значения первого параметра. | |
3855 | |
3856 *) Добавление: директива map поддерживает выражения в первом параметре. | |
3857 | |
3858 *) Добавление: страница руководства nginx(8). | |
3859 Спасибо Сергею Осокину. | |
3860 | |
3861 *) Добавление: поддержка accept4() в Linux. | |
3862 Спасибо Simon Liu. | |
3863 | |
3864 *) Изменение: устранение предупреждения линкера о "sys_errlist" и | |
3865 "sys_nerr" под Linux; предупреждение появилось в 0.8.35. | |
3866 | |
3867 *) Исправление: при использовании директивы auth_basic в рабочем | |
3868 процессе мог произойти segmentation fault. | |
3869 Спасибо Михаилу Лалетину. | |
3870 | |
3871 *) Исправление: совместимость с модулем ngx_http_eval_module; ошибка | |
3872 появилась в 0.8.42. | |
3873 | |
3874 | |
3875 Изменения в nginx 0.8.53 18.10.2010 | |
3876 | |
3877 *) Добавление: теперь директива error_page позволяет менять код статуса | |
3878 у редиректа. | |
3879 | |
3880 *) Добавление: директива gzip_disable поддерживает специальную маску | |
3881 degradation. | |
3882 | |
3883 *) Исправление: при использовании файлового AIO могла происходить утечка | |
3884 сокетов. | |
3885 Спасибо Максиму Дунину. | |
3886 | |
3887 *) Исправление: если в первом сервере не была описана директива listen и | |
3888 нигде явно не описан сервер по умолчанию, то сервером по умолчанию | |
3889 становился следующий сервер с директивой listen; ошибка появилась в | |
3890 0.8.21. | |
3891 | |
3892 | |
3893 Изменения в nginx 0.8.52 28.09.2010 | |
3894 | |
3895 *) Исправление: nginx использовал режим SSL для listen сокета, если для | |
3896 него был установлен любой listen-параметр; ошибка появилась в 0.8.51. | |
3897 | |
3898 | |
3899 Изменения в nginx 0.8.51 27.09.2010 | |
3900 | |
3901 *) Изменение: директива secure_link_expires упразднена. | |
3902 | |
3903 *) Изменение: уровень логгирования ошибок resolver'а понижен с уровня | |
3904 alert на error. | |
3905 | |
3906 *) Добавление: теперь параметр "ssl" listen-сокета можно устанавливать | |
3907 несколько раз. | |
3908 | |
3909 | |
3910 Изменения в nginx 0.8.50 02.09.2010 | |
3911 | |
3912 *) Добавление: директивы secure_link, secure_link_md5 и | |
3913 secure_link_expires модуля ngx_http_secure_link_module. | |
3914 | |
3915 *) Добавление: ключ -q. | |
3916 Спасибо Геннадию Махомеду. | |
3917 | |
3918 *) Исправление: при использовании кэширования рабочие процессы и могли | |
3919 зациклиться во время переконфигурации; ошибка появилась в 0.8.48. | |
3920 | |
3921 *) Исправление: в директиве gzip_disable. | |
3922 Спасибо Derrick Petzold. | |
3923 | |
3924 *) Исправление: nginx/Windows не мог посылать сигналы stop, quit, | |
3925 reopen, reload процессу, запущенному в другой сессии. | |
3926 | |
3927 | |
3928 Изменения в nginx 0.8.49 09.08.2010 | |
3929 | |
3930 *) Добавление: директива image_filter_jpeg_quality поддерживает | |
3931 переменные. | |
3932 | |
3933 *) Исправление: при использовании переменной $geoip_region_name в | |
3934 рабочем процессе мог произойти segmentation fault; ошибка появилась в | |
3935 0.8.48. | |
3936 | |
3937 *) Исправление: ошибки, перехваченные error_page, кэшировались только до | |
3938 следующего запроса; ошибка появилась в 0.8.48. | |
3939 | |
3940 | |
3941 Изменения в nginx 0.8.48 03.08.2010 | |
3942 | |
3943 *) Изменение: теперь по умолчанию директива server_name имеет значение | |
3944 пустое имя "". | |
3945 Спасибо Геннадию Махомеду. | |
3946 | |
3947 *) Изменение: теперь по умолчанию директива server_name_in_redirect | |
3948 имеет значение off. | |
3949 | |
3950 *) Добавление: переменные $geoip_dma_code, $geoip_area_code и | |
3951 $geoip_region_name. | |
3952 Спасибо Christine McGonagle. | |
3953 | |
3954 *) Исправление: директивы proxy_pass, fastcgi_pass, uwsgi_pass и | |
3955 scgi_pass не наследовались в блоки limit_except. | |
3956 | |
3957 *) Исправление: директивы proxy_cache_min_uses, fastcgi_cache_min_uses | |
3958 uwsgi_cache_min_uses и scgi_cache_min_uses не работали; ошибка | |
3959 появилась в 0.8.46. | |
3960 | |
3961 *) Исправление: директива fastcgi_split_path_info неверно использовала | |
3962 выделения, если в выделения попадала только часть URI. | |
3963 Спасибо Юрию Тарадаю и Frank Enderle. | |
3964 | |
3965 *) Исправление: директива rewrite не экранировала символ ";" при | |
3966 копировании из URI в аргументы. | |
3967 Спасибо Daisuke Murase. | |
3968 | |
3969 *) Исправление: модуль ngx_http_image_filter_module закрывал соединение, | |
3970 если изображение было больше размера image_filter_buffer. | |
3971 | |
3972 | |
3973 Изменения в nginx 0.8.47 28.07.2010 | |
3974 | |
3975 *) Исправление: переменная $request_time имела неверные значения для | |
3976 подзапросов. | |
3977 | |
3978 *) Исправление: ошибки, перехваченные error_page, не кэшировались. | |
3979 | |
3980 *) Исправление: если использовался параметр max_size, то cache manager | |
3981 мог зациклиться; ошибка появилась в 0.8.46. | |
3982 | |
3983 | |
3984 Изменения в nginx 0.8.46 19.07.2010 | |
3985 | |
3986 *) Изменение: директивы proxy_no_cache, fastcgi_no_cache, uwsgi_no_cache | |
3987 и scgi_no_cache теперь влияют только на сохранение закэшированного | |
3988 ответа. | |
3989 | |
3990 *) Добавление: директивы proxy_cache_bypass, fastcgi_cache_bypass, | |
3991 uwsgi_cache_bypass и scgi_cache_bypass. | |
3992 | |
3993 *) Исправление: nginx не освобождал память в keys_zone кэшей в случае | |
3994 ошибки работы с бэкендом: память освобождалась только по истечении | |
3995 времени неактивности или при недостатке памяти. | |
3996 | |
3997 | |
3998 Изменения в nginx 0.8.45 13.07.2010 | |
3999 | |
4000 *) Добавление: улучшения в модуле ngx_http_xslt_filter. | |
4001 Спасибо Laurence Rowe. | |
4002 | |
4003 *) Исправление: ответ SSI модуля мог передаваться не полностью после | |
4004 команды include с параметром wait="yes"; ошибка появилась в 0.7.25. | |
4005 Спасибо Максиму Дунину. | |
4006 | |
4007 *) Исправление: директива listen не поддерживала параметр setfib=0. | |
4008 | |
4009 | |
4010 Изменения в nginx 0.8.44 05.07.2010 | |
4011 | |
4012 *) Изменение: теперь nginx по умолчанию не кэширует ответы бэкендов, в | |
4013 заголовке которых есть строка "Set-Cookie". | |
4014 | |
4015 *) Добавление: директива listen поддерживает параметр setfib. | |
4016 Спасибо Андрею Филонову. | |
4017 | |
4018 *) Исправление: директива sub_filter могла изменять регистр букв при | |
4019 частичном совпадении. | |
4020 | |
4021 *) Исправление: совместимость с HP/UX. | |
4022 | |
4023 *) Исправление: совместимость с компилятором AIX xlC_r. | |
4024 | |
4025 *) Исправление: nginx считал большие пакеты SSLv2 как обычные текстовые | |
4026 запросы. | |
4027 Спасибо Miroslaw Jaworski. | |
4028 | |
4029 | |
4030 Изменения в nginx 0.8.43 30.06.2010 | |
4031 | |
4032 *) Добавление: ускорение загрузки больших баз geo-диапазонов. | |
4033 | |
4034 *) Исправление: перенаправление ошибки в "location /zero {return 204;}" | |
4035 без изменения кода ответа оставляло тело ошибки; ошибка появилась в | |
4036 0.8.42. | |
4037 | |
4038 *) Исправление: nginx мог закрывать IPv6 listen сокет во время | |
4039 переконфигурации. | |
4040 Спасибо Максиму Дунину. | |
4041 | |
4042 *) Исправление: переменную $uid_set можно использовать на любой стадии | |
4043 обработки запроса. | |
4044 | |
4045 | |
4046 Изменения в nginx 0.8.42 21.06.2010 | |
4047 | |
4048 *) Изменение: теперь nginx проверяет location'ы, заданные регулярными | |
4049 выражениями, если запрос полностью совпал с location'ом, заданным | |
4050 строкой префикса. Предыдущее поведение появилось в 0.7.1. | |
4051 | |
4052 *) Добавление: модуль ngx_http_scgi_module. | |
4053 Спасибо Manlio Perillo. | |
4054 | |
4055 *) Добавление: в директиве return можно добавлять текст ответа. | |
4056 | |
4057 | |
4058 Изменения в nginx 0.8.41 15.06.2010 | |
4059 | |
4060 *) Безопасность: рабочий процесс nginx/Windows мог завершаться аварийно | |
4061 при запросе файла с неверной кодировкой UTF-8. | |
4062 | |
4063 *) Изменение: теперь nginx разрешает использовать пробелы в строке | |
4064 запроса. | |
4065 | |
4066 *) Исправление: директива proxy_redirect неправильно изменяла строку | |
4067 "Refresh" в заголовке ответа бэкенда. | |
4068 Спасибо Андрею Андрееву и Максиму Согину. | |
4069 | |
4070 *) Исправление: nginx не поддерживал путь без имени хоста в строке | |
4071 "Destination" в заголовке запроса. | |
4072 | |
4073 | |
4074 Изменения в nginx 0.8.40 07.06.2010 | |
4075 | |
4076 *) Безопасность: теперь nginx/Windows игнорирует имя потока файла по | |
4077 умолчанию. | |
4078 Спасибо Jose Antonio Vazquez Gonzalez. | |
4079 | |
4080 *) Добавление: модуль ngx_http_uwsgi_module. | |
4081 Спасибо Roberto De Ioris. | |
4082 | |
4083 *) Добавление: директива fastcgi_param со значением, начинающимся со | |
4084 строки "HTTP_", изменяет строку заголовка в запросе клиента. | |
4085 | |
4086 *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в | |
4087 заголовке запроса клиента передавались FastCGI-серверу при | |
4088 кэшировании. | |
4089 | |
4090 *) Исправление: listen unix domain сокет нельзя было изменить во время | |
4091 переконфигурации. | |
4092 Спасибо Максиму Дунину. | |
4093 | |
4094 | |
4095 Изменения в nginx 0.8.39 31.05.2010 | |
4096 | |
4097 *) Исправление: наследуемая директива alias неправильно работала во | |
4098 вложенном location'е. | |
4099 | |
4100 *) Исправление: в комбинации директив alias с переменными и try_files; | |
4101 | |
4102 *) Исправление: listen unix domain и IPv6 сокеты не наследовались во | |
4103 время обновления без перерыва. | |
4104 Спасибо Максиму Дунину. | |
4105 | |
4106 | |
4107 Изменения в nginx 0.8.38 24.05.2010 | |
4108 | |
4109 *) Добавление: директивы proxy_no_cache и fastcgi_no_cache. | |
4110 | |
4111 *) Добавление: теперь при использовании переменной $scheme в директиве | |
4112 rewrite автоматически делается редирект. | |
4113 Спасибо Piotr Sikora. | |
4114 | |
4115 *) Исправление: теперь задержки в директиве limit_req соответствует | |
4116 описанному алгоритму. | |
4117 Спасибо Максиму Дунину. | |
4118 | |
4119 *) Исправление: переменную $uid_got нельзя было использовать в SSI и | |
4120 перловом модулях. | |
4121 | |
4122 | |
4123 Изменения в nginx 0.8.37 17.05.2010 | |
4124 | |
4125 *) Добавление: модуль ngx_http_split_clients_module. | |
4126 | |
4127 *) Добавление: директива map поддерживает ключи больше 255 символов. | |
4128 | |
4129 *) Исправление: nginx игнорировал значения "private" и "no-store" в | |
4130 строке "Cache-Control" в заголовке ответа бэкенда. | |
4131 | |
4132 *) Исправление: параметр stub в SSI-директиве include не использовался, | |
4133 если пустой ответ имел код 200. | |
4134 | |
4135 *) Исправление: если проксированный или FastCGI запрос внутренне | |
4136 перенаправлялся в другой проксированный или FastCGI location, то в | |
4137 рабочем процессе мог произойти segmentation fault; ошибка появилась в | |
4138 0.8.33. | |
4139 Спасибо Yichun Zhang. | |
4140 | |
4141 *) Исправление: соединения IMAP к серверу Zimbra могло зависнуть до | |
4142 таймаута. | |
4143 Спасибо Alan Batie. | |
4144 | |
4145 | |
4146 Изменения в nginx 0.8.36 22.04.2010 | |
4147 | |
4148 *) Исправление: модуль ngx_http_dav_module неправильно обрабатывал | |
4149 методы DELETE, COPY и MOVE для симлинков. | |
4150 | |
4151 *) Исправление: модуль SSI в подзапросах использовал закэшированные в | |
4152 основном запросе значения переменных $query_string, $arg_... и им | |
4153 подобных. | |
4154 | |
4155 *) Исправление: значение переменной повторно экранировалось после | |
4156 каждого вывода SSI-команды echo; ошибка появилась в 0.6.14. | |
4157 | |
4158 *) Исправление: рабочий процесс зависал при запросе файла FIFO. | |
4159 Спасибо Vicente Aguilar и Максиму Дунину. | |
4160 | |
4161 *) Исправление: совместимость с OpenSSL-1.0.0 на 64-битном Linux. | |
4162 Спасибо Максиму Дунину. | |
4163 | |
4164 *) Исправление: nginx не собирался с параметром --without-http-cache; | |
4165 ошибка появилась в 0.8.35. | |
4166 | |
4167 | |
4168 Изменения в nginx 0.8.35 01.04.2010 | |
4169 | |
4170 *) Изменение: теперь charset-фильтр работает до SSI-фильтра. | |
4171 | |
4172 *) Добавление: директива chunked_transfer_encoding. | |
4173 | |
4174 *) Исправление: символ "&" при копировании в аргументы в правилах | |
4175 rewrite не экранировался. | |
4176 | |
4177 *) Исправление: nginx мог завершаться аварийно во время обработки | |
4178 сигнала или при использовании директивы timer_resolution на | |
4179 платформах, не поддерживающих методы kqueue или eventport. | |
4180 Спасибо George Xie и Максиму Дунину. | |
4181 | |
4182 *) Исправление: если временные файлы и постоянное место хранения | |
4183 располагались на разных файловых системах, то у постоянных файлов | |
4184 время изменения было неверным. | |
4185 Спасибо Максиму Дунину. | |
4186 | |
4187 *) Исправление: модуль ngx_http_memcached_module мог выдавать ошибку | |
4188 "memcached sent invalid trailer". | |
4189 Спасибо Максиму Дунину. | |
4190 | |
4191 *) Исправление: nginx не мог собрать библиотеку zlib-1.2.4 из исходных | |
4192 текстов. | |
4193 Спасибо Максиму Дунину. | |
4194 | |
4195 *) Исправление: в рабочем процессе происходил segmentation fault, если | |
4196 перед ответом FastCGI-сервера было много вывода в stderr; ошибка | |
4197 появилась в 0.8.34. | |
4198 Спасибо Максиму Дунину. | |
4199 | |
4200 | |
4201 Изменения в nginx 0.8.34 03.03.2010 | |
4202 | |
4203 *) Исправление: nginx не поддерживал все шифры, используемые в | |
4204 клиентских сертификатах. | |
4205 Спасибо Иннокентию Еникееву. | |
4206 | |
4207 *) Исправление: nginx неправильно кэшировал FastCGI-ответы, если перед | |
4208 ответом было много вывода в stderr. | |
4209 | |
4210 *) Исправление: nginx не поддерживал HTTPS-рефереры. | |
4211 | |
4212 *) Исправление: nginx/Windows мог не находить файлы, если путь в | |
4213 конфигурации был задан в другом регистре; ошибка появилась в 0.8.33. | |
4214 | |
4215 *) Исправление: переменная $date_local выдавала неверное время, если | |
4216 использовался формат "%s". | |
4217 Спасибо Максиму Дунину. | |
4218 | |
4219 *) Исправление: если ssl_session_cache не был установлен или установлен | |
4220 в none, то при проверке клиентского сертификаты могла происходить | |
4221 ошибка "session id context uninitialized"; ошибка появилась в 0.7.1. | |
4222 | |
4223 *) Исправление: geo-диапазон возвращал значение по умолчанию, если | |
4224 диапазон включал в себя одну и более сетей размером /16 и не | |
4225 начинался на границе сети размером /16. | |
4226 | |
4227 *) Исправление: блок, используемый в параметре stub в SSI-директиве | |
4228 include, выводился с MIME-типом "text/plain". | |
4229 | |
4230 *) Исправление: $r->sleep() не работал; ошибка появилась в 0.8.11. | |
4231 | |
4232 | |
4233 Изменения в nginx 0.8.33 01.02.2010 | |
4234 | |
4235 *) Безопасность: теперь nginx/Windows игнорирует пробелы в конце URI. | |
4236 Спасибо Dan Crowley, Core Security Technologies. | |
4237 | |
4238 *) Безопасность: теперь nginx/Windows игнорирует короткие имена файлов. | |
4239 Спасибо Dan Crowley, Core Security Technologies. | |
4240 | |
4241 *) Изменение: теперь keepalive соединения после запросов POST не | |
4242 запрещаются для MSIE 7.0+. | |
4243 Спасибо Adam Lounds. | |
4244 | |
4245 *) Изменение: теперь keepalive соединения запрещены для Safari. | |
4246 Спасибо Joshua Sierles. | |
4247 | |
4248 *) Исправление: если проксированный или FastCGI запрос внутренне | |
4249 перенаправлялся в другой проксированный или FastCGI location, то | |
4250 переменная $upstream_response_time могла иметь ненормально большое | |
4251 значение; ошибка появилась в 0.8.7. | |
4252 | |
4253 *) Исправление: в рабочем процессе мог произойти segmentation fault при | |
4254 отбрасывания тела запроса; ошибка появилась в 0.8.11. | |
4255 | |
4256 | |
4257 Изменения в nginx 0.8.32 11.01.2010 | |
4258 | |
4259 *) Исправление: ошибки при использовании кодировки UTF-8 в | |
4260 ngx_http_autoindex_module. | |
4261 Спасибо Максиму Дунину. | |
4262 | |
4263 *) Исправление: именованные выделения в регулярных выражениях работали | |
4264 только для двух переменных. | |
4265 Спасибо Максиму Дунину. | |
4266 | |
4267 *) Исправление: теперь в строке заголовка запроса "Host" используется | |
4268 имя "localhost", если в директиве auth_http указан unix domain сокет. | |
4269 Спасибо Максиму Дунину. | |
4270 | |
4271 *) Исправление: nginx не поддерживал передачу chunk'ами для 201-ых | |
4272 ответов. | |
4273 Спасибо Julian Reich. | |
4274 | |
4275 *) Исправление: если директива "expires modified" выставляла дату в | |
4276 прошлом, то в строке заголовка ответа "Cache-Control" выдавалось | |
4277 отрицательное число. | |
4278 Спасибо Алексею Капранову. | |
4279 | |
4280 | |
4281 Изменения в nginx 0.8.31 23.12.2009 | |
4282 | |
4283 *) Добавление: теперь директива error_page может перенаправлять ответы | |
4284 со статусом 301 и 302. | |
4285 | |
4286 *) Добавление: переменные $geoip_city_continent_code, $geoip_latitude и | |
4287 $geoip_longitude. | |
4288 Спасибо Arvind Sundararajan. | |
4289 | |
4290 *) Добавление: модуль ngx_http_image_filter_module теперь всегда удаляет | |
4291 EXIF и другие данные, если они занимают больше 5% в JPEG-файле. | |
4292 | |
4293 *) Исправление: nginx закрывал соединение при запросе закэшированного | |
4294 ответа с пустым телом. | |
4295 Спасибо Piotr Sikora. | |
4296 | |
4297 *) Исправление: nginx мог не собираться gcc 4.x при использовании | |
4298 оптимизации -O2 и выше. | |
4299 Спасибо Максиму Дунину и Денису Латыпову. | |
4300 | |
4301 *) Исправление: регулярные выражения в location всегда тестировались с | |
4302 учётом регистра; ошибка появилась в 0.8.25. | |
4303 | |
4304 *) Исправление: nginx кэшировал 304 ответ, если в заголовке | |
4305 проксируемого запроса была строка "If-None-Match". | |
4306 Спасибо Tim Dettrick и David Kostal. | |
4307 | |
4308 *) Исправление: nginx/Windows пытался дважды удалить временный файл при | |
4309 перезаписи уже существующего файла. | |
4310 | |
4311 | |
4312 Изменения в nginx 0.8.30 15.12.2009 | |
4313 | |
4314 *) Изменение: теперь по умолчанию размер буфера директивы | |
4315 large_client_header_buffers равен 8K. | |
4316 Спасибо Andrew Cholakian. | |
4317 | |
4318 *) Добавление: файл conf/fastcgi.conf для простых конфигураций FastCGI. | |
4319 | |
4320 *) Исправление: nginx/Windows пытался дважды переименовать временный | |
4321 файл при перезаписи уже существующего файла. | |
4322 | |
4323 *) Исправление: ошибки double free or corruption, возникающей, если имя | |
4324 хоста не было найдено; ошибка появилась в 0.8.22. | |
4325 Спасибо Константину Свисту. | |
4326 | |
4327 *) Исправление: в использовании libatomic на некоторых платформах. | |
4328 Спасибо W-Mark Kubacki. | |
4329 | |
4330 | |
4331 Изменения в nginx 0.8.29 30.11.2009 | |
4332 | |
4333 *) Изменение: теперь для проксируемых ответов HTTP/0.9 в лог пишется код | |
4334 ответа "009". | |
4335 | |
4336 *) Добавление: директивы addition_types, charset_types, gzip_types, | |
4337 ssi_types, sub_filter_types и xslt_types поддерживают параметр "*". | |
4338 | |
4339 *) Добавление: использование встроенных атомарных операций GCC 4.1+. | |
4340 Спасибо W-Mark Kubacki. | |
4341 | |
4342 *) Добавление: параметр --with-libatomic[=DIR] в configure. | |
4343 Спасибо W-Mark Kubacki. | |
4344 | |
4345 *) Исправление: listen unix domain сокет имели ограниченные права | |
4346 доступа. | |
4347 | |
4348 *) Исправление: закэшированные ответы ответов HTTP/0.9 неправильно | |
4349 обрабатывались. | |
4350 | |
4351 *) Исправление: именованные выделения в регулярных выражениях, заданные | |
4352 как "?P<...>", не работали в директиве server_name. | |
4353 Спасибо Максиму Дунину. | |
4354 | |
4355 | |
4356 Изменения в nginx 0.8.28 23.11.2009 | |
4357 | |
4358 *) Исправление: nginx не собирался с параметром --without-pcre; ошибка | |
4359 появилась в 0.8.25. | |
4360 | |
4361 | |
4362 Изменения в nginx 0.8.27 17.11.2009 | |
4363 | |
4364 *) Исправление: регулярные выражения не работали в nginx/Windows; ошибка | |
4365 появилась в 0.8.25. | |
4366 | |
4367 | |
4368 Изменения в nginx 0.8.26 16.11.2009 | |
4369 | |
4370 *) Исправление: ошибки при использовании выделений в директиве rewrite; | |
4371 ошибка появилась в 0.8.25. | |
4372 | |
4373 *) Исправление: nginx не собирался без параметра --with-debug; ошибка | |
4374 появилась в 0.8.25. | |
4375 | |
4376 | |
4377 Изменения в nginx 0.8.25 16.11.2009 | |
4378 | |
4379 *) Изменение: теперь в лог ошибок не пишется сообщение, если переменная | |
4380 не найдена с помощью метода $r->variable(). | |
4381 | |
4382 *) Добавление: модуль ngx_http_degradation_module. | |
4383 | |
4384 *) Добавление: именованные выделения в регулярных выражениях. | |
4385 | |
4386 *) Добавление: теперь при использовании переменных в директиве | |
4387 proxy_pass не требуется задавать URI. | |
4388 | |
4389 *) Добавление: теперь директива msie_padding работает и для Chrome. | |
4390 | |
4391 *) Исправление: в рабочем процессе происходил segmentation fault при | |
4392 недостатке памяти; ошибка появилась в 0.8.18. | |
4393 | |
4394 *) Исправление: nginx передавал сжатые ответы клиентам, не | |
4395 поддерживающим сжатие, при настройках gzip_static on и gzip_vary off; | |
4396 ошибка появилась в 0.8.16. | |
4397 | |
4398 | |
4399 Изменения в nginx 0.8.24 11.11.2009 | |
4400 | |
4401 *) Исправление: nginx всегда добавлял строку "Content-Encoding: gzip" в | |
4402 заголовок 304-ых ответов модуля ngx_http_gzip_static_module. | |
4403 | |
4404 *) Исправление: nginx не собирался без параметра --with-debug; ошибка | |
4405 появилась в 0.8.23. | |
4406 | |
4407 *) Исправление: параметр "unix:" в директиве set_real_ip_from | |
4408 неправильно наследовался с предыдущего уровня. | |
4409 | |
4410 *) Исправление: в resolver'е при определении пустого имени. | |
4411 | |
4412 | |
4413 Изменения в nginx 0.8.23 11.11.2009 | |
4414 | |
4415 *) Безопасность: теперь SSL/TLS renegotiation запрещён. | |
4416 Спасибо Максиму Дунину. | |
4417 | |
4418 *) Исправление: listen unix domain сокет не наследовался во время | |
4419 обновления без перерыва. | |
4420 | |
4421 *) Исправление: параметр "unix:" в директиве set_real_ip_from не работал | |
4422 без ещё одной директивы с любым IP-адресом. | |
4423 | |
4424 *) Исправление: segmentation fault и зацикливания в resolver'е. | |
4425 | |
4426 *) Исправление: в resolver'е. | |
4427 Спасибо Артёму Бохану. | |
4428 | |
4429 | |
4430 Изменения в nginx 0.8.22 03.11.2009 | |
4431 | |
4432 *) Добавление: директивы proxy_bind, fastcgi_bind и memcached_bind. | |
4433 | |
4434 *) Добавление: директивы access и deny поддерживают IPv6. | |
4435 | |
4436 *) Добавление: директива set_real_ip_from поддерживает IPv6 адреса в | |
4437 заголовках запроса. | |
4438 | |
4439 *) Добавление: параметр "unix:" в директиве set_real_ip_from. | |
4440 | |
4441 *) Исправление: nginx не удалял unix domain сокет после тестирования | |
4442 конфигурации. | |
4443 | |
4444 *) Исправление: nginx удалял unix domain сокет во время обновления без | |
4445 перерыва. | |
4446 | |
4447 *) Исправление: оператор "!-x" не работал. | |
4448 Спасибо Максиму Дунину. | |
4449 | |
4450 *) Исправление: в рабочем процессе мог произойти segmentation fault при | |
4451 использовании limit_rate в HTTPS сервере. | |
4452 Спасибо Максиму Дунину. | |
4453 | |
4454 *) Исправление: при записи в лог переменной $limit_rate в рабочем | |
4455 процессе происходил segmentation fault. | |
4456 Спасибо Максиму Дунину. | |
4457 | |
4458 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
4459 если внутри блока server не было директивы listen; ошибка появилась в | |
4460 0.8.21. | |
4461 | |
4462 | |
4463 Изменения в nginx 0.8.21 26.10.2009 | |
4464 | |
4465 *) Добавление: теперь ключ -V показывает статус поддержки TLS SNI. | |
4466 | |
4467 *) Добавление: директива listen модуля HTTP поддерживает unix domain | |
4468 сокеты. | |
4469 Спасибо Hongli Lai. | |
4470 | |
4471 *) Добавление: параметр "default_server" в директиве listen. | |
4472 | |
4473 *) Добавление: теперь параметр "default" не обязателен для установки | |
4474 параметров listen-сокета. | |
4475 | |
4476 *) Исправление: nginx не поддерживал даты в 2038 году на 32-битных | |
4477 платформах; | |
4478 | |
4479 *) Исправление: утечки сокетов; ошибка появилась в 0.8.11. | |
4480 | |
4481 | |
4482 Изменения в nginx 0.8.20 14.10.2009 | |
4483 | |
4484 *) Изменение: теперь по умолчанию используются следующие шифры SSL: | |
4485 "HIGH:!ADH:!MD5". | |
4486 | |
4487 *) Исправление: модуль ngx_http_autoindex_module не показывал последний | |
4488 слэш для линков на каталоги; ошибка появилась в 0.7.15. | |
4489 | |
4490 *) Исправление: nginx не закрывал лог, заданный параметром конфигурации | |
4491 --error-log-path; ошибка появилась в 0.7.53. | |
4492 | |
4493 *) Исправление: nginx не считал запятую разделителем в строке | |
4494 "Cache-Control" в заголовке ответа бэкенда. | |
4495 | |
4496 *) Исправление: nginx/Windows мог не создать временный файл, файл в кэше | |
4497 или файл с помощью директив proxy/fastcgi_store, если рабочий процесс | |
4498 не имел достаточно прав для работы с каталогами верхнего уровня. | |
4499 | |
4500 *) Исправление: строки "Set-Cookie" и "P3P" в заголовке ответа | |
4501 FastCGI-сервера не скрывались при кэшировании, если не использовались | |
4502 директивы fastcgi_hide_header с любыми параметрами. | |
4503 | |
4504 *) Исправление: nginx неверно считал размер кэша на диске. | |
4505 | |
4506 | |
4507 Изменения в nginx 0.8.19 06.10.2009 | |
4508 | |
4509 *) Изменение: теперь протокол SSLv2 по умолчанию запрещён. | |
4510 | |
4511 *) Изменение: теперь по умолчанию используются следующие шифры SSL: | |
4512 "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM". | |
4513 | |
4514 *) Исправление: директива limit_req не работала; ошибка появилась в | |
4515 0.8.18. | |
4516 | |
4517 | |
4518 Изменения в nginx 0.8.18 06.10.2009 | |
4519 | |
4520 *) Добавление: директива read_ahead. | |
4521 | |
4522 *) Добавление: теперь можно использовать несколько директив | |
4523 perl_modules. | |
4524 | |
4525 *) Добавление: директивы limit_req_log_level и limit_conn_log_level. | |
4526 | |
4527 *) Исправление: теперь директива limit_req соответствует алгоритму leaky | |
4528 bucket. | |
4529 Спасибо Максиму Дунину. | |
4530 | |
4531 *) Исправление: nginx не работал на Linux/sparc. | |
4532 Спасибо Marcus Ramberg. | |
4533 | |
4534 *) Исправление: nginx слал символ '\0' в строке "Location" в заголовке в | |
4535 ответе на запрос MKCOL. | |
4536 Спасибо Xie Zhenye. | |
4537 | |
4538 *) Исправление: вместо кода ответа 499 в лог записывался код 0; ошибка | |
4539 появилась в 0.8.11. | |
4540 | |
4541 *) Исправление: утечки сокетов; ошибка появилась в 0.8.11. | |
4542 | |
4543 | |
4544 Изменения в nginx 0.8.17 28.09.2009 | |
4545 | |
4546 *) Безопасность: теперь символы "/../" запрещены в строке "Destination" | |
4547 в заголовке запроса. | |
4548 | |
4549 *) Изменение: теперь значение переменной $host всегда в нижнем регистре. | |
4550 | |
4551 *) Добавление: переменная $ssl_session_id. | |
4552 | |
4553 *) Исправление: утечки сокетов; ошибка появилась в 0.8.11. | |
4554 | |
4555 | |
4556 Изменения в nginx 0.8.16 22.09.2009 | |
4557 | |
4558 *) Добавление: директива image_filter_transparency. | |
4559 | |
4560 *) Исправление: директива "addition_types" была неверно названа | |
4561 "addtion_types". | |
4562 | |
4563 *) Исправление: порчи кэша resolver'а. | |
4564 Спасибо Matthew Dempsky. | |
4565 | |
4566 *) Исправление: утечки памяти в resolver'е. | |
4567 Спасибо Matthew Dempsky. | |
4568 | |
4569 *) Исправление: неверная строка запроса в переменной $request | |
4570 записывалась в access_log только при использовании error_log на | |
4571 уровне info или debug. | |
4572 | |
4573 *) Исправление: в поддержке альфа-канала PNG в модуле | |
4574 ngx_http_image_filter_module. | |
4575 | |
4576 *) Исправление: nginx всегда добавлял строку "Vary: Accept-Encoding" в | |
4577 заголовок ответа, если обе директивы gzip_static и gzip_vary были | |
4578 включены. | |
4579 | |
4580 *) Исправление: в поддержке кодировки UTF-8 директивой try_files в | |
4581 nginx/Windows. | |
4582 | |
4583 *) Исправление: ошибки при использовании post_action; ошибка появилась в | |
4584 0.8.11. | |
4585 Спасибо Игорю Артемьеву. | |
4586 | |
4587 | |
4588 Изменения в nginx 0.8.15 14.09.2009 | |
4589 | |
4590 *) Безопасность: при обработке специально созданного запроса в рабочем | |
4591 процессе мог произойти segmentation fault. | |
4592 Спасибо Chris Ries. | |
4593 | |
4594 *) Исправление: если были описаны имена .domain.tld, .sub.domain.tld и | |
4595 .domain-some.tld, то имя .sub.domain.tld попадало под маску | |
4596 .domain.tld. | |
4597 | |
4598 *) Исправление: в поддержке прозрачности в модуле | |
4599 ngx_http_image_filter_module. | |
4600 | |
4601 *) Исправление: в файловом AIO. | |
4602 | |
4603 *) Исправление: ошибки при использовании X-Accel-Redirect; ошибка | |
4604 появилась в 0.8.11. | |
4605 | |
4606 *) Исправление: ошибки при использовании встроенного перла; ошибка | |
4607 появилась в 0.8.11. | |
4608 | |
4609 | |
4610 Изменения в nginx 0.8.14 07.09.2009 | |
4611 | |
4612 *) Исправление: устаревший закэшированный запрос мог залипнуть в | |
4613 состоянии "UPDATING". | |
4614 | |
4615 *) Исправление: при использовании error_log на уровне info или debug в | |
4616 рабочем процессе мог произойти segmentation fault. | |
4617 Спасибо Сергею Боченкову. | |
4618 | |
4619 *) Исправление: ошибки при использовании встроенного перла; ошибка | |
4620 появилась в 0.8.11. | |
4621 | |
4622 *) Исправление: директива error_page не перенаправляла ошибку 413; | |
4623 ошибка появилась в 0.6.10. | |
4624 | |
4625 | |
4626 Изменения в nginx 0.8.13 31.08.2009 | |
4627 | |
4628 *) Исправление: в директиве "aio sendfile"; ошибка появилась в 0.8.12. | |
4629 | |
4630 *) Исправление: nginx не собирался без параметра --with-file-aio на | |
4631 FreeBSD; ошибка появилась в 0.8.12. | |
4632 | |
4633 | |
4634 Изменения в nginx 0.8.12 31.08.2009 | |
4635 | |
4636 *) Добавление: параметр sendfile в директиве aio во FreeBSD. | |
4637 | |
4638 *) Исправление: ошибки при использовании try_files; ошибка появилась в | |
4639 0.8.11. | |
4640 | |
4641 *) Исправление: ошибки при использовании memcached; ошибка появилась в | |
4642 0.8.11. | |
4643 | |
4644 | |
4645 Изменения в nginx 0.8.11 28.08.2009 | |
4646 | |
4647 *) Изменение: теперь директива "gzip_disable msie6" не запрещает сжатие | |
4648 для MSIE 6.0 SV1. | |
4649 | |
4650 *) Добавление: поддержка файлового AIO во FreeBSD и Linux. | |
4651 | |
4652 *) Добавление: директива directio_alignment. | |
4653 | |
4654 | |
4655 Изменения в nginx 0.8.10 24.08.2009 | |
4656 | |
4657 *) Исправление: утечек памяти при использовании базы GeoIP City. | |
4658 | |
4659 *) Исправление: ошибки при копировании временных файлов в постоянное | |
4660 место хранения; ошибка появилась в 0.8.9. | |
4661 | |
4662 | |
4663 Изменения в nginx 0.8.9 17.08.2009 | |
4664 | |
4665 *) Добавление: теперь стартовый загрузчик кэша работает в отдельном | |
4666 процесс; это должно улучшить обработку больших кэшей. | |
4667 | |
4668 *) Добавление: теперь временные файлы и постоянное место хранения могут | |
4669 располагаться на разных файловых системах. | |
4670 | |
4671 | |
4672 Изменения в nginx 0.8.8 10.08.2009 | |
4673 | |
4674 *) Исправление: в обработке заголовков ответа, разделённых в | |
4675 FastCGI-записях. | |
4676 | |
4677 *) Исправление: если запрос обрабатывался в двух проксированных или | |
4678 FastCGI location'ах и в первом из них использовалось кэширование, то | |
4679 в рабочем процессе происходил segmentation fault; ошибка появилась в | |
4680 0.8.7. | |
4681 | |
4682 | |
4683 Изменения в nginx 0.8.7 27.07.2009 | |
4684 | |
4685 *) Изменение: минимальная поддерживаемая версия OpenSSL - 0.9.7. | |
4686 | |
4687 *) Изменение: параметр ask директивы ssl_verify_client изменён на | |
4688 параметр optional и теперь он проверяет клиентский сертификат, если | |
4689 он был предложен. | |
4690 Спасибо Brice Figureau. | |
4691 | |
4692 *) Добавление: переменная $ssl_client_verify. | |
4693 Спасибо Brice Figureau. | |
4694 | |
4695 *) Добавление: директива ssl_crl. | |
4696 Спасибо Brice Figureau. | |
4697 | |
4698 *) Добавление: параметр proxy директивы geo. | |
4699 | |
4700 *) Добавление: директива image_filter поддерживает переменные для | |
4701 задания размеров. | |
4702 | |
4703 *) Исправление: использование переменной $ssl_client_cert портило | |
4704 память; ошибка появилась в 0.7.7. | |
4705 Спасибо Сергею Журавлёву. | |
4706 | |
4707 *) Исправление: директивы proxy_pass_header и fastcgi_pass_header" не | |
4708 передавали клиенту строки "X-Accel-Redirect", "X-Accel-Limit-Rate", | |
4709 "X-Accel-Buffering" и "X-Accel-Charset" из заголовка ответа бэкенда. | |
4710 Спасибо Максиму Дунину. | |
4711 | |
4712 *) Исправление: в обработке строк "Last-Modified" и "Accept-Ranges" в | |
4713 заголовке ответа бэкенда; ошибка появилась в 0.7.44. | |
4714 Спасибо Максиму Дунину. | |
4715 | |
4716 *) Исправление: ошибки "[alert] zero size buf" при получении пустых | |
4717 ответы в подзапросах; ошибка появилась в 0.8.5. | |
4718 | |
4719 | |
4720 Изменения в nginx 0.8.6 20.07.2009 | |
4721 | |
4722 *) Добавление: модуль ngx_http_geoip_module. | |
4723 | |
4724 *) Исправление: XSLT-фильтр мог выдавать ошибку "not well formed XML | |
4725 document" для правильного документа. | |
4726 Спасибо Kuramoto Eiji. | |
4727 | |
4728 *) Исправление: в MacOSX, Cygwin и nginx/Windows при проверке | |
4729 location'ов, заданных регулярным выражением, теперь всегда делается | |
4730 сравнение без учёта регистра символов. | |
4731 | |
4732 *) Исправление: теперь nginx/Windows игнорирует точки в конце URI. | |
4733 Спасибо Hugo Leisink. | |
4734 | |
4735 *) Исправление: имя файла указанного в --conf-path игнорировалось при | |
4736 установке; ошибка появилась в 0.6.6. | |
4737 Спасибо Максиму Дунину. | |
4738 | |
4739 | |
4740 Изменения в nginx 0.8.5 13.07.2009 | |
4741 | |
4742 *) Исправление: теперь nginx разрешает подчёркивания в методе запроса. | |
4743 | |
4744 *) Исправление: при использовании HTTP Basic-аутентификации на Windows | |
4745 для неверных имени/пароля возвращалась 500-ая ошибка. | |
4746 | |
4747 *) Исправление: ответы модуля ngx_http_perl_module не работали в | |
4748 подзапросах. | |
4749 | |
4750 *) Исправление: в модуле ngx_http_limit_req_module. | |
4751 Спасибо Максиму Дунину. | |
4752 | |
4753 | |
4754 Изменения в nginx 0.8.4 22.06.2009 | |
4755 | |
4756 *) Исправление: nginx не собирался с параметром --without-http-cache; | |
4757 ошибка появилась в 0.8.3. | |
4758 | |
4759 | |
4760 Изменения в nginx 0.8.3 19.06.2009 | |
4761 | |
4762 *) Добавление: переменная $upstream_cache_status. | |
4763 | |
4764 *) Исправление: nginx не собирался на MacOSX 10.6. | |
4765 | |
4766 *) Исправление: nginx не собирался с параметром --without-http-cache; | |
4767 ошибка появилась в 0.8.2. | |
4768 | |
4769 *) Исправление: если использовался перехват 401 ошибки от бэкенда и | |
4770 бэкенд не возвращал строку "WWW-Authenticate" в заголовке ответа, то | |
4771 в рабочем процессе происходил segmentation fault. | |
4772 Спасибо Евгению Мычло. | |
4773 | |
4774 | |
4775 Изменения в nginx 0.8.2 15.06.2009 | |
4776 | |
4777 *) Исправление: во взаимодействии open_file_cache и proxy/fastcgi кэша | |
4778 на старте. | |
4779 | |
4780 *) Исправление: open_file_cache мог кэшировать открытые файлы очень | |
4781 долго; ошибка появилась в 0.7.4. | |
4782 | |
4783 | |
4784 Изменения в nginx 0.8.1 08.06.2009 | |
4785 | |
4786 *) Добавление: параметр updating в директивах proxy_cache_use_stale и | |
4787 fastcgi_cache_use_stale. | |
4788 | |
4789 *) Исправление: строки "If-Modified-Since", "If-Range" и им подобные в | |
4790 заголовке запроса клиента передавались бэкенду при кэшировании, если | |
4791 не использовалась директива proxy_set_header с любыми параметрами. | |
4792 | |
4793 *) Исправление: строки "Set-Cookie" и "P3P" в заголовке ответа бэкенда | |
4794 не скрывались при кэшировании, если не использовались директивы | |
4795 proxy_hide_header/fastcgi_hide_header с любыми параметрами. | |
4796 | |
4797 *) Исправление: модуль ngx_http_image_filter_module не понимал формат | |
4798 GIF87a. | |
4799 Спасибо Денису Ильиных. | |
4800 | |
4801 *) Исправление: nginx не собирался на Solaris 10 и более ранних; ошибка | |
4802 появилась в 0.7.56. | |
4803 | |
4804 | |
4805 Изменения в nginx 0.8.0 02.06.2009 | |
4806 | |
4807 *) Добавление: директива keepalive_requests. | |
4808 | |
4809 *) Добавление: директива limit_rate_after. | |
4810 Спасибо Ivan Debnar. | |
4811 | |
4812 *) Исправление: XSLT-фильтр не работал в подзапросах. | |
4813 | |
4814 *) Исправление: обработке относительных путей в nginx/Windows. | |
4815 | |
4816 *) Исправление: в proxy_store, fastcgi_store, proxy_cache и | |
4817 fastcgi_cache в nginx/Windows. | |
4818 | |
4819 *) Исправление: в обработке ошибок выделения памяти. | |
4820 Спасибо Максиму Дунину и Кириллу Коринскому. | |
4821 | |
4822 | |
4823 Изменения в nginx 0.7.59 25.05.2009 | |
4824 | |
4825 *) Добавление: директивы proxy_cache_methods и fastcgi_cache_methods. | |
4826 | |
4827 *) Исправление: утечки сокетов; ошибка появилась в 0.7.25. | |
4828 Спасибо Максиму Дунину. | |
4829 | |
4830 *) Исправление: при использовании переменной $request_body в рабочем | |
4831 процессе происходил segmentation fault, если в запросе не было тела; | |
4832 ошибка появилась в 0.7.58. | |
4833 | |
4834 *) Исправление: SSL-модули могли не собираться на Solaris и Linux; | |
4835 ошибка появилась в 0.7.56. | |
4836 | |
4837 *) Исправление: ответы модуля ngx_http_xslt_filter_module не | |
4838 обрабатывались SSI-, charset- и gzip-фильтрами. | |
4839 | |
4840 *) Исправление: директива charset не ставила кодировку для ответов | |
4841 модуля ngx_http_gzip_static_module. | |
4842 | |
4843 | |
4844 Изменения в nginx 0.7.58 18.05.2009 | |
4845 | |
4846 *) Добавление: директива listen почтового прокси-сервера поддерживает | |
4847 IPv6. | |
4848 | |
4849 *) Добавление: директива image_filter_jpeg_quality. | |
4850 | |
4851 *) Добавление: директива client_body_in_single_buffer. | |
4852 | |
4853 *) Добавление: переменная $request_body. | |
4854 | |
4855 *) Исправление: в модуле ngx_http_autoindex_module в ссылках на имена | |
4856 файлов, содержащих символ ":". | |
4857 | |
4858 *) Исправление: процедура "make upgrade" не работала; ошибка появилась в | |
4859 0.7.53. | |
4860 Спасибо Денису Латыпову. | |
4861 | |
4862 | |
4863 Изменения в nginx 0.7.57 12.05.2009 | |
4864 | |
4865 *) Исправление: при перенаправлении ошибок модуля | |
4866 ngx_http_image_filter_module в именованный location в рабочем | |
4867 процессе происходил floating-point fault; ошибка появилась в 0.7.56. | |
4868 | |
4869 | |
4870 Изменения в nginx 0.7.56 11.05.2009 | |
4871 | |
4872 *) Добавление: nginx/Windows поддерживает IPv6 в директиве listen модуля | |
4873 HTTP. | |
4874 | |
4875 *) Исправление: в модуле ngx_http_image_filter_module. | |
4876 | |
4877 | |
4878 Изменения в nginx 0.7.55 06.05.2009 | |
4879 | |
4880 *) Исправление: параметры http_XXX в директивах proxy_cache_use_stale и | |
4881 fastcgi_cache_use_stale не работали. | |
4882 | |
4883 *) Исправление: fastcgi кэш не кэшировал ответы, состоящие только из | |
4884 заголовка. | |
4885 | |
4886 *) Исправление: ошибки "select() failed (9: Bad file descriptor)" в | |
4887 nginx/Unix и "select() failed (10038: ...)" в nginx/Windows. | |
4888 | |
4889 *) Исправление: при использовании директивы debug_connection в рабочем | |
4890 процессе мог произойти segmentation fault; ошибка появилась в 0.7.54. | |
4891 | |
4892 *) Исправление: в сборке модуля ngx_http_image_filter_module. | |
4893 | |
4894 *) Исправление: файлы больше 2G не передавались с использованием | |
4895 $r->sendfile. | |
4896 Спасибо Максиму Дунину. | |
4897 | |
4898 | |
4899 Изменения в nginx 0.7.54 01.05.2009 | |
4900 | |
4901 *) Добавление: модуль ngx_http_image_filter_module. | |
4902 | |
4903 *) Добавление: директивы proxy_ignore_headers и fastcgi_ignore_headers. | |
4904 | |
4905 *) Исправление: при использовании переменных "open_file_cache_errors on" | |
4906 в рабочем процессе мог произойти segmentation fault; ошибка появилась | |
4907 в 0.7.53. | |
4908 | |
4909 *) Исправление: директива "port_in_redirect off" не работала; ошибка | |
4910 появилась в 0.7.39. | |
4911 | |
4912 *) Исправление: улучшение обработки ошибок метода select. | |
4913 | |
4914 *) Исправление: ошибки "select() failed (10022: ...)" в nginx/Windows. | |
4915 | |
4916 *) Исправление: в текстовых сообщениях об ошибках в nginx/Windows; | |
4917 ошибка появилась в 0.7.53. | |
4918 | |
4919 | |
4920 Изменения в nginx 0.7.53 27.04.2009 | |
4921 | |
4922 *) Изменение: теперь лог, указанный в --error-log-path, создаётся с | |
4923 самого начала работы. | |
4924 | |
4925 *) Добавление: теперь ошибки и предупреждения при старте записываются в | |
4926 error_log и выводятся на stderr. | |
4927 | |
4928 *) Добавление: при сборке с пустым параметром --prefix= nginx использует | |
4929 как префикс каталог, в котором он был запущен. | |
4930 | |
4931 *) Добавление: ключ -p. | |
4932 | |
4933 *) Добавление: ключ -s на Unix-платформах. | |
4934 | |
4935 *) Добавление: ключи -? и -h. | |
4936 Спасибо Jerome Loyet. | |
4937 | |
4938 *) Добавление: теперь ключи можно задавать в сжатой форме. | |
4939 | |
4940 *) Исправление: nginx/Windows не работал, если файл конфигурации был | |
4941 задан ключом -c. | |
4942 | |
4943 *) Исправление: при использовании директив proxy_store, fastcgi_store, | |
4944 proxy_cache или fastcgi_cache временные файлы могли не удаляться. | |
4945 Спасибо Максиму Дунину. | |
4946 | |
4947 *) Исправление: в заголовке Auth-Method запроса серверу аутентификации | |
4948 почтового прокси-сервера передавалось неверное значение; ошибка | |
4949 появилась в 0.7.34. | |
4950 Спасибо Simon Lecaille. | |
4951 | |
4952 *) Исправление: при логгировании на Linux не писались текстовые описания | |
4953 системных ошибок; ошибка появилась в 0.7.45. | |
4954 | |
4955 *) Исправление: директива fastcgi_cache_min_uses не работала. | |
4956 Спасибо Андрею Воробьёву. | |
4957 | |
4958 | |
4959 Изменения в nginx 0.7.52 20.04.2009 | |
4960 | |
4961 *) Добавление: первая бинарная версия под Windows. | |
4962 | |
4963 *) Исправление: корректная обработка метода HEAD при кэшировании. | |
4964 | |
4965 *) Исправление: корректная обработка строк "If-Modified-Since", | |
4966 "If-Range" и им подобных в заголовке запроса клиента при кэшировании. | |
4967 | |
4968 *) Исправление: теперь строки "Set-Cookie" и "P3P" скрываются в | |
4969 заголовке ответа для закэшированных ответов. | |
4970 | |
4971 *) Исправление: если nginx был собран с модулем ngx_http_perl_module и | |
4972 perl поддерживал потоки, то при выходе основного процесса могла | |
4973 выдаваться ошибка "panic: MUTEX_LOCK". | |
4974 | |
4975 *) Исправление: nginx не собирался с параметром --without-http-cache; | |
4976 ошибка появилась в 0.7.48. | |
4977 | |
4978 *) Исправление: nginx не собирался на платформах, отличных от i386, | |
4979 amd64, sparc и ppc; ошибка появилась в 0.7.42. | |
4980 | |
4981 | |
4982 Изменения в nginx 0.7.51 12.04.2009 | |
4983 | |
4984 *) Добавление: директива try_files поддерживает код ответа в последнем | |
4985 параметре. | |
4986 | |
4987 *) Добавление: теперь в директиве return можно использовать любой код | |
4988 ответа. | |
4989 | |
4990 *) Исправление: директива error_page делала внешний редирект без строки | |
4991 запроса; ошибка появилась в 0.7.44. | |
4992 | |
4993 *) Исправление: если сервера слушали на нескольких явно описанных | |
4994 адресах, то виртуальные сервера могли не работать; ошибка появилась в | |
4995 0.7.39. | |
4996 | |
4997 | |
4998 Изменения в nginx 0.7.50 06.04.2009 | |
4999 | |
5000 *) Исправление: переменные $arg_... не работали; ошибка появилась в | |
5001 0.7.49. | |
5002 | |
5003 | |
5004 Изменения в nginx 0.7.49 06.04.2009 | |
5005 | |
5006 *) Исправление: при использовании переменных $arg_... в рабочем процессе | |
5007 мог произойти segmentation fault; ошибка появилась в 0.7.48. | |
5008 | |
5009 | |
5010 Изменения в nginx 0.7.48 06.04.2009 | |
5011 | |
5012 *) Добавление: директива proxy_cache_key. | |
5013 | |
5014 *) Исправление: теперь nginx учитывает при кэшировании строки | |
5015 "X-Accel-Expires", "Expires" и "Cache-Control" в заголовке ответа | |
5016 бэкенда. | |
5017 | |
5018 *) Исправление: теперь nginx кэширует только ответы на запросы GET. | |
5019 | |
5020 *) Исправление: директива fastcgi_cache_key не наследовалась. | |
5021 | |
5022 *) Исправление: переменные $arg_... не работали с SSI-подзапросами. | |
5023 Спасибо Максиму Дунину. | |
5024 | |
5025 *) Исправление: nginx не собирался с библиотекой uclibc. | |
5026 Спасибо Timothy Redaelli. | |
5027 | |
5028 *) Исправление: nginx не собирался на OpenBSD; ошибка появилась | |
5029 в 0.7.46. | |
5030 | |
5031 | |
5032 Изменения в nginx 0.7.47 01.04.2009 | |
5033 | |
5034 *) Исправление: nginx не собирался на FreeBSD 6 и более ранних версиях; | |
5035 ошибка появилась в 0.7.46. | |
5036 | |
5037 *) Исправление: nginx не собирался на MacOSX; ошибка появилась в 0.7.46. | |
5038 | |
5039 *) Исправление: если использовался параметр max_size, то cache manager | |
5040 мог удалить весь кэш; ошибка появилась в 0.7.46. | |
5041 | |
5042 *) Изменение: в рабочем процессе мог произойти segmentation fault, если | |
5043 директивы proxy_cache/fastcgi_cache и proxy_cache_valid/ | |
5044 fastcgi_cache_valid не были заданы на одном уровне; ошибка появилась | |
5045 в 0.7.46. | |
5046 | |
5047 *) Исправление: в рабочем процессе мог произойти segmentation fault при | |
5048 перенаправлении запроса проксированному или FastCGI-серверу с помощью | |
5049 error_page или try_files; ошибка появилась в 0.7.44. | |
5050 | |
5051 | |
5052 Изменения в nginx 0.7.46 30.03.2009 | |
5053 | |
5054 *) Исправление: архив предыдущего релиза был неверным. | |
5055 | |
5056 | |
5057 Изменения в nginx 0.7.45 30.03.2009 | |
5058 | |
5059 *) Изменение: теперь директивы proxy_cache и proxy_cache_valid можно | |
5060 задавать на разных уровнях. | |
5061 | |
5062 *) Изменение: параметр clean_time в директиве proxy_cache_path удалён. | |
5063 | |
5064 *) Добавление: параметр max_size в директиве proxy_cache_path. | |
5065 | |
5066 *) Добавление: предварительная поддержка кэширования в модуле | |
5067 ngx_http_fastcgi_module. | |
5068 | |
5069 *) Добавление: теперь при ошибках выделения в разделяемой памяти в логе | |
5070 указываются названия директивы и зоны. | |
5071 | |
5072 *) Исправление: директива "add_header last-modified ''" не удаляла в | |
5073 заголовке ответа строку "Last-Modified"; ошибка появилась в 0.7.44. | |
5074 | |
5075 *) Исправление: в директиве auth_basic_user_file не работал | |
5076 относительный путь, заданный строкой без переменных; ошибка появилась | |
5077 в 0.7.44. | |
5078 Спасибо Jerome Loyet. | |
5079 | |
5080 *) Исправление: в директиве alias, заданной переменными без ссылок на | |
5081 выделения в регулярных выражениях; ошибка появилась в 0.7.42. | |
5082 | |
5083 | |
5084 Изменения в nginx 0.7.44 23.03.2009 | |
5085 | |
5086 *) Добавление: предварительная поддержка кэширования в модуле | |
5087 ngx_http_proxy_module. | |
5088 | |
5089 *) Добавление: параметр --with-pcre в configure. | |
5090 | |
5091 *) Добавление: теперь директива try_files может быть использована на | |
5092 уровне server. | |
5093 | |
5094 *) Исправление: директива try_files неправильно обрабатывала строку | |
5095 запроса в последнем параметре. | |
5096 | |
5097 *) Исправление: директива try_files могла неверно тестировать каталоги. | |
5098 | |
5099 *) Исправление: если для пары адрес:порт описан только один сервер, то | |
5100 выделения в регулярных выражениях в директиве server_name не | |
5101 работали. | |
5102 | |
5103 | |
5104 Изменения в nginx 0.7.43 18.03.2009 | |
5105 | |
5106 *) Исправление: запрос обрабатывался неверно, если директива root | |
5107 использовала переменные; ошибка появилась в 0.7.42. | |
5108 | |
5109 *) Исправление: если сервер слушал на адресах типа "*", то значение | |
5110 переменной $server_addr было "0.0.0.0"; ошибка появилась в 0.7.36. | |
5111 | |
5112 | |
5113 Изменения в nginx 0.7.42 16.03.2009 | |
5114 | |
5115 *) Изменение: ошибка "Invalid argument", возвращаемая | |
5116 setsockopt(TCP_NODELAY) на Solaris, теперь игнорируется. | |
5117 | |
5118 *) Изменение: при отсутствии файла, указанного в директиве | |
5119 auth_basic_user_file, теперь возвращается ошибка 403 вместо 500. | |
5120 | |
5121 *) Добавление: директива auth_basic_user_file поддерживает переменные. | |
5122 Спасибо Кириллу Коринскому. | |
5123 | |
5124 *) Добавление: директива listen поддерживает параметр ipv6only. | |
5125 Спасибо Zhang Hua. | |
5126 | |
5127 *) Исправление: в директиве alias со ссылками на выделения в регулярных | |
5128 выражениях; ошибка появилась в 0.7.40. | |
5129 | |
5130 *) Исправление: совместимость с Tru64 UNIX. | |
5131 Спасибо Dustin Marquess. | |
5132 | |
5133 *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась | |
5134 в 0.7.41. | |
5135 | |
5136 | |
5137 Изменения в nginx 0.7.41 11.03.2009 | |
5138 | |
5139 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
5140 если в server_name или location были выделения в регулярных | |
5141 выражениях; ошибка появилась в 0.7.40. | |
5142 Спасибо Владимиру Сопоту. | |
5143 | |
5144 | |
5145 Изменения в nginx 0.7.40 09.03.2009 | |
5146 | |
5147 *) Добавление: директива location поддерживает выделения в регулярных | |
5148 выражениях. | |
5149 | |
5150 *) Добавление: директиву alias с ссылками на выделения в регулярных | |
5151 выражениях можно использовать внутри location'а, заданного регулярным | |
5152 выражением с выделениями. | |
5153 | |
5154 *) Добавление: директива server_name поддерживает выделения в регулярных | |
5155 выражениях. | |
5156 | |
5157 *) Изменение: модуль ngx_http_autoindex_module не показывал последний | |
5158 слэш для каталогов на файловой системе XFS; ошибка появилась в | |
5159 0.7.15. | |
5160 Спасибо Дмитрию Кузьменко. | |
5161 | |
5162 | |
5163 Изменения в nginx 0.7.39 02.03.2009 | |
5164 | |
5165 *) Исправление: при включённом сжатии большие ответы с использованием | |
5166 SSI могли зависать; ошибка появилась в 0.7.28. | |
5167 Спасибо Артёму Бохану. | |
5168 | |
5169 *) Исправление: при использовании коротких статических вариантов в | |
5170 директиве try_files в рабочем процессе мог произойти segmentation | |
5171 fault. | |
5172 | |
5173 | |
5174 Изменения в nginx 0.7.38 23.02.2009 | |
5175 | |
5176 *) Добавление: логгирование ошибок аутентификации. | |
5177 | |
5178 *) Исправление: имя/пароль, заданные в auth_basic_user_file, | |
5179 игнорировались после нечётного числа пустых строк. | |
5180 Спасибо Александру Загребину. | |
5181 | |
5182 *) Исправление: при использовании длинного пути в unix domain сокете в | |
5183 главном процессе происходил segmentation fault; ошибка появилась в | |
5184 0.7.36. | |
5185 | |
5186 | |
5187 Изменения в nginx 0.7.37 21.02.2009 | |
5188 | |
5189 *) Исправление: директивы, использующие upstream'ы, не работали; ошибка | |
5190 появилась в 0.7.36. | |
5191 | |
5192 | |
5193 Изменения в nginx 0.7.36 21.02.2009 | |
5194 | |
5195 *) Добавление: предварительная поддержка IPv6; директива listen модуля | |
5196 HTTP поддерживает IPv6. | |
5197 | |
5198 *) Исправление: переменная $ancient_browser не работала для браузеров, | |
5199 заданных директивами modern_browser. | |
5200 | |
5201 | |
5202 Изменения в nginx 0.7.35 16.02.2009 | |
5203 | |
5204 *) Исправление: директива ssl_engine не использовала SSL-акселератор для | |
5205 асимметричных шифров. | |
5206 Спасибо Marcin Gozdalik. | |
5207 | |
5208 *) Исправление: директива try_files выставляла MIME-type, исходя из | |
5209 расширения первоначального запроса. | |
5210 | |
5211 *) Исправление: в директивах server_name, valid_referers и map | |
5212 неправильно обрабатывались имена вида "*domain.tld", если | |
5213 использовались маски вида ".domain.tld" и ".subdomain.domain.tld"; | |
5214 ошибка появилась в 0.7.9. | |
5215 | |
5216 | |
5217 Изменения в nginx 0.7.34 10.02.2009 | |
5218 | |
5219 *) Добавление: параметр off в директиве if_modified_since. | |
5220 | |
5221 *) Добавление: теперь после команды XCLIENT nginx посылает команду | |
5222 HELO/EHLO. | |
5223 Спасибо Максиму Дунину. | |
5224 | |
5225 *) Добавление: поддержка Microsoft-специфичного режима | |
5226 "AUTH LOGIN with User Name" в почтовом прокси-сервере. | |
5227 Спасибо Максиму Дунину. | |
5228 | |
5229 *) Исправление: в директиве rewrite, возвращающей редирект, старые | |
5230 аргументы присоединялись к новым через символ "?" вместо "&"; | |
5231 ошибка появилась в 0.1.18. | |
5232 Спасибо Максиму Дунину. | |
5233 | |
5234 *) Исправление: nginx не собирался на AIX. | |
5235 | |
5236 | |
5237 Изменения в nginx 0.7.33 02.02.2009 | |
5238 | |
5239 *) Исправление: если на запрос с телом возвращался редирект, то ответ | |
5240 мог быть двойным при использовании методов epoll или rtsig. | |
5241 Спасибо Eden Li. | |
5242 | |
5243 *) Исправление: для некоторых типов редиректов в переменной | |
5244 $sent_http_location было пустое значение. | |
5245 | |
5246 *) Исправление: при использовании директивы resolver в SMTP | |
5247 прокси-сервере в рабочем процессе мог произойти segmentation fault. | |
5248 | |
5249 | |
5250 Изменения в nginx 0.7.32 26.01.2009 | |
5251 | |
5252 *) Добавление: теперь в директиве try_files можно явно указать проверку | |
5253 каталога. | |
5254 | |
5255 *) Исправление: fastcgi_store не всегда сохранял файлы. | |
5256 | |
5257 *) Исправление: в гео-диапазонах. | |
5258 | |
5259 *) Исправление: ошибки выделения больших блоков в разделяемой памяти, | |
5260 если nginx был собран без отладки. | |
5261 Спасибо Андрею Квасову. | |
5262 | |
5263 | |
5264 Изменения в nginx 0.7.31 19.01.2009 | |
5265 | |
5266 *) Изменение: теперь директива try_files проверяет только файлы, | |
5267 игнорируя каталоги. | |
5268 | |
5269 *) Добавление: директива fastcgi_split_path_info. | |
5270 | |
5271 *) Исправления в поддержке строки "Expect" в заголовке запроса. | |
5272 | |
5273 *) Исправления в гео-диапазонах. | |
5274 | |
5275 *) Исправление: при отсутствии ответа ngx_http_memcached_module | |
5276 возвращал в теле ответа строку "END" вместо 404-ой страницы по | |
5277 умолчанию; ошибка появилась в 0.7.18. | |
5278 Спасибо Максиму Дунину. | |
5279 | |
5280 *) Исправление: при проксировании SMTP nginx выдавал сообщение | |
5281 "250 2.0.0 OK" вместо "235 2.0.0 OK"; ошибка появилась в 0.7.22. | |
5282 Спасибо Максиму Дунину. | |
5283 | |
5284 | |
5285 Изменения в nginx 0.7.30 24.12.2008 | |
5286 | |
5287 *) Исправление: в рабочем процессе происходил segmentation fault, если в | |
5288 директивах fastcgi_pass или proxy_pass использовались переменные и | |
5289 имя хоста должно было резолвиться; ошибка появилась в 0.7.29. | |
5290 | |
5291 | |
5292 Изменения в nginx 0.7.29 24.12.2008 | |
5293 | |
5294 *) Исправление: директивы fastcgi_pass и proxy_pass не поддерживали | |
5295 переменные при использовании unix domain сокетов. | |
5296 | |
5297 *) Исправления в обработке подзапросов; ошибки появились в 0.7.25. | |
5298 | |
5299 *) Исправление: ответ "100 Continue" выдавался для запросов версии | |
5300 HTTP/1.0; | |
5301 Спасибо Максиму Дунину. | |
5302 | |
5303 *) Исправление: в выделении памяти в модуле ngx_http_gzip_filter_module | |
5304 под Cygwin. | |
5305 | |
5306 | |
5307 Изменения в nginx 0.7.28 22.12.2008 | |
5308 | |
5309 *) Изменение: в выделении памяти в модуле ngx_http_gzip_filter_module. | |
5310 | |
5311 *) Изменение: значения по умолчанию для директивы gzip_buffers изменены | |
5312 с 4 4k/8k на 32 4k или 16 8k. | |
5313 | |
5314 | |
5315 Изменения в nginx 0.7.27 15.12.2008 | |
5316 | |
5317 *) Добавление: директива try_files. | |
5318 | |
5319 *) Добавление: директива fastcgi_pass поддерживает переменные. | |
5320 | |
5321 *) Добавление: теперь директива geo может брать адрес из переменной. | |
5322 Спасибо Андрею Нигматулину. | |
5323 | |
5324 *) Добавление: теперь модификатор location'а можно указывать без пробела | |
5325 перед названием. | |
5326 | |
5327 *) Добавление: переменная $upstream_response_length. | |
5328 | |
5329 *) Исправление: теперь директива add_header не добавляет пустое | |
5330 значение. | |
5331 | |
5332 *) Исправление: при запросе файла нулевой длины nginx закрывал | |
5333 соединение, ничего не передав; ошибка появилась в 0.7.25. | |
5334 | |
5335 *) Исправление: метод MOVE не мог перемещать файл в несуществующий | |
5336 каталог. | |
5337 | |
5338 *) Исправление: если в сервере не был описан ни один именованный | |
5339 location, но такой location использовался в директиве error_page, то | |
5340 в рабочем процессе происходил segmentation fault. | |
5341 Спасибо Сергею Боченкову. | |
5342 | |
5343 | |
5344 Изменения в nginx 0.7.26 08.12.2008 | |
5345 | |
5346 *) Исправление: в обработке подзапросов; ошибка появилась в 0.7.25. | |
5347 | |
5348 | |
5349 Изменения в nginx 0.7.25 08.12.2008 | |
5350 | |
5351 *) Изменение: в обработке подзапросов. | |
5352 | |
5353 *) Изменение: теперь разрешаются POST'ы без строки "Content-Length" в | |
5354 заголовке запроса. | |
5355 | |
5356 *) Исправление: теперь директивы limit_req и limit_conn указывают | |
5357 причину запрета запроса. | |
5358 | |
5359 *) Исправление: в параметре delete директивы geo. | |
5360 | |
5361 | |
5362 Изменения в nginx 0.7.24 01.12.2008 | |
5363 | |
5364 *) Добавление: директива if_modified_since. | |
5365 | |
5366 *) Исправление: nginx не обрабатывал ответ FastCGI-сервера, если перед | |
5367 ответом сервер передавал много сообщений в stderr. | |
5368 | |
5369 *) Исправление: переменные "$cookie_..." не работали в SSI and в | |
5370 перловом модуле. | |
5371 | |
5372 | |
5373 Изменения в nginx 0.7.23 27.11.2008 | |
5374 | |
5375 *) Добавление: параметры delete и ranges в директиве geo. | |
5376 | |
5377 *) Добавление: ускорение загрузки geo-базы с большим числом значений. | |
5378 | |
5379 *) Добавление: уменьшение памяти, необходимой для загрузки geo-базы. | |
5380 | |
5381 | |
5382 Изменения в nginx 0.7.22 20.11.2008 | |
5383 | |
5384 *) Добавление: параметр none в директиве smtp_auth. | |
5385 Спасибо Максиму Дунину. | |
5386 | |
5387 *) Добавление: переменные "$cookie_...". | |
5388 | |
5389 *) Исправление: директива directio не работала с файловой системой XFS. | |
5390 | |
5391 *) Исправление: resolver не понимал большие DNS-ответы. | |
5392 Спасибо Zyb. | |
5393 | |
5394 | |
5395 Изменения в nginx 0.7.21 11.11.2008 | |
5396 | |
5397 *) Изменения в модуле ngx_http_limit_req_module. | |
5398 | |
5399 *) Добавление: поддержка EXSLT в модуле ngx_http_xslt_module. | |
5400 Спасибо Денису Латыпову. | |
5401 | |
5402 *) Изменение: совместимость с glibc 2.3. | |
5403 Спасибо Eric Benson и Максиму Дунину. | |
5404 | |
5405 *) Исправление: nginx не запускался на MacOSX 10.4 и более ранних; | |
5406 ошибка появилась в 0.7.6. | |
5407 | |
5408 | |
5409 Изменения в nginx 0.7.20 10.11.2008 | |
5410 | |
5411 *) Изменения в модуле ngx_http_gzip_filter_module. | |
5412 | |
5413 *) Добавление: модуль ngx_http_limit_req_module. | |
5414 | |
5415 *) Исправление: на платформах sparc и ppc рабочие процессы могли | |
5416 выходить по сигналу SIGBUS; ошибка появилась в 0.7.3. | |
5417 Спасибо Максиму Дунину. | |
5418 | |
5419 *) Исправление: директивы вида "proxy_pass http://host/some:uri" не | |
5420 работали; ошибка появилась в 0.7.12. | |
5421 | |
5422 *) Исправление: при использовании HTTPS запросы могли завершаться с | |
5423 ошибкой "bad write retry". | |
5424 | |
5425 *) Исправление: модуль ngx_http_secure_link_module не работал внутри | |
5426 location'ов с именами меньше 3 символов. | |
5427 | |
5428 *) Исправление: переменная $server_addr могла не иметь значения. | |
5429 | |
5430 | |
5431 Изменения в nginx 0.7.19 13.10.2008 | |
5432 | |
5433 *) Исправление: обновление номера версии. | |
5434 | |
5435 | |
5436 Изменения в nginx 0.7.18 13.10.2008 | |
5437 | |
5438 *) Изменение: директива underscores_in_headers; теперь nginx по | |
5439 умолчанию не разрешает подчёркивания в именах строк в заголовке | |
5440 запроса клиента. | |
5441 | |
5442 *) Добавление: модуль ngx_http_secure_link_module. | |
5443 | |
5444 *) Добавление: директива real_ip_header поддерживает любой заголовок. | |
5445 | |
5446 *) Добавление: директива log_subrequest. | |
5447 | |
5448 *) Добавление: переменная $realpath_root. | |
5449 | |
5450 *) Добавление: параметры http_502 и http_504 в директиве | |
5451 proxy_next_upstream. | |
5452 | |
5453 *) Исправление: параметр http_503 в директивах proxy_next_upstream или | |
5454 fastcgi_next_upstream не работал. | |
5455 | |
5456 *) Исправление: nginx мог выдавать строку "Transfer-Encoding: chunked" | |
5457 для запросов HEAD. | |
5458 | |
5459 *) Исправление: теперь accept-лимит зависит от числа worker_connections. | |
5460 | |
5461 | |
5462 Изменения в nginx 0.7.17 15.09.2008 | |
5463 | |
5464 *) Добавление: директива directio теперь работает на Linux. | |
5465 | |
5466 *) Добавление: переменная $pid. | |
5467 | |
5468 *) Исправление: оптимизация directio, появившаяся в 0.7.15, не работала | |
5469 при использовании open_file_cache. | |
5470 | |
5471 *) Исправление: access_log с переменными не работал на Linux; ошибка | |
5472 появилась в 0.7.7. | |
5473 | |
5474 *) Исправление: модуль ngx_http_charset_module не понимал название | |
5475 кодировки в кавычках, полученное от бэкенда. | |
5476 | |
5477 | |
5478 Изменения в nginx 0.7.16 08.09.2008 | |
5479 | |
5480 *) Исправление: nginx не собирался на 64-битных платформах; ошибка | |
5481 появилась в 0.7.15. | |
5482 | |
5483 | |
5484 Изменения в nginx 0.7.15 08.09.2008 | |
5485 | |
5486 *) Добавление: модуль ngx_http_random_index_module. | |
5487 | |
5488 *) Добавление: директива directio оптимизирована для запросов файлов, | |
5489 начинающихся с произвольной позиции. | |
5490 | |
5491 *) Добавление: директива directio при необходимости запрещает | |
5492 использование sendfile. | |
5493 | |
5494 *) Добавление: теперь nginx разрешает подчёркивания в именах строк в | |
5495 заголовке запроса клиента. | |
5496 | |
5497 | |
5498 Изменения в nginx 0.7.14 01.09.2008 | |
5499 | |
5500 *) Изменение: теперь директивы ssl_certificate и ssl_certificate_key не | |
5501 имеют значений по умолчанию. | |
5502 | |
5503 *) Добавление: директива listen поддерживает параметр ssl. | |
5504 | |
5505 *) Добавление: теперь при переконфигурации nginx учитывает изменение | |
5506 временной зоны на FreeBSD и Linux. | |
5507 | |
5508 *) Исправление: параметры директивы listen, такие как backlog, rcvbuf и | |
5509 прочие, не устанавливались, если сервером по умолчанию был не первый | |
5510 сервер. | |
5511 | |
5512 *) Исправление: при использовании в качестве аргументов части URI, | |
5513 выделенного с помощью директивы rewrite, эти аргументы не | |
5514 экранировались. | |
5515 | |
5516 *) Исправление: улучшения тестирования правильности конфигурационного | |
5517 файла. | |
5518 | |
5519 | |
5520 Изменения в nginx 0.7.13 26.08.2008 | |
5521 | |
5522 *) Исправление: nginx не собирался на Linux и Solaris; ошибка появилась | |
5523 в 0.7.12. | |
5524 | |
5525 | |
5526 Изменения в nginx 0.7.12 26.08.2008 | |
5527 | |
5528 *) Добавление: директива server_name поддерживает пустое имя "". | |
5529 | |
5530 *) Добавление: директива gzip_disable поддерживает специальную маску | |
5531 msie6. | |
5532 | |
5533 *) Исправление: при использовании параметра max_fails=0 в upstream'е с | |
5534 несколькими серверами рабочий процесс выходил по сигналу SIGFPE. | |
5535 Спасибо Максиму Дунину. | |
5536 | |
5537 *) Исправление: при перенаправлении запроса с помощью директивы | |
5538 error_page терялось тело запроса. | |
5539 | |
5540 *) Исправление: при перенаправлении запроса с методом HEAD с помощью | |
5541 директивы error_page возвращался полный ответ. | |
5542 | |
5543 *) Исправление: метод $r->header_in() не возвращал значения строк | |
5544 "Host", "User-Agent", и "Connection" из заголовка запроса; ошибка | |
5545 появилась в 0.7.0. | |
5546 | |
5547 | |
5548 Изменения в nginx 0.7.11 18.08.2008 | |
5549 | |
5550 *) Изменение: теперь ngx_http_charset_module по умолчанию не работает | |
5551 MIME-типом text/css. | |
5552 | |
5553 *) Добавление: теперь nginx возвращает код 405 для метода POST при | |
5554 запросе статического файла, только если файл существует. | |
5555 | |
5556 *) Добавление: директива proxy_ssl_session_reuse. | |
5557 | |
5558 *) Исправление: после перенаправления запроса с помощью | |
5559 "X-Accel-Redirect" директива proxy_pass без URI могла использовать | |
5560 оригинальный запрос. | |
5561 | |
5562 *) Исправление: если у каталога были права доступа только на поиск | |
5563 файлов и первый индексный файл отсутствовал, то nginx возвращал | |
5564 ошибку 500. | |
5565 | |
5566 *) Исправление: ошибок во вложенных location'ах; ошибки появились в | |
5567 0.7.1. | |
5568 | |
5569 | |
5570 Изменения в nginx 0.7.10 13.08.2008 | |
5571 | |
5572 *) Исправление: ошибок в директивах addition_types, charset_types, | |
5573 gzip_types, ssi_types, sub_filter_types и xslt_types; ошибки | |
5574 появились в 0.7.9. | |
5575 | |
5576 *) Исправление: рекурсивной error_page для 500 ошибки. | |
5577 | |
5578 *) Исправление: теперь модуль ngx_http_realip_module устанавливает адрес | |
5579 не для всего keepalive соединения, а для каждого запроса по этому | |
5580 соединению. | |
5581 | |
5582 | |
5583 Изменения в nginx 0.7.9 12.08.2008 | |
5584 | |
5585 *) Изменение: теперь ngx_http_charset_module по умолчанию работает со | |
5586 следующими MIME-типами: text/html, text/css, text/xml, text/plain, | |
5587 text/vnd.wap.wml, application/x-javascript и application/rss+xml. | |
5588 | |
5589 *) Добавление: директивы charset_types и addition_types. | |
5590 | |
5591 *) Добавление: теперь директивы gzip_types, ssi_types и sub_filter_types | |
5592 используют хэш. | |
5593 | |
5594 *) Добавление: модуль ngx_cpp_test_module. | |
5595 | |
5596 *) Добавление: директива expires поддерживает суточное время. | |
5597 | |
5598 *) Добавление: улучшения и исправления в модуле ngx_http_xslt_module. | |
5599 Спасибо Денису Латыпову и Максиму Дунину. | |
5600 | |
5601 *) Исправление: директива log_not_found не работала при поиске индексных | |
5602 файлов. | |
5603 | |
5604 *) Исправление: HTTPS-соединения могли зависнуть, если использовались | |
5605 методы kqueue, epoll, rtsig или eventport; ошибка появилась в 0.7.7. | |
5606 | |
5607 *) Исправление: если в директивах server_name, valid_referers и map | |
5608 использовалась маска вида "*.domain.tld" и при этом полное имя вида | |
5609 "domain.tld" не было описано, то это имя попадало под маску; ошибка | |
5610 появилась в 0.3.18. | |
5611 | |
5612 | |
5613 Изменения в nginx 0.7.8 04.08.2008 | |
5614 | |
5615 *) Добавление: модуль ngx_http_xslt_module. | |
5616 | |
5617 *) Добавление: переменные "$arg_...". | |
5618 | |
5619 *) Добавление: поддержка directio в Solaris. | |
5620 Спасибо Ivan Debnar. | |
5621 | |
5622 *) Исправление: теперь, если FastCGI-сервер присылает строку "Location" | |
5623 в заголовке ответа без строки статуса, то nginx использует код | |
5624 статуса 302. | |
5625 Спасибо Максиму Дунину. | |
5626 | |
5627 | |
5628 Изменения в nginx 0.7.7 30.07.2008 | |
5629 | |
5630 *) Изменение: теперь ошибка EAGAIN при вызове connect() не считается | |
5631 временной. | |
5632 | |
5633 *) Изменение: значением переменной $ssl_client_cert теперь является | |
5634 сертификат, перед каждой строкой которого, кроме первой, вставляется | |
5635 символ табуляции; неизменённый сертификат доступен через переменную | |
5636 $ssl_client_raw_cert. | |
5637 | |
5638 *) Добавление: параметр ask директивы ssl_verify_client. | |
5639 | |
5640 *) Добавление: улучшения в обработке byte-range. | |
5641 Спасибо Максиму Дунину. | |
5642 | |
5643 *) Добавление: директива directio. | |
5644 Спасибо Jiang Hong. | |
5645 | |
5646 *) Добавление: поддержка sendfile() в MacOSX 10.5. | |
5647 | |
5648 *) Исправление: в MacOSX и Cygwin при проверке location'ов теперь | |
5649 делается сравнение без учёта регистра символов; однако, сравнение | |
5650 ограничено только однобайтными locale'ями. | |
5651 | |
5652 *) Исправление: соединения почтового прокси-сервера зависали в режиме | |
5653 SSL, если использовались методы select, poll или /dev/poll. | |
5654 | |
5655 *) Исправление: ошибки при использовании кодировки UTF-8 в | |
5656 ngx_http_autoindex_module. | |
5657 | |
5658 | |
5659 Изменения в nginx 0.7.6 07.07.2008 | |
5660 | |
5661 *) Исправление: теперь при использовании переменных в директиве | |
5662 access_log всегда проверяется существовании root'а для запроса. | |
5663 | |
5664 *) Исправление: модуль ngx_http_flv_module не поддерживал несколько | |
5665 значений в аргументах запроса. | |
5666 | |
5667 | |
5668 Изменения в nginx 0.7.5 01.07.2008 | |
5669 | |
5670 *) Исправления в поддержке переменных в директиве access_log; ошибки | |
5671 появились в 0.7.4. | |
5672 | |
5673 *) Исправление: nginx не собирался с параметром | |
5674 --without-http_gzip_module; ошибка появилась в 0.7.3. | |
5675 Спасибо Кириллу Коринскому. | |
5676 | |
5677 *) Исправление: при совместном использовании sub_filter и SSI ответы | |
5678 могли передаваться неверно. | |
5679 | |
5680 | |
5681 Изменения в nginx 0.7.4 30.06.2008 | |
5682 | |
5683 *) Добавление: директива access_log поддерживает переменные. | |
5684 | |
5685 *) Добавление: директива open_log_file_cache. | |
5686 | |
5687 *) Добавление: ключ -g. | |
5688 | |
5689 *) Добавление: поддержка строки "Expect" в заголовке запроса. | |
5690 | |
5691 *) Исправление: большие включения в SSI могли передавались не полностью. | |
5692 | |
5693 | |
5694 Изменения в nginx 0.7.3 23.06.2008 | |
5695 | |
5696 *) Изменение: MIME-тип для расширения rss изменён на | |
5697 "application/rss+xml". | |
5698 | |
5699 *) Изменение: теперь директива "gzip_vary on" выдаёт строку | |
5700 "Vary: Accept-Encoding" в заголовке ответа и для несжатых ответов. | |
5701 | |
5702 *) Добавление: теперь при использовании протокола "https://" в директиве | |
5703 rewrite автоматически делается редирект. | |
5704 | |
5705 *) Исправление: директива proxy_pass не работала с протоколом HTTPS; | |
5706 ошибка появилась в 0.6.9. | |
5707 | |
5708 | |
5709 Изменения в nginx 0.7.2 16.06.2008 | |
5710 | |
5711 *) Добавление: теперь nginx поддерживает шифры с обменом EDH-ключами. | |
5712 | |
5713 *) Добавление: директива ssl_dhparam. | |
5714 | |
5715 *) Добавление: переменная $ssl_client_cert. | |
5716 Спасибо Manlio Perillo. | |
5717 | |
5718 *) Исправление: после изменения URI с помощью директивы rewrite nginx не | |
5719 искал новый location; ошибка появилась в 0.7.1. | |
5720 Спасибо Максиму Дунину. | |
5721 | |
5722 *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась | |
5723 в 0.7.1. | |
5724 | |
5725 *) Исправление: при редиректе запроса к каталогу с добавлением слэша | |
5726 nginx не добавлял аргументы из оригинального запроса. | |
5727 | |
5728 | |
5729 Изменения в nginx 0.7.1 26.05.2008 | |
5730 | |
5731 *) Изменение: теперь поиск location'а делается с помощью дерева. | |
5732 | |
5733 *) Изменение: директива optimize_server_names упразднена в связи с | |
5734 появлением директивы server_name_in_redirect. | |
5735 | |
5736 *) Изменение: некоторые давно устаревшие директивы больше не | |
5737 поддерживаются. | |
5738 | |
5739 *) Изменение: параметр "none" в директиве ssl_session_cache; теперь этот | |
5740 параметр используется по умолчанию. | |
5741 Спасибо Rob Mueller. | |
5742 | |
5743 *) Исправление: рабочие процессы могли не реагировать на сигналы | |
5744 переконфигурации и ротации логов. | |
5745 | |
5746 *) Исправление: nginx не собирался на последних Fedora 9 Linux. | |
5747 Спасибо Roxis. | |
5748 | |
5749 | |
5750 Изменения в nginx 0.7.0 19.05.2008 | |
5751 | |
5752 *) Изменение: теперь символы 0x00-0x1F, '"' и '\' в access_log | |
5753 записываются в виде \xXX. | |
5754 Спасибо Максиму Дунину. | |
5755 | |
5756 *) Изменение: теперь nginx разрешает несколько строк "Host" в заголовке | |
5757 запроса. | |
5758 | |
5759 *) Добавление: директива expires поддерживает флаг modified. | |
5760 | |
5761 *) Добавление: переменные $uid_got и $uid_set можно использовать на | |
5762 любой стадии обработки запроса. | |
5763 | |
5764 *) Добавление: переменная $hostname. | |
5765 Спасибо Андрею Нигматулину. | |
5766 | |
5767 *) Добавление: поддержка DESTDIR. | |
5768 Спасибо Todd A. Fisher и Andras Voroskoi. | |
5769 | |
5770 *) Исправление: при использовании keepalive на Linux в рабочем процессе | |
5771 мог произойти segmentation fault. | |
5772 | |
5773 | |
5774 Изменения в nginx 0.6.31 12.05.2008 | |
5775 | |
5776 *) Исправление: nginx не обрабатывал ответ FastCGI-сервера, если строка | |
5777 заголовка ответа была в конце записи FastCGI; ошибка появилась в | |
5778 0.6.2. | |
5779 Спасибо Сергею Серову. | |
5780 | |
5781 *) Исправление: при удалении файла и использовании директивы | |
5782 open_file_cache_errors off в рабочем процессе мог произойти | |
5783 segmentation fault. | |
5784 | |
5785 | |
5786 Изменения в nginx 0.6.30 29.04.2008 | |
5787 | |
5788 *) Изменение: теперь, если маске, заданной в директиве include, не | |
5789 соответствует ни один файл, то nginx не выдаёт ошибку. | |
5790 | |
5791 *) Добавление: теперь время в директивах можно задавать без пробела, | |
5792 например, "1h50m". | |
5793 | |
5794 *) Исправление: утечек памяти, если директива ssl_verify_client имела | |
5795 значение on. | |
5796 Спасибо Chavelle Vincent. | |
5797 | |
5798 *) Исправление: директива sub_filter могла вставлять заменяемый текст в | |
5799 вывод. | |
5800 | |
5801 *) Исправление: директива error_page не воспринимала параметры в | |
5802 перенаправляемом URI. | |
5803 | |
5804 *) Исправление: теперь при сборке с Cygwin nginx всегда открывает файлы | |
5805 в бинарном режиме. | |
5806 | |
5807 *) Исправление: nginx не собирался под OpenBSD; ошибка появилась в | |
5808 0.6.15. | |
5809 | |
5810 | |
5811 Изменения в nginx 0.6.29 18.03.2008 | |
5812 | |
5813 *) Добавление: модуль ngx_google_perftools_module. | |
5814 | |
5815 *) Исправление: модуль ngx_http_perl_module не собирался на 64-битных | |
5816 платформах; ошибка появилась в 0.6.27. | |
5817 | |
5818 | |
5819 Изменения в nginx 0.6.28 13.03.2008 | |
5820 | |
5821 *) Исправление: метод rtsig не собирался; ошибка появилась в 0.6.27. | |
5822 | |
5823 | |
5824 Изменения в nginx 0.6.27 12.03.2008 | |
5825 | |
5826 *) Изменение: теперь на Linux 2.6.18+ по умолчанию не собирается метод | |
5827 rtsig. | |
5828 | |
5829 *) Изменение: теперь при перенаправлении запроса в именованный location | |
5830 с помощью директивы error_page метод запроса не изменяется. | |
5831 | |
5832 *) Добавление: директивы resolver и resolver_timeout в SMTP | |
5833 прокси-сервере. | |
5834 | |
5835 *) Добавление: директива post_action поддерживает именованные | |
5836 location'ы. | |
5837 | |
5838 *) Исправление: при перенаправлении запроса из location'а c обработчиком | |
5839 proxy, FastCGI или memcached в именованный location со статическим | |
5840 обработчиком в рабочем процессе происходил segmentation fault. | |
5841 | |
5842 *) Исправление: браузеры не повторяли SSL handshake, если при первом | |
5843 handshake не оказалось правильного клиентского сертификата. | |
5844 Спасибо Александру Инюхину. | |
5845 | |
5846 *) Исправление: при перенаправлении ошибок 495-497 с помощью директивы | |
5847 error_page без изменения кода ошибки nginx пытался выделить очень | |
5848 много памяти. | |
5849 | |
5850 *) Исправление: утечки памяти в долгоживущих небуфферизированных | |
5851 соединениях. | |
5852 | |
5853 *) Исправление: утечки памяти в resolver'е. | |
5854 | |
5855 *) Исправление: при перенаправлении запроса из location'а c обработчиком | |
5856 proxy в другой location с обработчиком proxy в рабочем процессе | |
5857 происходил segmentation fault. | |
5858 | |
5859 *) Исправление: ошибки в кэшировании переменных $proxy_host и | |
5860 $proxy_port. | |
5861 Спасибо Сергею Боченкову. | |
5862 | |
5863 *) Исправление: директива proxy_pass с переменными использовала порт, | |
5864 описанной в другой директиве proxy_pass без переменных, но с таким же | |
5865 именем хоста. | |
5866 Спасибо Сергею Боченкову. | |
5867 | |
5868 *) Исправление: во время переконфигурации на некоторых 64-битном | |
5869 платформах в лог записывался alert "sendmsg() failed (9: Bad file | |
5870 descriptor)". | |
5871 | |
5872 *) Исправление: при повторном использовании в SSI пустого block'а в | |
5873 качестве заглушки в рабочем процессе происходил segmentation fault. | |
5874 | |
5875 *) Исправление: ошибки при копировании части URI, содержащего | |
5876 экранированные символы, в аргументы. | |
5877 | |
5878 | |
5879 Изменения в nginx 0.6.26 11.02.2008 | |
5880 | |
5881 *) Исправление: директивы proxy_store и fastcgi_store не проверяли длину | |
5882 ответа. | |
5883 | |
5884 *) Исправление: при использовании большого значения в директиве expires | |
5885 в рабочем процессе происходил segmentation fault. | |
5886 Спасибо Joaquin Cuenca Abela. | |
5887 | |
5888 *) Исправление: nginx неверно определял длину строки кэша на Pentium 4. | |
5889 Спасибо Геннадию Махомеду. | |
5890 | |
5891 *) Исправление: в проксированных подзапросах и подзапросах к | |
5892 FastCGI-серверу вместо метода GET использовался оригинальный метод | |
5893 клиента. | |
5894 | |
5895 *) Исправление: утечки сокетов в режиме HTTPS при использовании | |
5896 отложенного accept'а. | |
5897 Спасибо Ben Maurer. | |
5898 | |
5899 *) Исправление: nginx выдавал ошибочное сообщение "SSL_shutdown() failed | |
5900 (SSL: )"; ошибка появилась в 0.6.23. | |
5901 | |
5902 *) Исправление: при использовании HTTPS запросы могли завершаться с | |
5903 ошибкой "bad write retry"; ошибка появилась в 0.6.23. | |
5904 | |
5905 | |
5906 Изменения в nginx 0.6.25 08.01.2008 | |
5907 | |
5908 *) Изменение: вместо специального параметра "*" в директиве server_name | |
5909 теперь используется директива server_name_in_redirect. | |
5910 | |
5911 *) Изменение: в качестве основного имени в директиве server_name теперь | |
5912 можно использовать имена с масками и регулярными выражениями. | |
5913 | |
5914 *) Изменение: директива satisfy_any заменена директивой satisfy. | |
5915 | |
5916 *) Изменение: после переконфигурации старые рабочие процесс могли сильно | |
5917 нагружать процессор при запуске под Linux OpenVZ. | |
5918 | |
5919 *) Добавление: директива min_delete_depth. | |
5920 | |
5921 *) Исправление: методы COPY и MOVE не работали с одиночными файлами. | |
5922 | |
5923 *) Исправление: модуль ngx_http_gzip_static_module не позволял работать | |
5924 модулю ngx_http_dav_module; ошибка появилась в 0.6.23. | |
5925 | |
5926 *) Исправление: утечки сокетов в режиме HTTPS при использовании | |
5927 отложенного accept'а. | |
5928 Спасибо Ben Maurer. | |
5929 | |
5930 *) Исправление: nginx не собирался без библиотеки PCRE; ошибка появилась | |
5931 в 0.6.23. | |
5932 | |
5933 | |
5934 Изменения в nginx 0.6.24 27.12.2007 | |
5935 | |
5936 *) Исправление: при использовании HTTPS в рабочем процессе мог произойти | |
5937 segmentation fault; ошибка появилась в 0.6.23. | |
5938 | |
5939 | |
5940 Изменения в nginx 0.6.23 27.12.2007 | |
5941 | |
5942 *) Изменение: параметр "off" в директиве ssl_session_cache; теперь этот | |
5943 параметр используется по умолчанию. | |
5944 | |
5945 *) Изменение: директива open_file_cache_retest переименована в | |
5946 open_file_cache_valid. | |
5947 | |
5948 *) Добавление: директива open_file_cache_min_uses. | |
5949 | |
5950 *) Добавление: модуль ngx_http_gzip_static_module. | |
5951 | |
5952 *) Добавление: директива gzip_disable. | |
5953 | |
5954 *) Добавление: директиву memcached_pass можно использовать внутри блока | |
5955 if. | |
5956 | |
5957 *) Исправление: если внутри одного location'а использовались директивы | |
5958 "memcached_pass" и "if", то в рабочем процессе происходил | |
5959 segmentation fault. | |
5960 | |
5961 *) Исправление: если при использовании директивы satisfy_any on" были | |
5962 заданы директивы не всех модулей доступа, то заданные директивы не | |
5963 проверялись. | |
5964 | |
5965 *) Исправление: параметры, заданные регулярным выражением в директиве | |
5966 valid_referers, не наследовалась с предыдущего уровня. | |
5967 | |
5968 *) Исправление: директива post_action не работала, если запрос | |
5969 завершался с кодом 499. | |
5970 | |
5971 *) Исправление: оптимизация использования 16K буфера для SSL-соединения. | |
5972 Спасибо Ben Maurer. | |
5973 | |
5974 *) Исправление: STARTTLS в режиме SMTP не работал. | |
5975 Спасибо Олегу Мотиенко. | |
5976 | |
5977 *) Исправление: при использовании HTTPS запросы могли завершаться с | |
5978 ошибкой "bad write retry"; ошибка появилась в 0.5.13. | |
5979 | |
5980 | |
5981 Изменения в nginx 0.6.22 19.12.2007 | |
5982 | |
5983 *) Изменение: теперь все методы модуля ngx_http_perl_module возвращают | |
5984 значения, скопированные в память, выделенную perl'ом. | |
5985 | |
5986 *) Исправление: если nginx был собран с модулем ngx_http_perl_module, | |
5987 использовался perl до версии 5.8.6 и perl поддерживал потоки, то во | |
5988 время переконфигурации основной процесс аварийно выходил; ошибка | |
5989 появилась в 0.5.9. | |
5990 Спасибо Борису Жмурову. | |
5991 | |
5992 *) Исправление: в методы модуля ngx_http_perl_module могли передаваться | |
5993 неверные результаты выделения в регулярных выражениях. | |
5994 | |
5995 *) Исправление: если метод $r->has_request_body() вызывался для запроса, | |
5996 у которого небольшое тело запроса было уже полностью получено, то в | |
5997 рабочем процессе происходил segmentation fault. | |
5998 | |
5999 *) Исправление: large_client_header_buffers не освобождались перед | |
6000 переходом в состояние keep-alive. | |
6001 Спасибо Олександру Штепе. | |
6002 | |
6003 *) Исправление: в переменной $upstream_addr не записывался последний | |
6004 адрес; ошибка появилась в 0.6.18. | |
6005 | |
6006 *) Исправление: директива fastcgi_catch_stderr не возвращала ошибку; | |
6007 теперь она возвращает ошибку 502, которую можно направить на | |
6008 следующий сервер с помощью "fastcgi_next_upstream invalid_header". | |
6009 | |
6010 *) Исправление: при использовании директивы fastcgi_catch_stderr в | |
6011 основном процессе происходил segmentation fault; ошибка появилась в | |
6012 0.6.10. | |
6013 Спасибо Manlio Perillo. | |
6014 | |
6015 | |
6016 Изменения в nginx 0.6.21 03.12.2007 | |
6017 | |
6018 *) Изменение: если в значениях переменных директивы proxy_pass | |
6019 используются только IP-адреса, то указывать resolver не нужно. | |
6020 | |
6021 *) Исправление: при использовании директивы proxy_pass c URI-частью в | |
6022 рабочем процессе мог произойти segmentation fault; ошибка появилась в | |
6023 0.6.19. | |
6024 | |
6025 *) Исправление: если resolver использовался на платформах, не | |
6026 поддерживающих метод kqueue, то nginx выдавал alert "name is out of | |
6027 response". | |
6028 Спасибо Андрею Нигматулину. | |
6029 | |
6030 *) Исправление: При использовании переменной $server_protocol в | |
6031 FastCGI-параметрах и запросе, длина которого была близка к значению | |
6032 директивы client_header_buffer_size, nginx выдавал alert "fastcgi: | |
6033 the request record is too big". | |
6034 | |
6035 *) Исправление: при обычном запросе версии HTTP/0.9 к HTTPS серверу | |
6036 nginx возвращал обычный ответ. | |
6037 | |
6038 | |
6039 Изменения в nginx 0.6.20 28.11.2007 | |
6040 | |
6041 *) Исправление: при использовании директивы proxy_pass c URI-частью в | |
6042 рабочем процессе мог произойти segmentation fault; ошибка появилась в | |
6043 0.6.19. | |
6044 | |
6045 | |
6046 Изменения в nginx 0.6.19 27.11.2007 | |
6047 | |
6048 *) Исправление: версия 0.6.18 не собиралась. | |
6049 | |
6050 | |
6051 Изменения в nginx 0.6.18 27.11.2007 | |
6052 | |
6053 *) Изменение: теперь модуль ngx_http_userid_module в поле куки с номером | |
6054 процесса добавляет микросекунды на время старта. | |
6055 | |
6056 *) Изменение: в error_log теперь записывается полная строка запроса | |
6057 вместо только URI. | |
6058 | |
6059 *) Добавление: директива proxy_pass поддерживает переменные. | |
6060 | |
6061 *) Добавление: директивы resolver и resolver_timeout. | |
6062 | |
6063 *) Добавление: теперь директива "add_header last-modified ''" удаляет в | |
6064 заголовке ответа строку "Last-Modified". | |
6065 | |
6066 *) Исправление: директива limit_rate не позволяла передавать на полной | |
6067 скорости, даже если был указан очень большой лимит. | |
6068 | |
6069 | |
6070 Изменения в nginx 0.6.17 15.11.2007 | |
6071 | |
6072 *) Добавление: поддержка строки "If-Range" в заголовке запроса. | |
6073 Спасибо Александру Инюхину. | |
6074 | |
6075 *) Исправление: при использовании директивы msie_refresh повторно | |
6076 экранировались уже экранированные символы; ошибка появилась в 0.6.4. | |
6077 | |
6078 *) Исправление: директива autoindex не работала при использовании "alias | |
6079 /". | |
6080 | |
6081 *) Исправление: при использовании подзапросов в рабочем процессе мог | |
6082 произойти segmentation fault. | |
6083 | |
6084 *) Исправление: при использовании SSL и gzip большие ответы могли | |
6085 передаваться не полностью. | |
6086 | |
6087 *) Исправление: если ответ проксированного сервера был версии HTTP/0.9, | |
6088 то переменная $status была равна 0. | |
6089 | |
6090 | |
6091 Изменения в nginx 0.6.16 29.10.2007 | |
6092 | |
6093 *) Изменение: теперь на Linux используется uname(2) вместо procfs. | |
6094 Спасибо Илье Новикову. | |
6095 | |
6096 *) Исправление: если в директиве error_page использовался символ "?", то | |
6097 он экранировался при проксировании запроса; ошибка появилась в | |
6098 0.6.11. | |
6099 | |
6100 *) Исправление: совместимость с mget. | |
6101 | |
6102 | |
6103 Изменения в nginx 0.6.15 22.10.2007 | |
6104 | |
6105 *) Добавление: совместимость с Cygwin. | |
6106 Спасибо Владимиру Кутакову. | |
6107 | |
6108 *) Добавление: директива merge_slashes. | |
6109 | |
6110 *) Добавление: директива gzip_vary. | |
6111 | |
6112 *) Добавление: директива server_tokens. | |
6113 | |
6114 *) Исправление: nginx не раскодировал URI в команде SSI include. | |
6115 | |
6116 *) Исправление: при использовании переменной в директивах charset или | |
6117 source_charset на старте или во время переконфигурации происходил | |
6118 segmentation fault, | |
6119 | |
6120 *) Исправление: nginx возвращал ошибку 400 на запросы вида | |
6121 "GET http://www.domain.com HTTP/1.0". | |
6122 Спасибо James Oakley. | |
6123 | |
6124 *) Исправление: после перенаправления запроса с телом запроса с помощью | |
6125 директивы error_page nginx пытался снова прочитать тело запроса; | |
6126 ошибка появилась в 0.6.7. | |
6127 | |
6128 *) Исправление: в рабочем процессе происходил segmentation fault, если у | |
6129 сервера, обрабатывающему запрос, не был явно определён server_name; | |
6130 ошибка появилась в 0.6.7. | |
6131 | |
6132 | |
6133 Изменения в nginx 0.6.14 15.10.2007 | |
6134 | |
6135 *) Изменение: теперь по умолчанию команда SSI echo использует | |
6136 кодирование entity. | |
6137 | |
6138 *) Добавление: параметр encoding в команде SSI echo. | |
6139 | |
6140 *) Добавление: директиву access_log можно использовать внутри блока | |
6141 limit_except. | |
6142 | |
6143 *) Исправление: если все сервера апстрима оказывались недоступными, то | |
6144 до восстановления работоспособности у всех серверов вес становился | |
6145 равным одному; ошибка появилась в 0.6.6. | |
6146 | |
6147 *) Исправление: при использовании переменных $date_local и $date_gmt вне | |
6148 модуля ngx_http_ssi_filter_module в рабочем процессе происходил | |
6149 segmentation fault. | |
6150 | |
6151 *) Исправление: при использовании включённом отладочном логе в рабочем | |
6152 процессе мог произойти segmentation fault. | |
6153 Спасибо Андрею Нигматулину. | |
6154 | |
6155 *) Исправление: ngx_http_memcached_module не устанавливал | |
6156 $upstream_response_time. | |
6157 Спасибо Максиму Дунину. | |
6158 | |
6159 *) Исправление: рабочий процесс мог зациклиться при использовании | |
6160 memcached. | |
6161 | |
6162 *) Исправление: nginx распознавал параметры "close" и "keep-alive" в | |
6163 строке "Connection" в заголовке запроса только, если они были в | |
6164 нижнем регистре; ошибка появилась в 0.6.11. | |
6165 | |
6166 *) Исправление: sub_filter не работал с пустой строкой замены. | |
6167 | |
6168 *) Исправление: в парсинге sub_filter. | |
6169 | |
6170 | |
6171 Изменения в nginx 0.6.13 24.09.2007 | |
6172 | |
6173 *) Исправление: nginx не закрывал файл каталога для запроса HEAD, если | |
6174 использовался autoindex | |
6175 Спасибо Arkadiusz Patyk. | |
6176 | |
6177 | |
6178 Изменения в nginx 0.6.12 21.09.2007 | |
6179 | |
6180 *) Изменение: почтовый прокси-сервер разделён на три модуля: pop3, imap | |
6181 и smtp. | |
6182 | |
6183 *) Добавление: параметры конфигурации --without-mail_pop3_module, | |
6184 --without-mail_imap_module и --without-mail_smtp_module. | |
6185 | |
6186 *) Добавление: директивы smtp_greeting_delay и smtp_client_buffer модуля | |
6187 ngx_mail_smtp_module. | |
6188 | |
6189 *) Исправление: wildcard в конце имени сервера не работали; ошибка | |
6190 появилась в 0.6.9. | |
6191 | |
6192 *) Исправление: при использовании разделяемой библиотеки PCRE, | |
6193 расположенной в нестандартном месте, nginx не запускался на Solaris. | |
6194 | |
6195 *) Исправление: директивы proxy_hide_header и fastcgi_hide_header не | |
6196 скрывали строки заголовка ответа с именем больше 32 символов. | |
6197 Спасибо Manlio Perillo. | |
6198 | |
6199 | |
6200 Изменения в nginx 0.6.11 11.09.2007 | |
6201 | |
6202 *) Исправление: счётчик активных соединений всегда рос при использовании | |
6203 почтового прокси-сервера. | |
6204 | |
6205 *) Исправление: если бэкенд возвращал только заголовок ответа при | |
6206 небуферизированном проксировании, то nginx закрывал соединение с | |
6207 бэкендом по таймауту. | |
6208 | |
6209 *) Исправление: nginx не поддерживал несколько строк "Connection" в | |
6210 заголовке запроса. | |
6211 | |
6212 *) Исправление: если в сервере апстрима был задан max_fails, то после | |
6213 первой же неудачной попытки вес сервера навсегда становился равным | |
6214 одному; ошибка появилась в 0.6.6. | |
6215 | |
6216 | |
6217 Изменения в nginx 0.6.10 03.09.2007 | |
6218 | |
6219 *) Добавление: директивы open_file_cache, open_file_cache_retest и | |
6220 open_file_cache_errors. | |
6221 | |
6222 *) Исправление: утечки сокетов; ошибка появилась в 0.6.7. | |
6223 | |
6224 *) Исправление: В строку заголовка ответа "Content-Type", указанную в | |
6225 методе $r->send_http_header(), не добавлялась кодировка, указанная в | |
6226 директиве charset. | |
6227 | |
6228 *) Исправление: при использовании метода /dev/poll в рабочем процессе | |
6229 мог произойти segmentation fault. | |
6230 | |
6231 | |
6232 Изменения в nginx 0.6.9 28.08.2007 | |
6233 | |
6234 *) Исправление: рабочий процесс мог зациклиться при использовании | |
6235 протокола HTTPS; ошибка появилась в 0.6.7. | |
6236 | |
6237 *) Исправление: если сервер слушал на двух адресах или портах, то nginx | |
6238 не запускался при использовании wildcard в конце имени сервера. | |
6239 | |
6240 *) Исправление: директива ip_hash могла неверно помечать сервера как | |
6241 нерабочие. | |
6242 | |
6243 *) Исправление: nginx не собирался на amd64; ошибка появилась в 0.6.8. | |
6244 | |
6245 | |
6246 Изменения в nginx 0.6.8 20.08.2007 | |
6247 | |
6248 *) Изменение: теперь nginx пытается установить директивы | |
6249 worker_priority, worker_rlimit_nofile, worker_rlimit_core, | |
6250 worker_rlimit_sigpending без привилегий root'а. | |
6251 | |
6252 *) Изменение: теперь nginx экранирует символы пробела и "%" при передаче | |
6253 запроса серверу аутентификации почтового прокси-сервера. | |
6254 | |
6255 *) Изменение: теперь nginx экранирует символ "%" в переменной | |
6256 $memcached_key. | |
6257 | |
6258 *) Исправление: при указании относительного пути к конфигурационному | |
6259 файлу в качестве параметра ключа -c nginx определял путь относительно | |
6260 конфигурационного префикса; ошибка появилась в 0.6.6. | |
6261 | |
6262 *) Исправление: nginx не работал на FreeBSD/sparc64. | |
6263 | |
6264 | |
6265 Изменения в nginx 0.6.7 15.08.2007 | |
6266 | |
6267 *) Изменение: теперь пути, указанные в директивах include, | |
6268 auth_basic_user_file, perl_modules, ssl_certificate, | |
6269 ssl_certificate_key и ssl_client_certificate, определяются | |
6270 относительно каталога конфигурационного файла nginx.conf, а не | |
6271 относительно префикса. | |
6272 | |
6273 *) Изменение: параметр --sysconfdir=PATH в configure упразднён. | |
6274 | |
6275 *) Изменение: для обновления на лету версий 0.1.x создан специальный | |
6276 сценарий make upgrade1. | |
6277 | |
6278 *) Добавление: директивы server_name и valid_referers поддерживают | |
6279 регулярные выражения. | |
6280 | |
6281 *) Добавление: директива server в блоке upstream поддерживает параметр | |
6282 backup. | |
6283 | |
6284 *) Добавление: модуль ngx_http_perl_module поддерживает метод | |
6285 $r->discard_request_body. | |
6286 | |
6287 *) Добавление: директива "add_header Last-Modified ..." меняет строку | |
6288 "Last-Modified" в заголовке ответа. | |
6289 | |
6290 *) Исправление: если на запрос с телом возвращался ответ с кодом HTTP | |
6291 отличным от 200, и после этого запроса соединение переходило в | |
6292 состояние keep-alive, то на следующий запрос nginx возвращал 400. | |
6293 | |
6294 *) Исправление: если в директиве auth_http был задан неправильный адрес, | |
6295 то в рабочем процессе происходил segmentation fault. | |
6296 | |
6297 *) Исправление: теперь по умолчанию nginx использует значение 511 для | |
6298 listen backlog на всех платформах, кроме FreeBSD. | |
6299 Спасибо Jiang Hong. | |
6300 | |
6301 *) Исправление: рабочий процесс мог зациклиться, если server в блоке | |
6302 upstream был помечен как down; ошибка появилась в 0.6.6. | |
6303 | |
6304 *) Исправление: sendfilev() в Solaris теперь не используется при | |
6305 передаче тела запроса FastCGI-серверу через unix domain сокет. | |
6306 | |
6307 | |
6308 Изменения в nginx 0.6.6 30.07.2007 | |
6309 | |
6310 *) Добавление: параметр --sysconfdir=PATH в configure. | |
6311 | |
6312 *) Добавление: именованные location'ы. | |
6313 | |
6314 *) Добавление: переменную $args можно устанавливать с помощью set. | |
6315 | |
6316 *) Добавление: переменная $is_args. | |
6317 | |
6318 *) Исправление: равномерное распределение запросов к апстримам с | |
6319 большими весами. | |
6320 | |
6321 *) Исправление: если клиент в почтовом прокси-сервере закрывал | |
6322 соединение, то nginx мог не закрывать соединение с бэкендом. | |
6323 | |
6324 *) Исправление: при использовании одного хоста в качестве бэкендов для | |
6325 протоколов HTTP и HTTPS без явного указания портов, nginx использовал | |
6326 только один порт - 80 или 443. | |
6327 | |
6328 *) Исправление: nginx не собирался на Solaris/amd64 Sun Studio 11 и | |
6329 более ранними версиями; ошибка появилась в 0.6.4. | |
6330 | |
6331 | |
6332 Изменения в nginx 0.6.5 23.07.2007 | |
6333 | |
6334 *) Добавление: переменная $nginx_version. | |
6335 Спасибо Николаю Гречуху. | |
6336 | |
6337 *) Добавление: почтовый прокси-сервер поддерживает AUTHENTICATE в режиме | |
6338 IMAP. | |
6339 Спасибо Максиму Дунину. | |
6340 | |
6341 *) Добавление: почтовый прокси-сервер поддерживает STARTTLS в режиме | |
6342 SMTP. | |
6343 Спасибо Максиму Дунину. | |
6344 | |
6345 *) Исправление: теперь nginx экранирует пробел в переменной | |
6346 $memcached_key. | |
6347 | |
6348 *) Исправление: nginx неправильно собирался Sun Studio на Solaris/amd64. | |
6349 Спасибо Jiang Hong. | |
6350 | |
6351 *) Исправление: незначительных потенциальных ошибок. | |
6352 Спасибо Coverity's Scan. | |
6353 | |
6354 | |
6355 Изменения в nginx 0.6.4 17.07.2007 | |
6356 | |
6357 *) Безопасность: при использовании директивы msie_refresh был возможен | |
6358 XSS. | |
6359 Спасибо Максиму Богуку. | |
6360 | |
6361 *) Изменение: директивы proxy_store и fastcgi_store изменены. | |
6362 | |
6363 *) Добавление: директивы proxy_store_access и fastcgi_store_access. | |
6364 | |
6365 *) Исправление: nginx не работал на Solaris/sparc64, если был собран Sun | |
6366 Studio. | |
6367 Спасибо Андрею Нигматулину. | |
6368 | |
6369 *) Изменение: обход ошибки в Sun Studio 12. | |
6370 Спасибо Jiang Hong. | |
6371 | |
6372 | |
6373 Изменения в nginx 0.6.3 12.07.2007 | |
6374 | |
6375 *) Добавление: директивы proxy_store и fastcgi_store. | |
6376 | |
6377 *) Исправление: при использовании директивы auth_http_header в рабочем | |
6378 процессе мог произойти segmentation fault. | |
6379 Спасибо Максиму Дунину. | |
6380 | |
6381 *) Исправление: если использовался метод аутентификации CRAM-MD5, но он | |
6382 не был разрешён, то в рабочем процессе происходил segmentation fault. | |
6383 | |
6384 *) Исправление: при использовании протокола HTTPS в директиве proxy_pass | |
6385 в рабочем процессе мог произойти segmentation fault. | |
6386 | |
6387 *) Исправление: в рабочем процессе мог произойти segmentation fault, | |
6388 если использовался метод eventport. | |
6389 | |
6390 *) Исправление: директивы proxy_ignore_client_abort и | |
6391 fastcgi_ignore_client_abort не работали; ошибка появилась в 0.5.13. | |
6392 | |
6393 | |
6394 Изменения в nginx 0.6.2 09.07.2007 | |
6395 | |
6396 *) Исправление: если заголовок ответа был разделён в FastCGI-записях, то | |
6397 nginx передавал клиенту мусор в таких заголовках. | |
6398 | |
6399 | |
6400 Изменения в nginx 0.6.1 17.06.2007 | |
6401 | |
6402 *) Исправление: в парсинге SSI. | |
6403 | |
6404 *) Исправление: при использовании удалённого подзапроса в SSI | |
6405 последующий подзапрос локального файла мог отдаваться клиенту в | |
6406 неверном порядке. | |
6407 | |
6408 *) Исправление: большие включения в SSI, сохранённые во временные файлы, | |
6409 передавались не полностью. | |
6410 | |
6411 *) Исправление: значение perl'овой переменной $$ модуля | |
6412 ngx_http_perl_module было равно номеру главного процесса. | |
6413 | |
6414 | |
6415 Изменения в nginx 0.6.0 14.06.2007 | |
6416 | |
6417 *) Добавление: директивы "server_name", "map", and "valid_referers" | |
6418 поддерживают маски вида "www.example.*". | |
6419 | |
6420 | |
6421 Изменения в nginx 0.5.25 11.06.2007 | |
6422 | |
6423 *) Исправление: nginx не собирался с параметром | |
6424 --without-http_rewrite_module; ошибка появилась в 0.5.24. | |
6425 | |
6426 | |
6427 Изменения в nginx 0.5.24 06.06.2007 | |
6428 | |
6429 *) Безопасность: директива ssl_verify_client не работала, если запрос | |
6430 выполнялся по протоколу HTTP/0.9. | |
6431 | |
6432 *) Исправление: при использовании сжатия часть ответа могла передаваться | |
6433 несжатой; ошибка появилась в 0.5.23. | |
6434 | |
6435 | |
6436 Изменения в nginx 0.5.23 04.06.2007 | |
6437 | |
6438 *) Добавление: модуль ngx_http_ssl_module поддерживает расширение TLS | |
6439 Server Name Indication. | |
6440 | |
6441 *) Добавление: директива fastcgi_catch_stderr. | |
6442 Спасибо Николаю Гречуху, проект OWOX. | |
6443 | |
6444 *) Исправление: на Линуксе в основном процессе происходил segmentation | |
6445 fault, если два виртуальных сервера должны bind()ится к | |
6446 пересекающимся портам. | |
6447 | |
6448 *) Исправление: если nginx был собран с модулем ngx_http_perl_module и | |
6449 perl поддерживал потоки, то во время второй переконфигурации | |
6450 выдавались ошибки "panic: MUTEX_LOCK" и "perl_parse() failed". | |
6451 | |
6452 *) Исправление: в использовании протокола HTTPS в директиве proxy_pass. | |
6453 | |
6454 | |
6455 Изменения в nginx 0.5.22 29.05.2007 | |
6456 | |
6457 *) Исправление: большое тело запроса могло не передаваться бэкенду; | |
6458 ошибка появилась в 0.5.21. | |
6459 | |
6460 | |
6461 Изменения в nginx 0.5.21 28.05.2007 | |
6462 | |
6463 *) Исправление: если внутри сервера описано больше примерно десяти | |
6464 location'ов, то location'ы, заданные с помощью регулярного выражения, | |
6465 могли выполняться не в том, порядке, в каком они описаны. | |
6466 | |
6467 *) Исправление: на 64-битной платформе рабочий процесс мог зациклиться, | |
6468 если 33-тий по счёту или последующий бэкенд упал. | |
6469 Спасибо Антону Поварову. | |
6470 | |
6471 *) Исправление: при использовании библиотеки PCRE на Solaris/sparc64 мог | |
6472 произойти bus error. | |
6473 Спасибо Андрею Нигматулину. | |
6474 | |
6475 *) Исправление: в использовании протокола HTTPS в директиве proxy_pass. | |
6476 | |
6477 | |
6478 Изменения в nginx 0.5.20 07.05.2007 | |
6479 | |
6480 *) Добавление: директива sendfile_max_chunk. | |
6481 | |
6482 *) Добавление: переменные "$http_...", "$sent_http_..." и | |
6483 "$upstream_http_..." можно менять директивой set. | |
6484 | |
6485 *) Исправление: при использовании SSI-команды 'if expr="$var = /"' в | |
6486 рабочем процессе мог произойти segmentation fault. | |
6487 | |
6488 *) Исправление: завершающая строка multipart range ответа передавалась | |
6489 неверно. | |
6490 Спасибо Evan Miller. | |
6491 | |
6492 *) Исправление: nginx не работал на Solaris/sparc64, если был собран Sun | |
6493 Studio. | |
6494 Спасибо Андрею Нигматулину. | |
6495 | |
6496 *) Исправление: модуль ngx_http_perl_module не собирался make в Solaris. | |
6497 Спасибо Андрею Нигматулину. | |
6498 | |
6499 | |
6500 Изменения в nginx 0.5.19 24.04.2007 | |
6501 | |
6502 *) Изменение: значение переменной $request_time теперь записывается с | |
6503 точностью до миллисекунд. | |
6504 | |
6505 *) Изменение: метод $r->rflush в модуле ngx_http_perl_module | |
6506 переименован в $r->flush. | |
6507 | |
6508 *) Добавление: переменная $upstream_addr. | |
6509 | |
6510 *) Добавление: директивы proxy_headers_hash_max_size и | |
6511 proxy_headers_hash_bucket_size. | |
6512 Спасибо Володымыру Костырко. | |
6513 | |
6514 *) Исправление: при использовании sendfile и limit_rate на 64-битных | |
6515 платформах нельзя было передавать файлы больше 2G. | |
6516 | |
6517 *) Исправление: при использовании sendfile на 64-битном Linux нельзя | |
6518 было передавать файлы больше 2G. | |
6519 | |
6520 | |
6521 Изменения в nginx 0.5.18 19.04.2007 | |
6522 | |
6523 *) Добавление: модуль ngx_http_sub_filter_module. | |
6524 | |
6525 *) Добавление: переменные "$upstream_http_...". | |
6526 | |
6527 *) Добавление: теперь переменные $upstream_status и | |
6528 $upstream_response_time содержат данные о всех обращениях к | |
6529 апстримам, сделанным до X-Accel-Redirect. | |
6530 | |
6531 *) Исправление: если nginx был собран с модулем ngx_http_perl_module и | |
6532 perl не поддерживал multiplicity, то после первой переконфигурации и | |
6533 после получения любого сигнала в основном процессе происходил | |
6534 segmentation fault; ошибка появилась в 0.5.9. | |
6535 | |
6536 *) Исправление: если perl не поддерживал multiplicity, то после | |
6537 переконфигурации перловый код не работал; ошибка появилась в 0.3.38. | |
6538 | |
6539 | |
6540 Изменения в nginx 0.5.17 02.04.2007 | |
6541 | |
6542 *) Изменение: теперь nginx для метода TRACE всегда возвращает код 405. | |
6543 | |
6544 *) Добавление: теперь nginx поддерживает директиву include внутри блока | |
6545 types. | |
6546 | |
6547 *) Исправление: использование переменной $document_root в директиве root | |
6548 и alias запрещено: оно вызывало рекурсивное переполнение стека. | |
6549 | |
6550 *) Исправление: в использовании протокола HTTPS в директиве proxy_pass. | |
6551 | |
6552 *) Исправление: в некоторых случаях некэшируемые переменные (такие, как | |
6553 $uri) возвращали старое закэшированное значение. | |
6554 | |
6555 | |
6556 Изменения в nginx 0.5.16 26.03.2007 | |
6557 | |
6558 *) Исправление: в качестве ключа для хэша в директиве ip_hash не | |
6559 использовалась сеть класса С. | |
6560 Спасибо Павлу Ярковому. | |
6561 | |
6562 *) Исправление: если в строке "Content-Type" в заголовке ответа бэкенда | |
6563 был указан charset и строка завершалась символом ";", то в рабочем | |
6564 процессе мог произойти segmentation fault; ошибка появилась в 0.3.50. | |
6565 | |
6566 *) Исправление: ошибки "[alert] zero size buf" при работе с | |
6567 FastCGI-сервером, если тело запроса, записанное во временный файл, | |
6568 было кратно 32K. | |
6569 | |
6570 *) Исправление: nginx не собирался на Solaris без параметра | |
6571 --with-debug; ошибка появилась в 0.5.15. | |
6572 | |
6573 | |
6574 Изменения в nginx 0.5.15 19.03.2007 | |
6575 | |
6576 *) Добавление: почтовый прокси-сервер поддерживает аутентифицированное | |
6577 SMTP-проксирование и директивы smtp_auth, smtp_capabilities и | |
6578 xclient. | |
6579 Спасибо Антону Южанинову и Максиму Дунину. | |
6580 | |
6581 *) Добавление: теперь keep-alive соединения закрываются сразу же по | |
6582 получении сигнала переконфигурации. | |
6583 | |
6584 *) Изменение: директивы imap и auth переименованы соответственно в mail | |
6585 и pop3_auth. | |
6586 | |
6587 *) Исправление: если использовался метод аутентификации CRAM-MD5 и не | |
6588 был разрешён метод APOP, то в рабочем процессе происходил | |
6589 segmentation fault. | |
6590 | |
6591 *) Исправление: при использовании директивы starttls only в протоколе | |
6592 POP3 nginx разрешал аутентификацию без перехода в режим SSL. | |
6593 | |
6594 *) Исправление: рабочие процессы не выходили после переконфигурации и не | |
6595 переоткрывали логи, если использовался метод eventport. | |
6596 | |
6597 *) Исправление: при использовании директивы ip_hash рабочий процесс мог | |
6598 зациклиться. | |
6599 | |
6600 *) Исправление: теперь nginx не пишет в лог некоторые alert'ы, если | |
6601 используются методы eventport или /dev/poll. | |
6602 | |
6603 | |
6604 Изменения в nginx 0.5.14 23.02.2007 | |
6605 | |
6606 *) Исправление: nginx игнорировал лишние закрывающие скобки "}" в конце | |
6607 конфигурационного файла. | |
6608 | |
6609 | |
6610 Изменения в nginx 0.5.13 19.02.2007 | |
6611 | |
6612 *) Добавление: методы COPY и MOVE. | |
6613 | |
6614 *) Исправление: модуль ngx_http_realip_module устанавливал мусор для | |
6615 запросов, переданных по keep-alive соединению. | |
6616 | |
6617 *) Исправление: nginx не работал на 64-битном big-endian Linux. | |
6618 Спасибо Андрею Нигматулину. | |
6619 | |
6620 *) Исправление: при получении слишком длинной команды IMAP/POP3-прокси | |
6621 теперь сразу закрывает соединение, а не по таймауту. | |
6622 | |
6623 *) Исправление: если при использовании метода epoll клиент закрывал | |
6624 преждевременно соединение со своей стороны, то nginx закрывал это | |
6625 соединение только по истечении таймаута на передачу. | |
6626 | |
6627 *) Исправление: nginx не собирался на платформах, отличных от i386, | |
6628 amd64, sparc и ppc; ошибка появилась в 0.5.8. | |
6629 | |
6630 | |
6631 Изменения в nginx 0.5.12 12.02.2007 | |
6632 | |
6633 *) Исправление: nginx не собирался на платформах, отличных от i386, | |
6634 amd64, sparc и ppc; ошибка появилась в 0.5.8. | |
6635 | |
6636 *) Исправление: при использовании временных файлов в время работы с | |
6637 FastCGI-сервером в рабочем процессе мог произойти segmentation fault; | |
6638 ошибка появилась в 0.5.8. | |
6639 | |
6640 *) Исправление: если переменная $fastcgi_script_name записывалась в лог, | |
6641 то в рабочем процессе мог произойти segmentation fault. | |
6642 | |
6643 *) Исправление: ngx_http_perl_module не собирался на Solaris. | |
6644 | |
6645 | |
6646 Изменения в nginx 0.5.11 05.02.2007 | |
6647 | |
6648 *) Добавление: теперь configure определяет библиотеку PCRE в MacPorts. | |
6649 Спасибо Chris McGrath. | |
6650 | |
6651 *) Исправление: ответ был неверным, если запрашивалось несколько | |
6652 диапазонов; ошибка появилась в 0.5.6. | |
6653 | |
6654 *) Исправление: директива create_full_put_path не могла создавать | |
6655 промежуточные каталоги, если не была установлена директива | |
6656 dav_access. | |
6657 Спасибо Evan Miller. | |
6658 | |
6659 *) Исправление: вместо кодов ошибок "400" и "408" в access_log мог | |
6660 записываться код "0". | |
6661 | |
6662 *) Исправление: при сборке с оптимизацией -O2 в рабочем процессе мог | |
6663 произойти segmentation fault. | |
6664 | |
6665 | |
6666 Изменения в nginx 0.5.10 26.01.2007 | |
6667 | |
6668 *) Исправление: во время обновления исполняемого файла новый процесс не | |
6669 наследовал слушающие сокеты; ошибка появилась в 0.5.9. | |
6670 | |
6671 *) Исправление: при сборке с оптимизацией -O2 в рабочем процессе мог | |
6672 произойти segmentation fault; ошибка появилась в 0.5.1. | |
6673 | |
6674 | |
6675 Изменения в nginx 0.5.9 25.01.2007 | |
6676 | |
6677 *) Изменение: модуль ngx_http_memcached_module теперь в качестве ключа | |
6678 использует значение переменной $memcached_key. | |
6679 | |
6680 *) Добавление: переменная $memcached_key. | |
6681 | |
6682 *) Добавление: параметр clean в директиве client_body_in_file_only. | |
6683 | |
6684 *) Добавление: директива env. | |
6685 | |
6686 *) Добавление: директива sendfile работает внутри блока if. | |
6687 | |
6688 *) Добавление: теперь при ошибке записи в access_log nginx записывает | |
6689 сообщение в error_log, но не чаще одного раза в минуту. | |
6690 | |
6691 *) Исправление: директива "access_log off" не всегда запрещала запись в | |
6692 лог. | |
6693 | |
6694 | |
6695 Изменения в nginx 0.5.8 19.01.2007 | |
6696 | |
6697 *) Исправление: если использовалась директива | |
6698 "client_body_in_file_only on" и тело запроса было небольшое, то мог | |
6699 произойти segmentation fault. | |
6700 | |
6701 *) Исправление: происходил segmentation fault, если использовались | |
6702 директивы "client_body_in_file_only on" и | |
6703 "proxy_pass_request_body off" или "fastcgi_pass_request_body off", и | |
6704 делался переход к следующему бэкенду. | |
6705 | |
6706 *) Исправление: если при использовании директивы "proxy_buffering off" | |
6707 соединение с клиентом было неактивно, то оно закрывалось по таймауту, | |
6708 заданному директивой send_timeout; ошибка появилась в 0.4.7. | |
6709 | |
6710 *) Исправление: если при использовании метода epoll клиент закрывал | |
6711 преждевременно соединение со своей стороны, то nginx закрывал это | |
6712 соединение только по истечении таймаута на передачу. | |
6713 | |
6714 *) Исправление: ошибки "[alert] zero size buf" при работе с | |
6715 FastCGI-сервером. | |
6716 | |
6717 *) Исправление ошибок в директиве limit_zone. | |
6718 | |
6719 | |
6720 Изменения в nginx 0.5.7 15.01.2007 | |
6721 | |
6722 *) Добавление: оптимизация использования памяти в ssl_session_cache. | |
6723 | |
6724 *) Исправление ошибок в директивах ssl_session_cache и limit_zone. | |
6725 | |
6726 *) Исправление: на старте или во время переконфигурации происходил | |
6727 segmentation fault, если директивы ssl_session_cache или limit_zone | |
6728 использовались на 64-битных платформах. | |
6729 | |
6730 *) Исправление: при использовании директив add_before_body или | |
6731 add_after_body происходил segmentation fault, если в заголовке ответа | |
6732 нет строки "Content-Type". | |
6733 | |
6734 *) Исправление: библиотека OpenSSL всегда собиралась с поддержкой | |
6735 потоков. | |
6736 Спасибо Дену Иванову. | |
6737 | |
6738 *) Исправление: совместимость библиотеки PCRE-6.5+ и компилятора icc. | |
6739 | |
6740 | |
6741 Изменения в nginx 0.5.6 09.01.2007 | |
6742 | |
6743 *) Изменение: теперь модуль ngx_http_index_module игнорирует все методы, | |
6744 кроме GET, HEAD и POST. | |
6745 | |
6746 *) Добавление: модуль ngx_http_limit_zone_module. | |
6747 | |
6748 *) Добавление: переменная $binary_remote_addr. | |
6749 | |
6750 *) Добавление: директивы ssl_session_cache модулей ngx_http_ssl_module и | |
6751 ngx_imap_ssl_module. | |
6752 | |
6753 *) Добавление: метод DELETE поддерживает рекурсивное удаление. | |
6754 | |
6755 *) Исправление: при использовании $r->sendfile() byte-ranges | |
6756 передавались неверно. | |
6757 | |
6758 | |
6759 Изменения в nginx 0.5.5 24.12.2006 | |
6760 | |
6761 *) Изменение: ключ -v больше не выводит информацию о компиляторе. | |
6762 | |
6763 *) Добавление: ключ -V. | |
6764 | |
6765 *) Добавление: директива worker_rlimit_core поддерживает указание | |
6766 размера в K, M и G. | |
6767 | |
6768 *) Исправление: модуль nginx.pm теперь может устанавливаться | |
6769 непривилегированным пользователем. | |
6770 | |
6771 *) Исправление: при использовании методов $r->request_body или | |
6772 $r->request_body_file мог произойти segmentation fault. | |
6773 | |
6774 *) Исправление: ошибок, специфичных для платформы ppc. | |
6775 | |
6776 | |
6777 Изменения в nginx 0.5.4 15.12.2006 | |
6778 | |
6779 *) Добавление: директиву perl можно использовать внутри блока | |
6780 limit_except. | |
6781 | |
6782 *) Исправление: модуль ngx_http_dav_module требовал строку "Date" в | |
6783 заголовке запроса для метода DELETE. | |
6784 | |
6785 *) Исправление: при использовании одного параметра в директиве | |
6786 dav_access nginx мог сообщить об ошибке в конфигурации. | |
6787 | |
6788 *) Исправление: при использовании переменной $host мог произойти | |
6789 segmentation fault; ошибка появилась в 0.4.14. | |
6790 | |
6791 | |
6792 Изменения в nginx 0.5.3 13.12.2006 | |
6793 | |
6794 *) Добавление: модуль ngx_http_perl_module поддерживает методы | |
6795 $r->status, $r->log_error и $r->sleep. | |
6796 | |
6797 *) Добавление: метод $r->variable поддерживает переменные, неописанные в | |
6798 конфигурации nginx'а. | |
6799 | |
6800 *) Исправление: метод $r->has_request_body не работал. | |
6801 | |
6802 | |
6803 Изменения в nginx 0.5.2 11.12.2006 | |
6804 | |
6805 *) Исправление: если в директивах proxy_pass использовалось имя, | |
6806 указанное в upstream, то nginx пытался найти IP-адрес этого имени; | |
6807 ошибка появилась в 0.5.1. | |
6808 | |
6809 | |
6810 Изменения в nginx 0.5.1 11.12.2006 | |
6811 | |
6812 *) Исправление: директива post_action могла не работать после неудачного | |
6813 завершения запроса. | |
6814 | |
6815 *) Изменение: обход ошибки в Eudora для Mac; ошибка появилась в 0.4.11. | |
6816 Спасибо Bron Gondwana. | |
6817 | |
6818 *) Исправление: при указании в директиве fastcgi_pass имени описанного | |
6819 upstream'а выдавалось сообщение "no port in upstream"; ошибка | |
6820 появилась в 0.5.0. | |
6821 | |
6822 *) Исправление: если в директивах proxy_pass и fastcgi_pass | |
6823 использовались одинаковых имена серверов, но с разными портами, то | |
6824 эти директивы использовали первый описанный порт; ошибка появилась в | |
6825 0.5.0. | |
6826 | |
6827 *) Исправление: если в директивах proxy_pass и fastcgi_pass | |
6828 использовались unix domain сокеты, то эти директивы использовали | |
6829 первый описанный сокет; ошибка появилась в 0.5.0. | |
6830 | |
6831 *) Исправление: ngx_http_auth_basic_module игнорировал пользователя, | |
6832 если он был указан в последней строке файла паролей и после пароля не | |
6833 было перевода строки, возврата каретки или символа ":". | |
6834 | |
6835 *) Исправление: переменная $upstream_response_time могла быть равна | |
6836 "0.000", хотя время обработки было больше 1 миллисекунды. | |
6837 | |
6838 | |
6839 Изменения в nginx 0.5.0 04.12.2006 | |
6840 | |
6841 *) Изменение: параметры в виде "%name" в директиве log_format больше не | |
6842 поддерживаются. | |
6843 | |
6844 *) Изменение: директивы proxy_upstream_max_fails, | |
6845 proxy_upstream_fail_timeout, fastcgi_upstream_max_fails, и | |
6846 fastcgi_upstream_fail_timeout, memcached_upstream_max_fails и | |
6847 memcached_upstream_fail_timeout больше не поддерживаются. | |
6848 | |
6849 *) Добавление: директива server в блоке upstream поддерживает параметры | |
6850 max_fails, fail_timeout и down. | |
6851 | |
6852 *) Добавление: директива ip_hash в блоке upstream. | |
6853 | |
6854 *) Добавление: статус WAIT в строке "Auth-Status" в заголовке ответа | |
6855 сервера аутентификации IMAP/POP3 прокси. | |
6856 | |
6857 *) Исправление: nginx не собирался на 64-битных платформах; ошибка | |
6858 появилась в 0.4.14. | |
6859 | |
6860 | |
6861 Изменения в nginx 0.4.14 27.11.2006 | |
6862 | |
6863 *) Добавление: директива proxy_pass_error_message в IMAP/POP3 прокси. | |
6864 | |
6865 *) Добавление: теперь configure определяет библиотеку PCRE на FreeBSD, | |
6866 Linux и NetBSD. | |
6867 | |
6868 *) Исправление: ngx_http_perl_module не работал с перлом, собранным с | |
6869 поддержкой потоков; ошибка появилась в 0.3.38. | |
6870 | |
6871 *) Исправление: ngx_http_perl_module не работал корректно, если перл | |
6872 вызывался рекурсивно. | |
6873 | |
6874 *) Исправление: nginx игнорировал имя сервера в строке запроса. | |
6875 | |
6876 *) Исправление: если FastCGI сервер передавал много в stderr, то рабочий | |
6877 процесс мог зациклиться. | |
6878 | |
6879 *) Исправление: при изменении системного времени переменная | |
6880 $upstream_response_time могла быть отрицательной. | |
6881 | |
6882 *) Исправление: при использовании POP3 серверу аутентификации IMAP/POP3 | |
6883 прокси не передавался параметр Auth-Login-Attempt. | |
6884 | |
6885 *) Исправление: при ошибке соединения с сервером аутентификации | |
6886 IMAP/POP3 прокси мог произойти segmentation fault. | |
6887 | |
6888 | |
6889 Изменения в nginx 0.4.13 15.11.2006 | |
6890 | |
6891 *) Добавление: директиву proxy_pass можно использовать внутри блока | |
6892 limit_except. | |
6893 | |
6894 *) Добавление: директива limit_except поддерживает все WebDAV методы. | |
6895 | |
6896 *) Исправление: при использовании директивы add_before_body без | |
6897 директивы add_after_body ответ передавался не полностью. | |
6898 | |
6899 *) Исправление: большое тело запроса не принималось, если использовались | |
6900 метод epoll и deferred accept(). | |
6901 | |
6902 *) Исправление: для ответов модуля ngx_http_autoindex_module не | |
6903 выставлялась кодировка; ошибка появилась в 0.3.50. | |
6904 | |
6905 *) Исправление: ошибки "[alert] zero size buf" при работе с | |
6906 FastCGI-сервером; | |
6907 | |
6908 *) Исправление: параметр конфигурации --group= игнорировался. | |
6909 Спасибо Thomas Moschny. | |
6910 | |
6911 *) Исправление: 50-й подзапрос в SSI ответе не работал; ошибка появилась | |
6912 в 0.3.50. | |
6913 | |
6914 | |
6915 Изменения в nginx 0.4.12 31.10.2006 | |
6916 | |
6917 *) Добавление: модуль ngx_http_perl_module поддерживает метод | |
6918 $r->variable. | |
6919 | |
6920 *) Исправление: при включении в ответ большого статического файла с | |
6921 помощью SSI ответ мог передаваться не полностью. | |
6922 | |
6923 *) Исправление: nginx не убирал "#fragment" в URI. | |
6924 | |
6925 | |
6926 Изменения в nginx 0.4.11 25.10.2006 | |
6927 | |
6928 *) Добавление: POP3 прокси поддерживает AUTH LOGIN PLAIN и CRAM-MD5. | |
6929 | |
6930 *) Добавление: модуль ngx_http_perl_module поддерживает метод | |
6931 $r->allow_ranges. | |
6932 | |
6933 *) Исправление: при включённой поддержке команды APOP в POP3 прокси | |
6934 могли не работать команды USER/PASS; ошибка появилась в 0.4.10. | |
6935 | |
6936 | |
6937 Изменения в nginx 0.4.10 23.10.2006 | |
6938 | |
6939 *) Добавление: POP3 прокси поддерживает APOP. | |
6940 | |
6941 *) Исправление: при использовании методов select, poll и /dev/poll во | |
6942 время ожидания ответа от сервера аутентификации IMAP/POP3 прокси | |
6943 нагружал процессор. | |
6944 | |
6945 *) Исправление: при использовании переменной $server_addr в директиве | |
6946 map мог произойти segmentation fault. | |
6947 | |
6948 *) Исправление: модуль ngx_http_flv_module не поддерживал byte ranges | |
6949 для полных ответов; ошибка появилась в 0.4.7. | |
6950 | |
6951 *) Исправление: nginx не собирался на Debian amd64; ошибка появилась в | |
6952 0.4.9. | |
6953 | |
6954 | |
6955 Изменения в nginx 0.4.9 13.10.2006 | |
6956 | |
6957 *) Добавление: параметр set в команде SSI include. | |
6958 | |
6959 *) Добавление: модуль ngx_http_perl_module теперь проверяет версию | |
6960 модуля nginx.pm. | |
6961 | |
6962 | |
6963 Изменения в nginx 0.4.8 11.10.2006 | |
6964 | |
6965 *) Исправление: если до команды SSI include с параметром wait | |
6966 выполнялась ещё одна команда SSI include, то параметр wait мог не | |
6967 работать. | |
6968 | |
6969 *) Исправление: модуль ngx_http_flv_module добавлял FLV-заголовок для | |
6970 полных ответов. | |
6971 Спасибо Алексею Ковырину. | |
6972 | |
6973 | |
6974 Изменения в nginx 0.4.7 10.10.2006 | |
6975 | |
6976 *) Добавление: модуль ngx_http_flv_module. | |
6977 | |
6978 *) Добавление: переменная $request_body_file. | |
6979 | |
6980 *) Добавление: директивы charset и source_charset поддерживают | |
6981 переменные. | |
6982 | |
6983 *) Исправление: если до команды SSI include с параметром wait | |
6984 выполнялась ещё одна команда SSI include, то параметр wait мог не | |
6985 работать. | |
6986 | |
6987 *) Исправление: при использовании директивы "proxy_buffering off" или | |
6988 при работе с memcached соединения могли не закрываться по таймауту. | |
6989 | |
6990 *) Исправление: nginx не запускался на 64-битных платформах, отличных от | |
6991 amd64, sparc64 и ppc64. | |
6992 | |
6993 | |
6994 Изменения в nginx 0.4.6 06.10.2006 | |
6995 | |
6996 *) Исправление: nginx не запускался на 64-битных платформах, отличных от | |
6997 amd64, sparc64 и ppc64. | |
6998 | |
6999 *) Исправление: при запросе версии HTTP/1.1 nginx передавал ответ | |
7000 chunk'ами, если длина ответа в методе | |
7001 $r->headers_out("Content-Length", ...) была задана текстовой строкой. | |
7002 | |
7003 *) Исправление: после перенаправления ошибки с помощью директивы | |
7004 error_page любая директива модуля ngx_http_rewrite_module возвращала | |
7005 эту ошибку; ошибка появилась в 0.4.4. | |
7006 | |
7007 | |
7008 Изменения в nginx 0.4.5 02.10.2006 | |
7009 | |
7010 *) Исправление: nginx не собирался на Linux и Solaris; ошибка появилась | |
7011 в 0.4.4. | |
7012 | |
7013 | |
7014 Изменения в nginx 0.4.4 02.10.2006 | |
7015 | |
7016 *) Добавление: переменная $scheme. | |
7017 | |
7018 *) Добавление: директива expires поддерживает параметр max. | |
7019 | |
7020 *) Добавление: директива include поддерживает маску "*". | |
7021 Спасибо Jonathan Dance. | |
7022 | |
7023 *) Исправление: директива return всегда изменяла код ответа, | |
7024 перенаправленного директивой error_page. | |
7025 | |
7026 *) Исправление: происходил segmentation fault, если в методе PUT | |
7027 передавалось тело нулевой длины. | |
7028 | |
7029 *) Исправление: при использовании переменных в директиве proxy_redirect | |
7030 редирект изменялся неверно. | |
7031 | |
7032 | |
7033 Изменения в nginx 0.4.3 26.09.2006 | |
7034 | |
7035 *) Изменение: ошибку 499 теперь нельзя перенаправить с помощью директивы | |
7036 error_page. | |
7037 | |
7038 *) Добавление: поддержка Solaris 10 event ports. | |
7039 | |
7040 *) Добавление: модуль ngx_http_browser_module. | |
7041 | |
7042 *) Исправление: при перенаправлении ошибки 400 проксированному серверу | |
7043 помощью директивы error_page мог произойти segmentation fault. | |
7044 | |
7045 *) Исправление: происходил segmentation fault, если в директиве | |
7046 proxy_pass использовался unix domain сокет; ошибка появилась в | |
7047 0.3.47. | |
7048 | |
7049 *) Исправление: SSI не работал с ответами memcached и | |
7050 небуферизированными проксированными ответами. | |
7051 | |
7052 *) Изменение: обход ошибки PAUSE hardware capability в Sun Studio. | |
7053 | |
7054 | |
7055 Изменения в nginx 0.4.2 14.09.2006 | |
7056 | |
7057 *) Исправление: убрана поддержка флага O_NOATIME на Linux; ошибка | |
7058 появилась в 0.4.1. | |
7059 | |
7060 | |
7061 Изменения в nginx 0.4.1 14.09.2006 | |
7062 | |
7063 *) Исправление: совместимость с DragonFlyBSD. | |
7064 Спасибо Павлу Назарову. | |
7065 | |
7066 *) Изменение: обход ошибки в sendfile() в 64-битном Linux при передаче | |
7067 файлов больше 2G. | |
7068 | |
7069 *) Добавление: теперь на Linux nginx для статических запросов использует | |
7070 флаг O_NOATIME. | |
7071 Спасибо Yusuf Goolamabbas. | |
7072 | |
7073 | |
7074 Изменения в nginx 0.4.0 30.08.2006 | |
7075 | |
7076 *) Изменение во внутреннем API: инициализация модулей HTTP перенесена из | |
7077 фазы init module в фазу HTTP postconfiguration. | |
7078 | |
7079 *) Изменение: теперь тело запроса в модуле ngx_http_perl_module не | |
7080 считывается заранее: нужно явно инициировать чтение с помощью метода | |
7081 $r->has_request_body. | |
7082 | |
7083 *) Добавление: модуль ngx_http_perl_module поддерживает код возврата | |
7084 DECLINED. | |
7085 | |
7086 *) Добавление: модуль ngx_http_dav_module поддерживает входящую строку | |
7087 заголовка "Date" для метода PUT. | |
7088 | |
7089 *) Добавление: директива ssi работает внутри блока if. | |
7090 | |
7091 *) Исправление: происходил segmentation fault, если в директиве index | |
7092 использовалась переменные и при этом первое имя индексного файла было | |
7093 без переменных; ошибка появилась в 0.1.29. | |
7094 | |
7095 | |
7096 Изменения в nginx 0.3.61 28.08.2006 | |
7097 | |
7098 *) Изменение: директива tcp_nodelay теперь по умолчанию включена. | |
7099 | |
7100 *) Добавление: директива msie_refresh. | |
7101 | |
7102 *) Добавление: директива recursive_error_pages. | |
7103 | |
7104 *) Исправление: директива rewrite возвращала неправильный редирект, если | |
7105 редирект включал в себя выделенные закодированные символы из | |
7106 оригинального URI. | |
7107 | |
7108 | |
7109 Изменения в nginx 0.3.60 18.08.2006 | |
7110 | |
7111 *) Исправление: во время перенаправления ошибки рабочий процесс мог | |
7112 зациклиться; ошибка появилась в 0.3.59. | |
7113 | |
7114 | |
7115 Изменения в nginx 0.3.59 16.08.2006 | |
7116 | |
7117 *) Добавление: теперь можно делать несколько перенаправлений через | |
7118 директиву error_page. | |
7119 | |
7120 *) Исправление: директива dav_access не поддерживала три параметра. | |
7121 | |
7122 *) Исправление: директива error_page не изменяла строку "Content-Type" | |
7123 после перенаправления с помощью "X-Accel-Redirect"; ошибка появилась | |
7124 в 0.3.58. | |
7125 | |
7126 | |
7127 Изменения в nginx 0.3.58 14.08.2006 | |
7128 | |
7129 *) Добавление: директива error_page поддерживает переменные. | |
7130 | |
7131 *) Изменение: теперь на Linux используется интерфейс procfs вместо | |
7132 sysctl. | |
7133 | |
7134 *) Изменение: теперь при использовании "X-Accel-Redirect" строка | |
7135 "Content-Type" наследуется из первоначального ответа. | |
7136 | |
7137 *) Исправление: директива error_page не перенаправляла ошибку 413. | |
7138 | |
7139 *) Исправление: завершающий "?" не удалял старые аргументы, если в | |
7140 переписанном URI не было новых аргументов. | |
7141 | |
7142 *) Исправление: nginx не запускался на 64-битной FreeBSD 7.0-CURRENT. | |
7143 | |
7144 | |
7145 Изменения в nginx 0.3.57 09.08.2006 | |
7146 | |
7147 *) Добавление: переменная $ssl_client_serial. | |
7148 | |
7149 *) Исправление: в операторе "!-e" в директиве if. | |
7150 Спасибо Андриану Буданцову. | |
7151 | |
7152 *) Исправление: при проверке клиентского сертификата nginx не передавал | |
7153 клиенту информацию о требуемых сертификатах. | |
7154 | |
7155 *) Исправление: переменная $document_root не поддерживала переменные в | |
7156 директиве root. | |
7157 | |
7158 | |
7159 Изменения в nginx 0.3.56 04.08.2006 | |
7160 | |
7161 *) Добавление: директива dav_access. | |
7162 | |
7163 *) Добавление: директива if поддерживает операторы "-d", "!-d", "-e", | |
7164 "!-e", "-x" и "!-x". | |
7165 | |
7166 *) Исправление: при записи в access_log некоторых передаваемых клиенту | |
7167 строк заголовков происходил segmentation fault, если запрос возвращал | |
7168 редирект. | |
7169 | |
7170 | |
7171 Изменения в nginx 0.3.55 28.07.2006 | |
7172 | |
7173 *) Добавление: параметр stub в команде SSI include. | |
7174 | |
7175 *) Добавление: команда SSI block. | |
7176 | |
7177 *) Добавление: скрипт unicode2nginx добавлен в contrib. | |
7178 | |
7179 *) Исправление: если root был задан только переменной, то корень | |
7180 задавался относительно префикса сервера. | |
7181 | |
7182 *) Исправление: если в запросе был "//" или "/.", и после этого | |
7183 закодированные символы в виде "%XX", то проксируемый запрос | |
7184 передавался незакодированным. | |
7185 | |
7186 *) Исправление: метод $r->header_in("Cookie") модуля | |
7187 ngx_http_perl_module теперь возвращает все строки "Cookie" в | |
7188 заголовке запроса. | |
7189 | |
7190 *) Исправление: происходил segmentation fault, если использовался | |
7191 "client_body_in_file_only on" и делался переход к следующему бэкенду. | |
7192 | |
7193 *) Исправление: при некоторых условиях во время переконфигурации коды | |
7194 символов внутри директивы charset_map могли считаться неверными; | |
7195 ошибка появилась в 0.3.50. | |
7196 | |
7197 | |
7198 Изменения в nginx 0.3.54 11.07.2006 | |
7199 | |
7200 *) Добавление: nginx теперь записывает в лог информацию о подзапросах. | |
7201 | |
7202 *) Добавление: директивы proxy_next_upstream, fastcgi_next_upstream и | |
7203 memcached_next_upstream поддерживают параметр off. | |
7204 | |
7205 *) Добавление: директива debug_connection поддерживает запись адресов в | |
7206 формате CIDR. | |
7207 | |
7208 *) Исправление: при перекодировании ответа проксированного сервера или | |
7209 сервера FastCGI в UTF-8 или наоборот ответ мог передаваться не | |
7210 полностью. | |
7211 | |
7212 *) Исправление: переменная $upstream_response_time содержала время | |
7213 только первого обращения к бэкенду. | |
7214 | |
7215 *) Исправление: nginx не собирался на платформе amd64; ошибка появилась | |
7216 в 0.3.53. | |
7217 | |
7218 | |
7219 Изменения в nginx 0.3.53 07.07.2006 | |
7220 | |
7221 *) Изменение: директива add_header добавляет строки в ответы с кодом | |
7222 204, 301 и 302. | |
7223 | |
7224 *) Добавление: директива server в блоке upstream поддерживает параметр | |
7225 weight. | |
7226 | |
7227 *) Добавление: директива server_name поддерживает маску "*". | |
7228 | |
7229 *) Добавление: nginx поддерживает тело запроса больше 2G. | |
7230 | |
7231 *) Исправление: если при использовании "satisfy_any on" клиент успешно | |
7232 проходил аутентификацию, в лог всё равно записалоcь сообщение "access | |
7233 forbidden by rule". | |
7234 | |
7235 *) Исправление: метод PUT мог ошибочно не создать файл и вернуть код | |
7236 409. | |
7237 | |
7238 *) Исправление: если во время аутентификации IMAP/POP3 бэкенд возвращал | |
7239 ошибку, nginx продолжал проксирование. | |
7240 | |
7241 | |
7242 Изменения в nginx 0.3.52 03.07.2006 | |
7243 | |
7244 *) Изменение: восстановлено поведение модуля ngx_http_index_module для | |
7245 запросов "POST /": как в версии до 0.3.40, модуль теперь не выдаёт | |
7246 ошибку 405. | |
7247 | |
7248 *) Исправление: при использовании ограничения скорости рабочий процесс | |
7249 мог зациклиться; ошибка появилась в 0.3.37. | |
7250 | |
7251 *) Исправление: модуль ngx_http_charset_module записывал в лог ошибку | |
7252 "unknown charset", даже если перекодировка не требовалась; ошибка | |
7253 появилась в 0.3.50. | |
7254 | |
7255 *) Исправление: если в результате запроса PUT возвращался код 409, то | |
7256 временный файл не удалялся. | |
7257 | |
7258 | |
7259 Изменения в nginx 0.3.51 30.06.2006 | |
7260 | |
7261 *) Исправление: при некоторых условиях в SSI мог пропадать символы "<"; | |
7262 ошибка появилась в 0.3.50. | |
7263 | |
7264 | |
7265 Изменения в nginx 0.3.50 28.06.2006 | |
7266 | |
7267 *) Изменение: директивы proxy_redirect_errors и fastcgi_redirect_errors | |
7268 переименованы соответственно в proxy_intercept_errors и | |
7269 fastcgi_intercept_errors. | |
7270 | |
7271 *) Добавление: модуль ngx_http_charset_module поддерживает | |
7272 перекодирование из однобайтных кодировок в UTF-8 и обратно. | |
7273 | |
7274 *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка | |
7275 "X-Accel-Charset" в ответе бэкенда. | |
7276 | |
7277 *) Исправление: символ "\" в парах "\"" и "\'" в SSI командах убирался, | |
7278 только если также использовался символ "$". | |
7279 | |
7280 *) Исправление: при некоторых условиях в SSI после вставки могла быть | |
7281 добавлена строка "<!--". | |
7282 | |
7283 *) Исправление: если в заголовке ответа была строка "Content-Length: 0", | |
7284 то при использовании небуферизированного проксировании не закрывалось | |
7285 соединение с клиентом. | |
7286 | |
7287 | |
7288 Изменения в nginx 0.3.49 31.05.2006 | |
7289 | |
7290 *) Исправление: в директиве set. | |
7291 | |
7292 *) Исправление: при включении в ssi двух и более подзапросов, | |
7293 обрабатываемых через FastCGI, вместо вывода второго и остальных | |
7294 подзапросов в ответ включался вывод первого подзапроса. | |
7295 | |
7296 | |
7297 Изменения в nginx 0.3.48 29.05.2006 | |
7298 | |
7299 *) Изменение: теперь модуль ngx_http_charset_module работает для | |
7300 подзапросов, в ответах которых нет строки заголовка "Content-Type". | |
7301 | |
7302 *) Исправление: если в директиве proxy_pass не было URI, то директива | |
7303 "proxy_redirect default" добавляла в переписанный редирект в начало | |
7304 лишний слэш. | |
7305 | |
7306 *) Исправление: внутренний редирект всегда превращал любой HTTP-метод в | |
7307 GET, теперь это делается только для редиректов, выполняемых с помощью | |
7308 X-Accel-Redirect, и у которых метод не равен HEAD; ошибка появилась в | |
7309 0.3.42. | |
7310 | |
7311 *) Исправление: модуль ngx_http_perl_module не собирался, если перл был | |
7312 с поддержкой потоков; ошибка появилась в 0.3.46. | |
7313 | |
7314 | |
7315 Изменения в nginx 0.3.47 23.05.2006 | |
7316 | |
7317 *) Добавление: директива upstream. | |
7318 | |
7319 *) Изменение: символ "\" в парах "\"" и "\'" в SSI командах теперь | |
7320 всегда убирается. | |
7321 | |
7322 | |
7323 Изменения в nginx 0.3.46 11.05.2006 | |
7324 | |
7325 *) Добавление: директивы proxy_hide_header, proxy_pass_header, | |
7326 fastcgi_hide_header и fastcgi_pass_header. | |
7327 | |
7328 *) Изменение: директивы proxy_pass_x_powered_by, fastcgi_x_powered_by и | |
7329 proxy_pass_server упразднены. | |
7330 | |
7331 *) Добавление: в режиме прокси поддерживается строка заголовка | |
7332 "X-Accel-Buffering" в ответе бэкенда. | |
7333 | |
7334 *) Исправление: ошибок и утечек памяти при переконфигурации в модуле | |
7335 ngx_http_perl_module. | |
7336 | |
7337 | |
7338 Изменения в nginx 0.3.45 06.05.2006 | |
7339 | |
7340 *) Добавление: директивы ssl_verify_client, ssl_verify_depth и | |
7341 ssl_client_certificate. | |
7342 | |
7343 *) Изменение: теперь переменная $request_method возвращает метод только | |
7344 основного запроса. | |
7345 | |
7346 *) Изменение: в таблице перекодировки koi-win изменены коды символа | |
7347 °. | |
7348 | |
7349 *) Добавление: в таблицу перекодировки koi-win добавлены символы евро и | |
7350 номера. | |
7351 | |
7352 *) Исправление: если nginx распределял запросы на несколько машин, то | |
7353 при падении одной из них запросы, предназначенные для этой машины, | |
7354 перенаправлялись только на одну машину вместо того, чтобы равномерно | |
7355 распределяться между остальными. | |
7356 | |
7357 | |
7358 Изменения в nginx 0.3.44 04.05.2006 | |
7359 | |
7360 *) Добавление: параметр wait в команде SSI include. | |
7361 | |
7362 *) Добавление: в таблицу перекодировки koi-win добавлены украинские и | |
7363 белорусские символы. | |
7364 | |
7365 *) Исправление: в SSI. | |
7366 | |
7367 | |
7368 Изменения в nginx 0.3.43 26.04.2006 | |
7369 | |
7370 *) Исправление: в SSI. | |
7371 | |
7372 | |
7373 Изменения в nginx 0.3.42 26.04.2006 | |
7374 | |
7375 *) Добавление: параметр bind в директиве listen в IMAP/POP3 прокси. | |
7376 | |
7377 *) Исправление: ошибки при использовании в директиве rewrite одного и | |
7378 того же выделения более одного раза. | |
7379 | |
7380 *) Исправление: в лог не записывались переменные | |
7381 $sent_http_content_type, $sent_http_content_length, | |
7382 $sent_http_last_modified, $sent_http_connection, | |
7383 $sent_http_keep_alive и $sent_http_transfer_encoding. | |
7384 | |
7385 *) Исправление: переменная $sent_http_cache_control возвращала | |
7386 содержимое только одной строки "Cache-Control" в заголовке ответа. | |
7387 | |
7388 | |
7389 Изменения в nginx 0.3.41 21.04.2006 | |
7390 | |
7391 *) Добавление: ключ -v. | |
7392 | |
7393 *) Исправление: при включении в SSI удалённых подзапросов мог произойти | |
7394 segmentation fault. | |
7395 | |
7396 *) Исправление: в обработке FastCGI. | |
7397 | |
7398 *) Исправление: если путь к перловым модулям не был указан с помощью | |
7399 --with-perl_modules_path=PATH или директивы perl_modules, то на | |
7400 старте происходил segmentation fault. | |
7401 | |
7402 | |
7403 Изменения в nginx 0.3.40 19.04.2006 | |
7404 | |
7405 *) Добавление: модуль ngx_http_dav_module поддерживает метод MKCOL. | |
7406 | |
7407 *) Добавление: директива create_full_put_path. | |
7408 | |
7409 *) Добавление: переменная $limit_rate. | |
7410 | |
7411 | |
7412 Изменения в nginx 0.3.39 17.04.2006 | |
7413 | |
7414 *) Добавление: директива uninitialized_variable_warn; уровень | |
7415 логгирования сообщения о неинициализированной переменной понижен с | |
7416 уровня alert на warn. | |
7417 | |
7418 *) Добавление: директива override_charset. | |
7419 | |
7420 *) Изменение: при использовании неизвестной переменной в SSI-командах | |
7421 echo и if expr='$name' теперь не записывается в лог сообщение о | |
7422 неизвестной переменной. | |
7423 | |
7424 *) Исправление: счётчик активных соединений рос при превышении лимита | |
7425 соединений, заданного директивой worker_connections; ошибка появилась | |
7426 в 0.2.0. | |
7427 | |
7428 *) Исправление: при некоторых условия ограничение скорости соединения | |
7429 могло не работать; ошибка появилась в 0.3.38. | |
7430 | |
7431 | |
7432 Изменения в nginx 0.3.38 14.04.2006 | |
7433 | |
7434 *) Добавление: модуль ngx_http_dav_module. | |
7435 | |
7436 *) Изменение: оптимизация модуля ngx_http_perl_module. | |
7437 Спасибо Сергею Скворцову. | |
7438 | |
7439 *) Добавление: модуль ngx_http_perl_module поддерживает метод | |
7440 $r->request_body_file. | |
7441 | |
7442 *) Добавление: директива client_body_in_file_only. | |
7443 | |
7444 *) Изменение: теперь при переполнении диска nginx пытается писать | |
7445 access_log'и только раз в секунду. | |
7446 Спасибо Антону Южанинову и Максиму Дунину. | |
7447 | |
7448 *) Исправление: теперь директива limit_rate точнее ограничивает скорость | |
7449 при значениях больше 100 Kbyte/s. | |
7450 Спасибо ForJest. | |
7451 | |
7452 *) Исправление: IMAP/POP3 прокси теперь передаёт серверу авторизации | |
7453 символы "\r" и "\n" в логине и пароле в закодированном виде. | |
7454 Спасибо Максиму Дунину. | |
7455 | |
7456 | |
7457 Изменения в nginx 0.3.37 07.04.2006 | |
7458 | |
7459 *) Добавление: директива limit_except. | |
7460 | |
7461 *) Добавление: директива if поддерживает операторы "!~", "!~*", "-f" и | |
7462 "!-f". | |
7463 | |
7464 *) Добавление: модуль ngx_http_perl_module поддерживает метод | |
7465 $r->request_body. | |
7466 | |
7467 *) Исправление: в модуле ngx_http_addition_filter_module. | |
7468 | |
7469 | |
7470 Изменения в nginx 0.3.36 05.04.2006 | |
7471 | |
7472 *) Добавление: модуль ngx_http_addition_filter_module. | |
7473 | |
7474 *) Добавление: директивы proxy_pass и fastcgi_pass можно использовать | |
7475 внутри блока if. | |
7476 | |
7477 *) Добавление: директивы proxy_ignore_client_abort и | |
7478 fastcgi_ignore_client_abort. | |
7479 | |
7480 *) Добавление: переменная $request_completion. | |
7481 | |
7482 *) Добавление: модуль ngx_http_perl_module поддерживает методы | |
7483 $r->request_method и $r->remote_addr. | |
7484 | |
7485 *) Добавление: модуль ngx_http_ssi_module поддерживает команду elif. | |
7486 | |
7487 *) Исправление: строка "\/" в начале выражения команды if модуля | |
7488 ngx_http_ssi_module воспринималась неверно. | |
7489 | |
7490 *) Исправление: в использовании регулярных выражениях в команде if | |
7491 модуля ngx_http_ssi_module. | |
7492 | |
7493 *) Исправление: при задании относительного пути в директивах | |
7494 client_body_temp_path, proxy_temp_path, fastcgi_temp_path и | |
7495 perl_modules использовался каталог относительно текущего каталога, а | |
7496 не относительно префикса сервера. | |
7497 | |
7498 | |
7499 Изменения в nginx 0.3.35 22.03.2006 | |
7500 | |
7501 *) Исправление: accept-фильтр и TCP_DEFER_ACCEPT устанавливались только | |
7502 для первой директивы listen; ошибка появилась в 0.3.31. | |
7503 | |
7504 *) Исправление: в директиве proxy_pass без URI при использовании в | |
7505 подзапросе. | |
7506 | |
7507 | |
7508 Изменения в nginx 0.3.34 21.03.2006 | |
7509 | |
7510 *) Добавление: директива add_header поддерживает переменные. | |
7511 | |
7512 | |
7513 Изменения в nginx 0.3.33 15.03.2006 | |
7514 | |
7515 *) Добавление: параметр http_503 в директивах proxy_next_upstream или | |
7516 fastcgi_next_upstream. | |
7517 | |
7518 *) Исправление: ngx_http_perl_module не работал со встроенным в | |
7519 конфигурационный файл кодом, если он не начинался сразу же с "sub". | |
7520 | |
7521 *) Исправление: в директиве post_action. | |
7522 | |
7523 | |
7524 Изменения в nginx 0.3.32 11.03.2006 | |
7525 | |
7526 *) Исправление: удаление отладочного логгирования на старте и при | |
7527 переконфигурации; ошибка появилась в 0.3.31. | |
7528 | |
7529 | |
7530 Изменения в nginx 0.3.31 10.03.2006 | |
7531 | |
7532 *) Изменение: теперь nginx передаёт неверные ответы проксированного | |
7533 бэкенда. | |
7534 | |
7535 *) Добавление: директивы listen поддерживают адрес в виде "*:порт". | |
7536 | |
7537 *) Добавление: поддержка EVFILER_TIMER в MacOSX 10.4. | |
7538 | |
7539 *) Изменение: обход ошибки обработки миллисекундных таймаутов kqueue в | |
7540 64-битном ядре MacOSX. | |
7541 Спасибо Андрею Нигматулину. | |
7542 | |
7543 *) Исправление: если внутри одного сервера описаны несколько директив | |
7544 listen, слушающих на разных адресах, то имена серверов вида | |
7545 "*.domain.tld" работали только для первого адреса; ошибка появилась в | |
7546 0.3.18. | |
7547 | |
7548 *) Исправление: при использовании протокола HTTPS в директиве proxy_pass | |
7549 не передавались запросы с телом, записанным во временный файл. | |
7550 | |
7551 *) Исправление: совместимость с perl 5.8.8. | |
7552 | |
7553 | |
7554 Изменения в nginx 0.3.30 22.02.2006 | |
7555 | |
7556 *) Изменение: уровень записи в лог ошибки ECONNABORTED изменён на error | |
7557 с уровня crit. | |
7558 | |
7559 *) Исправление: модуль ngx_http_perl_module не собирался без модуля | |
7560 ngx_http_ssi_filter_module. | |
7561 | |
7562 *) Исправление: nginx не собирался на i386 платформе, если использовался | |
7563 PIC; ошибка появилась в 0.3.27. | |
7564 | |
7565 | |
7566 Изменения в nginx 0.3.29 20.02.2006 | |
7567 | |
7568 *) Добавление: теперь nginx использует меньше памяти, если PHP в режиме | |
7569 FastCGI передаёт большое количество предупреждений перед ответом. | |
7570 | |
7571 *) Исправление: в ответах 204 для запросов версии HTTP/1.1 выдавалась | |
7572 строка заголовка "Transfer-Encoding: chunked". | |
7573 | |
7574 *) Исправление: nginx возвращал 502 код ответа, если FastCGI сервер | |
7575 передавал полные строки заголовка ответа в отдельных FastCGI записях. | |
7576 | |
7577 *) Исправление: если в директиве post_action был указан проксируемый | |
7578 URI, то он выполнялся только после успешного завершения запроса. | |
7579 | |
7580 | |
7581 Изменения в nginx 0.3.28 16.02.2006 | |
7582 | |
7583 *) Добавление: директива restrict_host_names упразднена. | |
7584 | |
7585 *) Добавление: параметр конфигурации --with-cpu-opt=ppc64. | |
7586 | |
7587 *) Исправление: при некоторых условиях проксированное соединение с | |
7588 клиентом завершалось преждевременно. | |
7589 Спасибо Владимиру Шутову. | |
7590 | |
7591 *) Исправление: строка заголовка "X-Accel-Limit-Rate" не учитывалась для | |
7592 запросов, перенаправленных с помощью строки "X-Accel-Redirect". | |
7593 | |
7594 *) Исправление: директива post_action работала только после успешного | |
7595 завершения запроса. | |
7596 | |
7597 *) Исправление: тело проксированного ответа, создаваемого директивой | |
7598 post_action, передавалось клиенту. | |
7599 | |
7600 | |
7601 Изменения в nginx 0.3.27 08.02.2006 | |
7602 | |
7603 *) Изменение: директивы variables_hash_max_size и | |
7604 variables_hash_bucket_size. | |
7605 | |
7606 *) Добавление: переменная $body_bytes_sent доступна не только в | |
7607 директиве log_format. | |
7608 | |
7609 *) Добавление: переменные $ssl_protocol и $ssl_cipher. | |
7610 | |
7611 *) Добавление: определение размера строки кэша распространённых | |
7612 процессоров при старте. | |
7613 | |
7614 *) Добавление: директива accept_mutex теперь поддерживается посредством | |
7615 fcntl(2) на платформах, отличных от i386, amd64, sparc64 и ppc. | |
7616 | |
7617 *) Добавление: директива lock_file и параметр автоконфигурации | |
7618 --with-lock-path=PATH. | |
7619 | |
7620 *) Исправление: при использовании протокола HTTPS в директиве proxy_pass | |
7621 не передавались запросы с телом. | |
7622 | |
7623 | |
7624 Изменения в nginx 0.3.26 03.02.2006 | |
7625 | |
7626 *) Изменение: директива optimize_host_names переименована в | |
7627 optimize_server_names. | |
7628 | |
7629 *) Исправление: при проксировании подзапроса в SSI бэкенду передавался | |
7630 URI основного запроса, если в директиве proxy_pass отсутствовал URI. | |
7631 | |
7632 | |
7633 Изменения в nginx 0.3.25 01.02.2006 | |
7634 | |
7635 *) Исправление: при неверной конфигурации на старте или во время | |
7636 переконфигурации происходил segmentation fault; ошибка появилась в | |
7637 0.3.24. | |
7638 | |
7639 | |
7640 Изменения в nginx 0.3.24 01.02.2006 | |
7641 | |
7642 *) Изменение: обход ошибки в kqueue во FreeBSD. | |
7643 | |
7644 *) Исправление: ответ, создаваемый директивой post_action, теперь не | |
7645 передаётся клиенту. | |
7646 | |
7647 *) Исправление: при использовании большого количества лог-файлов | |
7648 происходила утечка памяти. | |
7649 | |
7650 *) Исправление: внутри одного location работала только первая директива | |
7651 proxy_redirect. | |
7652 | |
7653 *) Исправление: на 64-битных платформах при старте мог произойти | |
7654 segmentation fault, если использовалось большое количество имён в | |
7655 директивах server_name; ошибка появилась в 0.3.18. | |
7656 | |
7657 | |
7658 Изменения в nginx 0.3.23 24.01.2006 | |
7659 | |
7660 *) Добавление: директива optimize_host_names. | |
7661 | |
7662 *) Исправление: ошибки при использовании переменных в директивах path и | |
7663 alias. | |
7664 | |
7665 *) Исправление: модуль ngx_http_perl_module неправильно собирался на | |
7666 Linux и Solaris. | |
7667 | |
7668 | |
7669 Изменения в nginx 0.3.22 17.01.2006 | |
7670 | |
7671 *) Добавление: модуль ngx_http_perl_module поддерживает методы $r->args | |
7672 и $r->unescape. | |
7673 | |
7674 *) Добавление: метод $r->query_string в модуле ngx_http_perl_module | |
7675 упразднён. | |
7676 | |
7677 *) Исправление: если в директиве valid_referers указаны только none или | |
7678 blocked, то происходил segmentation fault; ошибка появилась в 0.3.18. | |
7679 | |
7680 | |
7681 Изменения в nginx 0.3.21 16.01.2006 | |
7682 | |
7683 *) Добавление: модуль ngx_http_perl_module. | |
7684 | |
7685 *) Изменение: директива valid_referers разрешает использовать рефереры | |
7686 совсем без URI. | |
7687 | |
7688 | |
7689 Изменения в nginx 0.3.20 11.01.2006 | |
7690 | |
7691 *) Исправление: ошибки в обработке SSI. | |
7692 | |
7693 *) Исправление: модуль ngx_http_memcached_module не поддерживал ключи в | |
7694 виде /uri?args. | |
7695 | |
7696 | |
7697 Изменения в nginx 0.3.19 28.12.2005 | |
7698 | |
7699 *) Добавление: директивы path и alias поддерживают переменные. | |
7700 | |
7701 *) Изменение: теперь директива valid_referers опять учитывает URI. | |
7702 | |
7703 *) Исправление: ошибки в обработке SSI. | |
7704 | |
7705 | |
7706 Изменения в nginx 0.3.18 26.12.2005 | |
7707 | |
7708 *) Добавление: директива server_names поддерживает имена вида | |
7709 ".domain.tld". | |
7710 | |
7711 *) Добавление: директива server_names использует хэш для имён вида | |
7712 "*.domain.tld" и более эффективный хэш для обычных имён. | |
7713 | |
7714 *) Изменение: директивы server_names_hash_max_size и | |
7715 server_names_hash_bucket_size. | |
7716 | |
7717 *) Изменение: директивы server_names_hash и server_names_hash_threshold | |
7718 упразднены. | |
7719 | |
7720 *) Добавление: директива valid_referers использует хэш для имён сайтов. | |
7721 | |
7722 *) Изменение: теперь директива valid_referers проверяет только имена | |
7723 сайтов без учёта URI. | |
7724 | |
7725 *) Исправление: некоторые имена вида ".domain.tld" неверно | |
7726 обрабатывались модулем ngx_http_map_module. | |
7727 | |
7728 *) Исправление: если конфигурационного файла не было, то происходил | |
7729 segmentation fault; ошибка появилась в 0.3.12. | |
7730 | |
7731 *) Исправление: на 64-битных платформах при старте мог произойти | |
7732 segmentation fault; ошибка появилась в 0.3.16. | |
7733 | |
7734 | |
7735 Изменения в nginx 0.3.17 18.12.2005 | |
7736 | |
7737 *) Изменение: на Linux configure теперь проверяет наличие epoll и | |
7738 sendfile64() в ядре. | |
7739 | |
7740 *) Добавление: директива map поддерживает доменные имена в формате | |
7741 ".domain.tld". | |
7742 | |
7743 *) Исправление: во время SSL handshake не иcпользовались таймауты; | |
7744 ошибка появилась в 0.2.4. | |
7745 | |
7746 *) Исправление: в использовании протокола HTTPS в директиве proxy_pass. | |
7747 | |
7748 *) Исправление: при использовании протокола HTTPS в директиве proxy_pass | |
7749 по умолчанию использовался порт 80. | |
7750 | |
7751 | |
7752 Изменения в nginx 0.3.16 16.12.2005 | |
7753 | |
7754 *) Добавление: модуль ngx_http_map_module. | |
7755 | |
7756 *) Добавление: директивы types_hash_max_size и types_hash_bucket_size. | |
7757 | |
7758 *) Добавление: директива ssi_value_length. | |
7759 | |
7760 *) Добавление: директива worker_rlimit_core. | |
7761 | |
7762 *) Изменение: при сборке компиляторами icc 8.1 и 9.0 с оптимизацией для | |
7763 Pentium 4 номер соединения в логах всегда был равен 1. | |
7764 | |
7765 *) Исправление: команда config timefmt в SSI задавала неверный формат | |
7766 времени. | |
7767 | |
7768 *) Исправление: nginx не закрывал соединения с IMAP/POP3 бэкендом при | |
7769 использовании SSL соединений; ошибка появилась в 0.3.13. | |
7770 Спасибо Rob Mueller. | |
7771 | |
7772 *) Исправление: segmentation fault мог произойти во время SSL shutdown; | |
7773 ошибка появилась в 0.3.13. | |
7774 | |
7775 | |
7776 Изменения в nginx 0.3.15 07.12.2005 | |
7777 | |
7778 *) Добавление: новой код 444 в директиве return для закрытия соединения. | |
7779 | |
7780 *) Добавление: директива so_keepalive в IMAP/POP3 прокси. | |
7781 | |
7782 *) Исправление: nginx теперь вызывает abort() при обнаружении незакрытых | |
7783 соединений только при плавном выходе и включённой директиве | |
7784 debug_points. | |
7785 | |
7786 | |
7787 Изменения в nginx 0.3.14 05.12.2005 | |
7788 | |
7789 *) Исправление: в ответе 304 передавалось тело ответа; ошибка появилась | |
7790 в 0.3.13. | |
7791 | |
7792 | |
7793 Изменения в nginx 0.3.13 05.12.2005 | |
7794 | |
7795 *) Добавление: IMAP/POP3 прокси поддерживает STARTTLS и STLS. | |
7796 | |
7797 *) Исправление: IMAP/POP3 прокси не работала с методами select, poll и | |
7798 /dev/poll. | |
7799 | |
7800 *) Исправление: ошибки в обработке SSI. | |
7801 | |
7802 *) Исправление: sendfilev() в Solaris теперь не используется при | |
7803 передаче тела запроса FastCGI-серверу через unix domain сокет. | |
7804 | |
7805 *) Исправление: директива auth_basic не запрещала аутентификацию; ошибка | |
7806 появилась в 0.3.11. | |
7807 | |
7808 | |
7809 Изменения в nginx 0.3.12 26.11.2005 | |
7810 | |
7811 *) Безопасность: если nginx был собран с модулем ngx_http_realip_module, | |
7812 то при использовании директивы "satisfy_any on" директивы доступа и | |
7813 аутентификации не работали. Модуль ngx_http_realip_module не | |
7814 собирался и не собирается по умолчанию. | |
7815 | |
7816 *) Изменение: имя переменной "$time_gmt" изменено на "$time_local". | |
7817 | |
7818 *) Изменение: директивы proxy_header_buffer_size и | |
7819 fastcgi_header_buffer_size переименованы соответственно в | |
7820 proxy_buffer_size и fastcgi_buffer_size. | |
7821 | |
7822 *) Добавление: модуль ngx_http_memcached_module. | |
7823 | |
7824 *) Добавление: директива proxy_buffering. | |
7825 | |
7826 *) Исправление: изменение в работе с accept mutex при использовании | |
7827 метода rtsig; ошибка появилась в 0.3.0. | |
7828 | |
7829 *) Исправление: если клиент передал строку "Transfer-Encoding: chunked" | |
7830 в заголовке запроса, то nginx теперь выдаёт ошибку 411. | |
7831 | |
7832 *) Исправление: при наследовании директивы auth_basic с уровня http в | |
7833 строке "WWW-Authenticate" заголовка ответа выводился realm без текста | |
7834 "Basic realm". | |
7835 | |
7836 *) Исправление: если в директиве access_log был явно указан формат | |
7837 combined, то в лог записывались пустые строки; ошибка появилась в | |
7838 0.3.8. | |
7839 | |
7840 *) Исправление: nginx не работал на платформе sparc под любыми OS, кроме | |
7841 Solaris. | |
7842 | |
7843 *) Исправление: в директиве if теперь не нужно разделять пробелом строку | |
7844 в кавычках и закрывающую скобку. | |
7845 | |
7846 | |
7847 Изменения в nginx 0.3.11 15.11.2005 | |
7848 | |
7849 *) Исправление: nginx не передавал при проксировании тело запроса и | |
7850 строки заголовка клиента; ошибка появилась в 0.3.10. | |
7851 | |
7852 | |
7853 Изменения в nginx 0.3.10 15.11.2005 | |
7854 | |
7855 *) Изменение: директива valid_referers и переменная $invalid_referer | |
7856 перенесены из модуля ngx_http_rewrite_module в новый модуль | |
7857 ngx_http_referer_module. | |
7858 | |
7859 *) Изменение: имя переменной "$apache_bytes_sent" изменено на | |
7860 "$body_bytes_sent". | |
7861 | |
7862 *) Добавление: переменные "$sent_http_...". | |
7863 | |
7864 *) Добавление: директива if поддерживает операции "=" и "!=". | |
7865 | |
7866 *) Добавление: директива proxy_pass поддерживает протокол HTTPS. | |
7867 | |
7868 *) Добавление: директива proxy_set_body. | |
7869 | |
7870 *) Добавление: директива post_action. | |
7871 | |
7872 *) Добавление: модуль ngx_http_empty_gif_module. | |
7873 | |
7874 *) Добавление: директива worker_cpu_affinity для Linux. | |
7875 | |
7876 *) Исправление: директива rewrite не раскодировала символы в редиректах | |
7877 в URI, теперь символы раскодируются, кроме символов %00-%25 и | |
7878 %7F-%FF. | |
7879 | |
7880 *) Исправление: nginx не собирался компилятором icc 9.0. | |
7881 | |
7882 *) Исправление: если для статического файла нулевого размера был | |
7883 разрешён SSI, то ответ передавался неверно при кодировании chunk'ами. | |
7884 | |
7885 | |
7886 Изменения в nginx 0.3.9 10.11.2005 | |
7887 | |
7888 *) Исправление: nginx считал небезопасными URI, в которых между двумя | |
7889 слэшами находилось два любых символа; ошибка появилась в 0.3.8. | |
7890 | |
7891 | |
7892 Изменения в nginx 0.3.8 09.11.2005 | |
7893 | |
7894 *) Безопасность: nginx теперь проверят URI, полученные от бэкенда в | |
7895 строке "X-Accel-Redirect" в заголовке ответа, или в SSI файле на | |
7896 наличие путей "/../" и нулей. | |
7897 | |
7898 *) Изменение: nginx теперь не воспринимает пустое имя как правильное в | |
7899 строке "Authorization" в заголовке запроса. | |
7900 | |
7901 *) Добавление: директива ssl_session_timeout модулей ngx_http_ssl_module | |
7902 и ngx_imap_ssl_module. | |
7903 | |
7904 *) Добавление: директива auth_http_header модуля | |
7905 ngx_imap_auth_http_module. | |
7906 | |
7907 *) Добавление: директива add_header. | |
7908 | |
7909 *) Добавление: модуль ngx_http_realip_module. | |
7910 | |
7911 *) Добавление: новые переменные для использования в директиве | |
7912 log_format: $bytes_sent, $apache_bytes_sent, $status, $time_gmt, | |
7913 $uri, $request_time, $request_length, $upstream_status, | |
7914 $upstream_response_time, $gzip_ratio, $uid_got, $uid_set, | |
7915 $connection, $pipe и $msec. Параметры в виде "%name" скоро будут | |
7916 упразднены. | |
7917 | |
7918 *) Изменение: в директиве "if" ложными значениями переменных теперь | |
7919 являются пустая строка "" и строки, начинающиеся на "0". | |
7920 | |
7921 *) Исправление: при работает с проксированными или FastCGI-серверами | |
7922 nginx мог оставлять открытыми соединения и временные файлы с | |
7923 запросами клиентов. | |
7924 | |
7925 *) Исправление: рабочие процессы не сбрасывали буферизированные логи при | |
7926 плавном выходе. | |
7927 | |
7928 *) Исправление: если URI запроса изменялось с помощью rewrite, а затем | |
7929 запрос проксировался в location, заданном регулярным выражением, то | |
7930 бэкенду передавался неверный запрос; ошибка появилась в 0.2.6. | |
7931 | |
7932 *) Исправление: директива expires не удаляла уже установленную строку | |
7933 заголовка "Expires". | |
7934 | |
7935 *) Исправление: при использовании метода rtsig и нескольких рабочих | |
7936 процессах nginx мог перестать принимать запросы. | |
7937 | |
7938 *) Исправление: в SSI командах неверно обрабатывались строки "\"" и | |
7939 "\'". | |
7940 | |
7941 *) Исправление: если ответ заканчивался сразу же после SSI команды, то | |
7942 при использовании сжатия ответ передавался не до конца или не | |
7943 передавался вообще. | |
7944 | |
7945 | |
7946 Изменения в nginx 0.3.7 27.10.2005 | |
7947 | |
7948 *) Добавление: директива access_log поддерживает параметр buffer=. | |
7949 | |
7950 *) Исправление: nginx не собирался на платформах, отличных от i386, | |
7951 amd64, sparc и ppc; ошибка появилась в 0.3.2. | |
7952 | |
7953 | |
7954 Изменения в nginx 0.3.6 24.10.2005 | |
7955 | |
7956 *) Изменение: IMAP/POP3 прокси теперь не передаёт серверу авторизации | |
7957 пустой логин. | |
7958 | |
7959 *) Добавление: директива log_format поддерживает переменные в виде | |
7960 $name. | |
7961 | |
7962 *) Исправление: если хотя бы в одном сервере не было описано ни одной | |
7963 директивы listen, то nginx не слушал на 80 порту; ошибка появилась в | |
7964 0.3.3. | |
7965 | |
7966 *) Исправление: если в директиве proxy_pass отсутствовал URI, то всегда | |
7967 использовался порт 80. | |
7968 | |
7969 | |
7970 Изменения в nginx 0.3.5 21.10.2005 | |
7971 | |
7972 *) Исправление: если логин IMAP/POP3 менялся сервером авторизации, то | |
7973 мог произойти segmentation fault; ошибка появилась в 0.2.2. | |
7974 | |
7975 *) Исправление: accept mutex не работал, все соединения обрабатывались | |
7976 одним рабочим процессом; ошибка появилась в 0.3.3. | |
7977 | |
7978 *) Исправление: при использовании метода rtsig и директивы | |
7979 timer_resolution не работали таймауты. | |
7980 | |
7981 | |
7982 Изменения в nginx 0.3.4 19.10.2005 | |
7983 | |
7984 *) Исправление: nginx не собирался на Linux 2.4+ и MacOS X; ошибка | |
7985 появилась в 0.3.3. | |
7986 | |
7987 | |
7988 Изменения в nginx 0.3.3 19.10.2005 | |
7989 | |
7990 *) Изменение: параметры "bl" и "af" директивы listen переименованы в | |
7991 "backlog" и "accept_filter". | |
7992 | |
7993 *) Добавление: параметры "rcvbuf" и "sndbuf" в директиве listen. | |
7994 | |
7995 *) Изменение: параметр лога $msec теперь не требует дополнительного | |
7996 системного вызова gettimeofday(). | |
7997 | |
7998 *) Добавление: ключ -t теперь проверяет директивы listen. | |
7999 | |
8000 *) Исправление: если в директиве listen был указан неверный адрес, то | |
8001 nginx после сигнала -HUP оставлял открытый сокет в состоянии CLOSED. | |
8002 | |
8003 *) Исправление: для индексных файлов, содержащих в имени переменную, мог | |
8004 неверно выставляться тип mime по умолчанию; ошибка появилась в 0.3.0. | |
8005 | |
8006 *) Добавление: директива timer_resolution. | |
8007 | |
8008 *) Добавление: параметр лога $upstream_response_time в миллисекундах. | |
8009 | |
8010 *) Исправление: временный файл с телом запроса клиента теперь удаляется | |
8011 сразу после того, как клиенту передан заголовок ответа. | |
8012 | |
8013 *) Исправление: совместимость с OpenSSL 0.9.6. | |
8014 | |
8015 *) Исправление: пути к файлам с SSL сертификатом и ключом не могли быть | |
8016 относительными. | |
8017 | |
8018 *) Исправление: директива ssl_prefer_server_ciphers не работала для | |
8019 модуля ngx_imap_ssl_module. | |
8020 | |
8021 *) Исправление: директива ssl_protocols позволяла задать только один | |
8022 протокол. | |
8023 | |
8024 | |
8025 Изменения в nginx 0.3.2 12.10.2005 | |
8026 | |
8027 *) Добавление: поддержка Sun Studio 10 C compiler. | |
8028 | |
8029 *) Добавление: директивы proxy_upstream_max_fails, | |
8030 proxy_upstream_fail_timeout, fastcgi_upstream_max_fails и | |
8031 fastcgi_upstream_fail_timeout. | |
8032 | |
8033 | |
8034 Изменения в nginx 0.3.1 10.10.2005 | |
8035 | |
8036 *) Исправление: во время переполнения очереди сигналов при использовании | |
8037 метода rtsig происходил segmentation fault; ошибка появилась в 0.2.0. | |
8038 | |
8039 *) Изменение: корректная обработка пар "\\", "\"", "\'" и "\$" в SSI. | |
8040 | |
8041 | |
8042 Изменения в nginx 0.3.0 07.10.2005 | |
8043 | |
8044 *) Изменение: убрано десятидневное ограничение времени работы рабочего | |
8045 процесса. Ограничение было введено из-за переполнения миллисекундных | |
8046 таймеров. | |
8047 | |
8048 | |
8049 Изменения в nginx 0.2.6 05.10.2005 | |
8050 | |
8051 *) Изменение: с 60 до 10 секунд уменьшено время повторного обращения к | |
8052 бэкенду при использовании распределения нагрузки. | |
8053 | |
8054 *) Изменение: директива proxy_pass_unparsed_uri упразднена, оригинальный | |
8055 запрос теперь передаётся, если в директиве proxy_pass отсутствует | |
8056 URI. | |
8057 | |
8058 *) Добавление: директива error_page поддерживает редиректы и позволяет | |
8059 более гибко менять код ошибки. | |
8060 | |
8061 *) Изменение: в проксированных подзапросах теперь игнорируется | |
8062 переданный charset. | |
8063 | |
8064 *) Исправление: если после изменения URI в блоке if для запроса не | |
8065 находилась новая конфигурация, то правила модуля | |
8066 ngx_http_rewrite_module выполнялись снова. | |
8067 | |
8068 *) Исправление: если директива set устанавливала переменную модуля | |
8069 ngx_http_geo_module в какой-либо части конфигурации, то эта | |
8070 переменная не была доступна в других частях конфигурации и выдавалась | |
8071 ошибка "using uninitialized variable"; ошибка появилась в 0.2.2. | |
8072 | |
8073 | |
8074 Изменения в nginx 0.2.5 04.10.2005 | |
8075 | |
8076 *) Изменение: дублирующее значение переменной модуля ngx_http_geo_module | |
8077 теперь выдаёт предупреждение и изменяет старое значение. | |
8078 | |
8079 *) Добавление: модуль ngx_http_ssi_module поддерживает команду set. | |
8080 | |
8081 *) Добавление: модуль ngx_http_ssi_module поддерживает параметр file в | |
8082 команде include. | |
8083 | |
8084 *) Добавление: модуль ngx_http_ssi_module поддерживает подстановку | |
8085 значений переменных в выражениях команды if. | |
8086 | |
8087 | |
8088 Изменения в nginx 0.2.4 03.10.2005 | |
8089 | |
8090 *) Добавление: модуль ngx_http_ssi_module поддерживает выражения | |
8091 "$var=text", "$var!=text", "$var=/text/" и "$var!=/text/" в команде | |
8092 if. | |
8093 | |
8094 *) Исправление: ошибки при проксировании location без слэша в конце; | |
8095 ошибка появилась в 0.1.44. | |
8096 | |
8097 *) Исправление: при использовании метода rtsig мог произойти | |
8098 segmentation fault; ошибка появилась в 0.2.0. | |
8099 | |
8100 | |
8101 Изменения в nginx 0.2.3 30.09.2005 | |
8102 | |
8103 *) Исправление: nginx не собирался без параметра --with-debug; ошибка | |
8104 появилась в 0.2.2. | |
8105 | |
8106 | |
8107 Изменения в nginx 0.2.2 30.09.2005 | |
8108 | |
8109 *) Добавление: команда config errmsg в модуле ngx_http_ssi_module. | |
8110 | |
8111 *) Изменение: переменные модуля ngx_http_geo_module можно переопределять | |
8112 директивой set. | |
8113 | |
8114 *) Добавление: директивы ssl_protocols и ssl_prefer_server_ciphers | |
8115 модулей ngx_http_ssl_module и ngx_imap_ssl_module. | |
8116 | |
8117 *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе | |
8118 длинных имён файлов; | |
8119 | |
8120 *) Исправление: модуль ngx_http_autoindex_module теперь не показывает | |
8121 файлы, начинающиеся на точку. | |
8122 | |
8123 *) Исправление: если SSL handshake завершался с ошибкой, то это могло | |
8124 привести также к закрытию другого соединения. | |
8125 Спасибо Rob Mueller. | |
8126 | |
8127 *) Исправление: экспортные версии MSIE 5.x не могли соединиться по | |
8128 HTTPS. | |
8129 | |
8130 | |
8131 Изменения в nginx 0.2.1 23.09.2005 | |
8132 | |
8133 *) Исправление: если все бэкенды, используемые для балансировки | |
8134 нагрузки, оказывались в нерабочем состоянии после одной ошибки, то | |
8135 nginx мог зациклится; ошибка появилась в 0.2.0. | |
8136 | |
8137 | |
8138 Изменения в nginx 0.2.0 23.09.2005 | |
8139 | |
8140 *) Изменились имена pid-файлов, используемые во время обновления | |
8141 исполняемого файла. Ручное переименование теперь не нужно. Старый | |
8142 основной процесс добавляет к своему pid-файл суффикс ".oldbin" и | |
8143 запускает новый исполняемый файл. Новый основной процесс создаёт | |
8144 обычный pid-файл без суффикса ".newbin". Если новый основной процесс | |
8145 выходит, то старый процесс переименовывает свой pid-файл c суффиксом | |
8146 ".oldbin" в pid-файл без суффикса. При обновлении с версии 0.1.х до | |
8147 0.2.0 нужно учитывать, что оба процесса - старый 0.1.x и новый | |
8148 0.2.0 - используют pid-файл без суффиксов. | |
8149 | |
8150 *) Изменение: директива worker_connections, новое название директивы | |
8151 connections; директива теперь задаёт максимальное число соединений, а | |
8152 не максимально возможный номер дескриптора для сокета. | |
8153 | |
8154 *) Добавление: SSL поддерживает кэширование сессий в пределах одного | |
8155 рабочего процесса. | |
8156 | |
8157 *) Добавление: директива satisfy_any. | |
8158 | |
8159 *) Изменение: модули ngx_http_access_module и ngx_http_auth_basic_module | |
8160 не работают для подзапросов. | |
8161 | |
8162 *) Добавление: директивы worker_rlimit_nofile и | |
8163 worker_rlimit_sigpending. | |
8164 | |
8165 *) Исправление: если все бэкенды, используемые для балансировки | |
8166 нагрузки, оказывались в нерабочем состоянии после одной ошибки, то | |
8167 nginx не обращался к ним в течение 60 секунд. | |
8168 | |
8169 *) Исправление: в парсинге аргументов IMAP/POP3 команд. | |
8170 Спасибо Rob Mueller. | |
8171 | |
8172 *) Исправление: ошибки при использовании SSL в IMAP/POP3 прокси. | |
8173 | |
8174 *) Исправление: ошибки при использовании SSI и сжатия. | |
8175 | |
8176 *) Исправление: в ответах 304 не добавлялись строки заголовка ответа | |
8177 "Expires" и "Cache-Control". | |
8178 Спасибо Александру Кукушкину. | |
8179 | |
8180 | |
8181 Изменения в nginx 0.1.45 08.09.2005 | |
8182 | |
8183 *) Изменение: директива ssl_engine упразднена в модуле | |
8184 ngx_http_ssl_module и перенесена на глобальный уровень. | |
8185 | |
8186 *) Исправление: ответы с подзапросами, включённые с помощью SSI, не | |
8187 передавались через SSL соединение. | |
8188 | |
8189 *) Разные исправления в IMAP/POP3 прокси. | |
8190 | |
8191 | |
8192 Изменения в nginx 0.1.44 06.09.2005 | |
8193 | |
8194 *) Добавление: IMAP/POP3 прокси поддерживает SSL. | |
8195 | |
8196 *) Добавление: директива proxy_timeout модуля ngx_imap_proxy_module. | |
8197 | |
8198 *) Добавление: директива userid_mark. | |
8199 | |
8200 *) Добавление: значение переменной $remote_user определяется независимо | |
8201 от того, используется ли авторизация или нет. | |
8202 | |
8203 | |
8204 Изменения в nginx 0.1.43 30.08.2005 | |
8205 | |
8206 *) Добавление: listen(2) backlog в директиве listen можно менять по | |
8207 сигналу -HUP. | |
8208 | |
8209 *) Добавление: скрипт geo2nginx.pl добавлен в contrib. | |
8210 | |
8211 *) Изменение: параметры FastCGI с пустым значениями теперь передаются | |
8212 серверу. | |
8213 | |
8214 *) Исправление: если в ответе проксированного сервера или FastCGI | |
8215 сервера была строка "Cache-Control", то при использовании директивы | |
8216 expires происходил segmentation fault или рабочий процесс мог | |
8217 зациклится; в режиме прокси ошибка появилась в 0.1.29. | |
8218 | |
8219 | |
8220 Изменения в nginx 0.1.42 23.08.2005 | |
8221 | |
8222 *) Исправление: если URI запроса получался нулевой длины после обработки | |
8223 модулем ngx_http_rewrite_module, то в модуле ngx_http_proxy_module | |
8224 происходил segmentation fault или bus error. | |
8225 | |
8226 *) Исправление: директива limit_rate не работала внутри блока if; ошибка | |
8227 появилась в 0.1.38. | |
8228 | |
8229 | |
8230 Изменения в nginx 0.1.41 25.07.2005 | |
8231 | |
8232 *) Исправление: если переменная использовалась в файле конфигурации, то | |
8233 она не могла использоваться в SSI. | |
8234 | |
8235 | |
8236 Изменения в nginx 0.1.40 22.07.2005 | |
8237 | |
8238 *) Исправление: если клиент слал очень длинную строку заголовка, то в | |
8239 логе не помещалась информация, связанная с этим запросом. | |
8240 | |
8241 *) Исправление: при использовании "X-Accel-Redirect" не передавалась | |
8242 строка "Set-Cookie"; ошибка появилась в 0.1.39. | |
8243 | |
8244 *) Исправление: при использовании "X-Accel-Redirect" не передавалась | |
8245 строка "Content-Disposition". | |
8246 | |
8247 *) Исправление: по сигналу SIGQUIT основной процесс не закрывал сокеты, | |
8248 на которых он слушал. | |
8249 | |
8250 *) Исправление: после обновления исполняемого файла на лету на Linux и | |
8251 Solaris название процесса в команде ps становилось короче. | |
8252 | |
8253 | |
8254 Изменения в nginx 0.1.39 14.07.2005 | |
8255 | |
8256 *) Изменения в модуле ngx_http_charset_module: директива default_charset | |
8257 упразднена; директива charset задаёт кодировку ответа; директива | |
8258 source_charset задаёт только исходную кодировку. | |
8259 | |
8260 *) Исправление: при перенаправлении ошибки 401, полученной от бэкенда, | |
8261 не передавалась строка заголовка "WWW-Authenticate". | |
8262 | |
8263 *) Исправление: модули ngx_http_proxy_module и ngx_http_fastcgi_module | |
8264 могли закрыть соединение до того, как что-нибудь было передано | |
8265 клиенту; ошибка появилась в 0.1.38. | |
8266 | |
8267 *) Изменение: обработка ошибки инициализации в crypt_r() в Linux glibc. | |
8268 | |
8269 *) Исправление: модуль ngx_http_ssi_module не поддерживал относительные | |
8270 URI в команде include virtual. | |
8271 | |
8272 *) Исправление: если в строке заголовка ответа бэкенда была строка | |
8273 "Location", которую nginx не должен был изменять, то в ответе | |
8274 передавалось тело 500 ошибки; ошибка появилась в 0.1.29. | |
8275 | |
8276 *) Исправление: некоторые директивы модулей ngx_http_proxy_module и | |
8277 ngx_http_fastcgi_module не наследовались с уровня server на уровень | |
8278 location; ошибка появилась в 0.1.29. | |
8279 | |
8280 *) Исправление: модуль ngx_http_ssl_module не поддерживал цепочки | |
8281 сертификатов. | |
8282 | |
8283 *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе | |
8284 длинных имён файлов; ошибка появилась в 0.1.38. | |
8285 | |
8286 *) Исправления в IMAP/POP3 прокси при взаимодействии с бэкендом на | |
8287 стадии login. | |
8288 | |
8289 | |
8290 Изменения в nginx 0.1.38 08.07.2005 | |
8291 | |
8292 *) Добавление: директива limit_rate поддерживается в режиме прокси и | |
8293 FastCGI. | |
8294 | |
8295 *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка | |
8296 "X-Accel-Limit-Rate" в ответе бэкенда. | |
8297 | |
8298 *) Добавление: директива break. | |
8299 | |
8300 *) Добавление: директива log_not_found. | |
8301 | |
8302 *) Исправление: при перенаправлении запроса с помощью строки заголовка | |
8303 "X-Accel-Redirect" не изменялся код ответа. | |
8304 | |
8305 *) Исправление: переменные, установленные директивой set не могли | |
8306 использоваться в SSI. | |
8307 | |
8308 *) Исправление: при включении в SSI более одного удалённого подзапроса | |
8309 мог произойти segmentation fault. | |
8310 | |
8311 *) Исправление: если статусная строка в ответе бэкенда передавалась в | |
8312 двух пакетах, то nginx считал ответ неверным; ошибка появилась в | |
8313 0.1.29. | |
8314 | |
8315 *) Добавление: директива ssi_types. | |
8316 | |
8317 *) Добавление: директива autoindex_exact_size. | |
8318 | |
8319 *) Исправление: модуль ngx_http_autoindex_module не поддерживал длинные | |
8320 имена файлов в UTF-8. | |
8321 | |
8322 *) Добавление: IMAP/POP3 прокси. | |
8323 | |
8324 | |
8325 Изменения в nginx 0.1.37 23.06.2005 | |
8326 | |
8327 *) Изменение: в конце файла nginx.pid теперь добавляется "\n". | |
8328 | |
8329 *) Исправление: при включении большого количества вставок или нескольких | |
8330 больших вставок с помощью SSI ответ мог передаваться не полностью. | |
8331 | |
8332 *) Исправление: если все бэкенды возвращали ответ 404, то при | |
8333 использовании параметра http_404 в директивах proxy_next_upstream или | |
8334 fastcgi_next_upstream, nginx начинал запрашивать все бэкенды снова. | |
8335 | |
8336 | |
8337 Изменения в nginx 0.1.36 15.06.2005 | |
8338 | |
8339 *) Изменение: если в заголовке запроса есть дублирующиеся строки "Host", | |
8340 "Connection", "Content-Length" и "Authorization", то nginx теперь | |
8341 выдаёт ошибку 400. | |
8342 | |
8343 *) Изменение: директива post_accept_timeout упразднена. | |
8344 | |
8345 *) Добавление: параметры default, af=, bl=, deferred и bind в директиве | |
8346 listen. | |
8347 | |
8348 *) Добавление: поддержка accept фильтров во FreeBSD. | |
8349 | |
8350 *) Добавление: поддержка TCP_DEFER_ACCEPT в Linux. | |
8351 | |
8352 *) Исправление: модуль ngx_http_autoindex_module не поддерживал имена | |
8353 файлов в UTF-8. | |
8354 | |
8355 *) Исправление: после добавления новый лог-файл ротация этого лога по | |
8356 сигналу -USR1 выполнялась, только если переконфигурировать nginx два | |
8357 раза по сигналу -HUP. | |
8358 | |
8359 | |
8360 Изменения в nginx 0.1.35 07.06.2005 | |
8361 | |
8362 *) Добавление: директива working_directory. | |
8363 | |
8364 *) Добавление: директива port_in_redirect. | |
8365 | |
8366 *) Исправление: если заголовок ответа бэкенда не помещался в один пакет, | |
8367 то происходил segmentation fault; ошибка появилась в 0.1.29. | |
8368 | |
8369 *) Исправление: если было сконфигурировано более 10 серверов или в | |
8370 сервере не описана директива "listen", то при запуске мог произойти | |
8371 segmentation fault. | |
8372 | |
8373 *) Исправление: если ответ не помещался во временный файл, то мог | |
8374 произойти segmentation fault. | |
8375 | |
8376 *) Исправление: nginx возвращал ошибку 400 на запросы вида | |
8377 "GET http://www.domain.com/uri HTTP/1.0"; ошибка появилась в 0.1.28. | |
8378 | |
8379 | |
8380 Изменения в nginx 0.1.34 26.05.2005 | |
8381 | |
8382 *) Исправление: при включении больших ответов с помощью SSI рабочий | |
8383 процесс мог зациклиться. | |
8384 | |
8385 *) Исправление: переменные, устанавливаемые директивой "set", не были | |
8386 доступны в SSI. | |
8387 | |
8388 *) Добавление: директива autoindex_localtime. | |
8389 | |
8390 *) Исправление: пустое значение в директиве proxy_set_header запрещает | |
8391 передачу заголовка. | |
8392 | |
8393 | |
8394 Изменения в nginx 0.1.33 23.05.2005 | |
8395 | |
8396 *) Исправление: nginx не собирался с параметром --without-pcre; ошибка | |
8397 появилась в 0.1.29. | |
8398 | |
8399 *) Исправление: 3, 5, 7 и 8 директив proxy_set_header на одном уровне | |
8400 вызывали bus fault при запуске. | |
8401 | |
8402 *) Исправление: в редиректах внутри HTTPS сервера был указан протокол | |
8403 HTTP. | |
8404 | |
8405 *) Исправление: если директива rewrite использовала выделения внутри | |
8406 директивы if, то возвращалась ошибка 500. | |
8407 | |
8408 | |
8409 Изменения в nginx 0.1.32 19.05.2005 | |
8410 | |
8411 *) Исправление: в редиректах, выдаваемых с помощью директивы rewrite, не | |
8412 передавались аргументы; ошибка появилась в 0.1.29. | |
8413 | |
8414 *) Добавление: директива if поддерживает выделения в регулярных | |
8415 выражениях. | |
8416 | |
8417 *) Добавление: директива set поддерживает переменные и выделения из | |
8418 регулярных выражений. | |
8419 | |
8420 *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка | |
8421 "X-Accel-Redirect" в ответе бэкенда. | |
8422 | |
8423 | |
8424 Изменения в nginx 0.1.31 16.05.2005 | |
8425 | |
8426 *) Исправление: при использовании SSL ответ мог передаваться не до | |
8427 конца. | |
8428 | |
8429 *) Исправление: ошибки при обработке SSI в ответе, полученного от | |
8430 FastCGI-сервера. | |
8431 | |
8432 *) Исправление: ошибки при использовании SSI и сжатия. | |
8433 | |
8434 *) Исправление: редирект с кодом 301 передавался без тела ответа; ошибка | |
8435 появилась в 0.1.30. | |
8436 | |
8437 | |
8438 Изменения в nginx 0.1.30 14.05.2005 | |
8439 | |
8440 *) Исправление: при использовании SSI рабочий процесс мог зациклиться. | |
8441 | |
8442 *) Исправление: при использовании SSL ответ мог передаваться не до | |
8443 конца. | |
8444 | |
8445 *) Исправление: если длина части ответа, полученного за один раз от | |
8446 проксируемого или FastCGI сервера была равна 500 байт, то nginx | |
8447 возвращал код ответа 500; в режиме прокси ошибка появилась только в | |
8448 0.1.29. | |
8449 | |
8450 *) Исправление: nginx не считал неверными директивы с 8-ю или 9-ю | |
8451 параметрами. | |
8452 | |
8453 *) Добавление: директива return может возвращать код ответа 204. | |
8454 | |
8455 *) Добавление: директива ignore_invalid_headers. | |
8456 | |
8457 | |
8458 Изменения в nginx 0.1.29 12.05.2005 | |
8459 | |
8460 *) Добавление: модуль ngx_http_ssi_module поддерживает команду include | |
8461 virtual. | |
8462 | |
8463 *) Добавление: модуль ngx_http_ssi_module поддерживает условную команду | |
8464 вида 'if expr="$NAME"' и команды else и endif. Допускается только | |
8465 один уровень вложенности. | |
8466 | |
8467 *) Добавление: модуль ngx_http_ssi_module поддерживает две переменные | |
8468 DATE_LOCAL и DATE_GMT и команду config timefmt. | |
8469 | |
8470 *) Добавление: директива ssi_ignore_recycled_buffers. | |
8471 | |
8472 *) Исправление: если переменная QUERY_STRING не была определена, то в | |
8473 команде echo не ставилось значение по умолчанию. | |
8474 | |
8475 *) Изменение: модуль ngx_http_proxy_module полностью переписан. | |
8476 | |
8477 *) Добавление: директивы proxy_redirect, proxy_pass_request_headers, | |
8478 proxy_pass_request_body и proxy_method. | |
8479 | |
8480 *) Добавление: директива proxy_set_header. Директива proxy_x_var | |
8481 упразднена и должна быть заменена директивой proxy_set_header. | |
8482 | |
8483 *) Изменение: директива proxy_preserve_host упразднена и должна быть | |
8484 заменена директивами "proxy_set_header Host $host" и "proxy_redirect | |
8485 off" или директивой "proxy_set_header Host $host:$proxy_port" и | |
8486 соответствующими ей директивами proxy_redirect. | |
8487 | |
8488 *) Изменение: директива proxy_set_x_real_ip упразднена и должна быть | |
8489 заменена директивой "proxy_set_header X-Real-IP $remote_addr". | |
8490 | |
8491 *) Изменение: директива proxy_add_x_forwarded_for упразднена и должна | |
8492 быть заменена директивой | |
8493 "proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for". | |
8494 | |
8495 *) Изменение: директива proxy_set_x_url упразднена и должна быть | |
8496 заменена директивой | |
8497 "proxy_set_header X-URL http://$host:$server_port$request_uri". | |
8498 | |
8499 *) Добавление: директива fastcgi_param. | |
8500 | |
8501 *) Изменение: директивы fastcgi_root, fastcgi_set_var и fastcgi_params | |
8502 упразднены и должны быть замены директивами fastcgi_param. | |
8503 | |
8504 *) Добавление: директива index может использовать переменные. | |
8505 | |
8506 *) Добавление: директива index может быть указана на уровне http и | |
8507 server. | |
8508 | |
8509 *) Изменение: только последний параметр в директиве index может быть | |
8510 абсолютным. | |
8511 | |
8512 *) Добавление: в директиве rewrite могут использоваться переменные. | |
8513 | |
8514 *) Добавление: директива internal. | |
8515 | |
8516 *) Добавление: переменные CONTENT_LENGTH, CONTENT_TYPE, REMOTE_PORT, | |
8517 SERVER_ADDR, SERVER_PORT, SERVER_PROTOCOL, DOCUMENT_ROOT, | |
8518 SERVER_NAME, REQUEST_METHOD, REQUEST_URI и REMOTE_USER. | |
8519 | |
8520 *) Изменение: nginx теперь передаёт неверные строки в заголовках запроса | |
8521 клиента и ответа бэкенда. | |
8522 | |
8523 *) Исправление: если бэкенд долго не передавал ответ и send_timeout был | |
8524 меньше, чем proxy_read_timeout, то клиенту возвращался ответ 408. | |
8525 | |
8526 *) Исправление: если бэкенд передавал неверную строку в заголовке | |
8527 ответа, то происходил segmentation fault; ошибка появилась в 0.1.26. | |
8528 | |
8529 *) Исправление: при использовании отказоустойчивой конфигурации в | |
8530 FastCGI мог происходить segmentation fault. | |
8531 | |
8532 *) Исправление: директива expires не удаляла уже установленные строки | |
8533 заголовка "Expires" и "Cache-Control". | |
8534 | |
8535 *) Исправление: nginx не учитывал завершающую точку в строке заголовка | |
8536 запроса "Host". | |
8537 | |
8538 *) Исправление: модуль ngx_http_auth_module не работал на Linux. | |
8539 | |
8540 *) Исправление: директива rewrite неверно работала, если в запросе | |
8541 присутствовали аргументы. | |
8542 | |
8543 *) Исправление: nginx не собирался на MacOS X. | |
8544 | |
8545 | |
8546 Изменения в nginx 0.1.28 08.04.2005 | |
8547 | |
8548 *) Исправление: при проксировании больших файлов nginx сильно нагружал | |
8549 процессор. | |
8550 | |
8551 *) Исправление: nginx не собирался gcc 4.0 на Linux. | |
8552 | |
8553 | |
8554 Изменения в nginx 0.1.27 28.03.2005 | |
8555 | |
8556 *) Добавление: параметр blocked в директиве valid_referers. | |
8557 | |
8558 *) Изменение: ошибки обработки заголовка запроса теперь записываются на | |
8559 уровне info, в лог также записывается имя сервера и строки заголовка | |
8560 запроса "Host" и "Referer". | |
8561 | |
8562 *) Изменение: при записи ошибок в лог записывается также строка | |
8563 заголовка запроса "Host". | |
8564 | |
8565 *) Добавление: директива proxy_pass_unparsed_uri. Специальная обработка | |
8566 символов "://" в URI, введённая в версии 0.1.11, теперь упразднена. | |
8567 | |
8568 *) Исправление: nginx не собирался на FreeBSD и Linux, если был указан | |
8569 параметр конфигурации --without-ngx_http_auth_basic_module. | |
8570 | |
8571 | |
8572 Изменения в nginx 0.1.26 22.03.2005 | |
8573 | |
8574 *) Изменение: неверные строки заголовка, переданные клиентом, теперь | |
8575 игнорируется и записываются в error_log на уровне info. | |
8576 | |
8577 *) Изменение: при записи ошибок в лог записывается также имя сервера, | |
8578 при обращении к которому произошла ошибка. | |
8579 | |
8580 *) Добавление: модуль ngx_http_auth_basic_module и директивы auth_basic | |
8581 и auth_basic_user_file. | |
8582 | |
8583 | |
8584 Изменения в nginx 0.1.25 19.03.2005 | |
8585 | |
8586 *) Исправление: nginx не работал на Linux parisc. | |
8587 | |
8588 *) Добавление: nginx теперь не запускается под FreeBSD, если значение | |
8589 sysctl kern.ipc.somaxconn слишком большое. | |
8590 | |
8591 *) Исправление: если модуль ngx_http_index_module делал внутреннее | |
8592 перенаправление запроса в модули ngx_http_proxy_module или | |
8593 ngx_http_fastcgi_module, то файл индекса не закрывался после | |
8594 обслуживания запроса. | |
8595 | |
8596 *) Добавление: директива proxy_pass может использоваться в location, | |
8597 заданных регулярным выражением. | |
8598 | |
8599 *) Добавление: модуль ngx_http_rewrite_filter_module поддерживает | |
8600 условия вида "if ($HTTP_USER_AGENT ~ MSIE)". | |
8601 | |
8602 *) Исправление: nginx очень медленно запускался при большом количестве | |
8603 адресов и использовании текстовых значений в директиве geo. | |
8604 | |
8605 *) Изменение: имя переменной в директиве geo нужно указывать, как $name. | |
8606 Прежний вариант без "$" пока работает, но вскоре будет убран. | |
8607 | |
8608 *) Добавление: параметр лога "%{VARIABLE}v". | |
8609 | |
8610 *) Добавление: директива "set $name value". | |
8611 | |
8612 *) Исправление: совместимость с gcc 4.0. | |
8613 | |
8614 *) Добавление: параметр автоконфигурации --with-openssl-opt=OPTIONS. | |
8615 | |
8616 | |
8617 Изменения в nginx 0.1.24 04.03.2005 | |
8618 | |
8619 *) Добавление: модуль ngx_http_ssi_filter_module поддерживает переменные | |
8620 QUERY_STRING и DOCUMENT_URI. | |
8621 | |
8622 *) Исправление: модуль ngx_http_autoindex_module мог выдавать ответ 404 | |
8623 на существующий каталог, если этот каталог был указан как alias. | |
8624 | |
8625 *) Исправление: модуль ngx_http_ssi_filter_module неправильно работал | |
8626 при больших ответах. | |
8627 | |
8628 *) Исправление: отсутствие строки заголовка "Referer" всегда считалось | |
8629 правильным referrer'ом. | |
8630 | |
8631 | |
8632 Изменения в nginx 0.1.23 01.03.2005 | |
8633 | |
8634 *) Добавление: модуль ngx_http_ssi_filter_module и директивы ssi, | |
8635 ssi_silent_errors и ssi_min_file_chunk. Поддерживаются команды 'echo | |
8636 var="HTTP_..." default=""' и 'echo var="REMOTE_ADDR"'. | |
8637 | |
8638 *) Добавление: параметр лога %request_time. | |
8639 | |
8640 *) Добавление: если запрос пришёл без строки заголовка "Host", то | |
8641 директива proxy_preserve_host устанавливает в качестве этого | |
8642 заголовка первое имя сервера из директивы server_name. | |
8643 | |
8644 *) Исправление: nginx не собирался на платформах, отличных от i386, | |
8645 amd64, sparc и ppc; ошибка появилась в 0.1.22. | |
8646 | |
8647 *) Исправление: модуль ngx_http_autoindex_module теперь показывает | |
8648 информацию не о символическом линке, а о файле или каталоге, на | |
8649 который он указывает. | |
8650 | |
8651 *) Исправление: если клиенту ничего не передавалось, то параметр | |
8652 %apache_length записывал в лог отрицательную длину заголовка ответа. | |
8653 | |
8654 | |
8655 Изменения в nginx 0.1.22 22.02.2005 | |
8656 | |
8657 *) Исправление: модуль ngx_http_stub_status_module показывал неверную | |
8658 статистику для обработанных соединений, если использовалось | |
8659 проксирование или FastCGI-сервер. | |
8660 | |
8661 *) Исправление: на Linux и Solaris установочные пути были неверно | |
8662 заключены в кавычки; ошибка появилась в 0.1.21. | |
8663 | |
8664 | |
8665 Изменения в nginx 0.1.21 22.02.2005 | |
8666 | |
8667 *) Исправление: модуль ngx_http_stub_status_module показывал неверную | |
8668 статистику при использовании метода rtsig или при использовании | |
8669 нескольких рабочих процессов на SMP машине. | |
8670 | |
8671 *) Исправление: nginx не собирался компилятором icc под Линуксом или | |
8672 если библиотека zlib-1.2.x собиралась из исходных текстов. | |
8673 | |
8674 *) Исправление: nginx не собирался под NetBSD 2.0. | |
8675 | |
8676 | |
8677 Изменения в nginx 0.1.20 17.02.2005 | |
8678 | |
8679 *) Добавление: новые параметры script_filename и remote_port в директиве | |
8680 fastcgi_params. | |
8681 | |
8682 *) Исправление: неправильно обрабатывался поток stderr от | |
8683 FastCGI-сервера. | |
8684 | |
8685 | |
8686 Изменения в nginx 0.1.19 16.02.2005 | |
8687 | |
8688 *) Исправление: если в запросе есть нуль, то для локальных запросов | |
8689 теперь возвращается ошибка 404. | |
8690 | |
8691 *) Исправление: nginx не собирался под NetBSD 2.0. | |
8692 | |
8693 *) Исправление: во время чтения тела запроса клиента в SSL соединении | |
8694 мог произойти таймаут. | |
8695 | |
8696 | |
8697 Изменения в nginx 0.1.18 09.02.2005 | |
8698 | |
8699 *) Изменение: для совместимости с Solaris 10 в директивах devpoll_events | |
8700 и devpoll_changes значения по умолчанию уменьшены с 512 до 32. | |
8701 | |
8702 *) Исправление: директивы proxy_set_x_var и fastcgi_set_var не | |
8703 наследовались. | |
8704 | |
8705 *) Исправление: в директиве rewrite, возвращающей редирект, аргументы | |
8706 присоединялись к URI через символ "&" вместо "?". | |
8707 | |
8708 *) Исправление: строки для модуля ngx_http_geo_module без символа ";" во | |
8709 включённом файле игнорировались. | |
8710 | |
8711 *) Добавление: модуль ngx_http_stub_status_module. | |
8712 | |
8713 *) Исправление: неизвестный формат лог-файла в директиве access_log | |
8714 вызывал segmentation fault. | |
8715 | |
8716 *) Добавление: новый параметр document_root в директиве fastcgi_params. | |
8717 | |
8718 *) Добавление: директива fastcgi_redirect_errors. | |
8719 | |
8720 *) Добавление: новый модификатор break в директиве rewrite позволяет | |
8721 прекратить цикл rewrite/location и устанавливает текущую конфигурацию | |
8722 для запроса. | |
8723 | |
8724 | |
8725 Изменения в nginx 0.1.17 03.02.2005 | |
8726 | |
8727 *) Изменение: модуль ngx_http_rewrite_module полностью переписан. Теперь | |
8728 можно делать редиректы, возвращать коды ошибок и проверять переменные | |
8729 и рефереры. Эти директивы можно использовать внутри location. | |
8730 Директива redirect упразднена. | |
8731 | |
8732 *) Добавление: модуль ngx_http_geo_module. | |
8733 | |
8734 *) Добавление: директивы proxy_set_x_var и fastcgi_set_var. | |
8735 | |
8736 *) Исправление: конфигурация location с модификатором "=" могла | |
8737 использоваться в другом location. | |
8738 | |
8739 *) Исправление: правильный тип ответа выставлялся только для запросов, у | |
8740 которых в расширении были только маленькие буквы. | |
8741 | |
8742 *) Исправление: если для location установлен proxy_pass или | |
8743 fastcgi_pass, и доступ к нему запрещался, а ошибка перенаправлялась | |
8744 на статическую страницу, то происходил segmentation fault. | |
8745 | |
8746 *) Исправление: если в проксированном ответе в заголовке "Location" | |
8747 передавался относительный URL, то к нему добавлялось имя хоста и | |
8748 слэш; ошибка появилась в 0.1.14. | |
8749 | |
8750 *) Исправление: на Linux в лог не записывался текст системной ошибки. | |
8751 | |
8752 | |
8753 Изменения в nginx 0.1.16 25.01.2005 | |
8754 | |
8755 *) Исправление: если ответ передавался chunk'ами, то при запросе HEAD | |
8756 выдавался завершающий chunk. | |
8757 | |
8758 *) Исправление: заголовок "Connection: keep-alive" выдавался, даже если | |
8759 директива keepalive_timeout запрещала использование keep-alive. | |
8760 | |
8761 *) Исправление: ошибки в модуле ngx_http_fastcgi_module вызывали | |
8762 segmentation fault. | |
8763 | |
8764 *) Исправление: при использовании SSL сжатый ответ мог передаваться не | |
8765 до конца. | |
8766 | |
8767 *) Исправление: опции TCP_NODELAY, TCP_NOPUSH и TCP_CORK, специфичные | |
8768 для TCP сокетов, не используются для unix domain сокетов. | |
8769 | |
8770 *) Добавление: директива rewrite поддерживает перезаписывание | |
8771 аргументов. | |
8772 | |
8773 *) Исправление: на запрос POST с заголовком "Content-Length: 0" | |
8774 возвращался ответ 400; ошибка появилась в 0.1.14. | |
8775 | |
8776 | |
8777 Изменения в nginx 0.1.15 19.01.2005 | |
8778 | |
8779 *) Исправление: ошибка соединения с FastCGI-сервером вызывала | |
8780 segmentation fault. | |
8781 | |
8782 *) Исправление: корректная обработка регулярного выражения, в котором | |
8783 число выделенных частей не совпадает с числом подстановок. | |
8784 | |
8785 *) Добавление: location, который передаётся FastCGI-серверу, может быть | |
8786 задан с помощью регулярного выражения. | |
8787 | |
8788 *) Исправление: параметр FastCGI REQUEST_URI теперь передаётся вместе с | |
8789 аргументами и в том виде, в котором был получен от клиента. | |
8790 | |
8791 *) Исправление: для использования регулярных выражений в location нужно | |
8792 было собирать nginx вместе с ngx_http_rewrite_module. | |
8793 | |
8794 *) Исправление: если бэкенд слушал на 80-ом порту, то при использовании | |
8795 директивы "proxy_preserve_host on" в заголовке "Host" указывался | |
8796 также порт 80; ошибка появилась в 0.1.14. | |
8797 | |
8798 *) Исправление: если задать одинаковые пути в параметрах | |
8799 автоконфигурации --http-client-body-temp-path=PATH и | |
8800 --http-proxy-temp-path=PATH или --http-client-body-temp-path=PATH и | |
8801 --http-fastcgi-temp-path=PATH, то происходил segmentation fault. | |
8802 | |
8803 | |
8804 Изменения в nginx 0.1.14 18.01.2005 | |
8805 | |
8806 *) Добавление: параметры автоконфигурации | |
8807 --http-client-body-temp-path=PATH, --http-proxy-temp-path=PATH и | |
8808 --http-fastcgi-temp-path=PATH | |
8809 | |
8810 *) Изменение: имя каталога с временными файлами, содержащие тело запроса | |
8811 клиента, задаётся директивой client_body_temp_path, по умолчанию | |
8812 <prefix>/client_body_temp. | |
8813 | |
8814 *) Добавление: модуль ngx_http_fastcgi_module и директивы fastcgi_pass, | |
8815 fastcgi_root, fastcgi_index, fastcgi_params, fastcgi_connect_timeout, | |
8816 fastcgi_send_timeout, fastcgi_read_timeout, fastcgi_send_lowat, | |
8817 fastcgi_header_buffer_size, fastcgi_buffers, | |
8818 fastcgi_busy_buffers_size, fastcgi_temp_path, | |
8819 fastcgi_max_temp_file_size, fastcgi_temp_file_write_size, | |
8820 fastcgi_next_upstream и fastcgi_x_powered_by. | |
8821 | |
8822 *) Исправление: ошибка "[alert] zero size buf"; ошибка появилась в | |
8823 0.1.3. | |
8824 | |
8825 *) Изменение: в директиве proxy_pass нужно обязательно указывать URI | |
8826 после имени хоста. | |
8827 | |
8828 *) Изменение: если в URI встречался символ %3F, то он считался началом | |
8829 строки аргументов. | |
8830 | |
8831 *) Добавление: поддержка unix domain сокетов в модуле | |
8832 ngx_http_proxy_module. | |
8833 | |
8834 *) Добавление: директивы ssl_engine и ssl_ciphers. | |
8835 Спасибо Сергею Скворцову за SSL-акселератор. | |
8836 | |
8837 | |
8838 Изменения в nginx 0.1.13 21.12.2004 | |
8839 | |
8840 *) Добавление: директивы server_names_hash и | |
8841 server_names_hash_threshold. | |
8842 | |
8843 *) Исправление: имена *.domain.tld в директиве server_name не работали. | |
8844 | |
8845 *) Исправление: параметр лога %request_length записывал неверную длину. | |
8846 | |
8847 | |
8848 Изменения в nginx 0.1.12 06.12.2004 | |
8849 | |
8850 *) Добавление: параметр лога %request_length. | |
8851 | |
8852 *) Исправление: при использовании /dev/poll, select и poll на | |
8853 платформах, где возможны ложные срабатывания указанных методов, могли | |
8854 быть длительные задержки при обработке запроса по keep-alive | |
8855 соединению. Наблюдалось по крайней мере на Solaris с использованием | |
8856 /dev/poll. | |
8857 | |
8858 *) Исправление: директива send_lowat игнорируется на Linux, так как | |
8859 Linux не поддерживает опцию SO_SNDLOWAT. | |
8860 | |
8861 | |
8862 Изменения в nginx 0.1.11 02.12.2004 | |
8863 | |
8864 *) Добавление: директива worker_priority. | |
8865 | |
8866 *) Изменение: под FreeBSD директивы tcp_nopush и tcp_nodelay вместе | |
8867 влияют на передачу ответа. | |
8868 | |
8869 *) Исправление: nginx не вызывал initgroups(). | |
8870 Спасибо Андрею Ситникову и Андрею Нигматулину. | |
8871 | |
8872 *) Изменение: ngx_http_auto_index_module теперь выдаёт размер файлов в | |
8873 байтах. | |
8874 | |
8875 *) Исправление: ngx_http_auto_index_module возвращал ошибку 500, если в | |
8876 каталоге есть битый symlink. | |
8877 | |
8878 *) Исправление: файлы больше 4G не передавались с использованием | |
8879 sendfile. | |
8880 | |
8881 *) Исправление: если бэкенд резолвился в несколько адресов и при | |
8882 ожидании от него ответа происходила ошибка, то процесс зацикливался. | |
8883 | |
8884 *) Исправление: при использовании метода /dev/poll рабочий процесс мог | |
8885 завершиться с сообщением "unknown cycle". | |
8886 | |
8887 *) Исправление: ошибки "close() channel failed". | |
8888 | |
8889 *) Исправление: автоматическое определение групп nobody и nogroup. | |
8890 | |
8891 *) Исправление: директива send_lowat не работала на Linux. | |
8892 | |
8893 *) Исправление: если в конфигурации не было раздела events, то | |
8894 происходил segmentation fault. | |
8895 | |
8896 *) Исправление: nginx не собирался под OpenBSD. | |
8897 | |
8898 *) Исправление: двойные слэшы в "://" в URI превращались в ":/". | |
8899 | |
8900 | |
8901 Изменения в nginx 0.1.10 26.11.2004 | |
8902 | |
8903 *) Исправление: если в запросе без аргументов есть "//", "/./", "/../" | |
8904 или "%XX", то терялся последний символ в строке запроса; ошибка | |
8905 появилась в 0.1.9. | |
8906 | |
8907 *) Исправление: исправление в версии 0.1.9 для файлов больше 2G на Linux | |
8908 не работало. | |
8909 | |
8910 | |
8911 Изменения в nginx 0.1.9 25.11.2004 | |
8912 | |
8913 *) Исправление: если в запросе есть "//", "/./", "/../" или "%XX", то | |
8914 проксируемый запрос передавался без аргументов. | |
8915 | |
8916 *) Исправление: при сжатии больших ответов иногда они передавались не | |
8917 полностью. | |
8918 | |
8919 *) Исправление: не передавались файлы больше 2G на Linux, | |
8920 неподдерживающем sendfile64(). | |
8921 | |
8922 *) Исправление: на Linux при конфигурации сборки нужно было обязательно | |
8923 использовать параметр --with-poll_module; ошибка появилась в 0.1.8. | |
8924 | |
8925 | |
8926 Изменения в nginx 0.1.8 20.11.2004 | |
8927 | |
8928 *) Исправление: ошибка в модуле ngx_http_autoindex_module при показе | |
8929 длинных имён файлов. | |
8930 | |
8931 *) Добавление: модификатор "^~" в директиве location. | |
8932 | |
8933 *) Добавление: директива proxy_max_temp_file_size. | |
8934 | |
8935 | |
8936 Изменения в nginx 0.1.7 12.11.2004 | |
8937 | |
8938 *) Исправление: при использовании sendfile, если передаваемый файл | |
8939 менялся, то мог произойти segmentation fault на FreeBSD; ошибка | |
8940 появилась в 0.1.5. | |
8941 | |
8942 | |
8943 Изменения в nginx 0.1.6 11.11.2004 | |
8944 | |
8945 *) Исправление: при некоторых комбинациях директив location c | |
8946 регулярными выражениями использовалась конфигурация не из того | |
8947 location. | |
8948 | |
8949 | |
8950 Изменения в nginx 0.1.5 11.11.2004 | |
8951 | |
8952 *) Исправление: на Solaris и Linux могло быть очень много сообщений | |
8953 "recvmsg() returned not enough data". | |
8954 | |
8955 *) Исправление: в режиме прокси без использования sendfile на Solaris | |
8956 возникала ошибка "writev() failed (22: Invalid argument)". На других | |
8957 платформах, не поддерживающих sendfile, процесс зацикливался. | |
8958 | |
8959 *) Исправление: при использовании sendfile в режиме прокси на Solaris | |
8960 возникал segmentation fault. | |
8961 | |
8962 *) Исправление: segmentation fault на Solaris. | |
8963 | |
8964 *) Исправление: обновление исполняемого файла на лету не работало на | |
8965 Linux. | |
8966 | |
8967 *) Исправление: в списке файлов, выдаваемом модулем | |
8968 ngx_http_autoindex_module, не перекодировались пробелы, кавычки и | |
8969 знаки процента. | |
8970 | |
8971 *) Изменение: уменьшение операций копирования. | |
8972 | |
8973 *) Добавление: директива userid_p3p. | |
8974 | |
8975 | |
8976 Изменения в nginx 0.1.4 26.10.2004 | |
8977 | |
8978 *) Исправление: ошибка в модуле ngx_http_autoindex_module. | |
8979 | |
8980 | |
8981 Изменения в nginx 0.1.3 25.10.2004 | |
8982 | |
8983 *) Добавление: модуль ngx_http_autoindex_module и директива autoindex. | |
8984 | |
8985 *) Добавление: директива proxy_set_x_url. | |
8986 | |
8987 *) Исправление: модуль проксировании мог привести к зацикливанию, если | |
8988 не использовался sendfile. | |
8989 | |
8990 | |
8991 Изменения в nginx 0.1.2 21.10.2004 | |
8992 | |
8993 *) Добавление: параметры --user=USER, --group=GROUP и | |
8994 --with-ld-opt=OPTIONS в configure. | |
8995 | |
8996 *) Добавление: директива server_name поддерживает *.domain.tld. | |
8997 | |
8998 *) Исправление: улучшена переносимость на неизвестные платформы. | |
8999 | |
9000 *) Исправление: нельзя переконфигурировать nginx, если конфигурационный | |
9001 файл указан в командной строке; ошибка появилась в 0.1.1. | |
9002 | |
9003 *) Исправление: модуль проксировании мог привести к зацикливанию, если | |
9004 не использовался sendfile. | |
9005 | |
9006 *) Исправление: при использовании sendfile текст ответа не | |
9007 перекодировался согласно директивам модуля charset; ошибка появилась | |
9008 в 0.1.1. | |
9009 | |
9010 *) Исправление: очень редкая ошибка при обработке kqueue. | |
9011 | |
9012 *) Исправление: модуль сжатия сжимал уже сжатые ответы, полученные при | |
9013 проксировании. | |
9014 | |
9015 | |
9016 Изменения в nginx 0.1.1 11.10.2004 | |
9017 | |
9018 *) Добавление: директива gzip_types. | |
9019 | |
9020 *) Добавление: директива tcp_nodelay. | |
9021 | |
9022 *) Добавление: директива send_lowat работает не только на платформах, | |
9023 поддерживающих kqueue NOTE_LOWAT, но и на всех, поддерживающих | |
9024 SO_SNDLOWAT. | |
9025 | |
9026 *) Добавление: эмуляция setproctitle() для Linux и Solaris. | |
9027 | |
9028 *) Исправление: ошибка при переписывании заголовка "Location" при | |
9029 проксировании. | |
9030 | |
9031 *) Исправление: ошибка в модуле ngx_http_chunked_module, приводившая к | |
9032 зацикливанию. | |
9033 | |
9034 *) Исправление: ошибки в модуле /dev/poll. | |
9035 | |
9036 *) Исправление: при проксировании и использовании временных файлов | |
9037 ответы портились. | |
9038 | |
9039 *) Исправление: бэкенду передавались запросы с неперекодированными | |
9040 символами. | |
9041 | |
9042 *) Исправление: на Linux 2.4 при конфигурации сборки нужно было | |
9043 обязательно использовать параметр --with-poll_module. | |
9044 | |
9045 | |
9046 Изменения в nginx 0.1.0 04.10.2004 | |
9047 | |
9048 *) Первая публично доступная версия. | |
9049 |