Ver índice
 Configuración de PHP 5.3.8

        Ocultar índice  

   Índice de contenidos
   Instalación en Windows
   Instalación en Ubuntu
   Servidores seguros
   Páginas dinámicas
   Sintaxis básica
   Operaciones
   Arrays
   Formatos de presentación
   Operadores
   Bucles
   Extraer y ord. información
   Funciones
   Ficheros externos
   Imágenes dinámicas
   Gestión de directorios
   Cookies y sesiones
   Clases y objetos
   Ficheros en formato PDF
   Bases de datos MySQL
   PHP y XML
   PDO - Bases SQLite / MySQL
   MySQL a traves de misqli
   Algo de JavaScript y AJAX


Un directorio importante

Antes de comenzar la configuración de php es conveniente que creemos dentro de C:/ServidoresLocales/ un subdirectorio con nombre tmp que será utilizado para contener las eventuales variables de sesión que fuera necesario manejar por parte de PHP y cuya ubicación ha de ser especificada en la configuración de este.

No es preciso que utilicemos ni este nombre ni este directorio ni tampoco es necesario que se incluya en ningún directorio concreto del servidor. La elección del directorio ServidoresLocales obedece únicamente a la razón ya comentada de intentar incluir allí todo lo relativo al PHP.

Configuración de PHP

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.

El elemento clave de la configuración de PHP es un fichero denominado php.ini que debe estar contenido en el directorio C:\ServidoresLocales\php53 dado que fue esa la ubicación que hemos incluido en la directiva PHPIniDir cuando configurábamos Apache en la página anterior.

Antes de empezar la configuración

Si abrimos nuestro directorio: C:/ServidoresLocales/php53 encontraremos dentro de él tres ficheros que deberemos copiar a nuestro sistema tal como se indica en la siguiente tabla.

Ficheros originales    php5ts.dll    libeay32.dll    ssleay32.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
W 7 32 bits
\system32
W 7 64 bits \SysWOW64


Si ya tuviéramos un fichero con ese nombre en el directorio de destino habríamos de sobrescribirlo sustituyendo el preexistente por el que tenemos en C:/ServidoresLocales/php53. Con ello estaríamos asegurándonos de que las versiones de estas librerías son las correspondientes a la versión de PHP que pretendemos utilizar.

Configuración de PHP

    En el directorio C:/ServidoresLocales/php53 tenemos un fichero llamado php.ini-development. Lo abriremos con un editor de textos –por ejemplo el Notepad ++– y haremos estas modificaciones:

