<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML ><HEAD ><TITLE >Apache 2.0 em sistemas Unix</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK REL="HOME" TITLE="Manual do PHP" HREF="index.html"><LINK REL="UP" TITLE="Instalação em sistemas Unix" HREF="install.unix.html"><LINK REL="PREVIOUS" TITLE="Instalação em sistemas Unix" HREF="install.unix.html"><LINK REL="NEXT" TITLE="Caudium" HREF="install.unix.caudium.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=UTF-8"></HEAD ><BODY CLASS="sect1" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >Manual do PHP</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="install.unix.html" ACCESSKEY="P" >Anterior</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" >Capítulo 4. Instalação em sistemas Unix</TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="install.unix.caudium.html" ACCESSKEY="N" >Próxima</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="sect1" ><H1 CLASS="sect1" ><A NAME="install.unix.apache2" >Apache 2.0 em sistemas Unix</A ></H1 ><P > Essa seção contem notas e dicas específicas para a instalação do Apache 2.0 com o PHP em sistemas Unix. </P ><DIV CLASS="warning" ><P ></P ><TABLE CLASS="warning" BORDER="1" WIDTH="100%" ><TR ><TD ALIGN="CENTER" ><B >Atenção</B ></TD ></TR ><TR ><TD ALIGN="LEFT" ><P >Nós não recomendamos a utilização de um threaded MPM em produção com o Apache2. Use ao invés prefork MPM, ou use Apache1. para informações sobre o motivo, leia este faq sobre usando <A HREF="faq.installation.html#faq.installation.apache2" >Apache2 com um threaded MPM</A ></P ></TD ></TR ></TABLE ></DIV ><P > Você é fortemente encorajado a ler a <A HREF="http://httpd.apache.org/docs/2.0/" TARGET="_top" >Documentação do Apache</A > para obter um entendimento básico do servidor Apache 2.0. </P ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >Notas de compatibilidade do PHP e Apache 2.0.x: </B > As seguintes versões do PHP são compatíveis com a versão mais recente do Apache 2.0.x: <P ></P ><UL COMPACT="COMPACT" ><LI ><SPAN > PHP 4.3.0 ou superior, disponível em <A HREF="http://www.php.net/downloads.php" TARGET="_top" >http://www.php.net/downloads.php</A >. </SPAN ></LI ><LI ><SPAN > A última versão estável de desenvolvimento. Pegue o código fonte <A HREF="http://snaps.php.net/php5-latest.tar.gz" TARGET="_top" > http://snaps.php.net/php5-latest.tar.gz</A > ou baixe os binários para o Windows <A HREF="http://snaps.php.net/win32/php5-win32-latest.zip" TARGET="_top" > http://snaps.php.net/win32/php5-win32-latest.zip</A >. </SPAN ></LI ><LI ><SPAN > Uma versão pre-release disponível para download em <A HREF="http://qa.php.net/" TARGET="_top" >http://qa.php.net/</A >. </SPAN ></LI ><LI ><SPAN > Você sempre tem a opção de obter o PHP através da conta <A HREF="http://www.php.net/anoncvs.php" TARGET="_top" >anônima do CVS</A >. </SPAN ></LI ></UL > Essas versões do PHP são compatíveis com Apache 2.0.40 ou superior. </P ><P > Suporte a SAPI do Apache 2.0 começou no PHP 4.2.0. PHP 4.2.3 funciona com Apache 2.0.39, não use qualquer outra versão de Apache com PHP 4.2.3. No entando, a configuração recomendada é usar o 4.3.0 ou superior com a versão mais recente do Apache2. </P ><P > Todas as versões mencionadas do PHP ainda funcionarão com Apache 1.3.x. </P ></BLOCKQUOTE ></DIV ><P > Baixe a versão mais recente do <A HREF="http://www.apache.org/" TARGET="_top" > Apache 2.0</A > e uma versão adequada do PHP dos lugares mencionados acima. Esse guia rápido cobre apenas o básico para para começar a usar o Apache 2.0 e o PHP. Para mais informação, leia a <A HREF="http://httpd.apache.org/docs/2.0/" TARGET="_top" >Documentação do Apache</A > Os número de versão foram omitidos para assegurar que as instruções não estejam incorretas. Você precisará substituir o 'NN' com os valores corretos dos seus arquivos. </P ><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN505" ></A ><P ><B >Exemplo 4-4. Instruções de Instalação (Versão de Módulo Compartilhado do Apache 2) </B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="screen" >1. gzip -d httpd-2_0_NN.tar.gz 2. tar xvf httpd-2_0_NN.tar 3. gunzip php-NN.tar.gz 4. tar -xvf php-NN.tar 5. cd httpd-2_0_NN 6. ./configure --enable-so 7. make 8. make install Agora você tem o Apache 2.0.NN disponível no diretório /usr/local/apache2, configurado com suporte a módulo compartilhado e o prefork MPM padrão. Para testar a instalação use o procedimento normal para iniciar o servidor Apache, ex.: /usr/local/apache2/bin/apachectl start e pare o servidor para ir para a configuração do PHP: /usr/local/apache2/bin/apachectl stop. 9. cd ../php-NN 10. Agora, configure o seu PHP. É aqui que você personaliza seu PHP com várias opções, como quais extensões serão habilitadas. Execute o comando ./configure --help para uma lista das opções disponíveis. No nosso exemplo nós faremos uma simples configuração com Apache 2 e suporte ao MySQL. Seu caminho para o arquivo apxs pode ser diferente do exemplo. De fato, o binário pode até ser chamado de apxs2 no seu sistema. ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql 11. make 12. make install Se você decidir mudar as opções de seu configure depois da instalação você precisará somente repetir os últimos 3 passos. Você somente precisará reiniciar o Apache para o novo módulo funcionar. Não será necessário recompilar o Apache. Note que, por padrão, 'make install' também instalará PEAR, além de várias ferramentas do PHP como phpize, instalar o CLI do PHP e mais. 13. Configurando seu arquivo php.ini: cp php.ini-dist /usr/local/lib/php.ini Você pode editar o seu arquivo .ini para configurar as opções do PHP. Se você preferir que este arquivo fique em outro lugar, use a opção --with-config-file-path=/caminho no passo 10. Se ao invés de escolher o arquivo php.ini-dist, você escolher o arquivo php.ini-recommended, leia a lista de mudanças dentro do mesmo, uma vez que elas afetam a maneira como o PHP se comporta. 14. Edite o seu arquivo httpd.conf para carregar o módulo do PHP. O caminho no lado direito do comando LoadModule deve apontar para para o caminho do módulo PHP no seu sistema. O comando make install acima já deve ter adicionado estas linhas, mas tenha certeza de que as linhas abaixo foram adicionadas ao arquivo. Para o PHP 4: LoadModule php4_module libexec/libphp4.so Para o PHP 5: LoadModule php5_module libexec/libphp5.so 15. Diga ao Apache para avaliar certas extensões como PHP. Por exemplo, vamos fazer o Apache interpretar a extensão .php como um script PHP. Você poderia ter qualquer extensão(ões) avaliadas como PHP simplesmente adicionando-as, com cada uma separada por um espaço. Vamos adicionar .phtml para demonstrar. AddType application/x-httpd-php .php .phtml Também é comum configurar a extensão .phps para mostrar o código-fonte do script PHP com highlight, isso pode ser feito com: AddType application/x-httpd-php-source .phps 16. Use seu procedimento normal para iniciar o servidor Apache ex.: /usr/local/apache2/bin/apachectl start</PRE ></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ><P > Seguindo os passos acima você terá rodando o Apache 2.0 com suporte para o PHP como um módulo <TT CLASS="literal" >SAPI</TT >. Claro que existem muitas outras opções de configuração disponível para ambos, Apache e o PHP. Para mais informações use o comando <B CLASS="command" >./configure --help</B > na árvore de arquivos fontes correspondente. Caso você desejar compilar uma versão multithreaded do Apache 2.0, você deve sobrescrever o Módulo-MPM padrão <TT CLASS="filename" >prefork</TT > ou com o módulo <TT CLASS="filename" >worker</TT > ou com o <TT CLASS="filename" >perchild</TT >. Para fazer isso, acrescente ao comando configure no passo 6 acima a opção <CODE CLASS="option" >--with-mpm=worker</CODE > ou <CODE CLASS="option" >--with-mpm=perchild</CODE >. Tome cuidado com as consequências e entenda o que está fazendo. Para mais informações, leia a documentação do Apache sobre os <A HREF="http://httpd.apache.org/docs/2.0/mpm.html" TARGET="_top" > Módulos-MPM</A >. </P ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >Nota: </B > Se você quiser usar negociação de conteúdo, leia o <A HREF="faq.installation.html#faq.installation.apache.multiviews" >FAQ relacionado à MultiViews</A >. </P ></BLOCKQUOTE ></DIV ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >Nota: </B > Para compilar uma versão multithreaded do Apache, seu sistema deve suportar threads. Isso também implica compilar o PHP com o Zend Thread Safety (ZTS) experimental. Portanto, nem todas as extensões podem estar disponíveis. A configuração recomendada para compilar o Apache é com o Módulo-MPM <TT CLASS="filename" >prefork</TT > padrão. </P ></BLOCKQUOTE ></DIV ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="install.unix.html" ACCESSKEY="P" >Anterior</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >Principal</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="install.unix.caudium.html" ACCESSKEY="N" >Próxima</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >Instalação em sistemas Unix</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="install.unix.html" ACCESSKEY="U" >Acima</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >Caudium</TD ></TR ></TABLE ></DIV ></BODY ></HTML >