Servidor HTTP Apache Versão 2.4

Este documento descreve algumas das principais mudanças entre as versões 2.2 e 2.4 do servidor HTTP Apache. Para obter informações sobre os novos recursos desde a versão 2.0, consulte o documento Novos recursos da versão 2.2.
LoadModule.LogLevel agora pode ser
configurada por módulo e por diretório. Os novos modos trace1
a trace8 foram adicionados acima do nível
debug.<If>,
<ElseIf>
e <Else>
podem ser usadas para definir a configuração baseada em critérios
por requisição.SetEnvIfExpr,
RewriteCond,
Header,
<If>
e outras.
KeepAliveTimeout em milissegundos.
AllowOverrideList
permite controle mais fino de quais diretivas são
permitidas em arquivos .htaccess.Define, permitindo uma representação
mais clara se o mesmo valor for usado em vários lugares na configuração.
mod_proxy_fcgimod_proxy.mod_proxy_scgimod_proxy.mod_proxy_expressmod_proxy.mod_remoteipmod_heartmonitor,
mod_lbmethod_heartbeatmod_proxy_balancer baseie suas decisões
de balanceamento de carga no número de conexões ativas nos servidores de backend.mod_proxy_htmlmod_sedmod_substitute, permite
editar o corpo da resposta com todo o poder do sed.mod_auth_formmod_sessionmod_allowmethodsmod_luamod_log_debugmod_buffermod_datamod_ratelimitmod_requestmod_reflectormod_slotmem_shmmod_xml2encmod_macro (disponível desde a versão 2.4.5)mod_proxy_wstunnel (disponível desde a versão 2.4.5)mod_authnz_fcgi (disponível desde a versão 2.4.10)mod_http2 (disponível desde a versão 2.4.17)mod_proxy_http2 (disponível desde a versão 2.4.19)mod_proxymod_proxy_hcheck (disponível desde a versão 2.4.21)mod_brotli (disponível desde a versão 2.4.26)mod_md (disponível desde a versão 2.4.30)mod_proxy_uwsgi (disponível desde a versão 2.4.30)mod_proxy.mod_socache_redis (disponível desde a versão 2.4.39)mod_systemd (disponível desde a versão 2.4.42)Type=notify do systemd.mod_sslmod_ssl agora pode ser configurado para usar um
servidor OCSP para verificar o status de validação de um certificado de cliente.
O servidor de resposta padrão é configurável, assim como
a decisão de priorizar o servidor de resposta designado no
próprio certificado do cliente.mod_ssl agora também suporta grampeamento OCSP, onde o
servidor obtém proativamente uma verificação OCSP de seu certificado e
a transmite ao cliente durante a comunicação inicial.mod_ssl agora pode ser configurado para compartilhar dados de sessão SSL
entre servidores através do memcachedmod_proxyProxyPass
agora é configurada de forma mais otimizada dentro de um bloco
Location ou
LocationMatch
e oferece uma vantagem de desempenho significativa em relação à sintaxe tradicional de dois parâmetros
quando presente em grande número.mod_proxy_balancermod_cachemod_cache pode ser inserido opcionalmente
em um determinado ponto da cadeia de filtros para fornecer um controle preciso sobre o cache.
mod_cache agora pode armazenar em cache as solicitações HEAD.mod_cache agora podem ser definidas
por diretório, em vez de por servidor.mod_cache agora é capaz de fornecer dados em cache desatualizados
quando um backend estiver indisponível (erro 5xx).mod_cache agora pode inserir HIT/MISS/REVALIDATE em
um cabeçalho X-Cache.mod_includemod_cgi, mod_include,
mod_isapi, ...mod_authz_coreRequire
e as diretivas de contêiner relacionadas, como
<RequireAll>.mod_rewritemod_rewrite adiciona as opções [QSD]
(Query String Discard) e [END] para a diretiva
RewriteRule para
simplificar cenários comuns de reescrita.RewriteCond.RewriteMap.mod_ldap, mod_authnz_ldapmod_authnz_ldap adiciona suporte para grupos aninhados.mod_ldap adiciona as diretivas
LDAPConnectionPoolTTL,
LDAPTimeout e
outras melhorias no gerenciamento de limites de tempo.
Isso é especialmente útil para configurações onde um
firewall com estados descarta conexões ociosas com o servidor LDAP.mod_ldap adiciona a diretiva
LDAPLibraryDebug para registrar
informações de depuração fornecidas pelo kit de ferramentas LDAP utilizado.mod_infomod_info agora pode despejar a configuração pré-analisada
para stdout durante a inicialização do servidor.mod_auth_basicfcgistarterhtcachecleanrotatelogshtpasswd, htdbmmod_rewrite foi
reorganizada e quase completamente reescrita, com foco em
exemplos e uso comum, além de mostrar quando outras
soluções são mais apropriadas. O Guia de
Reescrita agora é uma seção de nível superior com muito mais
detalhes e melhor organização.mod_ssl foi bastante
aprimorada, com mais exemplos para iniciantes,
além do foco anterior em detalhes técnicos.mod_cache e o cache genérico
de chave/valor fornecido pela interface socache
bem como para abranger o cache especializado fornecido por
mecanismos como o mod_file_cache.check_config, foi adicionado e é executado
entre os ganchos pre_config e open_logs.
Ele também é executado antes do gancho test_config
quando a opção -t é passada para o
httpd. O gancho check_config
permite que módulos revisem os valores de diretivas de configuração
interdependentes e os ajustem enquanto as mensagens ainda possam ser registradas
no console. Dessa forma, o usuário pode ser alertado sobre problemas de configuração incorreta
antes que a função principal do gancho open_logs redirecione
a saída do console para o log de erros.mod_ssl.<RequireAll>.mod_ssl.
Provedores que utilizam um buffer cíclico de memória compartilhada, arquivos dbm baseados
em disco e um cache distribuído memcache são atualmente
suportados.mod_cache agora inclui um novo
gancho cache_status, que é chamado quando a decisão de cache
se torna conhecida. Uma implementação padrão fornecida
adiciona à resposta um cabeçalho opcional X-Cache e
X-Cache-Detail.A documentação do desenvolvedor contém uma lista detalhada de alterações na API.