netbeans xdebug Отладка без указания входного скрипта (index.php) и get-параметров
Primary tabs
Основная идея
Идея состоит в следующем:
- Нам надо просто запустить отладочную сессию xdebug (например просто открыв главную страницу сайта),
- а потом не завершая эту отладочную сессию уже браузере открыть интересующий нас url (т.е. не запускать из нетбинса, где как раз и не обойтись в данный момент без index.php и/или GET-параметров).
Реализация
Теперь сделаем все это по шагам:
- В инспекторе проекта (обычно окно слева) нажимаем правой кнопкой на наш проект и выбираем:
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
-- как видим тут другой параметр, который сигналит иксдебагу о завершении сессии. - Предположим, что мы сделали все как в пунке выше, запустили отладочную сессию, но не останавливали её.
Теперь поставим точку останова на нужной строке нужного файла и уже ничего не запуская из нетбинс просто откроем нужный нам url сайта (обычно локальный) - т.е. то, в работе которого участвует скрипт, в котором мы установили точку останова, ну например:http://mysite.loc/my-problem-page/
-- всё! нетбинс должен был остановиться на нужном месте, далее просто действует как и при стандартной отладке)
За идею и реализацию спасибо Н. Гр.)
- Log in to post comments
- 2525 reads