Configuración de un entorno de depuración para PHP

Con este primer post comenzaremos a sentar las bases necesarias para conseguir montar un entorno de desarrollo e integración continua para proyectos realizados con tecnología PHP.

Los elementos que vamos a necesitar serán los siguientes:

EclipsePDT, es un IDE Eclipse que trae instalado los plugins necesarios para desarrollar aplicaciones con tecnología PHP (necesitaremos tener instalado JRE1.5).

WampServer permite instalar PHP, Apache y MySQL sobre un sistema operativo Windows. A partir de la versión 2.0 WampServer ofrece, además, la posibilidad de cambiar las versiones de los distintos componentes.

Xdebug es una extensión PHP que permite la depuración de scripts PHP ofreciéndonos una gran cantidad de información útil.


El primer paso que daremos será llevar a cabo la instalación del servidor WampServer. Una vez terminado el proceso de instalación podremos comprobar su correcto funcionamiento accediendo a “http://localhost/”.

Una vez hecho esto pasaremos a instalar Xdebug en nuestra máquina, para ello copiaremos la extensión Xdebug en el directorio de extensiones de PHP, en nuestro caso será “<WAMP_HOME>\wamp\bin\php\phpX.Y.Z\ext” (debemos tener cuidado de descargar la versión de Xdebug correspondiente con la versión de PHP que hemos instalando), opcionalmente, le podremos cambiar el nombre a “php_xdebug.dll” con el fin de facilitarnos los siguientes pasos

El siguiente paso será informar a WampServer que tiene disponible la extensión Xdebug para permitir la depuración, esto lo haremos accediendo al fichero de configuración “php.ini” a través de la consola de WampServer y añadiendo el siguiente fragmento de código al final de dicho fichero

zend_extension_ts=”<WAMP_HOME>\wamp\bin\php\phpX.Y.Z\ext\php_xdebug.dll”
xdebug.remote_enable=On
xdebug.remote_host=”localhost”
xdebug.remote_port=9000
xdebug.remote_handler=”dbgp”

Grabamos los cambios y reiniciamos el servidor, si hemos realizado todos los pasos correctamente de una imagen como la siguiente en “http://localhost/?phpinfo&#8221;


pasaremos a tener una como esta otra, en la que podemos observar cómo tenemos disponible la extensión de depuración Xdebug

Ahora sólo nos queda indicarle a EclipsePDT qué servidor tiene que usar para llevar a cabo la depuración , para ello abriremos EclipsePDT y creamos un nuevo proyecto PHP vacío al que llamaremos Test y crearemos un nuevo fichero “index.php” con un código de prueba.

A continuación nos iremos a “Window -> Preferences…” y expandiremos el árbol “PHP/Debug” y le indicaremos a EclipsePDT que debe usar la extensión de depuración Xdebug.

También deberemos crear un perfil de depuración para nuestro proyecto, para ello, haremos click derecho sobre el proyecto y selecionaremos “Debug As -> Open Debug Dialog …” crearemos una nueva configuración sobre “PHP Web Page” que llamaremos “Test_Configuration”, en File seleccionaremos “/Test/index.php” y pasamos a la siguiente pestaña, “Advanced”.

Tras pulsar sobre “Apply” saltará inmeditamente el navegador predefinido intentando acceder a “http://localhost/Test/index.php&#8221; devolviéndonos un error 404, esto se debe a que no tenemos dado de alta el proyecto, esto lo haremos fácilmente gracias a la gestión de los alias que WampServer nos ofrece.

Seleccionaremos “Apache -> Alias directories -> + Add an alias” en la consola de WampServer, esto nos mostrará una ventana en la que nos solicitará la dirección tanto lógica como física

Tras proporcionarle los datos necesarios volveremos a lanzar el depurador y obtendremos el depurador funcionando correctamente para poder trabajar

Para correr primero debemos aprender a andar.

Anuncios

4 Responses to Configuración de un entorno de depuración para PHP

  1. Hola Angel:

    Ahora ya sólo te falta añadir profiling:
    http://www.manuelrecena.com/blog/archives/68

    Un saludo

  2. Ángel Cristóbal Lázaro Ríos dice:

    Hola Manu,

    Como bien sabes, cuando se ejecuta un proyecto, con cualquier tecnología, uno de los últimos pasos que se da es la puesta en producción del proyecto, es durante esa fase donde entiendo que debemos utilizar herramientas como la que comentas. Este tipo de herramientas combinada con otras como JMeter y Zabbix nos aportarán los datos necesarios para establecer los parámetros óptimos de configuración del servidor y la aplicación. También nos proporcionará otro tipo de información útil como puntos de ruptura de la aplicación/servidor/base de datos, etc. Más adelante escribir algo al respecto.

    Un saludo,

  3. Hola Ángel, me parece genial que empieces desde 0. Precisamente estaba planteandome realizar algún curso PHP. En mi nombre te felicito y te doy las gracias por tu aportación.

  4. krice dice:

    como agrego un alias en la consola wamp server que ahi me
    trabe

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: