Apache - это открытое, кросс-платформенное и полностью бесплатное программное обеспечение командной строки, предназначенное для внедрения веб-сервера в любой операционной системе Linux и UNIX для обслуживания файлов по протоколам HTTP и HTTPS .
Самое популярное в мире программное обеспечение для веб-серверов
It & rsquo; s самое популярное веб-серверное программное обеспечение, обслуживающее сотни тысяч веб-сайтов со всего Интернета. Это очень безопасный, легко ремонтируемый, эффективный, низкий ресурс и расширяемый через плагины. Apache всегда совместим с последними стандартами HTTP.
В то время как Apache должен быть установлен только квалифицированными системными администраторами на компьютерах, предназначенных для работы в качестве серверов, он также может быть установлен постоянными пользователями на своих персональных компьютерах только для тестирования, например, для веб-дизайна или разработки веб-приложений.
Начало работы с Apache
Старый способ установки Apache включает загрузку последнего стабильного исходного пакета (помните, что одновременно поддерживаются несколько стабильных ветвей, например, 2.2.x или 2.4.x), сохраняя его на вашем компьютере, а также извлечение его содержимого с помощью утилиты диспетчера архива.
Откройте приложение эмулятора терминала, перейдите в расположение извлеченных архивных файлов с помощью & lsquo; cd & rsquo; (например, cd /home/softoware/httpd-2.4.10) и выполните команду & lsquo; ./ configure && make & rsquo; команда для конфигурирования и компиляции программного обеспечения для вашей операционной системы / аппаратной архитектуры (в это время поддерживаются 32-разрядная и 64-разрядная архитектуры процессора).
Затем установите его в системном режиме, запустив & lsquo; sudo make install & rsquo; команда. После установки взгляните на файл конфигурации по умолчанию, расположенный по адресу /usr/local/apache2/conf/httpd.conf или /usr/apache2/conf/httpd.conf, и настройте параметры в соответствии с вашими потребностями (см. Страницу проекта & rsquo; для получения подробной информации). Служба httpd обычно запускается автоматически во время загрузки, если вы добавили ее в
Что нового в этой версии:
- Новые функции включают Loadable MPM, основные улучшения поддержки OCSP, mod_lua, конфигурацию динамического обратного прокси, улучшенную аутентификацию / авторизацию, прокси FastCGI, новый анализатор выражений и API кэширования небольших объектов.
Что нового в версии 2.4.33:
- Новые функции включают Loadable MPM, основные улучшения поддержки OCSP, mod_lua, конфигурацию динамического обратного прокси, улучшенную аутентификацию / авторизацию, прокси FastCGI, новый анализатор выражений и API кэширования небольших объектов. >
Что нового в версии:
- Новые функции включают Loadable MPM, основные улучшения поддержки OCSP, mod_lua , Конфигурация динамического обратного прокси, улучшенная аутентификация / авторизация, прокси FastCGI, новый анализатор выражений и API кэширования небольших объектов.
Что нового в версии 2.4.27:
- Новые функции включают Loadable MPM, основные улучшения для OCSP поддержка, mod_lua, конфигурация динамического обратного прокси, улучшенная аутентификация / авторизация, прокси FastCGI, новый анализатор выражений и API кэширования небольших объектов.
Что нового в версии 2.4.25:
- Новые функции включают Loadable MPM, основные улучшения OCSP поддержка, mod_lua, конфигурация динамического обратного прокси, улучшенная аутентификация / авторизация, прокси FastCGI, новый анализатор выражений и API кэширования небольших объектов.
Что нового в версии 2.4.23:
- Новые функции включают Loadable MPM, основные улучшения поддержки OCSP, mod_lua, конфигурацию динамического обратного прокси, улучшенную аутентификацию / авторизацию, прокси FastCGI, новый анализатор выражений и API кэширования небольших объектов. >
Что нового в версии 2.4.20:
- Новые функции включают Loadable MPM, основные улучшения для OCSP поддержка, mod_lua, конфигурация динамического обратного прокси, улучшенная аутентификация / авторизация, прокси FastCGI, новый анализатор выражений и API кэширования небольших объектов.
Что нового в версии 2.4.18:
- Новые функции включают Loadable MPM, основные улучшения OCSP поддержка, mod_lua, конфигурация динамического обратного прокси, улучшенная аутентификация / авторизация, прокси FastCGI, новый анализатор выражений и API кэширования небольших объектов.
Что нового в версии 2.4.17:
- Новые функции включают Loadable MPM, основные улучшения OCSP поддержка, mod_lua, конфигурация динамического обратного прокси, улучшенная аутентификация / авторизация, прокси FastCGI, новый анализатор выражений и API кэширования небольших объектов.
Что нового в версии 2.4.16:
- Новые функции включают Loadable MPM, основные улучшения поддержки OCSP, mod_lua, конфигурацию динамического обратного прокси, улучшенную аутентификацию / авторизацию, прокси FastCGI, новый анализатор выражений и API кэширования небольших объектов. >
Что нового в версии 2.4.12:
- Эта версия Apache - это наша последняя версия GA ветвь Apache HTTPD нового поколения 2.4.x и представляет собой пятнадцать лет инноваций по проекту и рекомендуется по всем предыдущим выпускам.
- Эта версия Apache в основном является исправлением безопасности и исправления ошибок.
Что нового в версии 2.4.10:
- Этот выпуск Apache - это, в основном, релиз безопасности, функции и исправления ошибок:
- CVE-2014-0117 mod_proxy: исправление сбоя в обработке заголовков подключений, что позволило атаковать отказ в обслуживании с обратным прокси-сервером с помощью многопоточного MPM.
- CVE-2014-3523 Исправьте отказ в обслуживании памяти в WinNT MPM (используется во всех установках Windows). Обход проблемы: AcceptFilter {none | connect}
- CVE-2014-0226 Исправить состояние гонки при обработке табло, что может привести к переполнению буфера кучи.
- CVE-2014-0118 mod_deflate: входной фильтр DEFLATE (раздувает тела запроса) теперь ограничивает длину и степень сжатия раздутых тел запроса, чтобы избежать отказа в обслуживании через сильно сжатые тела. См. Директивы DeflateInflateLimitRequestBody, DeflateInflateRatioLimit и DeflateInflateRatioBurst.
- CVE-2014-0231 mod_cgid: исправить отказ в обслуживании от скриптов CGI, которые не потребляют stdin, что может привести к затяжным дочерним процессам HTTPD, заполняющим табло и, в конечном счете, зависанию сервера. По умолчанию, время ожидания ввода-вывода клиента (директива Timeout) теперь применяется для связи со сценариями. Директива CGIDScriptTimeout может использоваться для установки другого тайм-аута для связи со сценариями.
- Также в этом выпуске представлены некоторые интересные новые функции, включая:
- Улучшения прокси-сервера FGI и websockets
- Возможность прокси-сервера через обработчик
- Более тонкий контроль над областью RewriteRules
- Поддержка Unix Domain Socket (UDS) для бэкэндов mod_proxy.
- Поддержка больших объемов разделяемой памяти для mod_socache_shmcb
- улучшения mod_lua и mod_ssl
- Поддержка названных групп и обратных ссылок в директивах LocationMatch, DirectoryMatch, FilesMatch и ProxyMatch.
Что нового в версии 2.2.26:
- mod_dav: dav_resource- & gt; uri рассматривается как unencoded. Это был ненужный ABI, измененный в 2.2.25 PR 55397.
- mod_dav: Не проверяйте блокировки против родительской коллекции исходного кода URI COPY. PR 55304.
- mod_ssl: проверить имя хоста SNI для заголовка узла без учета регистра. PR 49491.
- mod_ssl: включить поддержку ключей ECC и шифров ECDH. Протестировано против OpenSSL 1.0.0b3.
- mod_ssl: изменение значения по умолчанию для SSLCompression отключено, так как сжатие вызывает проблемы с безопасностью в большинстве настроек. (Так называемая атака «CRIME»).
- mod_ssl: исправить ошибку компиляции, когда OpenSSL не поддерживает поддержку SSLv2. Проблема была введена в 2.2.25. PR 55194.
- mod_dav: Исправить двойное кодирование URI в заголовке XML и Location (вызвано неинтенсивным изменением ABI в 2.2.25). PR 55397.
Что нового в версии 2.4.7:
- Для события MPM теперь требуется APR 1.5.0 или новее.
- slotmem_shm: обнаружение ошибок. [Jim Jagielski]
- event: использовать структуру данных skiplist. [Jim Jagielski]
- mpm_unix: добавьте реализацию ap_mpm_podx_ *, чтобы избежать дублирования кода и выровнять w / trunk. [Jim Jagielski]
- Исправить потенциальное отклонение действительных директив MaxMemFree и ThreadStackSize. [Майк Румф]
- mod_proxy_fcgi: Удалите ограничение 64K на кодированную длину всех envvars. Индивидуальный envvar с длиной кодирования более 16K будет опущен. [Джефф Травик]
- mod_proxy_fcgi: обрабатывать данные протокола чтения, разделенные между пакетами. [Джефф Травик]
- mod_ssl: улучшите обработку эфемерных ключей DH и ECDH, позволяя настраивать настраиваемые параметры через SSLCertificateFile и добавляя стандартизованные параметры DH для 1024/2048/3072/4096 бит. Если не настроены настраиваемые параметры, стандартизованные параметры применяются на основе размера ключа RSA / DSA сертификата. [Марка Каспара]
- mod_ssl, configure: требуется OpenSSL 0.9.8a или новее. [Марка Каспара]
- mod_ssl: отбросить поддержку шифров экспортного класса с эфемерными ключами RSA и безоговорочно отключить шифры aNULL, eNULL и EXP (не переопределяемые через SSLCipherSuite). [Марка Каспара]
- Добавить экспериментальную систему сборки на основе cmake для Windows. [Джефф Травик, Том Донован]
- событие MPM: Исправлены возможные сбои (сторонние модули, получающие доступ к c- & gt; sbh) или случайные пропущенные обновления mod_status для некоторых запросов keepalive под нагрузкой. [Эрик Ковенер]
- mod_authn_socache: поддержка дополнительных аргументов инициализации для поставщиков socache. [Крис Даррох]
- mod_session: сброс максимального возраста при сохранении сеанса. PR 47476. [Алексей Варламов]
- mod_session: после разбора значения заголовка, указанного в директиве SessionHeader, удалите значение из ответа. PR 55279. [Грэм Леггетт]
- mod_headers: Разрешить спецификаторы формата в строке подстановки при использовании редактирования заголовка. [Даниэль Руджери]
- mod_dav: dav_resource- & gt; uri рассматривается как unencoded. Это было ненужное изменение ABI, введенное в 2.4.6. PR 55397.
- mod_dav: не требуйте токенов блокировки для источника COPY. PR 55306.
- Ядро: не усекайте вывод, когда передача прерывается сигналом, например, из процесса завершения CGI. PR 55643. [Джефф Травик]
- WinNT MPM: выйдите из дочернего элемента, если родительский процесс завершится с ошибкой или завершен. [Корпорация Oracle]
- Windows: исправлена ошибка отказа от stderr в некоторых конфигурациях журнала ошибок. (Сообщение об ошибке AH00093) [Jeff Trawick]
- mod_session_crypto: Разрешить использование exec: вызовы для получения ключа шифрования сеанса. [Даниэль Руджери]
- Ядро: добавьте недостающую причину-фразу в заголовках ответов HTTP. PR 54946. [Райнер Юнг]
- mod_rewrite: сделайте переписку с помощью websocket, чтобы разрешить проксирование. PR 55598. [Крис Харрис]
- mod_ldap: при поиске подгрупп используйте неявный objectClass = * вместо явного фильтра cn = *. [Дэвид Хоуз]
- ab: добавить время ожидания, исправить время обработки и выходные ошибки записи только в том случае, если они произошли. [Christophe Jaillet]
- worker MPM: не принудительно убивать рабочие потоки, если дочерний процесс выходит изящно. [Корпорация Oracle]
- Ядро: apachectl -S дважды печатает виртуальные хосты подстановочных имен. PR54948 [Эрик Ковенер]
- mod_auth_basic: добавьте директиву AuthBasicUseDigestAlgorithm, чтобы разрешить перенос паролей из дайджеста в базовую аутентификацию. [Крис Даррох]
- ab: добавьте новый -l-параметр, чтобы не проверять длину ответов. Это может быть полезно с динамическими страницами. PR9945, PR27888, PR42040 [] Подавлять форматирование сообщений запуска, записанных на консоль при использовании ErrorLogFormat. [Джефф Травик]
- mod_auth_digest: будьте более конкретными, если область не соответствует, потому что область не указана. [Грэм Леггетт]
- mod_proxy: добавьте примечание в диспетчер балансировщика о том, будут ли изменения сохранены или не будут сохранены и будут ли унаследованы настройки. [Даниэль Руджери, Джим Ягелски]
- mod_cache: избегайте сбоя с помощью strcmp (), если имя хоста не указано. [Грэм Леггетт]
- : добавьте util_fcgi.h и связанные определения и поддерживающие процедуры для FastCGI, основанные в основном на mod_proxy_fcgi. [Джефф Травик]
- mod_headers: добавьте заголовок заголовка заголовочного имени для копирования значения заголовков ответов в заметку. [Эрик Ковенер]
- mod_headers: добавьте команду 'setifempty' в Header и RequestHeader. [Эрик Ковенер]
- mod_logio: новый формат-спецификатор% S (сумма), который является суммой принятых и отправленных байтов. PR54015 [Christophe Jaillet]
- mod_deflate: улучшать обнаружение ошибок при распаковке тел запроса с завершающим мусором: обрабатывать регистр, когда конечные байты находятся в одном ковше. [Райнер Юнг]
- mod_authz_groupfile, mod_authz_user: уменьшите тяжесть AH01671 и AH01663 от ERROR до DEBUG, так как эти модули не знают, что делает mod_authz_core со своим возвращаемым значением AUTHZ_DENIED. [Эрик Ковенер]
- mod_ldap: добавьте TRACE5 для повторов LDAP. [Эрик Ковенер]
- mod_ldap: повторите попытку в тайм-аут LDAP во время авторизации. [Эрик Ковенер]
- mod_ldap: Изменить & quot; LDAPReferrals off & quot; чтобы фактически установить базовую опцию SDK LDAP в положение OFF и ввести «LDAPReferrals default», для выполнения SDK по умолчанию, без повторной проверки подлинности повторной проверки. [Ян Калуза]
- core: зарегистрировать сообщение в TRACE1, когда клиент прерывает соединение. [Эрик Ковенер]
- WinNT MPM: не сбой во время инициализации дочернего процесса, если протокол прослушивания непризнан. [Джефф Травик]
- modules: исправить некоторые предупреждения компилятора. [Гюнтер Кнауф]
- Sync 2.4 и trunk - Избегайте распределения памяти и работайте, когда TRACE1 не активирован. Исправлена опечатка в include guard - indent. Не нужно опускать строку перед удалением пути, это просто пустая трата времени ... - Сохранить несколько циклов [Christophe Jaillet]
- mod_filter: Добавить & quot; change = no & quot; как прото-флаг FilterProtocol для удаления начальных флагов поставщиков, установленных во время регистрации. [Эрик Ковенер]
- core, mod_ssl: включить возможность для модуля отменить смысл события опроса от чтения до записи или наоборот. Это шаг на пути к тому, чтобы mod_ssl в полной мере использовал событие MPM. [Грэм Леггетт]
- Makefile.win: установите правильный DLL-файл pcre во время установки сборки отладки. PR 55235. [Ben Reser]
- mod_ldap: исправить потенциальную утечку памяти или повреждение. PR 54936. [Zhenbo Xu]
- ab: Исправить потенциальные переполнения буфера при обработке параметров командной строки T и X. PR 55360. [Майк Румф]
- fcgistarter: укажите SO_REUSEADDR, чтобы разрешить запуск сервера со старыми подключениями в TIME_WAIT. [Джефф Травик]
- Ядро: добавьте hook_htaccess, который в сочетании с dirwalk_stat и post_perdir_config (введенный в 2.4.5) позволяет использовать mpm-itk без патчей в ядре httpd. [Стефан Фрич]
- support / htdbm: исправить обработку -t командной строки. Регрессия введена в 2.4.4.
Что нового в версии 2.4.1:
- Улучшения ядра:
- Загружаемые MPM с рабочим временем
- Несколько MPM теперь могут быть созданы как загружаемые модули во время компиляции. MPM выбора можно настроить во время выполнения.
- Событие MPM
- MPM событий больше не является экспериментальным, но теперь полностью поддерживается.
- Асинхронная поддержка
- Улучшенная поддержка асинхронного чтения / записи для поддержки MPM и платформ.
- Конфигурация LogLevel для каждого модуля и каждого каталога
- Теперь LogLevel может быть настроен для каждого модуля и каждого каталога. Новые уровни trace1 to trace8 были добавлены над уровнем журнала отладки.
- разделы конфигурации для запроса
- , и разделы могут использоваться для настройки конфигурации на основе критериев запроса.
- Общий анализатор выражений
- Новый парсер выражений позволяет задавать сложные условия, используя общий синтаксис в директивах типа SetEnvIfExpr, RewriteCond, Header и других.
- KeepAliveTimeout в миллисекундах
- Теперь можно указать KeepAliveTimeout в миллисекундах.
- Директива NameVirtualHost
- Больше не нужен и теперь устарел.
- Переопределить конфигурацию
- Новая директива AllowOverrideList позволяет использовать более мелкозернистый контроль, какие директивы разрешены в файлах .htaccess.
- Параметры файла конфигурации
- Теперь можно определить переменные в конфигурации, позволяя более четкое представление, если одно и то же значение используется во многих местах конфигурации.
- Сокращение использования памяти
- Несмотря на множество новых функций, 2.4.x имеет тенденцию использовать меньше памяти, чем 2.2.x.
- Новые модули:
- 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_proxy_html
- Ранее сторонний модуль поддерживал исправление ссылок HTML в ситуации обратного прокси-сервера, где бэкэнд генерирует URL-адреса, которые недопустимы для клиентов прокси.
- mod_sed
- Расширенная замена mod_substitute, позволяет редактировать тело ответа с полной степенью sed.
- mod_auth_form
- Позволяет выполнять проверку подлинности на основе форм.
- mod_session
- Позволяет сохранять состояние сеанса для клиентов, используя хранилище файлов cookie или базы данных.
- mod_allowmethods
- Новый модуль для ограничения определенных HTTP-методов без вмешательства в аутентификацию или авторизацию.
- mod_lua
- Встраивает язык Lua в httpd, для функций конфигурации и малой бизнес-логики. (Экспериментальный) литий>
- mod_log_debug
- Позволяет добавлять настраиваемые протоколы отладки на разных этапах обработки запроса.
- mod_buffer
- Обеспечивает буферизацию стеков фильтров ввода и вывода.
- mod_data li>
- Преобразование тела ответа в URL-адрес RFC2397
- mod_ratelimit
- Обеспечивает ограничение полосы пропускания для клиентов
- mod_request
- Предоставляет фильтры для обработки и создания доступных HTTP-запросов.
- mod_reflector
- Предоставляет отражение тела запроса как ответ через стек выходных фильтров.
- mod_slotmem_shm
- Предоставляет провайдер разделяемой памяти на основе слотов (ala the scoreboard).
- mod_xml2enc
- Ранее сторонний модуль поддерживал интернационализацию в модулях фильтра, основанных на libxml2 (markup-aware).
- Улучшения модулей:
- mod_ssl
- mod_ssl теперь можно настроить на использование сервера OCSP для проверки состояния проверки сертификата клиента. Ответчик по умолчанию настраивается вместе с решением о том, следует ли предпочесть ответчик, указанный в самом сертификате клиента.
- mod_ssl теперь также поддерживает сшивание OCSP, где сервер активно получает подтверждение OCSP своего сертификата и передает его клиенту во время рукопожатия.
- mod_ssl теперь может быть настроен для совместного использования данных сеанса SSL между серверами через memcached
- Ключи EC теперь поддерживаются в дополнение к RSA и DSA.
- mod_proxy
- Директива ProxyPass теперь наиболее оптимально настроена в блоке Location или LocationMatch и обеспечивает значительное преимущество в производительности по сравнению с традиционным двухпараметрическим синтаксисом, когда присутствует в больших количествах.
- Исходный адрес, используемый для запросов прокси, теперь настраивается.
- mod_proxy_balancer
- Дополнительные изменения конфигурации времени выполнения для BalancerMembers через balancer-manager
- Дополнительные BalancerMembers могут быть добавлены во время выполнения через balancer-manager
- Конфигурация времени выполнения подмножества параметров балансировки
- BalancerMembers могут быть настроены на «Drain», чтобы они реагировали только на существующие липкие сеансы, что позволяло их грациозно снимать.
- Настройки балансировки могут быть постоянными после перезапуска.
- mod_cache
- mod_cache теперь может кэшировать HEAD-запросы.
- По возможности директивы mod_cache теперь могут быть установлены для каждого каталога, а не для каждого сервера.
- Базовый URL-адрес кэшированных URL-адресов можно настроить, чтобы кластер кэшей мог использовать один и тот же префикс URL-адреса конечной точки.
- mod_cache теперь может обслуживать устаревшие кэшированные данные, когда бэкэнд недоступен (ошибка 5xx).
- mod_cache теперь может вставлять HIT / MISS / REVALIDATE в заголовок X-Cache.
- mod_include
- Поддержка атрибута 'onerror' внутри элемента 'include', позволяющего обмениваться ошибкой с ошибкой вместо строки ошибки по умолчанию.
- mod_cgi, mod_include, mod_isapi, ...
- Перевод заголовков в переменные окружения более строг, чем раньше, чтобы смягчить некоторые возможные атаки с использованием межсайтовых скриптов с помощью вставки заголовков. Заголовки, содержащие недопустимые символы (включая символы подчеркивания), теперь молча удаляются. Переменные среды в Apache имеют несколько указаний о том, как работать со сломанными старыми клиентами, для которых требуются такие заголовки. (Это влияет на все модули, которые используют эти переменные среды.)
- mod_authz_core Контейнеры логирования авторизации
- Расширенная логика авторизации теперь может быть указана с помощью директивы Require и соответствующих директив контейнера, например.
- mod_rewrite
- mod_rewrite добавляет флаги [QSD] (Query String Discard) и [END] для RewriteRule, чтобы упростить общие сценарии перезаписи.
- Добавляет возможность использования сложных булевых выражений в RewriteCond.
- Позволяет использовать SQL-запросы как функции RewriteMap.
- mod_ldap, mod_authnz_ldap
- mod_authnz_ldap добавляет поддержку вложенных групп.
- mod_ldap добавляет LDAPConnectionPoolTTL, LDAPTimeout и другие улучшения в обработке тайм-аутов. Это особенно полезно для установок, когда брандмауэр с состоянием отключает простоя подключения к серверу LDAP.
- mod_ldap добавляет LDAPLibraryDebug для регистрации отладочной информации, предоставленной используемым набором инструментов LDAP.
- mod_info
- mod_info теперь может сбрасывать предварительно обработанную конфигурацию в stdout во время запуска сервера.
- Улучшения программы:
- fcgistarter
- Новая утилита для запуска deamon FastCGI.
- htcacheclean
- Теперь могут быть указаны текущие кэшированные URL-адреса с включенными дополнительными метаданными.
- Разрешить явное удаление отдельных кэшированных URL-адресов из кеша.
- Теперь размеры файлов могут быть округлены до заданного размера блока, что делает ограничения размера более близкими к реальному размеру на диске.
- Размер кэша теперь может быть ограничен количеством индексов, а не ограничено размером файлов на диске.
- rotatelogs
- Теперь можно создать ссылку на текущий файл журнала.
- Теперь можно вызвать пользовательский скрипт после поворота.
- Документация:
- mod_rewrite
- Документация mod_rewrite была перегруппирована и почти полностью переписана с упором на примеры и общее использование, а также на показ вам, когда другие решения более уместны. Руководство по перезаписи теперь представляет собой раздел верхнего уровня с гораздо большей детализацией и лучшей организацией.
- mod_ssl
- Документация mod_ssl была значительно улучшена, а на начальном уровне больше примеров, в дополнение к предыдущему фокусу на технических деталях.
- Изменения в модуле разработчика:
- Проверить, что квитанция конфигурации добавлена
- Добавлен новый hook, check_config, который выполняется между перехватами pre_config и open_logs. Он также запускается до hook_config, когда опция -t передается в httpd. Крючок check_config позволяет модулю просматривать взаимозависимые значения директивы конфигурации и настраивать их, пока сообщения все еще могут быть записаны на консоль. Таким образом, пользователь может быть предупрежден о проблемах с неправильной конфигурацией до того, как основная функция open_logs перехватит вывод консоли в журнал ошибок.
- Добавлен парсер выражений
- Теперь у нас есть парсер общего назначения, API которого открыт в ap_expr.h. Это адаптировано из анализатора выражений, ранее реализованного в mod_ssl.
- Контейнеры логирования авторизации
- Модули авторизации теперь регистрируются как поставщик через ap_register_auth_provider () для поддержки расширенной логики авторизации, например.
- Интерфейс кэширования малых объектов
- Заголовок ap_socache.h предоставляет интерфейс на основе провайдера для кэширования небольших объектов данных на основе предыдущей реализации кеша сеанса mod_ssl. В настоящее время поддерживаются поставщики, использующие циклический буфер с разделяемой памятью, файлы dbm на основе дисков и распределенный кеш-память memcache.
- Добавлен кэш-код кэша
- Модуль mod_cache теперь включает новый кэш cache_status, который вызывается, когда становится известно о решении кэширования. Предоставляется реализация по умолчанию, которая добавляет в ответ дополнительный заголовок X-Cache и X-Cache-Detail.
Что нового в версии 2.3.15 Beta:
- БЕЗОПАСНОСТЬ: CVE-2011-3348 (cve.mitre.org)
- mod_proxy_ajp: ответьте с помощью HTTP_NOT_IMPLEMENTED, когда метод не распознается.
- БЕЗОПАСНОСТЬ: CVE-2011-3192 (cve.mitre.org)
- core: Исправить обработку запросов байтового диапазона, чтобы использовать меньше памяти, чтобы избежать отказа в обслуживании. Если сумма всех диапазонов в запросе больше исходного файла, игнорируйте диапазоны и отправляйте полный файл. PR 51714.
- БЕЗОПАСНОСТЬ: CVE-2011-3607 (cve.mitre.org)
- core: исправить целочисленное переполнение в ap_pregsub. Это может быть вызвано, например, с mod_setenvif через вредоносный .htaccess.
- configure: загружать все модули в сгенерированную конфигурацию по умолчанию при использовании --enable-load-all-modules.
- mod_reqtimeout: измените значение по умолчанию, чтобы установить допустимые значения таймаута.
- core, mod_dav_fs: изменить значение ETag по умолчанию на «размер mtime», т. е. удалить индексный дескриптор. PR 49623.
- mod_lua: выставить SSL-переменные через r: ssl_var_lookup ().
- mod_lua: теперь LuaHook {AccessChecker, AuthChecker, CheckUserID, TranslateName} может быть запущен как "ранний" или "поздно" по сравнению с другими модулями.
- configure: по умолчанию загружать только те модули, которые либо необходимы, либо явно выбраны аргументом configure --enable-foo. Операторы LoadModule для модулей, включенных --enable-mods-shared = большинство и друзей, будут закомментированы.
- mod_lua: предотвращать настройку ранних Lua-перехватчиков (LuaHookTranslateName и LuaHookQuickHandler) из-за того, что конфигурация была проигнорирована.
- mod_lua: разрешить "попытку индексирования локального 'r' (значение пользовательской величины) & quot; ошибки в сценариях LuaMapHandler
- mod_log_debug: переименуйте необязательный аргумент из if = в expr =, чтобы больше соответствовать другим директивам config.
- mod_headers: требует выражения, которое должно быть указано с помощью expr =, чтобы соответствовать другим директивам конфигурации.
- mod_substitute: Чтобы предотвратить использование памяти за бортом, ограничьте длину строки до 1 МБ.
- mod_lua: сделать строку запроса (r.args) доступной для записи.
- mod_include: Добавить поддержку кодировки и декодирования приложения / x-www-form-urlencoded.
- rotatelogs: добавьте параметр -c, чтобы принудительно создать файл журнала в каждом интервале вращения, даже если он пуст.
- core: Limit ap_pregsub () до 64K, добавьте ap_pregsub_ex () для более длинных строк.
- mod_session_crypto: Refactor для поддержки нового API apr_crypto.
- http: Добавьте отсутствующий заголовок местоположения, если локальный URL-путь используется как ErrorDocument для 30x.
- mod_buffer: убедитесь, что мы уходим для подзапросов, но не для внутренних переадресаций, инициированных mod_rewrite.
- mod_lua: добавить r: construct_url в качестве оболочки для ap_construct_url.
- mod_remote_ip: Исправить конфигурацию внутренних прокси. PR 49272.
- mpm_winnt: правильно обрабатывать AcceptFilter 'none'; разрешить конкретную конечную точку IP сервера и IP-адрес удаленного клиента при подключении.
- mod_setenvif: удалить совпадение OID, которое устарело SetEnvIfExpr с помощью PeerExtList ().
- mpm_prefork, mpm_worker, mpm_event: если ребенок создается непосредственно перед изящным перезапуском, а затем выходит из-за отсутствующего файла блокировки, не завершайте работу всего сервера. PR 39311.
- mpm_event: проверьте возвращаемое значение из ap_run_create_connection. PR: 41194.
- mod_mime_magic: добавьте подписи для PNG и SWF к примеру config. PR: 48352.
- core, unixd: Добавить -D DUMP_RUN_CFG, чтобы сбрасывать некоторые элементы конфигурации из разобранной (или по умолчанию) конфигурации. Это полезно для сценариев инициализации, которые должны устанавливать временные каталоги и разрешения.
- core, mod_actions, mod_asis: сообщения журнала ошибок с понижением, которые сопровождают статус запроса 404 от ошибки loglevel до информации. PR: 35768.
- Ядро: Сортировка Fix hook с модулями Perl. PR: 45076.
- core: Enforce LimitRequestFieldSize после объединения нескольких заголовков с тем же именем.
- mod_ssl: Если установлен MaxMemFree, попросите OpenSSL & gt; = 1.0.0 уменьшить использование памяти. PR 51618.
- mod_ssl: при запуске при проверке сертификата сервера, соответствует ли оно настроенному серверному имени, также забирайте записи dNSName в расширении subjectAltName. PR 32652, PR 47051.
- mod_substitute: уменьшить использование памяти и копирование данных. PR 50559.
- mod_ssl / proxy: включить расширение SNI для подключения к серверу TLS
- Добавьте обертки для malloc, calloc, realloc, которые проверяют ситуацию в памяти и используют их во многих местах. PR 51568, PR 51569, PR 51571.
- Исправить кросс-компиляцию mod_cgi / mod_cgid, когда APR_HAVE_STRUCT_RLIMIT является ложным, но RLIMIT_ * определены. PR51371.
- Ядро: Правильно подчиняйтесь ServerName / ServerAlias, если заголовок Host из запроса соответствует адресу VirtualHost. PR 51709.
- mod_unique_id: использовать генератор случайных чисел для инициализации счетчика. PR 45110.
- core: добавьте API удобства для apr_random.
- : добавьте директивы MaxRangeOverlaps и MaxRangeReversals для управления количеством перекрывающихся и изменяющихся диапазонов (соответственно), разрешенных перед возвратом всего ресурса, с пределом по умолчанию 20.
- mod_ldap: Необязательная функция uldap_ssl_supported (r) всегда возвращает false при вызове с виртуального хоста с директивами mod_ldap. Не влияет на использование mod_ldhn_ldap mod_ldap.
- mod_filter: вместо того, чтобы отбрасывать заголовок Accept-Ranges, когда присутствует фильтр, зарегистрированный в AP_FILTER_PROTO_NO_BYTERANGE, установите значение заголовка в «none».
- Ядро: Разрешить MaxRanges none | unlimited | по умолчанию и установить «Accept-Ranges: none» в этом случае Диапазоны игнорируются с MaxRanges none.
- mod_ssl: проверка проверки отзыва CRL при проверке сертификатов клиентов или прокси-серверов. Полностью делегируйте обработку CRL в OpenSSL и добавьте новую [Proxy] директив CARevocationCheck для управления режимом проверки отзыва.
- Ядро: добавьте директиву MaxRanges для управления количеством диапазонов, разрешенных перед возвратом всего ресурса, с лимитом по умолчанию 200.
- mod_cache: убедитесь, что CacheDisable может корректно отображаться в LocationMatch.
- mod_cache: исправить перемещение фильтра CACHE, который ошибочно снизился, если исходный фильтр не был добавлен конфигурацией.
- mod_ssl: улучшить регистрацию ошибок сертификата. PR 47408.
- mod_authz_groupfile: Увеличьте ограничение длины строк в файле группы до 16 МБ. PR 43084.
- core: Увеличьте ограничение длины строк в файле конфигурации до 16 МБ. PR 45888. PR 50824.
- core: Добавить API для изменяемых размеров буферов.
- mod_ldap: включить LDAPConnectionTimeout для наборов инструментов LDAP с LDAP_OPT_CONNECT_TIMEOUT вместо LDAP_OPT_NETWORK_TIMEOUT, например Tivoli Directory Server 6.3 и более поздних версий.
- mod_ldap: изменить количество попыток повторения по умолчанию от 10 до 3 и добавить директивы LDAPRetries и LDAPRetryDelay.
- mod_authnz_ldap: не повторите попытку во время аутентификации, потому что это просто умножает достаточные повторы, уже выполняемые mod_ldap.
- configure: Разрешить явно отключать модули даже при выборе модуля «действительно».
- mod_rewrite: проверьте правильность каждого внутреннего (int :) RewriteMap, даже если RewriteEngine отключен в контексте сервера, избегая сбоя при ссылке на недопустимую карту int во время выполнения. PR 50994.
- mod_ssl, configure: требуется OpenSSL 0.9.7 или новее.
- mod_ssl: удалить слой ssl_toolkit_compat.
- mod_ssl, настроить, ab: отказаться от поддержки инструментария RSA BSAFE SSL-C.
- mod_usertrack: Запустите mod_usertrack раньше в hookup fixups, чтобы убедиться, что cookie установлен, когда модули, такие как mod_rewrite, запускают перенаправление. Также используйте r- & gt; err_headers_out для файла cookie по той же причине. PR29755.
- mod_proxy_http, mod_proxy_connect: добавьте примечания о запросе «proxy-status» и «proxy-source-port» для ведения журнала. PR 30195.
- configure: включить ldap-модули в 'all' и 'most', если ldap скомпилирован в apr-util.
- core: Добавить ap_check_cmd_context () - проверить, выполняется ли команда в файле .htaccess.
- mod_deflate: исправить бесконечный цикл, если первый ковш - это метаданные. PR 51590.
- mod_authn_socache: исправить работу в .htaccess, если она не настроена где-либо в httpd.conf, и ввести директиву AuthnCacheEnable. PR 51991
- mod_xml2enc: новый (ранее сторонний) модуль, поддерживающий интернационализацию фильтров с помощью флеш-кодирования и преобразования смарт-чарсет.
- mod_proxy_html: новый (ранее сторонний) модуль для исправления HTML-ссылок в ситуации обратного прокси-сервера, где бэкэнд создает URL-адреса, которые не разрешаются Клиентами.
Что нового в версии 2.3.12 Beta:
- Этот выпуск включает Apache Portable Runtime (APR) ) версии 1.4.5 и APR-Util версии 1.3.12 в отдельном tar-файле -deps. Библиотеки APR должны быть обновлены для правильной работы всех функций httpd.
Комментарии не найдены