netbeans xdebug Отладка без указания входного скрипта (index.php) и get-параметров

Основная идея

Идея состоит в следующем:

  1. Нам надо просто запустить отладочную сессию xdebug (например просто открыв главную страницу сайта),
  2. а потом не завершая эту отладочную сессию уже браузере открыть интересующий нас url (т.е. не запускать из нетбинса, где как раз и не обойтись в данный момент без index.php и/или GET-параметров).

Реализация

Теперь сделаем все это по шагам:

  1. В инспекторе проекта (обычно окно слева) нажимаем правой кнопкой на наш проект и выбираем:
    Properties -> Run Configuration

    И в поле Project Url пишем наш домен (напр. локальный, если отладка ведется на локальной машине), например:
    http://mysite.loc/
    Сохраняем эту конфигурацию и запускаем сессию отладки, нажав на копку нетбинса или с помощью Ctrl+F5 (об этом подробнее см. тут в т.ч. видео)

    В моём случае открылся URL вида:
    http://mysite.loc/?XDEBUG_SESSION_START=netbeans-xdebug
    -- скопируйте ваш вариант, именно этот GET-параметр со значением отслеживает xdebug чтобы понять, что сессия отладки запущена. Теперь вы можете запускать её просто перейдя по этому URL.
    ПРИМЕЧАНИЕ: если нажать после этого в нетбинс на кнопку "стоп" (Finish Debugger Session), то IDE откроет для вас url вида:
    http://mysite.loc/?XDEBUG_SESSION_STOP_NO_EXEC=netbeans-xdebug
    -- как видим тут другой параметр, который сигналит иксдебагу о завершении сессии.

  2. Предположим, что мы сделали все как в пунке выше, запустили отладочную сессию, но не останавливали её.
    Теперь поставим точку останова на нужной строке нужного файла и уже ничего не запуская из нетбинс просто откроем нужный нам url сайта (обычно локальный) - т.е. то, в работе которого участвует скрипт, в котором мы установили точку останова, ну например:
    http://mysite.loc/my-problem-page/

    -- всё! нетбинс должен был остановиться на нужном месте, далее просто действует как и при стандартной отладке)

За идею и реализацию спасибо Н. Гр.)