Para efeito deste artigo utilizei as seguintes configurações de teste:
- Sistema Operacional: FreeBSD 4.5;
- Servidor HTTP Apache versão 1.3.23;
- PHP versão 4.1.2;
- Compilador gcc versão 2.95.3;
- Make e outras ferramentas de desenvolvimento normalmente incluídas na distribuição.
Apesar de ter utilizado as configurações acima, muito provavelmente os procedimentos aqui descritos serão válidos, talvez com pequenas adaptações, em outros ambientes providos por outros sistemas operacionais da família UNIX, tais como o
Linux, bem como utilizando-se versões mais recentes do Apache e PHP; entretanto nestes casos recomenda-se fortemente a leitura dos arquivos README e INSTALL, se houverem, nos arquivos .tar.gz respectivos.
Portanto adapte as instruções aqui fornecidas a cada situação específica.
Observação importante:
Aqui descreveremos a instalação estática do suporte ao PHP no Apache; se você quiser ou necessitar instalá-lo como um módulo, consulte a documentação do Apache e/ou do PHP, pois são procedimentos diferentes de instalação, e você terá que necessariamente escolher um OU outro.
O primeiro passo é descompactar os arquivos .tar.gz em algum diretório do sistema:
# cd /usr/local
(mova, copie ou faça o download dos arquivos-fonte neste diretório)
# tar -xzvf apache-1.3.23.tar.gz
# tar -xzvf php-4.1.2.tar.gz
Vá para o diretório do Apache criado após a descompactação:
# cd apache_1.3.23
Configure inicialmente o apache somente com o caminho de instalação:
# ./configure --prefix=/var/www
Vá a seguir para o diretório do PHP, configure-o, construa-o e instale-o com as seguintes opções:
# cd ../php-4.1.2
# ./configure --with-apache=/usr/local/apache_1.3.23 --with-psql=/usr/local/pgsql --without-mysql
# make
# make install
Observe bem que:
1) O diretório especificado após a opção --with-apache é o diretório de compilação que foi criado logo após a descompactação dos arquivos-fontes do APACHE, e NÃO seu diretório de instalação;
2) O diretório especificado após a opção --with-pgsql é o diretório de INSTALAÇÃO do POSTGRESQL, assumindo que o mesmo já está instalado no sistema, e cuja instalação e configuração não abordaremos neste artigo por fugir de seu escopo; para tanto, consulte a documentação do PostgreSQL, que é muito clara e detalhada sobre sua instalação e configuração;
3) A opção --without-mysql foi utilizada pois não utilizaremos aqui o MySQL; para utilizar este SGBD os procedimentos não diferem radicalmente dos aqui descritos, entretanto você terá que ler a documentação do PHP para fazer as devidas adaptações.
Ainda no diretório de compilação do PHP, copie o seguinte arquivo como segue:
# cp php.ini-dist /usr/local/lib/php.ini
A seguir, retorne novamente ao diretório de compilação do apache (onde você descompactou os arquivos-fontes), e reconfigure-o com as seguintes opções:
# cd /usr/local/apache_1.3.23
# ./configure --prefix=/var/www --activate-module=src/modules/php4/libphp4.a
Aqui observe que:
1) O caminho do diretório especificado após a opção --activate-module NÃO inicia em /src, e SIM em src (sem a barra inicial); isto porque o diretório especificado está contido no próprio diretório de compilação do apache, e não diretamente sob o diretório raiz (root);
2) Outro ponto importante a observar é que o arquivo especificado "libphp4.a" realmente ainda NÃO EXISTE no diretório especificado! Ele será construído durante o processo. Portanto se você verificou previamente o diretório especificado e não o encontrou lá, não se surpreenda!
A seguir compile e instale o apache:
# make
# make install
A seguir vá até o diretório de instalação do Apache (no nosso exemplo /var/www), entre no diretório "conf" e edite o arquivo "httpd.conf" (ou outro equivalente se você estiver usando outra versão do Apache):
# cd /var/www/conf
# vi httpd.conf
A seguir acrescente, descomente ou edite a seguinte linha, se já existir:
AddType application/x-httpd-php .php
Salve e saia do editor.
Para testar o servidor Apache, inicie-o através do seguinte comando:
# /usr/local/apache/sbin/apachectl start
Ou utilize outro caminho no qual você encontre o executável "apachectl", de acordo com sua instalação ou com o comando "which".