Apache y PHP · 2 min read · Oct 23, 2025
Ejecutando Apache2 Con PHP5 Y PHP4 Al Mismo Tiempo
Ejecutando Apache2 Con PHP5 Y PHP4 Al Mismo Tiempo
Versión 1.0
Autor: Falko Timme
Última edición: 02/07/2006
Este tutorial muestra cómo instalar y configurar Apache2 con PHP5 y PHP4 habilitados al mismo tiempo. Debido a que no es posible ejecutar PHP5 y PHP4 como módulos de Apache, debemos ejecutar uno de ellos como CGI y el otro como módulo de Apache. En este documento usaré PHP5 como módulo de Apache y PHP4 como CGI, y describiré la configuración para las distribuciones de Linux Debian Sarge (3.1) y Ubuntu 5.10 (Breezy Badger).
Quiero decir primero que esta no es la única forma de configurar un sistema así. Hay muchas maneras de lograr este objetivo, pero esta es la forma que elijo. No emito ninguna garantía de que esto funcione para ti.
1 Configuración Para Debian Sarge (3.1)
Primero, debes tener al menos una instalación básica de Debian funcionando, como se describe en las primeras dos páginas del tutorial “Configuración Perfecta” para Debian Sarge aquí en HowtoForge: https://www.howtoforge.com/perfect_setup_debian_sarge y https://www.howtoforge.com/perfect_setup_debian_sarge_p2
Debido a que PHP5 no está disponible en los repositorios oficiales de Debian Sarge, tenemos que agregar otro repositorio ( packages.dotdeb.org) a /etc/apt/sources.list. Agrega estas dos líneas:
| deb http://packages.dotdeb.org stable all deb-src http://packages.dotdeb.org stable all |
a /etc/apt/sources.list (el mío se ve así entonces:
| 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 |
) y ejecuta
apt-get update
despues.
Ahora podemos instalar Apache2 así como el módulo Apache2-PHP5 y el PHP4-CGI:
apt-get install apache2 apache2-doc
apt-get install libapache2-mod-php5 php4-cgi
A continuación, podemos instalar todos los módulos de PHP5 y PHP4 que necesitamos en nuestro servidor, así:
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 línea!)
Edita /etc/apache2/apache2.conf. Cambia
| DirectoryIndex index.html index.cgi index.pl index.php index.xhtml |
a
| DirectoryIndex index.html index.htm index.shtml index.cgi index.pl index.php index.php4 index.xhtml |
y agrega estas dos líneas también (en la sección donde puedes encontrar las directivas AddType y AddHandler):
| AddHandler php-script .php4 Action php-script /cgi-bin/php4 |
Esto asegurará que los archivos PHP con la extensión .php4 se ejecuten como CGI. Los archivos PHP con la extensión .php se ejecutarán mediante el módulo Apache2-PHP5.
A continuación, tenemos que habilitar algunos módulos de Apache, como por ejemplo el módulo actions (de lo contrario, no podemos ejecutar PHP4 como CGI):
a2enmod actions
a2enmod ssl
a2enmod rewrite
a2enmod suexec
a2enmod include
Reinicia Apache, ¡y ya está!
/etc/init.d/apache2 restart
Ahora podemos probar nuestra instalación: Coloca dos archivos, info.php y info.php4, con el mismo contenido:
| |
en /var/www (este es el directorio raíz de documentos predeterminado de Apache2 de Debian) y trata de acceder a ellos en un navegador (si la dirección IP del servidor es 192.168.0.100, por ejemplo, escribirías http://192.168.0.100/info.php y http://192.168.0.100/info.php4). Deberías ver dos versiones diferentes de PHP, una ejecutada como módulo de Apache (PHP5), la otra (PHP4) llamada como CGI:
info.php:

info.php4:

Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.