Configuración de PHP 5.2.9

Un directorio importante

Antes de comenzar la configuración de php es conveniente que creemos dentro de C:\ServidoresLocales un sudirectorio con nombre tmp


que será utilizado en la configuración de php para contener las eventuales variables de sesión que fuera necesario manejar.

Los cambios en php.ini

Con la configuración de PHP ocurre lo mismo que en el caso de Apache. También existen un montón de posibilidades de configuración –iremos viendo algunas de ellas a medida que vaya siendo necesario– a través de las cuales se puede modificar de forma sustancial el comportamiento de PHP.

Cuando nos hemos referido a la elección de hosting hemos comentado que sus niveles de prestaciones son distintos y que muchos de ellos tienen desactivadas algunas de las funciones. Pues bien, es en este fichero y en una línea donde dice disable_functions = en la que se podría incluir la lista de funciones a desactivar.

Modificando directivas en este fichero podremos establecer también restricciones relativas a cuestiones de seguridad, así como activar extensiones por medio de las cuales –librerías dinámicas– se añaden nuevas funciones de PHP con las que podríamos crear ficheros en formato PDF o imágenes dinámicas, por citar dos ejemplos.

Ya iremos hablando de ello. Por el momento será suficiente con utilizar la configuración que comentamos a la derecha.

Nuestras modificaciones

Vamos a comentar ahora las modificaciones del php.ini que describimos aquí a la derecha.

En la primera hemos asignado como valor de doc_root una ruta que, como observarás, apunta el directorio htdocs. En otras palabras, le estamos diciendo a PHP en que sitio del ordenador –fíjate que incluimos una ruta absoluta– se ubicarán los ficheros cuyos scripts debe interpretar.

Con la modificación donde dice –extension_dir=– le señalamos al intérprete de PHP en qué sitio debe buscar las extensiones que pueda necesitar.

Estas extensiones, que vienen con la instalación de PHP, se descomprimen –por defecto– en un subdirectorio llamado ext y esa es la razón por la que la ruta incluida en esta modificación apunta a un directorio con ese nombre.

En las modificaciones siguientes lo único que hacemos es descomentar (quitar el punto y coma que llevan delante) algunas de las extensiones de php.

Descomentaremos las líneas alusivas a las librerías: php_gd2 (para el tratamiento y generación de imágenes dinámicas),php_mbstring (esquemas de codificación de caracteres multibyte se han desarrollado para expresar más de 256 caracteres y que será necesario en algunas funciones de MySQL), php_mcrypt (soporte para diferentes algoritmos de encriptación), php_mysql (imprescindible para la comunicación entre PHP y MySQL).

La directiva sesion.save_path indica la ruta de un directorio dónde se guardarán los ficheros de las sesiones.

Eventuales problemas
de instalación

Esperamos que las configura- ciones no te hayan dado ningún problema y que todo te esté funcionando correctamente.

De no ser así, te sugeriríamos que fueras comprobando esta lista de chequeo:

– ¿Está instalado el servidor Apache en c:\ServidoresLocales\Apache?
– ¿Está instalado PHP5 en el direc- torio c:\ServidoresLocales\php5?
– ¿Has copiado en el directorio del sistema las librerías dinámicas (dll):libeay32, libmcrypt, libmhash, libmysql y php5ts que viene con la instalación de PHP?
– ¿Está el fichero php.ini en el subdirectorio php5?
– ¿Está el fichero llamado httpd.conf en el directorio de configuraciones c:\ServidoresLocales\Apache\conf?
– ¿Has constatado que el fichero php.ini contiene –con la sintaxis correcta– todas las modificaciones indicadas?
– ¿Has comprobado la sintaxis de las modificaciones que has efectuado en httpd.conf?
– ¿Has comprobado la sintaxis del fichero info.php?
– ¿Has comprobado que está en htdocs el fichero info.php ?

Pensamos que después de verificar todas esta lista de puntos de comprobación no debe existir ningún problema de funcionamiento, pero si se diera esa circunstancia, es muy probable que el origen esté en un error de sintaxis en uno de los ficheros de configuración.

Para esta –muy improbable– emergencia, te hemos puesto en el directorio extras del CD-ROM una carpeta llamada configuraciones donde tienes ambos ficheros: httpd.conf y php.ini.

 
 

Antes de empezar la configuración

    Si abrimos nuestro directorio: C:\ServidoresLocales\php5 encontraremos dentro de él cinco ficheros que deberemos copiar a nuestro sistema tal como se indica en la siguiente tabla

