Как настроить Xdebug в PhpStorm

Речь пойдет о том, как подружить IDE PhpStorm и Xdebug, чтобы мы могли дебажить не только наши веб-странички и api, а также и консольные скрипты прямо из любимого IDE.

Ранее я уже писал о установке и настройке Xdebug и работе с ним через IDE NetBeans. Поэтому если у Вас еще не установлен Xdebug – установите.

Большинство статей и заметок я пишу на примере Ubuntu. Поэтому если Вы еще не используете данный дистрибутив, советую ознакомиться с руководством по установке Ubuntu.

Заходим в настройки проекта File → Settings или Ctrl+Alt+S
ps-xdebug-1

Переходим в раздел Languages & FrameworksPHPDebug
И указываем Debug port:
ps-xdebug-2

Обратите внимание на порт, я использую 9009 (если он у Вас занят, укажите любой свободный)

Не стоит использовать для Xdebug порт 9000 (по умолчанию), если Вы используете php-fpm. В таком случае порт будет занят процессом php-fpm и Xdebug работать не будет.

Не закрывая настроек переходим в раздел Languages & FrameworksPHPDebugDBGp Proxy.

В php.ini параметр xdebug.remote_handler должен иметь значение dbgp.

И указываем следующие параметры:

IDE key: phpstorm

В php.ini параметр xdebug.idekey должен быть равен phpstorm.

Host: 127.0.0.1

В php.ini параметр xdebug.remote_host также должен быть 127.0.0.1.

Port: 9009

В php.ini параметр xdebug.remote_port должен быть 9009.

Все. На этом настройка завершена. Теперь для того, чтобы дебажить Вам достаточно поставить break-point и включить слушателя debug-соединений.
ps-xdebug-4

Stas Kuryan

IT entrepreneur / Product Owner / Engineer - Готов к худшему, в надежде на лучшее.

11 Comments

  1. Pingback:Лучшие VPN для Linux 2016 | Losst

  2. Спасибо! респект тебе! замучился на 9000 порту не мог настроить – поменял на другой – ЗАРАБОТАЛА! 🙂

  3. Вячеслав     

    тема отладки консольных скриптов не кмк не раскрыта, или я ошибаюсь?

    • Stafox        Author

      После этой настройки xdebug без проблем перехватывает из cli в том числе.

  4. Тоже была проблема с 9000 портом. Тоже помогло решение со сменой порта. Естественно, статья помогла мне в этом. Автор написал всё настолько ясно, насколько возможно. Проблема решена, автору спасибо.

  5. Pingback:Установка и настройка Xdebug

  6. Николай     

    Спасибо, все заработало. Кстати, интересное наблюдение. После настройки xdebug по твоей инструкции и в частности параметра xdebug.remote_autostart = 1; отследил подозрительную активность на своей машине. Оказывается это админский скрипт для мониторинга железа 😉 Прихожу к ним, говорю так и так, вот такую-то дрянь у себя нашел, а у них глаза на лоб, типа как дрянь, как нашел – это наше, мол мы так железо мониторим, что бы никто ниче не вытащил.

    • Stafox        Author

      😀 а чем мониторят?

  7. Егор     

    Все отлично заработало! Спасибо огромное за объяснение!

  8. Pingback:CentOS xdebug php72 – Blog-VN

  9. Сэм     

    Спасибо дружище, че только я не пробовал, но мою проблему решили твои строки по настройке Languages & Frameworks → PHP → Debug → DBGp Proxy. Во всех манулах этому не уделяют внимания, но без этого не работало.

Leave a Reply

Your email address will not be published. Required fields are marked *