Sunteți pe pagina 1din 2

Instalar PHP 4 como CGI

Dos opciones de
Precauciones previas
instalación
Para configurar PHP como CGI es necesario que httpd.conf tenga una configuración
distinta a la que hemos utilizado al instalarlo como módulo de Apache.
El software del servidor Apache
permite configurar PHP de dos
Antes de realizar y probar esta nueva configuración será conveniente tomar algunas
maneras distintas, conocidas
como: módulo de Apache y modo precauciones:
CGI.
■ Tenemos un fichero llamado httpd.conf que contiene la configuración de PHP
La diferencia entre ambas como módulo y nos interesa conservarlo.
configuraciones estriba en la forma
en la que interactúan Apache y ■ Vamos a abrirlo como nuestro editor DEV-PHP y lo guardaremos –en el
PHP en cada caso.
mismo directorio c:/Apache/conf y sin hacer ninguna modificación– con el
Cuando se configura como módulo nombre httpd_modulo.conf.
de Apache se utiliza el denominado
Dynamic Shared Object (Soporte ■ De esta forma tendremos una copia segura de nuestra configuración actual.
de Objetos Dinámicos
Compartidos), DSO, que permite ■ Tenemos también otro fichero llamado httpd.orig, que habíamos creado como
que el propio Apache cargue en medida cautelar al comenzar la instalación de PHP como módulo de Apache.
tiempo de ejecución, y con un
formato especial, porciones de ■ Como recordarás, este fichero contiene la configuración que se crea por
código de un programa ejecutable defecto en el momento de instalar el servidor.
que, en nuestro caso, será el
intérprete de PHP. ■ Abramos httpd.orig y, sin hacer cambios por el momento, guardémoslo con
el nombre httpd_cgi.conf
Cuando Apache trabaja de esta
manera los módulos no se cargan ■ De esta forma podremos hacer nuestras modificaciones sobre httpd_cgi.conf sin
hasta el momento en que son correr el riesgo de dañar la configuración actual.
necesarios y eso tiene, entre otras,
la ventaja de que permiten
disponer de más es- pacio de Modificaciones en httpd_cgi.conf
memoria.

Cuando Apache utiliza la Haremos ahora las modificaciones en httpd_cgi.conf –como recordarás, es una copia
configuración en modo CGI de la configuración inicial de Apache– para que PHP trabaje en modo CGI.
(Common Gateway Interface) los
programas se ejecutan en tiempo – Buscaremos las línea 386:
real, de forma que cuando se
requiere la actuación del y sustituiremos
intérprete, el servidor debe DirectoryIndex index.html
transferir toda la información por el siguiente bloque de líneas
necesaria a ese programa –en este
caso el intérprete de PHP– y
esperar a que éste concluya la DirectoryIndex index.html index.php index.htm
ejecución y le devuelva los ScriptAlias /php/ "C:/Apache/php4/"
resultados de la misma. AddType application/x-httpd-php .php .php4
Action application/x-httpd-php "/php/php.exe"
¿Hay una
opción óptima? guardaremos los cambios y ya tendremos lista la configuración como CGI.

Aunque son muchos quienes Prueba de la nueva configuración


sostienen que la opción ideal es la
configuración como módulo (el
argumento básico es su mayor Apache se inicia atendiendo a las especificaciones contenidas en httpd.conf y ese
seguridad) otros hablan de la fichero contiene –en este momento– la configuración como módulo. Tendremos que
mayor eficacia de la opción CGI. sustituirlo por el que contiene la configuración como CGI.

Es cierto que la configuración Bastará abrir httpd_cgi.conf y guardar como... httpd.conf (reemplazando el que
como módulo permite dotar a existía anteriormente con ese nombre), apagar el servidor –si lo tenemos activo– y
Apache con algunas opciones que arrancarlo de nuevo.
no permite la configuración CGI y
esa es la razón por la que hemos En este nuevo arranque podremos observar dos cosas que nos indicarán que ha
optado por utilizar ese modo de cambiado la configuración. La ventana MS-DOS de Apache, aparecerá ahora así:
configuración.

Seguramente no existe una


configuración que –de forma
general– pueda considerarse como
la óptima y la elección de la mejor
debería atender, en cada caso
específico, a razones tales como:
sistema operativo del servidor, las
características del equipo, los
y aunque, a primera vista, no percibamos ninguna diferencia, si la hay. Ahora no dice
servicios, el número de usuarios,
el volumen de las transferencias, PHP 4.3.7 mientras que con la configuración como módulo de Apache si aparecía como
etcétera. puedes comprobar si comparas ambas imágenes.

Configuración CGI

Las modificaciones que hemos de


realizar en httpd.conf para
configurar Apache en modo CGI
tienen las finalidades siguientes:

Las directivas ScriptAlias se usan Este procedimiento puede resultarnos cómodo cuando utilicemos esta versión del
para indicarle a Apache cuál es el servidor. Pero puede ocurrir que los mensajes de estas ventanas sean distintos –de
directorio concreto que ha sido hecho, en la versión 2 de Apache lo son– y el método de comprobación no nos sirva.
asignado para contener los
programas que debe ejecutar en Recurramos a info.php. Si abrimos una nueva ventana del navegador y ponemos
modo CGI. Apache asumirá que como dirección http://localhost/info.php (recuerda que el fichero info.php lo habíamos
cada fichero de este directorio es
guardado en htdocs que es el directorio raiz del servidor) podremos ver en las primeras
un programa CGI y tratará de líneas de la página lo siguiente:
ejecutarlo cuando sea preciso.

A través de las directivas


AddType se especifica qué
extensiones tienen los ficheros que
requieren ser interpretados antes
de enviar la respuesta a la petición
del cliente y el tipo de aplicación
que debe ser utilizada en cada
caso.
mientras que cuando la configuración es como módulo info.php nos indica que Server
Las directiva Action indica qué API es Apache.
programa ha de ser ejecutado
según cada uno de los tipos de
aplicación señalados mediante
AddType.

En nuestro caso, estamos


señalando a Apache que los
programas que habrán de
interpretar los scripts, en modo
CGI, están en el directorio C:/
Apache/php4/ y que esa ruta será Cambios entre ambos modos
identificada por medio del alias /
php/.
Si hemos seguido todos los pasos anteriores, cambiar de una forma de ejecución a
Le indicamos también que los otra será sumamente sencillo. Eso sí, antes de hacerlo hemos de cerciorarnos de que
ficheros con extensión .php o . Apache está apagado.
php4 requieren el uso de la
aplicación x-httpd-php, y, por Bastará con abrir uno de los ficheros –httpd_cgi.conf ó httpd_modulo.conf y
último, le indicamos que la guardarlo como httpd.conf sobreescribiendo el que existía anteriormente. Una vez hecho
aplicación anterior requiere que se esto, sólo queda arrancar Apache con la nueva configuración.
ejecute php.exe, programa cuyo
path es el contenido en el alias / Otra alternativa, seguramente más cómoda, sería crear un acceso directo (nuevo) para
php/ establecido en la primera de arrancar Apache con esta configuración sin necesidad de renombrar httpd_cgi4.conf.
las directivas. Bastaría con:

■ Crear acceso directo


■ Insertar, donde dice Línea de comandos, lo siguiente:
C:\Apache\apache.exe -w -f "C:\Apache\conf\httpd_cgi4.conf" -d "C:\Apache\"

Anterior Indice Siguiente

S-ar putea să vă placă și