LAMP en Slackware (II), soporte para PHP

Cómo configurar el servidor web Apache para obtener soporte para PHP.

Este documento es parte de uno más amplio; si has llegado aquí desde la web, te recomiendo la lectura del tutorial completo.

En este hilo vamos configurar nuestro servidor web Apache para que proporcione soporte a ficheros PHP.

De acuerdo con la wikipedia, PHP (acrónimo recursivo de "PHP: Hypertext Preprocessor") es un lenguaje de programación diseñado para producir sitios web dinámicos. Además es destacable su capacidad de conexión con la mayoría de los motores de base de datos que se utilizan en la actualidad; destaca su conectividad con MySQL y PostgreSQL.No es mala idea, pues, añadir soporte para PHP en nuestro servidor.

Como contrapartida, si nuestras páginas no están diseñadas adecuadamente, PHP ha sido tradicionalmente un vector de inyección de código malicioso, máxime cuando PHP accede a nuestras bases de datos. En definitiva, es el usuario el que ejecuta scripts PHP en nuestro servidor. De ahí que sea interesante, si diseñamos nuestro propio código PHP, que pongamos especial cuidado en el diseño del mismo.

Más adelante haré un tutorial de cómo evitar, hasta cierto punto, esta eventualidad, actualizando nuestro Apache y evitando el módulo mod_php, incorporando la capacidad de ejecutar PHP como un servidor de procesos FastCGI, y direccionando dicho servidor directamente desde Apache, a través de un módulo proxy dedicado (mod_proxy_fcgi). Pero es otra historia...

La parte del manual que sigue es una traducción más o menos libre de éste otro propuesto por mrgoblin. Muchas gracias, pues, a mrgoblin por el manual.

Pues bien: ahora que nuestro servidor web está funcionando correctamente, proporcionemos soporte a PHP:

Lo primero que vamos a hacer es editar de nuevo nuestro fichero /etc/httpd/httpd.conf y buscar la siguiente sección:


<IfModule dir_module>
    DirectoryIndex index.html
<:/IfModule>
y dejarla de la siguiente manera:

<IfModule dir_module>
    DirectoryIndex index.php index.html index.htm
<:/IfModule>

Luego, más abajo, debemos descomentar (eliminar el # inicial) de la siguiente línea:


Include /etc/httpd/mod_php.conf #Ésto es un comentario, porque comienza con #
				#Como véis, yo ya he descomentado mi línea.

Es el momento de guardar los cambios en el fichero y cerrar el editor.

Una vez guardados los cambios, reiniciamos el servicio Apache:


/etc/rc.d/rc.httpd restart

Y llega el momento de comprobar que PHP funciona; para ello crearemos un pequeño script en PHP que hará las veces de una página web. Nos situaremos dentro de nuestro DocumentRoot:


cd /var/www
Y creamos un nuevo fichero llamado index.php:

vim index.php
Ahora lo editamos con este contenido:

<?php
    phpinfo();
?>
Una vez guardado el fichero (recordad, salís del modo de edición de vim con la tecla esc y luego escribís :wq), podremos confirmar que nuestro servidor soporta PHP simplemente abriendo el navegador y escribiendo en la barra de navegación lo siguiente: http://localhost/index.php. El navegador nos ha de arrojar la salida completa de la función phpinfo(). Viene a ser lo mismo que ejecutar php -i en consola.

Por último, una nota IMPORTANTE: la función phpinfo() arroja información muy amplia y detallada acerca de tu configuración de PHP, por lo que, una vez comprobado que el soporte para PHP funciona, es muy recomendable, si no obligado, eliminar este fichero index.php de tu DocumentRoot, o bien, editarlo con otro contenido.

Fuentes:

Lamp on Slackware (Part 2), fantástico manual de mrgoblin, en inglés.

PHP, artículo de la wikipedia.

Ducumentación de PHP en castellano (parte del manual aún no está traducido).

Commentarios (0)


forestux.es
http://www.forestux.es/article.php?story=LAMP.Slackware.II