Apache e PHP · 2 min read · Oct 23, 2025
Executando Apache2 Com PHP5 E PHP4 Ao Mesmo Tempo
Executando Apache2 Com PHP5 E PHP4 Ao Mesmo Tempo
Versão 1.0
Autor: Falko Timme
Última edição: 02/07/2006
Este tutorial mostra como instalar e configurar o Apache2 com PHP5 e PHP4 habilitados ao mesmo tempo. Como não é possível executar PHP5 e PHP4 como módulos do Apache, devemos executar um deles como CGI e o outro como módulo do Apache. Neste documento, usarei PHP5 como módulo do Apache e PHP4 como CGI, e descreverei a configuração para as distribuições Linux Debian Sarge (3.1) e Ubuntu 5.10 (Breezy Badger).
Quero dizer primeiro que esta não é a única maneira de configurar um sistema assim. Existem muitas maneiras de alcançar esse objetivo, mas este é o caminho que eu sigo. Não dou nenhuma garantia de que isso funcionará para você!
1 Configuração Para Debian Sarge (3.1)
Primeiro, você deve ter pelo menos uma instalação básica do Debian funcionando, conforme descrito nas duas primeiras páginas do tutorial “Configuração Perfeita” para Debian Sarge aqui no HowtoForge: https://www.howtoforge.com/perfect_setup_debian_sarge e https://www.howtoforge.com/perfect_setup_debian_sarge_p2
Como o PHP5 não está disponível nos repositórios oficiais do Debian Sarge, precisamos adicionar outro repositório (packages.dotdeb.org) ao /etc/apt/sources.list. Adicione estas duas linhas:
| deb http://packages.dotdeb.org stable all deb-src http://packages.dotdeb.org stable all |
para /etc/apt/sources.list (o meu fica assim então:
| deb http://ftp2.de.debian.org/debian/ stable main deb-src http://ftp2.de.debian.org/debian/ stable main deb http://packages.dotdeb.org stable all deb-src http://packages.dotdeb.org stable all deb http://security.debian.org/ stable/updates main |
) e execute
apt-get update
depois.
Agora podemos instalar o Apache2, bem como o módulo Apache2-PHP5 e o PHP4-CGI:
apt-get install apache2 apache2-doc
apt-get install libapache2-mod-php5 php4-cgi
Em seguida, podemos instalar todos os módulos PHP5 e PHP4 que precisamos em nosso servidor, assim:
apt-get install php5-curl php5-dev php5-gd php5-gmp php5-imap php5-ldap php5-mcrypt php5-mhash php5-ming php5-mysql php5-mysqli php5-odbc php5-pdo-mysql php5-pdo-sqlite php5-pear php5-pspell php5-snmp php5-sybase php5-tidy php4-curl php4-domxml php4-gd php4-gmp php4-imap php4-ldap php4-mcal php4-mcrypt php4-mhash php4-ming php4-mysql php4-odbc php4-pspell php4-recode php4-snmp php4-xslt php4-xdebug curl libwww-perl imagemagick (1 linha!)
Edite /etc/apache2/apache2.conf. Altere
| 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 |
e adicione também estas duas linhas (na seção onde você pode encontrar as diretivas AddType e AddHandler):
| AddHandler php-script .php4 Action php-script /cgi-bin/php4 |
Isso garantirá que os arquivos PHP com a extensão .php4 sejam executados como CGI. Os arquivos PHP com a extensão .php serão executados pelo módulo Apache2-PHP5.
Em seguida, precisamos habilitar alguns módulos do Apache, como por exemplo o módulo actions (caso contrário, não podemos executar PHP4 como CGI):
a2enmod actions
a2enmod ssl
a2enmod rewrite
a2enmod suexec
a2enmod include
Reinicie o Apache, e você está pronto!
/etc/init.d/apache2 restart
Agora podemos testar nossa instalação: Coloque dois arquivos, info.php e info.php4, com o mesmo conteúdo:
| |
em /var/www (este é o diretório padrão do documento raiz do Apache2 do Debian) e tente acessá-los em um navegador (se o endereço IP do servidor for 192.168.0.100, por exemplo, você digitária http://192.168.0.100/info.php e http://192.168.0.100/info.php4). Você deve ver duas versões diferentes do PHP, uma executada como módulo do Apache (PHP5), a outra (PHP4) chamada como CGI:
info.php:

info.php4:

Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.