[nginx-site] freenginx-1.31.4

Maxim Dounin mdounin at mdounin.ru
Tue Sep 1 15:16:44 UTC 2026


details:   http://freenginx.org/hg/nginx-site/rev/9e091997ca49
branches:  
changeset: 3138:9e091997ca49
user:      Maxim Dounin <mdounin at mdounin.ru>
date:      Tue Sep 01 18:14:40 2026 +0300
description:
freenginx-1.31.4

diffstat:

 text/en/CHANGES    |  28 ++++++++++++++++++++++++++++
 text/ru/CHANGES.ru |  35 ++++++++++++++++++++++++++++++++---
 xml/index.xml      |   7 +++++++
 xml/versions.xml   |   1 +
 4 files changed, 68 insertions(+), 3 deletions(-)

diffs (128 lines):

diff --git a/text/en/CHANGES b/text/en/CHANGES
--- a/text/en/CHANGES
+++ b/text/en/CHANGES
@@ -1,4 +1,32 @@
 
+Changes with freenginx 1.31.4                                    01 Sep 2026
+
+    *) Bugfix: the "index" directive used old values of non-cacheable
+       variables.
+
+    *) Bugfix: variables with side effects might cause incorrect results
+       during variable substitution and "no buffer space in script copy"
+       alerts.
+
+    *) Bugfix: a segmentation fault might occur in a worker process when
+       using regular expression captures with the
+       "proxy_cache_background_update" directive or the
+       ngx_http_slice_module.
+
+    *) Bugfix: in the ngx_http_perl_module; the bug had appeared in 1.31.3.
+
+    *) Bugfix: "header already sent" alerts might appear in logs when using
+       SSI with proxying.
+
+    *) Bugfix: some data received from a backend with unbuffered proxying
+       might not be sent to the client immediately when using SSI and the
+       "gunzip" directive.
+
+    *) Change: now, if a connection to a backend is closed due to a timeout
+       during buffered proxying, all data previously received from the
+       backend are sent to the client.
+
+
 Changes with freenginx 1.31.3                                    07 Jul 2026
 
     *) Feature: additional checks are now used during variable substitution,
diff --git a/text/ru/CHANGES.ru b/text/ru/CHANGES.ru
--- a/text/ru/CHANGES.ru
+++ b/text/ru/CHANGES.ru
@@ -1,4 +1,33 @@
 
+Изменения в freenginx 1.31.4                                      01.09.2026
+
+    *) Исправление: директива index использовала старые значения
+       некэшируемых переменных.
+
+    *) Исправление: переменные с побочными эффектами могли приводить к
+       некорректным результатам при подстановке переменных и сообщениям "no
+       buffer space in script copy".
+
+    *) Исправление: при использовании выделений в регулярных выражениях
+       совместно с директивой proxy_cache_background_update или модулем
+       ngx_http_slice_module в рабочем процессе мог произойти segmentation
+       fault.
+
+    *) Исправление: в модуле ngx_http_perl_module; ошибка появилась в
+       1.31.3.
+
+    *) Исправление: при использовании SSI совместно с проксированием в логах
+       могли появляться сообщения "header already sent".
+
+    *) Исправление: при использовании SSI и директивы gunzip часть данных,
+       полученных от бэкенда при небуферизированном проксировании, могла не
+       отправляться клиенту сразу.
+
+    *) Изменение: теперь, если при буферизированном проксировании соединение
+       с бэкендом завершается по таймауту, все ранее полученные от бэкенда
+       данные отправляются клиенту.
+
+
 Изменения в freenginx 1.31.3                                      07.07.2026
 
     *) Добавление: теперь при подстановке переменных, в том числе при
@@ -395,7 +424,7 @@
     *) Исправление: если во время чтения тела запроса происходил таймаут, об
        этом не сообщалось в лог ошибок.
 
-    *) Исправление: перенаправление ошибок 413 с помощью дерективы
+    *) Исправление: перенаправление ошибок 413 с помощью директивы
        error_page работало некорректно при использовании HTTP/2 и HTTP/3.
 
     *) Исправление: freenginx не собирался на NetBSD 10.0.
@@ -7891,7 +7920,7 @@
     *) Добавление: nginx поддерживает тело запроса больше 2G.
 
     *) Исправление: если при использовании "satisfy_any on" клиент успешно
-       проходил аутентификацию, в лог всё равно записалоcь сообщение "access
+       проходил аутентификацию, в лог всё равно записалось сообщение "access
        forbidden by rule".
 
     *) Исправление: метод PUT мог ошибочно не создать файл и вернуть код
@@ -8402,7 +8431,7 @@
     *) Добавление: директива map поддерживает доменные имена в формате
        ".domain.tld".
 
-    *) Исправление: во время SSL handshake не иcпользовались таймауты;
+    *) Исправление: во время SSL handshake не использовались таймауты;
        ошибка появилась в 0.2.4.
 
     *) Исправление: в использовании протокола HTTPS в директиве proxy_pass.
diff --git a/xml/index.xml b/xml/index.xml
--- a/xml/index.xml
+++ b/xml/index.xml
@@ -8,6 +8,13 @@
 
 <news name="freenginx news" link="/" lang="en">
 
+<event date="2026-09-01">
+<para>
+<link doc="en/download.xml">freenginx-1.31.4</link>
+mainline version has been released.
+</para>
+</event>
+
 <event date="2026-07-07">
 <para>
 <link doc="en/download.xml">freenginx-1.31.3</link>
diff --git a/xml/versions.xml b/xml/versions.xml
--- a/xml/versions.xml
+++ b/xml/versions.xml
@@ -9,6 +9,7 @@
 
 <download tag="mainline" changes="">
 
+<item ver="1.31.4" name="freenginx" />
 <item ver="1.31.3" name="freenginx" />
 <item ver="1.31.2" name="freenginx" />
 <item ver="1.31.1" name="freenginx" />


More information about the nginx-devel mailing list