Apache 2 com php5 e php4 juntos

Publicado por albert guedes em 29/06/2007

[ Hits: 16.283 ]

Blog: http://www.socrates.if.usp.br/~arcguede

 


Apache 2 com php5 e php4 juntos



Instalando e configurando:

A primeira coisa do tutorial que segui era instalar um mundão de pacotes:

# apt-get install apache2 apache2-common apache2-doc apache2-mpm-prefork apache2-utils libapr0 libexpat1 ssl-cert libapache2-mod-php5 php4-cgi php5-imap php5-syck php-pear php5-curl php5-dev php5-gd php5-ldap php5-mhash php5-mysql php5-odbc php5-recode php5-snmp php5-sqlite php5-xmlrpc php5-xsl php4-auth-pam php4-imagick php4-mcrypt php4-rrdtool php4-sqlite php4-curl php4-domxml php4-gd php4-imap php4-ldap php4-mcal php4-mhash php4-mysql php4-odbc php4-pear php4-xslt

Boa parte deles não é necessário, mas instalei por tabela assim mesmo.

O tutorial agora me diz para editar o arquivo /etc/apache2/apache2.conf. Mudar a linha de:

DirectoryIndex index.html index.cgi index.pl index.php index.xhtml

para:

DirectoryIndex index.html index.htm index.shtml index.cgi index.pl index.php index.php4 index.xhtml

No meu caso a bendita linha não existia no conf, logo acrescentei esta última, mas com o adicional de indicar que é um módulo, coisa que o artigo não dizia:

<IfModule mod_dir.c>
    DirectoryIndex index.html index.htm index.shtml index.cgi index.pl index.php index.php4 index.xhtml
</IfModule>

A próxima etapa é acrescentar o trecho no apache2.conf:

AddHandler php-script .php4
Action php-script /cgi-bin/php4

Coloque-o logo abaixo de qualquer outro trecho do "apache2.conf" que tenha a palavra 'AddHandler', se colocar em outro lugar vai dar erro na certa.

Agora teremos que criar uns links, o tutorial dizia para usar o programa "a2enmod", mas eu não encontrei em repositório 'deb' nenhum, logo criei na mão os links, para isso, devemos ir para o diretório /etc/apache2 e fazer:

# ln -s mods-available/actions.load mods-enabled/actions.load
# ln -s mods-available/ssl.load mods-enabled/ssl.load
# ln -s mods-available/ssl.conf.load mods-enabled/ssl.conf
# ln -s mods-available/ssl.load mods-enabled/rewrite.load
# ln -s mods-available/ssl.load mods-enabled/suexec.load
# ln -s mods-available/ssl.load mods-enabled/include.load


Ok, nesta parte o Apache deve estar funcionando, então, escreva um script em PHP chamado "info.php" e um outro igualzinho chamado "info.php4" com o conteúdo:

<?
phpinfo();
?>

E salve-os em "/var/www" e recomece o apache como root ou com "sudo".

$ sudo /etc/init.d/apache2 restart

Digite no seu browser "http://<seu ip>/info.php" e em outra janela digite "http://<seu ip>/info.php4".

E se estiver tudo bem, você verá na primeira tela o script sendo executado diretamente pelo apache2 e na segunda o script em php4 sendo executado como cgi.

O diretório de usuário:

Com a alegria de ter o php funcionando no apache, o balde de água fria agora é que o diretório "public_html" de usuário que não é reconhecido. Mas este problema se resolve com apenas uma linha:

$ ln -s mods-available/userdir.load mods-enabled/userdir.load

Não esquecer, este comando deve ser executado como root ou com o "sudo" no diretório "/etc/apache2". Reinicie o apache e verifique no seu browser digitando:

http://<seu ip>/~<usuário>/index.php

Onde obviamente deve ter um diretório "public_html" no diretório do "<usuário>" e um script em php "index.php" dentro do mesmo.

Conclusão:

Esta instalação eu fiz para uso próprio, quer dizer, desenvolver minhas próprias páginas em php, portanto não sei o quanto ela é boa se você quiser montar um servidor de verdade, mas se já ajudou a esclarecer alguma coisa, meu trabalho está feito.

Agradeço se me enviarem críticas (construtivas) e sugestões.

Referências:
Outras dicas deste autor

Como ver a saída de qualquer comando MySQL no PHP

Janelas sem borda no Fluxbox

Placa Wireless Atheros AR5001 - Configuração no Debian Squeeze

[RESOLVIDO] Magento: Não consigo fazer login de administrador após instalação

Instalando o Google Chrome nativo no Linux com suporte a flashplayer

Leitura recomendada

Como deixar seus arquivos mp3 em ordem no mp3 player

Remover Exim4

Venha pro Sabayon você também!

Habilitando VNC como módulo do X11

Como migrar da plataforma Windows para Linux Oracle RAC

  

Comentários
[1] Comentário enviado por canaman em 29/06/2007 - 09:56h

Olá amigo! O programa a2enmod e o a2ensite vem com o apache2 no debian, não precisa instalar nenhum pacote adicional, basta executá-lo como root. Na verdade eles são só um shell script que faz a criação dos links de forma automática.
Abraços,

[2] Comentário enviado por albertguedes em 29/06/2007 - 11:58h

Valeu canaman, e que eu procurei e nao achei o "a2enmod" no Debian e ainda por cima cometi um erro de revisao ai em cima, entao, para quem estiver lendo a dica tem uma errata:
Na parte de criacao dos links, o correto e

# ln -s mods-available/actions.load mods-enabled/actions.load
# ln -s mods-available/ssl.load mods-enabled/ssl.load
# ln -s mods-available/ssl.conf mods-enabled/ssl.conf
# ln -s mods-available/rewrite.load mods-enabled/rewrite.load
# ln -s mods-available/suexec.load mods-enabled/suexec.load
# ln -s mods-available/include.load mods-enabled/include.load

Desculpa pelo engano pessoal.

[3] Comentário enviado por Pilantra em 10/03/2008 - 09:59h

Olá amigo!!

Você sabe me dizer como eu faço o esquema com o RedHat pra carregar o PHP 4 e 5 juntos? Infelizmente os servidores aqui no trampo são RedHat e o yum é um esquema diferente do apt-get, não tem como instalar duas versões juntas assim!

Valeu.

[4] Comentário enviado por albertguedes em 10/03/2008 - 10:23h

Bom Pilantra, tirando a parte de instalação dos pacotes, todo o resto da dica você pode fazer no RH igualzinho.
Os pacotes você pode baixar as versões deb e converter em rpm usando o comando 'alien', se tiver instalado ai, ok ?
Se precisar, tenho este link que dá uma luz na instalação do apache2+php5 que server para todas as distros

http://dan.drydog.com/apache2php.html



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts