Выпуск http-сервера Apache 2.4.26 с полноценной поддержкой HTTP/2
21 июня 2017 года
Доступен релиз HTTP-сервера Apache 2.4.26, в котором представлено 63 изменения (Архивная копия от 11 июля 2017 на Wayback Machine), 22 из которых связаны с исправлениями в модуле mod_http2.
Из изменений (Архивная копия от 11 июля 2017 на Wayback Machine) можно отметить:
- C модуля mod_http2 снята метка экспериментальной разработки, реализация протокола HTTP/2 отныне признана готовой для повсеместного применения;
- Добавлен новый модуль mod_brotli для сжатия с использованием алгоритма Brotli (RFC 7932);
- В файле конфигурации обеспечено выполнение вложенных блоков If/ElseIf/Else;
- В mod_lua добавлена поддержка Lua 5.3;
- Изменено поведение mod_rewrite: если подстановка является полным URL, а схема/хост/порт совпадают с текущим виртуальным хостом, то компонент пути в URL больше не интерпретируется как локальный путь, если он присутствует в файловой системе. Для возвращения старого поведения добавлена опция "RewriteOption LegacyPrefixDocRoot";
- В mod_rewrite добавлен флаг 'BNP' (backreferences-no-plus), включающий замену пробелов в обратных ссылках RewriteRule на "%20" вместо "+";
- В mod_rewrite добавлена возможность ограничения экранирования определённых символов через указание их в флаге "B";
- В mod_env добавлен вывод предупреждения для директивы 'SetEnv', если в имени переменной окружения указан символ '=';
- В mod_proxy_http2 добавлена поддержка заголовков Reverse Proxy Request;
- В mod_proxy_fcgi добавлена директива ProxyFCGISetEnvIf для изменения переменных окружения CGI на стадии до вызова FastCGI;
- В mod_proxy разрешено применение переменной окружения "no-proxy" в качестве альтернативы выражению "ProxyPass /path !";
- В mod_proxy_fcgi возвращено старое поведение (2.4.20), оставляющее префикс "proxy:fcgi://" в переменной окружения SCRIPT_FILENAME;
- В mod_proxy_http2 добавлена директива ProxyPreserverHost;
- В mod_proxy_wstunnel добавлен параметр "upgrade", разрешающий обновление до другого протокола;
- Проведена работа по увеличению производительности, качества буферизации и динамического регулирования потоком в mod_http2;
- В mod_http2 директива MaxKeepAliveRequests теперь ограничивает число повторных использований slave-соединений;
- В mod_http2 добавлена поддержка директивы MergeTrailers;
- В mod_autoindex добавлена опция "IndexOptions UseOldDateFormat", позволяющая использовать формат Last Modified как в Apache 2.2;
- В парсер выражений добавлена подстановка %{REMOTE_PORT};
- Во вложенных SSI-выражениях подстановка %{DOCUMENT_URI} теперь всегда указывает на URI оригинального запроса, а не на URI вложенного документа;
- В mod_ssl добавлена поддержка OpenSSL 1.1.0;
- Устранено 5 уязвимостей:
- CVE-2017-3167 - обход аутентификации при использовании ap_get_basic_auth_pw() в сторонних модулях;
- CVE-2017-3169 - инициирование краха через отправку запроса HTTPS из-за разыменования нулевого указателя в mod_ssl;
- CVE-2017-7659 - инициирование краха через отправку запроса HTTP/2 из-за разыменования нулевого указателя в mod_http2;
- CVE-2017-7668 - чтение вне границ буфера в функции ap_find_token() может привести к краху при обработке специально оформленных заголовков запроса;
- CVE-2017-7679 - чтение вне границ буфера в mod_mime может привести к чтению байта из области за пределами выделенного буфера при обработке специально оформленного заголовка Content-Type. Интересно, что о проблеме было сообщено ещё в ноябре 2015 года, а исправление внесено только сейчас.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.