Apache/pt-br

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

Suporte global
Habilitar a USE flag global  fornece suporte ao Apache em outros pacotes. Isto deve fazer com que seja instalado automaticamente se um pacote dependente do Apache foi instalado.

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

O arquivo do em  é o arquivo de configuração do script de inicialização do Gentoo. A única linha ativa neste arquivo é a linha :

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.

Levando em conta o que foi dito na subseção acima, e como arquivos de configuração de módulos (arquivos em ) quase sempre começam com, o conteúdo de um arquivo em , será anexado ao resto da configuração APENAS se a opção correspondente está definida usando uma flag   na variável   no arquivo. O arquivo de configuração é uma exceção à esta regra, já que ele não inicia com uma expressão   e portanto é sempre incluído na configuração resultante.

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 :

Habilite o módulo  na variável   do arquivo :

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:

Agora, omita ou renomeie e abra a página de teste: http://localhost/

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

Modificar versões do PHP
To change the version of PHP handled by Apache, first list the available versions for the  Server Application Programming Interface (SAPI):

Change it to the version of choice:

Substitute  in the example above to the requested number in the output of eselect php list apache2 as displayed earlier on.

Virtual hosts
For each virtual host, provide a  directory that is reachable and accessible by the Apache daemon. Add a virtual host configuration file in the  directory which uses this   and the virtual host server name. Do not forget to add an entry for this domain name in.

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

Below are two example virtual host definitions, one for domainname1.com and one for domainname2.com. Notice the different  and   directives even though the host itself  remains the same:

It is recommended to provide an IP based virtual host definition as well. This allows the administrator to put up a message for users that try to reach a site through its IP address:

After inserting virtual hosts, the server needs to be (gracefully) restarted for the new sites to become active.

Enabling PHP through fcgid
Install and. The PHP package requires  to be set as a USE flag:

Edit the file:

Create the needed directory:

Symlink it for the PHP wrapper:

Enable the fcgid module:

Finally restart Apache and check the  site created earlier. The value of  should be CGI/FastCGI

Enabling PHP-FPM through mod_proxy_fcgi in Apache 2.4
With PHP 5.3 and above, PHP supports an additional mode, FastCGI Process Manager, or FPM.

The following method relies on the FilesMatch directive and be placed within the main server config or VirtualHosts. The location of the UNIX socket is determined by the listen directive in the, allowing for specifying separate pools per site or function.

In the following example, it is placed within the PHP module config file of Apache:

By default the  directive is not set to a socket. First create the directory for the socket file:

Next, update the file as follows:

Then enable both the PHP and proxy modules:

OpenRC
Start the Apache server:

Add Apache to the default runlevel:

Restart the Apache service:

Reload Apache configuration files:

systemd
Start the Apache server:

Add Apache to the default runlevel:

Restart the Apache service:

Resources
The Apache server can be difficult to configure properly. Below are some resources that may be helpful when issues occur:


 * Troubleshooting guide

Testing
Verifying IP interfaces and ports on which Apache2 is running on and listening to:

Testing if a connection to a Apache server is working on localhost:

Interrupt the connection test with + and.

apr_sockaddr_info_get failed for 
Error:

apache2: apr_sockaddr_info_get failed for System_Hostname

Resolution:

When this occurs, add the host name to the file:

External resources

 * 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