Zend Server con soporte Xdebug en Linux – PHP Tips

Cuando se trata de depurar nuestras aplicaciones con PHP, están como dos opciones principales ZendDebugger y XDebug. Dependiendo del IDE que utilicemos, y del servidor que tengamos utilizaremos una u otra. Por ejemplo si usamos Zend Studio y Zend Server, la opción clara es Zend Debugger, pero si usamos como IDE Netbeans, este no tiene soporte para Zend Debugger, solo para XDebug.

De primeras casi recomendaría olvidarnos de instalar los dos depuradores a la vez, ya que lo normal es que den problemas, así que hay que decidirse por uno u otro.

Si tenemos Zend Server y queremos habilitar Xdebug, hay que deshabilitar Zend Debugger. Para instalarlo y ponerlo en marcha hay que hacer lo siguiente:

En el servidor

Otra de las ‘particularidades’ de Zend Server es que los binarios PHP los ubica en su propio directorio de trabajo y otro problema suele ser tener varios binarios PHP en nuestros servidor,  para comprobar que binarios estamos usando utilizaremos la herramienta which


which php

/usr/local/zend/bin/php

Si nos sale el resultado de antes quiere decir que estamos usando el PHP que viene con Zend Server, si sale /usr/bin/php, igual estamos probando otro.

Otra cosa que podemos comprobar en caso que nos devuelva la ruta /usr/bin/php es ir a ese directorio y hacer un ls -lh ph* para ver si el binario php es un enlace a /usr/local/zend/bin/php y  si phpize apunta al directorio de zend.

Otra opción, mas sencilla es ir al directorio /usr/local/zend/bin y ejecutar el comando con ./ asi se ejecutara ese comando y no el del path.

Asi instalariamos el xdebug:


sudo pecl install xdebug

Una vez instalado necesitamos comentar una linea en el archivo de configuracion debugger.ini que esta en /usr/local/zend/etc/conf.d/debugger.ini y agregar otra

;zend_extension_manager.dir.debugger=/usr/local/zend/lib/debugger

zend_extension=/usr/local/zend/lib/php_extensions/xdebug.so

Esta linea esta situada la ultima, para comentarla simplemente agregamos un ; delante
Una vez hecho esto reiniciamos el servidor y comprobamos en el phpinfo o ejecutando php -i | grep xdebug si el xdebug esta cargado.

Esta entrada esta basada en la entrada Zend Server with Xdebug support on Linux | My Science Is Better.

Enhanced by Zemanta
Anuncios

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