Apache 2.0 em sistemas Unix
 
  Esta seção contém notas e dicas específicas para a instalação do PHP no Apache 2.x
  em sistemas Unix.
 
 AvisoNão recomendamos usar um
MPM com threads no Apache 2 em produção. Use o módulo prefork, que é
o MPM padrão no Apache 2.0 e 2.2 e não usa threads.
Para obter informações sobre o motivo, leia a FAQ sobre o uso do
Apache2 com MPM com threads.
 
 
  A » documentação do Apache
  é a fonte de informação com maior autoridade sobre o servidor Apache 2.x.
  Mais informações sobre opções de instalação para o Apache podem ser encontradas
  lá.
 
 
  A versão mais recente do Servidor HTTP do Apache pode ser obtida do
  » site de download Apache,
  e uma versão correspondente do PHP pode ser obtida dos locais mencionados anteriormente.
  Esse guia rápido cobre apenas o básico para iniciar o uso do Apache 2.x
  e do PHP. Para mais informações, leia a
  » documentação do Apache.
  Os números de versão estão omitidos aqui, para garantir que
  as instruções não fiquem desatualizadas. Nos exemplos abaixo, 'NN' deve
  ser substituído com a versão específica do Apache utilizado.
 
 
  Atualmente há duas versões do Apache 2.x. - 2.4 e 2.2.
  Embora haja várias razões para escolher entre elas, 2.4 é a versão mais
  atual, e aquela recomendada, se essa opção estiver
  disponível. Entretanto, as instruções aqui funcionarão para
  ambas as versões, 2.4 ou 2.2. Importante notar que o Apache httpd 2.2 está no final de sua vida,
  e nenhum novo desenvolvimento ou correções serão realizados nele.
 
 
  - 
   
    Obtenha o Apache HTTP do endereço acima e
    descompacte:
    
- 
   
    Da mesma forma, obtenha e descompacte o código-fonte do PHP:
    
- 
   
    Compile e instale o Apache. Consulte a documentação de instalação do Apache para
    mais detalhes de compilação.
    
- 
   
    Agora haverá um Apache 2.x.NN disponível em /usr/local/apache2,
    configurado com suporte a módulos carregáveis e o MPM prefork padrão.
    Para testar a instalação, utilize o procedimento usual de inicialização
    do servidor Apache. Por exemplo:
     e depois pare o servidor para configurar o PHP:
- 
   
    Agora configure e compile o PHP. Aqui pode-se personalizar o PHP
    com várias opções como, por exemplo, quais extensões estarão disponíveis. Execute
    './configure --help' para uma lista de opções disponíveis. Em nosso exemplo,
    iremos configurar apenas com suporte ao Apache 2 e MySQL.
    
    Se o Apache foi compilado a partir do código-fonte como descrito acima, os exemplos abaixo terão
    caminhos coincidentes do apxs, mas se foi instalado de outra forma, o caminho
    para o apxs precisará ser ajustado. Observe que algumas distribuições podem renomear
    apxs para apxs2.
    
    Se for decidido modificar as configurações depois da instalação,
    os comandos configure, make
    e make install precisarão ser executados novamente.
    Só será necessário reiniciar o Apache para que o novo módulo seja carregado.
    Uma recompilação do Apache não será necessária.
    
    Note que, por padrão, make install também instalará o
    » PEAR,
    várias ferramentas do PHP como phpize,
    o PHP CLI, entre outros.
    
- 
   
    Configure o php.ini:
    
    Pode-se editar o arquivo .inipara definir opções do PHP. Se desejar ter
    um php.ini em outra localização,
    utilize--with-config-file-path=/algum/caminhono passo 5.
 
    Se for preferível utilizar o php.ini-production, leia atentamente
    a lista de modificações desse arquivo, já que ele afeta o comportamento do PHP.
    
- 
   
    Edite o httpd.conf para carregar o módulo do PHP. O caminho à direita
    da instrução LoadModuleprecisa apontar para o caminho do módulo do PHP
    no sistema. O make install acima pode ter feito isso
    automaticamente, mas é bom confirmar.
 
- 
   
    Configure o Apache para interpretar certas extensões de arquivos como PHP. Por exemplo, configurar
    o Apache para interpretar arquivos .phpcomo scripts PHP. Em vez de utilizar apenas a diretivaAddTypedo Apache, é recomendado evitar uploads potencialmente perigosos e nomes de
    arquivos como exploit.php.jpg que possam ser executados como scripts PHP. Nesse
    exemplo, pode-se ter quaisquer extensões interpretadas como PHP, simplesmente adicionando-as.
    Adicionaremos.phpcomo demonstração.
 
    Alternativamente, para permitir que arquivos .php,.php2,.php3,.php4,.php5,.php6e.phtmlsejam
    executados como PHP, mas nenhum outro, seria desta forma:
 
    Para permitir que arquivos .phpssejam interpretados pelo filtro de fontes do PHP e
    exibidos como código fonte destacado, utilize isto:
 
    mod_rewritepode ser utilizado para permitir que qualquer arquivo.phpseja exibido
    como código-fonte destacado, sem precisar ser renomeado ou copiado
    para um arquivo.phps:
 
    O filtro de fontes PHP não deve ser ativado em ambiente de produção, onde
    pode expor informações confidenciais ou sensíveis incorporadas no
    código-fonte.
    
- 
   
    Depois, utilize o procedimento normal de iniciar o servidor Apache, por exemplo:
    ou 
  Seguindo os passos acima, o servidor web Apache2 será executado com
  suporte ao PHP como um módulo SAPI. Existem muitas outras
  opções de configuração disponíveis para o Apache e para o PHP. Para mais
  informações execute ./configure --help no diretório
  do código-fonte correspondente.
 
 
  O Apache pode ser construído com suporte a multi-tarefas através da seleção
  do MPM worker, em vez do padrão
  MPM prefork. Isso é possível
  acrescentado-se a seguinte opção ao argumento passado para ./configure no
  passo 3 acima:
 
 
 
  Isto não deve ser feito sem conhecer as consequências
  desta decisão, ou pelo menos ter uma boa noção de
  suas implicações. A documentação do Apache
  sobre » módulos MPM
  discute essas questões com muito mais detalhes.
 
 Nota: 
  
   A seção de Perguntas Frequentes
   do Apache MultiViews discute o uso de MultiViews com o PHP.
  
 
 Nota: 
  
   Para construir uma versão multi-tarefa do Apache, o sistema de destino precisa suportar threads.
   Neste caso, o PHP também deve ser construído
   com o Zend Thread Safety (ZTS). Nesta configuração, nem todas as extensões estarão disponíveis.
   A configuração recomendada é construir o Apache com o módulo
   MPM prefork padrão.