Este es un pequeño tuto o how-to de como instalar Xdebug con PHP5 en Ubuntu 10.04, mas adelante daré mas detalles de como sacarle provecho a esta extensión.
Primero, que es Xdebug?
La extensión Xdebug le ayuda a depurar el guión de proporcionar una gran cantidad de valiosa información de depuración.
La información de depuración que puede Xdebug proporcionar incluye lo siguiente:
- seguimientos de pila y huellas función en los mensajes de error con:
- completo pantalla de parámetros de funciones definidas por el usuario
- nombre de la función, el nombre del archivo y la línea de las indicaciones
- apoyo a las funciones miembro
- de asignación de memoria
- protección de recursiones infinita
Xdebug también ofrece:
- perfiles información para los scripts PHP
- código de análisis de cobertura
- capacidades para depurar sus scripts de forma interactiva con un cliente de depuración
Bueno, basta de chácharas, empezaremos a instalar y configurar Xdebug, se supone de ante mano que tenemos PHP5 y Apache2 ya funcionando.
1 | chuecko@zarpele ~ $ sudo apt-get install php5-dev php-pear |
Ahora instalamos Xdebug PECL
1 | chuecko@zarpele ~ $ sudo pecl install xdebug |
Si todo sale bien, las ultimas lineas de el anterior comando serian mas o menos asi…
1 | Build process completed successfully |
2 | Installing '/usr/lib/php5/20060613+lfs/xdebug.so' |
4 | configuration option "php_ini" is not set to php.ini location |
5 | You should add "extension=xdebug.so" to php.ini |
Ya sabemos, que se instalo en /usr/lib/php5/20060613+lfs/xdebug.so, pero igual nos aseguraremos de eso…
1 | chuecko@zarpele ~ $ find / -name 'xdebug.so' 2> /dev/null |
Que efectivamente nos devolvio…
1 | /usr/lib/php5/20060613+lfs/xdebug.so |
Listo ahora debemos decir a Php que incluya esta extensión…’
1 | chuecko@zarpele ~ $ sudo gedit /etc/php5/apache2/php.ini |
Agregamos la siguiente linea…
1 | zend_extension= "/usr/lib/php5/20060613+lfs/xdebug.so" |
Reiniciamos Apache…
1 | chuecko@zarpele ~ $ sudo /etc/init.d/apache2 restart |
Listo, funcionando, ahora lo vamos a configurar, antes nos fijaremos si Php cargó esta extensión con phpinfo() …
Creamos una carpeta en, /var/log/, llamada xdebug, para que vaya guardando los cachegrind que generemos…
1 | chuecko@zarpele ~ $ sudo mkdir /var/log/xdebug |
Ahora, editamos el fichero de configuración /etc/php5/conf.d/xdebug.ini , en caso de no existir hay que crearlo…
1 | chuecko@zarpele ~ $ sudo gedit /etc/php5/conf.d/xdebug.ini |
y le añadiremos estas lineas…
1 | xdebug.default_enable = 1 |
2 | xdebug.profiler_enable = On |
3 | xdebug.profiler_output_dir = "/var/log/xdebug" |
4 | xdebug.profiler_output_name = cachegrind.out.%p |
6 | xdebug.remote_enable= true |
7 | xdebug.remote_host=127.0.0.1 |
9 | xdebug.remote_handler=dbgp |
No hay comentarios:
Publicar un comentario