Как стать автором
Обновить

Релиз стабильной версии Apache 2.4

Время на прочтение3 мин
Количество просмотров19K
Сегодня состоялся релиз стабильной версии http сервера Apache под номером 2.4.1. Первая стабильная версия ветки 2.2 была выпущена в далеком 2005 году. Не смотря на то, что в новом релизе большое множество нововведений он обратно совместим с API версии 2.2.х.

За подробным списком новшеств прошу под кат


Основные нововведения:

  • Несколько МРМ могут быть собраны в виде динамически загружаемых модулей, которые возможно активировать без пересборки;
  • Модуль Event MPM теперь не является экспериментальным. Event MPM основан на коде модуля Worker и реализует гибридную модель обработки соединений, сочетающую многопоточность с пулом ожидающих соединения процессов;
  • Реализована поддержка асинхронных операций чтения и записи;
  • Директива LogLevel может быть сконфигурирована для каждого модуля и каждой директории отдельно. Поверх отладочного уровня логирования могут быть добавлены новые уровни от trace1 до trace8;
  • Появилась возможность определения через оператор If для блоков конфигурации;
  • Возможно указывать значение параметра KeepAliveTimeout в миллисекундах;
  • Директива NameVirtualHost объявлена устаревшей (deprecated);
  • Директива AllowOverrideList предоставляет более тонкую настройку .htaccess-файлов;
  • Возможность использовать переменные в конфигурационных файлах;
  • Потребление памяти по сравнению с веткой 2.2 снижено.


Новые модули:

  • mod_proxy_fcgi — бэкенд протокола FastCGI для mod_proxy;
  • mod_proxy_scgi — бэкенд протокола SCGI для mod_proxy;
  • mod_proxy_express — динамически конфигурируемые прокси для mod_proxy;
  • mod_remoteip — заменяет адрес IP и имя хоста клиента на запрос с IP-адреса списка представленных прокси или балансировки нагрузки с помощью заголовков запроса;
  • mod_heartmonitor, mod_lbmethod_heartbeat — позволяет mod_proxy_balancer распределять нагрузку основываясь на данных о количестве активных соединений на бэкенд-серверах;
  • mod_sed — улучшенная замена mod_substitute, позволяющая редактировать тело ответа посредством sed;
  • mod_allowmethods — модуль ограничения некоторых методов НТТР без помех для аутентификации и авторизации;
  • mod_lua — внедряет интерпретатор языка Lua в HTTPD для настройки и бизнес-логики;
  • mod_log_debug — позволяет добавлять настраиваемое отладочное логирование на различных фазах обработки запросов;
  • mod_buffer — обеспечивает буферизацию стеков фильтров ввода-вывода;
  • mod_ratelimit — обеспечивает ограничение пропускной способности для клиентов;
  • mod_reflector — обеспечивает отражение тела запроса через стек филтра вывода.


Изменения в модулях:

  • mod_ssl — добавлена поддержка проверки статуса клиентского сертификата на OCSP серверах, а также добавлена возможность совместного использования данных SSL сессии на нескольких http-серверах, через задействование memcached;
  • mod_proxy — значительно увеличена производительность работы директивы ProxyPass в блоках Location и LocationMatch;
  • mod_proxy_balancer — расширено число параметров BalancerMembers, которые можно менять через balancer-manager, добавлена возможность добавления новых параметров BalancerMembers через balancer-manager;
  • mod_cache — может теперь кэшировать запросы HEAD, директивы модуля могут быть установлены на отдельные каталоги, а не только для всего сервера (где это возможно), модуль может предоставлять старые данные из кэша, если сервер недоступен (ошибка 5хх);
  • mod_include — поддержка атрибута OnError в директиве include, что позволяет предоставлять документ ошибки вместо строки ошибки по умолчанию;
  • ]mod_cgi, mod_include, mod_isapi,… — более строгая проверка трансляций заголовков в переменные окружения, что позволяет снизить вероятность XSS-атак через подстановку скриптов в заголовки, теперь такие заголовки будут отбрасываться;
  • mod_authz_core — с помощью директивы Require можно использовать расширенную логику авторизации;
  • mod_ldap, mod_authnz_ldap — добавлена поддержка вложенных групп, улучшения в обработке таймаутов, возможность использования инструментария LDAP для отладки.


Расширения:

  • fcgistarter — новый инструмент запуска демона FastCGI;
  • htcacheclean — с его помощью могут быть указаны кэшируемые URL с опциональными метаданными, объём кэша может быть ограничен в дескрипторах;
  • rotatelogs — может создавать линк на текущий лог-файл.


Средства для разработчиков модулей:

  • Добавлен check_config для проверки конфигурации на ранней стадии загрузки. Он позволяет независимо проанализировать параметры определенных директив и при необходимости откорректировать их;
  • Добавлен парсер выражений общего назначения, API которого основан на ap_expr.h. Код парсера основан на ранее реализованном парсере для mod_ssl;
  • Добавлен интерфейс для кэширование небольших объектов, основанный на ранее созданном для mod_ssl кэше сессионных данных. В качестве хранилища можно использовать цикличный буфер в разделяемой памяти, dbm-базу на диске и memcached;
  • Для мониторинга статуса mod_cache добавлен cache_status, который вызывается после принятия решения о кэшировании. По умолчанию добавляет при ответе заголовки X-Cache в X-Cache-Detail.


Скачать продукт можно на официальном сайте
Список всех изменений в оригинале
Теги:
Хабы:
Всего голосов 59: ↑56 и ↓3+53
Комментарии60

Публикации

Ближайшие события