Instalar Xdebug en LAMP sobre Ubuntu
Primero, necesitamos instalar la librería 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 de PHP 5.x.
A continuación, necesitamos explorar la carpeta /usr/lib/php
y localizar nuestro archivo xdebug.so
.
cd /usr/lib/php
ls
Tengo varias versiones de PHP en mi máquina local, por lo que el archivo xdebug.so
para la versión PHP 7.2 está en la carpeta 20170718
, y 20160303
para PHP 7.1, y así sucesivamente.
La ruta al archivo xdebug.so
debe añadirse a /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 añadir estos ajustes al final del archivo php.ini
. Normalmente utilizo el editor nano para modificar la configuración:
sudo nano /etc/php/7.2/apache2/php.ini
Utiliza Ctrl + O para guardar los cambios y Ctrl + X para salir del editor nano.
Después de modificar la configuración, debemos reiniciar Apache:
sudo service apache2 restart
También puedes añadir estos ajustes en la configuración CLI, pero no lo recomiendo, ya que Composer funciona más lento con Xdebug habilitado.
Nota: yo utilizo el IDE PhpStorm, por lo que establecí el idekey
como PHPSTORM
; si usas otro IDE deberías usar otro idekey
, 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