Fichero inicial    php.ini-developmentEl fichero php.ini no viene incluido en las distribuciones de PHP. Por esa razón debemos crearlo partiendo, en este caso, de su versión de desarrollo
Guardar como    php.ini
Modificaciones en el fichero inicial
LíneaCambiosJustificación
798 Donde dice:Asignaremos como valor de doc_root una ruta que, como observarás, apunta el directorio htdocs. En otras palabras, le estamos diciendo a PHP en qué sitio del ordenador –fíjate que incluimos una ruta absoluta– se ubicarán los ficheros cuyos scripts debe interpretar.
doc_root =
cambiar por:
doc_root=C:/ServidoresLocales/Apache/htdocs
809 Donde dice:Con esta modificación le señalamos al intérprete de PHP en qué sitio debe buscar las extensiones que pueda necesitar para la ejecución de sus scripts.
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.
; extension_dir = "ext"
cambiar por:
extension_dir ="C:/ServidoresLocales/php53/ext/"
950 Donde dice:Descomentaremos (quitamos el punto y coma que lleva delante) la línea alusiva a la librería php_gd2 con lo cual estamos activando la opción de que PHP pueda ejecutar instrucciones relativas a imágenes dinámicas.
;extension=php_gd2.dll
cambiar por:
extension=php_gd2.dll
951 Donde dice:Descomentaremos la línea alusiva a la librería php_gettext.dll con lo cual estamos activando la opción de incluir soporte para GNU gettext la API del NLS (Native Language Support) que permite internacionalizar las aplicaciones PHP
;extension=php_gettext.dll
cambiar por:
extension=php_gettext.dll
957 Donde dice:Descomentaremos la línea alusiva a la librería php_mbstring.dll con lo cual estamos activando la opción que permite utilizar caracteres multibyte lo cual evita la restricción de uso exclusivo de idiomas con un máximo de 256 carácteres
;extension=php_mbstring.dll
cambiar por:
extension=php_mbstring.dll
959 Donde dice:Descomentaremos la línea alusiva a la librería php_mysql.dll con lo cual estaremos habilitando la posibilidad de usar las funciones MySQL
;extension=php_mysql.dll
cambiar por:
extension=php_mysql.dll
1085 Donde dice:Asignamos la dirección IP que utilizaremos para el proceso Simple Mail Transfer Protocol cuando PHP se utilizado conjuntamente con un servidor de correo para el envío de emails
SMTP= localhost
cambiar por:
SMTP = 127.0.0.1
1091 Donde dice:Es la dirección del remitente que utilizaremos para el envío de mensajes de correo electrónico
;sendmail_from= me@example.com
cambiar por:
sendmail_from= admin@mispruebas.as
1471 Donde dice:Cuando PHP utiliza sesiones es necesario establecer un lugar del servidor en que almacenar informaciones temporales relativas a ellas. Para esa finalidad hemos creado el directorio tmp e incluimos aquí la ruta absoluta hacia ese directorio
;session.save_path = "/tmp"
cambiar por:
session.save_path = C:/ServidoresLocales/tmp
997 Donde dice:Las últimas versiones de PHP requieren que especifiquemos la zona horaria correspondiente al lugar donde está ubicado nuestro servidor
;date.timezone =
cambiar por:
date.timezone ='Europe/Madrid'
226 Donde dice:El caso de short_open_tag resulta particularmente interesante. En versiones anteriores se incluía la opción ON por defecto. A partir de esta versión parece que aparecerá como OFF y será preciso cambiar su configuración (tal como hacemos en nuestro caso) o tener en cuenta las restricciones que impone su modo OFF.
Si está en modo OFF NO PERMITE la sintaxis <? ?> para incluir el código PHP siendo obligatorio hacerlo mediante <?php ?>
Cuando su estado es ON interpreta ambas formas de sintaxis.
short_open_tag = Off
cambiar por:
short_open_tag = On


  ¡Cuidado!  

Es posible que no residas en España. Sí fuera así no hay ninguna razón para que configures la zona horaria española en tu servidor. ¿Qué como configuras la de tu pais? Mira aquí seguro que encuentras el valor que necesitas para tu configuración personalizada.

Comprobación de PHP

Una vez que hayamos modificado los apartados anteriores y guardado el fichero con el nombre php.ini en el directorio C:/ServidoresLocales/php53 llega el momento de comprobar si PHP funciona correctamente.

Un script de prueba

Para hacer esta comprobación deberemos escribir nuestro primer script PHP. Abriremos nuestro editor –Notepad++– y escribiremos exactamente esto:

<?php 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 bloc 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). Eso significaría que Apache está funcionando correctamente 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.

  ¡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.

  ¡Cuidado!  

Aunque nuestra configuración de short_open_tag = On nos permite utilizar como delimitadores del código PHP tanto <?php   ?> como <?    ?> resulta más aconsejable inclinarse por la primera opción ya que nos garantizaría que nuestros scripts podrán ejecutarse sea cual fuere la configuración de esta directiva.
Hemos de tener en cuenta que en nuestro servidor de pruebas tenemos posibilidades de modificar la configuración pero puede haber casos en los que no tengamos acceso a esas opciones (servicios de hosting ajenos, por citar un ejemplo) y nos surjan dificultades que nos obliguen a modificar todo nuestro código. Puede resultar un poco más incómodo agregar la «coletilla» php pero seguramente es lo más aconsejable.