воскресенье, 4 сентября 2016 г.

Настройка xDebug в OpenServer, для среды NetBeans.

Настроим расширение xDebug для отладки PHP-скриптов в IDE Netbeans.

В качестве локального сервера мы используем OpenServer.

1. Включаем xDebug.

Open Server -> Дополнительно -> Конфигурация -> PHP x.x. (ваша версия PHP)
[Xdebug]
zend_extension="%sprogdir%/modules/php/%phpdriver%/ext/php_xdebug.dll"
xdebug.idekey = "netbeans-xdebug"
xdebug.remote_enable = 1

Дебажная сессия должна автоматически открываться в окне браузера, при запуске отладки.
Откроется адрес вида
http://myhost.local/?XDEBUG_SESSION_START=netbeans-xdebug

2. Настраиваем браузер.

Для того, чтобы удобно было включать режим отладки в Хроме, я использую расширение "Xdebug helper".

https://chrome.google.com/webstore/detail/eadndfjplgieldjbigjakmdgkmoaaaoc

Оно позволяет переключать режим на уже открытой странице, и не засоряет строку запроса.

Ключ отладки передаётся через куки.

В настройках плагина нужно выбрать ключ для Netbeans.

В настройках NetBeans снимаем галочку:
Сервис -> Параметры -> PHP -> Отладка -> Остановиться в первой строке

Если сразу не заработало, нужно перезапустить NetBeans.

3. Настраиваем IDE Netbeans.

3.1 В настройках проекта указываем:

Выполнить настройку -> Дополнительно -> Отладка URL-адреса -> Не открывать веб-браузер

Чтобы NetBeans не открывал на каждый сеанс отладчика новую вкладку в браузере.

Для управления режимом отладки, удобнее использовать расширение Chrome.

3.2 Ставим таймаут для отладки, иначе будет отваливаться SQL-соединение: wait_timeout=6000

Также см. Отключение xDebug для Composer на OpenServer.

6 комментариев:

  1. я тоже не нашел где wait_timeout ставить :(

    ОтветитьУдалить
    Ответы
    1. Open Server -> Дополнительно -> Конфигурация -> My SQL x.x. (ваша версия My SQL)

      Удалить
  2. "Ставим таймаут для отладки, иначе будет отваливаться SQL-соединение: wait_timeout=6000" - ответ
    Open Server -> Дополнительно -> Конфигурация -> My SQL x.x. (ваша версия PHP)

    ОтветитьУдалить