Instalar Xdebug en Ubuntu LAMP
Primero, necesitamos instalar la biblioteca de PHP para Xdebug:
sudo apt update
sudo apt install php7.2-xdebug
Para otras versiones de PHP puedes usar php7.x-xdebug
o php5.x-xdebug
para las versiones 5.x de PHP.
Luego debemos ir a la carpeta /usr/lib/php
y buscar nuestro archivo xdebug.so
.
cd /usr/lib/php
ls
Tengo varias versiones de PHP en mi máquina local, por lo que tengo xdebug.so para la versión PHP 7.2 en la carpeta 20170718
, y en 20160303
para PHP 7.1, y así sucesivamente.
La ruta a xdebug.so
debe añadirse al archivo /etc/php/7.2/apache2/php.ini
(o a la versión de PHP correspondiente):
zend_extension=/usr/lib/php/20170718/xdebug.so
xdebug.remote_enable=true
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=1
xdebug.extended_info = 1
xdebug.profiler_output_dir=/tmp
xdebug.idekey = "PHPSTORM"
Puedes agregar estas configuraciones al final del archivo php.ini
. Normalmente utilizo el editor nano para modificar configuraciones:
sudo nano /etc/php/7.2/apache2/php.ini
Usa Ctrl + O para guardar los cambios y Ctrl + X para cerrar el editor nano.
Después de modificar la configuración, debemos reiniciar Apache:
sudo service apache2 restart
También puedes agregar estas configuraciones en el archivo de configuración CLI, pero no lo recomiendo, ya que Composer funciona más lento con Xdebug activado.
Nota: Yo uso el IDE PhpStorm, por lo que agregué el idekey = "PHPSTORM"
. Si usas otro IDE, deberías usar otra clave, por ejemplo ECLIPSE_DBGP
o netbeans-xdebug
.
También necesitas una extensión de Chrome para habilitar Xdebug en el sitio:
https://chrome.google.com/webstore/detail/xdebug-helper/eadndfjplgieldjbigjakmdgkmoaaaoc