Ficheros originales    libeay32.dll
    libmcrypt.dll
    libmhash.dll
    libmysql.dll
    php5ts.dll
Copiar en el subdirectorio que se indica (dentro del que contiene el S.O.)
S.O.Directorio
Windows98 \system
W2000
Windows NT
Windows XP
Windows Vista
\system32


    Si ya tuviéramos ficheros con ese nombre en el directorio de destino tendremos que sobrescribirlos sustituyendo los preexistentes por los que tenemos en C:\ServidoresLocales\php5.

Configuración de PHP

    En el directorio C:\ServidoresLocales\php5 tenemos un fichero llamado php.ini-dist. Lo abriremos con un editor de textos –por ejemplo el PHP Coder– y haremos estas modificaciones:

Fichero inicial    php.ini-dist
Guardar como    php.ini
Modificaciones en el fichero inicial
LíneaCambios
484 Donde dice:
doc_root =
cambiar por:
doc_root=c:\ServidoresLocales\Apache\htdocs\
491 Donde dice:
;extension_dir="./"
cambiar por:
extension_dir ="c:\ServidoresLocales\php5\ext\"
616 Donde dice:
;extension=php_gd2.dll
cambiar por:
extension=php_gd2.dll
617 Donde dice:
;extension=php_gettext.dll
cambiar por:
extension=php_gettext.dll
623 Donde dice:
;extension=php_mbstring.dll
cambiar por:
extension=php_mbstring.dll
624 Donde dice:
;extension=php_mcrypt.dll
cambiar por:
extension=php_mcrypt.dll
630 Donde dice:
;extension=php_mysql.dll
cambiar por:
extension=php_mysql.dll
700 Donde dice:
SMTP= localhost
cambiar por:
SMTP = 127.0.0.1
704 Donde dice:
;sendmail_from= me@example.com
cambiar por:
sendmail_from= admin@mispruebas.com
992 Donde dice:
;session.save_path = "/tmp"
cambiar por:
session.save_path = C:/ServidoresLocales/tmp


Las modificaciones de las líneas 700 y 704 (SMTP y send_mail están relacionadas con el uso de un servidor de correo cuya instalación y configuración veremos en la página siguiente.

La modificación de la línea 992 está relacionada con el uso de sesiones y la analizaremos en el momento en que tratemos ese tema


  ¡Cuidado!  

En la configuración de PHP (php.ini) –bajo Windows– debemos usar siempre la barra invertida ( \ ) a la hora de escribir los paths.
Cuando tratamos la configuración de Apache (httpd.conf) –también bajo Windows– lo hemos hecho al revés, hemos escrito todos los paths utilizando la barra normal ( / ).
Ten muy presente que estas sintaxis son distintas y cuando efectúes modificaciones de configuración utiliza la adecuada a cada uno de los ficheros.

    Una vez que hayamos modificado los apartados anteriores guardaremos el fichero con el nombre php.ini en el directorio c:\ServidoresLocales\php5 dado que este es el lugar especificado en la directiva PHPIniDir de la configuración de Apache de la página anterior.

Un script de prueba

Para comprobar que todo funciona correctamente deberemos escribir nuestro primer script PHP.

    Abriremos nuestro editor –PHP Coder– y escribiremos exactamente esto:

<? phpinfo(); ?>
    Ahora lo guardaremos en C:\ServidoresLocales\Apache\htdocs –recuerda que este es el que hemos configurado como directorio raíz de servidor– con el nombre info.php

    Recuerda también que es probable que el block de notas haya añadido la extensión .txt y que el fichero puede haber sido guardado como info.php.txt. Lo comprobaremos mirando el directorio htdocs y cambiando el nombre si fuera necesario.

Probando el primer script

    Una vez instalados y configurados Apache y PHP y creado el fichero info.php, ha llegado el momento de comprobar si hemos hecho correctamente las configuraciones y si todo funciona bien.

    Arrancaremos el servidor Apache y una vez que tengamos la ventana de MS-DOS abierta, deberemos visualizarla sin ningún mensaje (completamente en negro) lo que significaría que Apache está funcionando con el módulo PHP.

    Si apareciera algún mensaje de error sería necesario corregir la línea del fichero de configuración a la que se aluda en el propio mensaje.

    Solo faltaría abrir el navegador y escribir una de estas dos direcciones:
http://localhost/info.php o http://127.0.0.1/info.php y aparecería en pantalla una página como esta:


    De ser así, el proceso de instalación y configuración habría terminado y esa página nos estaría facilitando toda la información relativa a la configuración actual de nuestro PHP.