11/06/2019, by Mikhail Ismajlov

Во-первых, нам нужно установить php библиотеку для xdebug:

sudo apt update
sudo apt install php7.2-xdebug

Для других версий PHP вы можете использовать php7.x-xdebug или php5.x-xdebug для версий PHP 5.x.

Далее нам нужно найти папку /usr/lib/php и найти наш файл xdebug.so.

 cd /usr/lib/php ls

PHP xdebug

У меня есть несколько версий PHP на моем локальном компьютере, поэтому у меня есть xdebug.so для версии PHP 7.2 в папке 20170718, 20160303 для PHP 7.1 и так далее.

Путь к xdebug.so должен быть добавлен в /etc/php/7.2/apache2/php.ini (или в любую другую указанную версию PHP):

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"

Вы можете добавить эти настройки только в конец файла php.ini. Я обычно использую редактор nano для изменения настроек:

sudo nano /etc/php/7.2/apache2/php.ini

Используйте Ctrl + O для сохранения изменений и Ctrl + X, чтобы закрыть редактор nano.

После изменения конфигов нам нужно перезапустить apache:

sudo service apache2 restart

Вы также можете добавить эти настройки в cli config, но я не рекомендую делать этого, потому что composer работает медленнее с включенным xdebug.

Примечание: я использую PhpStorm IDE, поэтому я добавил idekey - PHPSTORM. Если вы используете другую IDE, вам следует использовать другой idekey, например ECLIPSE_DBGP или netbeans-xdebug.

Вам также нужно расширение chrome, чтобы включить xdebug для сайта:

https://chrome.google.com/webstore/detail/xdebug-helper/eadndfjplgieldjbigjakmdgkmoaaaoc