Apache/pt-br

O Apache HTTP Server é um servidor web eficiente e extensível. É um dos mais populares servidores web usados na Internet.

Emerge
As of 2016-01-08, Apache 2.4 is marked as testing. To install Apache 2.4, you'll need to make the following package.accept_keywords modifications.

If you want to use the Apache event MPM, then add the following to make.conf:

If you want to use the Apache worker MPM, then add the following to make.conf:

And, enable the Apache threads USE flag:

Then emerge Apache:

Suporte global
Enabling the  global USE flag provides support for Apache in other packages. This may cause to be installed automatically if a package depending on Apache has been emerged.

Após configurar as variáveis USE, atualize o sistema para que as mudanças tenham efeito:

Arquivos
Há dois arquivos principais que configuram o comportamento do Apache2 no sistema:


 * Arquivo de configuração do script de inicialização do Apache2 no Gentoo


 * Arquivo convencional de configuração do servidor Apache2

The file located in  is Gentoo's init script configuration file. The only active line in this file is the APACHE2_OPTS variable line:

Esta linha define opções que serão interpretadas por vários arquivos de configuração usando a expressão  para ativar ou desativar alguma parte da configuração toda. Isto será retornado mais tarde no artigo.

O arquivo é o arquivo convencional de configuração do Apache. De fato este arquivo é apenas um ponto de entrada para a configuração. O arquivo todo é dividido em vários outros no diretório, os quais são reunidos usando a diretiva. Por exemplo, a expressão, em , visa incluir todos os arquivos em  cujo nome termine em.

Taking into account what has been said in the subsection above, and as module configuration files (files in ) almost always start with the, the content of one file inside , will ONLY be assembled with the rest of the configuration, if the matching option is set using a   flag in the APACHE2_OPTS variable in the  file. The configuration file is an exception to this rule as it doesn't start with an   statement and therefore is always included in the resulting configuration.

Padrões
Após a instalação limpa de um servidor Apache, a configuração resultante da junção dos diferentes arquivos de configuração é como a seguir. Comece com o ponto de entrada.

Primeiro sinal de vida
Como visto na configuração inicial acima, o diretório do  do host virtual pré-instalado é  e seu nome de servidor é localhost. Além disso um arquivo index.html é fornecido na pasta, sendo assim, para checarmos se tudo está corretamente instalado ou não, aponte um navegador para http://localhost/.

Uma mensagem de "It works!" deve ser exibida na página.

Habilitando mod_security
Instale :

Enable the  module in the  file's APACHE2_OPTS variable:

Controle este módulo editando os arquivos e, e então reinicie o Apache.

Habilitando suporte a PHP
Instale o PHP com a USE flag  e habilite o módulo:

Antes de testar se o módulo PHP funciona, verifique se o arquivo existe e contém a seguinte definição:

Se ele não existir, crie-o.

Para verificar se o módulo PHP funciona, crie uma página de teste:

Now, suppress or rename and open the test page:

Uma tabela descrevendo as configurações do PHP deve estar visível.

Modificar versões do PHP
Para alterar a versão do PHP manipulada pelo Apache, primeiro liste as versões disponíveis para a interface SAPI (Server Application Programming Interface) do :

Altere para a versão de sua escolha:

Substitua  no exemplo acima pelo número solicitado na saída do comando eselect php list apache2 como exibido anteriormente.

Hosts virtuais
Para cada host virtual, forneça um diretório  alcançável e acessível pelo daemon do Apache. Adicione um arquivo de configuração de host vitual na pasta, a qual usa este   e o nome de servidor do host virtual. Não esqueça de adicionar uma entrada para este nome de domínio em.

To assign the apache user/group ownership on the virtual host files, use like in the following example:

Abaixo estão dois exemplos de definição de host virtual, uma para domainname1.com e outra para domainname2.com. Repare as diferentes diretivas de  e   mesmo que o host em si  permaneça o mesmo:

É recomendado fornecer uma definição host virtual baseado em IP também. Isto permite ao administrador colocar uma mensagem aos usuários que tentarem acessar um site neste endereço IP:

Após inserir os hosts virtuais, o servidor precisa ser (graciosamente) reiniciado para os novos sites se tornarem ativos.

Habilitando PHP por fcgid
Instale e. O pacote PHP requer a USE flag  definida:

Edite o arquivo :

Crie a pasta necessária:

Crie um link simbólico para o wrapper do PHP:

Enable the  module:

Por fim reinicie o Apache e verifique o site  criado anteriormente. O valor de  deve ser CGI/FastCGI

Habilitando PHP-FPM pelo mod_proxy_fcgi no Apache 2.4
The following pre-requisites must be satisfied to enable PHP-FPM through mod_proxy_fcgi:
 * >= PHP 5.3
 * >= Apache 2.4 (see Emerge section above for instructions on how to install Apache 2.4)

Furthermore, there are a few restrictions on the availability of functionality within Apache 2.4:
 * >= Apache 2.4.9, if you want to communicate with PHP-FPM over UNIX sockets
 * >= Apache 2.4.10, if you want to use SetHandler instead of ProxyPassMatch.

The following configuration will only work with Apache 2.4.10 and newer. It relies on the  directive and be placed within the main server config or. The location of the UNIX socket is determined by the  directive in the  configuration file, allowing for specifying separate pools per site or function.

No exemplo a seguir, ele é colocado dentro do arquivo de módulo de configuração do PHP module do Apache:

Or, you can use ProxPassMatch -- the only option if the Apache version is between 2.4.0 and 2.4.8, inclusive.

Por padrão a diretiva  não é definida para um socket. Primeiro crie o diretório para o arquivo de socket:

Depois, atualize o arquivo como a seguir:

Then enable both the  and   modules:

OpenRC
Inicie o servidor Apache:

Adicione o Apache ao runlevel padrão:

Reinicie o serviço do Apache:

Recarregue os arquivos de configuração do Apache:

systemd
Inicie o servidor do Apache:

Adicione o Apache ao runlevel padrão:

Reinicie o serviço do Apache:

Recursos
O servidor Apache pode ser difícil de configurar corretamente. Abaixo estão alguns recursos que podem ser úteis quando isso ocorrer:


 * Guia de resolução de problemas

Teste
Verificando as interfaces IP e portar onde o Apache2 está rodando e ouvindo:

Testando se uma conexão com o servidor Apache está funcionando no localhost:

Interrompa o teste de conexão pressionando + e.

apr_sockaddr_info_get failed for 
Error:

apache2: apr_sockaddr_info_get failed for System_Hostname

Resolution:

Quando isto ocorrer, adicione o nome do host ao arquivo :

Veja também

 * Lighttpd - Um servidor web leve e rápido.
 * Nginx - Um proxy reverso e servidor HTTP leve, rápido e performático.

Recursos externos

 * Slicehost article: Installing Apache on Gentoo
 * Slicehost article: Apache configuration files on Gentoo
 * Slicehost article: Configuring the Apache MPM on Gentoo
 * Slicehost article: Apache configuration on Gentoo
 * Slicehost article: Apache Virtual Hosts on Gentoo
 * Slicehost article: Enabling and using apache's mod_status on Gentoo
 * apache.org documentation
 * Apache2 mod_pagespeed