Módulos do Apache
O comando configure é responsável por realizar as configurações necessárias para que o comando make possa compilar o código. Ele garante que todas as dependências necessárias para completar o processo de compilação e instalação estão disponíveis, e encontra tudo o que for necessário para usar essas dependências.
Isso ocorre porque o código fonte baixado normalmente não inclui um Makefile finalizado. Ao invés disso, ele traz um modelo chamado Makefile.in e o script configure produz um Makefile personalizado para o sistema.
Nesse tutorial, o comando configure com seus respectivos parâmetros/opções tem como propósito configurar o arquivo Makefile para que alguns dos módulos mais utilizados do Apache sejam compilados corretamente pelo comando make. Para obter mais informações sobre os módulos do Apache consulte a documentação. A versão utilizada nesse tutorial é a 2.4.
A compilação e instalação dos módulos não faz com que sejam configurados e utilizados. Para que um módulo seja utilizado, primeiramente deve ser carregado por meio do arquivo de configuração do Apache denominado httpd.conf.
O comando configure e as opções utilizadas são:
Keepalive: Mantem a conexão por um tempo específico para evitar que o navegador precise realizar várias conexões em um curto espaço de tempo. O protocolo HTTP é implementado com o protocolo TCP, que utiliza três handshake a cada nova conexão. Isso consome tempo, banda, recurso de hardware. Nesse sentido o keepalive evita muitas conexões durante um determinado tempo.
--enable-cache: Habilita a compilação do módulo mod_cache.so. Esse módulo implementa um filtro de cache de conteúdo HTTP compatível com RFC 2616. Esse módulo requer os serviços de um ou mais módulos de gerenciamento de armazenamento, isto é, dos módulos mod_cache_disk e mod_cache_socache
--enable-socache-memcache: Habilita a compilação do módulo mod_socache_memcache.so. É um provedor de cache de objeto compartilhado que fornece criação e acesso a um cache apoiado pelo sistema de cache de objetos de memória distribuída de alto desempenho memcached.
--enable-cache-disk: Habilita a compilação do módulo mod_cache_disk.so. Módulo que implementa cache em disco.
--enable-watchdog: Habilita a compilação do módulo mod_watchdog.so. Define ganchos programáticos para outros módulos para executar tarefas periodicamente. Atualmente, os seguintes módulos na distribuição do Apache usam esta funcionalidade: mod_heartbeat, mod_heartmonitor, mod_md e mod_proxy_hcheck.
--enable-ratelimit: Habilita a compilação do módulo mod_cache. Módulo utilizado para limitar a banda das conexões.
--enable-deflate: Habilita a compilação do módulo mod_deflate.so. Módulo utilizado para compactar as informações enviadas para o cliente.
--enable-logio: Habilita a compilação do módulo mod_cache. Este módulo fornece o registro do número de entrada e saída de bytes recebidos/enviados por solicitação. Os números refletem os bytes reais conforme recebidos na rede, que levam em consideração os cabeçalhos e corpos de solicitações e respostas. A contagem é feita antes de SSL/TLS na entrada e depois de SSL/TLS na saída, para que os números reflitam corretamente quaisquer alterações feitas pela criptografia..
--enable-expires: Habilita a compilação do módulo mod_expires.so. Modúlo utilizado para especificar o tempo que o navegador deve guardar figuras, arquivos html, folhas de estilo (CSS), arquivos javascript (js), etc. Evita que o servidor precise reenviar as mesmas informações quando o navegador acessa novamente uma determinada página em um tempo inferior ao configurado no expires.
--enable-http: Habilita a compilação do módulo mod_cache. módulo do protocolo http.
--enable-mime-magic: Habilita a compilação do módulo mod_mime_magic.so. Este módulo determina o tipo MIME dos arquivos da mesma forma que o comando Unix file funciona: ele examina os primeiros bytes do arquivo. Pretende ser uma "segunda linha de defesa" para casos que o mod_mime não consegue resolver.
Tipo MIME: Habilita a compilação do módulo mod_cache. Uma forma de descrever o tipo de documento que está sendo transmitido. Seu nome vem do fato de que seu formato é emprestado das Multipurpose Internet Mail Extensions. Consiste em um tipo principal e um tipo secundário, separados por uma barra. Alguns exemplos são text/html, image/gif e application/octet-stream. Em HTTP, o tipo MIME é transmitido no cabeçalho Content-Type.
--enable-remoteip: Habilita a compilação do módulo mod_remoteip.so. Este módulo é usado para tratar o useragent que iniciou a solicitação como o useragent de origem, conforme identificado pelo httpd para fins de autorização e registro, mesmo quando esse useragent está atrás de um balanceador de carga, servidor front-end ou servidor proxy..
--enable-so: Habilita a compilação do módulo mod_cache. Usado para carregar módulos no Apache HTTP Server em tempo de execução por meio do mecanismo Dynamic Shared Object (DSO), em vez de exigir uma recompilação..
--enable-session: Habilita a compilação do módulo mod_session.so. Este módulo fornece suporte para um servidor amplo por interface de sessão do usuário. As sessões podem ser usadas para controlar se um usuário fez login ou para obter outras informações por usuário que devem ser mantidas disponíveis durante as solicitações..
--enable-ssl: Habilita a compilação do módulo mod_ssl.so. Módulo utilizado para realizar comunicação criptografada do tipo TLS.
--enable-rewrite: Habilita a compilação do módulo mod_rewrite.so. Esse módulo usa um mecanismo de reescrita baseado em regras, com base em um analisador de expressão regular PCRE, para reescrever URLs solicitados em tempo real. Por padrão, mod_rewrite.so mapeia uma URL para um caminho do sistema de arquivos. No entanto, também pode ser usado para redirecionar um URL para outro URL ou para invocar uma busca interna de proxy..
--enable-heartbeat: Habilita a compilação do módulo mod_heartbeat.so. Envia mensagens multicast para um ouvinte mod_heartmonitor que anuncia a contagem de conexão atual dos servidores. Normalmente, mod_heartmonitor será executado em um servidor proxy com mod_lbmethod_heartbeat carregado, o que permite que ProxyPass use o lbmethod "heartbeat" dentro de ProxyPass.
--enable-heartmonitor: Habilita a compilação do módulo mod_heartmonitor.so. Esse módulo escuta as mensagens de status do servidor geradas pelos servidores de origem habilitados para mod_heartbeat e disponibiliza seu status para mod_lbmethod_heartbeat. Isso permite que o ProxyPass use o método lb de "heartbeat" dentro do ProxyPass.
--enable-asis: Habilita a compilação do módulo mod_asis.so. Este módulo fornece o manipulador send-as-is que faz com que o Apache HTTP Server envie o documento sem adicionar a maioria dos cabeçalhos HTTP usuais. Isso pode ser usado para enviar qualquer tipo de dados do servidor, incluindo redirecionamentos e outras respostas HTTP especiais, sem a necessidade de um script cgi ou nph. Por motivos históricos, este módulo também processará qualquer arquivo com o tipo mime httpd/send-as-is.
--enable-info: Habilita a compilação do módulo mod_info.so. Oferece uma visão geral abrangente da configuração do servidor.
--enable-vhost-alias: Habilita a compilação do módulo mod_vhost_alias.so. Este módulo cria hosts virtuais configurados dinamicamente, permitindo que o endereço IP e / ou o cabeçalho Host: da solicitação HTTP seja usado como parte do nome do caminho para determinar quais arquivos servir. Isso permite o uso fácil de um grande número de hosts virtuais com configurações semelhantes.
--enable-negotiation: Habilita a compilação do módulo mod_negotiation.so. A negociação de conteúdo, ou mais precisamente a seleção de conteúdo, é a seleção do documento que melhor corresponda às capacidades do cliente, a partir de um dos vários documentos disponíveis. Existem duas implementações disso.
--enable-actions: Habilita a compilação do módulo mod_actions.so. Este módulo possui duas diretivas. A diretiva Action permite que você execute scripts CGI sempre que um arquivo de um determinado tipo de conteúdo MIME for solicitado. A diretiva Script permite que você execute scripts CGI sempre que um método específico for usado em uma solicitação. Isso torna muito mais fácil executar scripts que processam arquivos..
--enable-speling: Habilita a compilação do módulo mod_speling.so. As solicitações de documentos às vezes não podem ser atendidas pelo servidor Apache central porque a solicitação foi digitada incorretamente ou mal capitalizada. Este módulo soluciona esse problema tentando encontrar um documento correspondente, mesmo depois de todos os outros módulos desistirem. Ele faz seu trabalho comparando cada nome de documento no diretório solicitado com o nome de documento solicitado, independentemente de maiúsculas e minúsculas, e permitindo até um erro de ortografia (inserção / omissão / transposição de caractere ou caractere incorreto). Uma lista é construída com todos os nomes de documentos que foram combinados usando esta estratégia.
--with-included-apr: Especifica o caminho da biblioteca apr. É uma biblioteca de suporte para o servidor da web Apache. Ela fornece um conjunto de APIs que são mapeadas para o sistema operacional subjacente. Onde o SO não suporta uma função específica, o APR fornecerá uma emulação.
--with-z=/usr/local/zlib: Especifica o caminho da biblioteca zlib, que é uma biblioteca multiplataforma de compressão de dados escrita por Jean-loup Gailly e Mark Adler como uma generalização do algoritmo DEFLATE usado em seu programa de compressão de dados gzip.
--with-ssl=/usr/local/ssl/include/openssl: Especifica o caminho da biblioteca openssl. É uma biblioteca que implementa as funções básicas de criptografia e disponibiliza várias funções utilitárias.
--with-pcre=/usr/local/pcre: Especifica o caminho da biblioteca pcre (Perl Compatible Regular Expressions). É uma biblioteca escrita para linguagem C que implementa expressões regulares inspirada na interface externa do Perl.