Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > отладка при помощи XDebug


Автор: nmn 5.12.2010, 21:42
здравствуйте

необходимо настроить отладку с XDebug и NetBeans
что есть:

php.ini
[xdebug]
zend_extension = \usr\local\php5\ext\php_xdebug-2.1.0-5.3-vc6.dll
xdebug.remote_enable=on
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.remote_autostart=on
xdebug.remote_log=x:\tmp\xdebug.log
;xdebug.idekey=netbeans-xdebug

netbeans:
netbeans настроена на session id main, тип отладки remote web server

user posted image

user posted image

в меню ProjectProperties поставил маппинг
user posted image



phpinfo:
Directive    Local Value    Master Value
xdebug.auto_trace    Off    Off
xdebug.collect_assignments    Off    Off
xdebug.collect_includes    On    On
xdebug.collect_params    0    0
xdebug.collect_return    Off    Off
xdebug.collect_vars    Off    Off
xdebug.default_enable    On    On
xdebug.dump.COOKIE    no value    no value
xdebug.dump.ENV    no value    no value
xdebug.dump.FILES    no value    no value
xdebug.dump.GET    no value    no value
xdebug.dump.POST    no value    no value
xdebug.dump.REQUEST    no value    no value
xdebug.dump.SERVER    no value    no value
xdebug.dump.SESSION    no value    no value
xdebug.dump_globals    On    On
xdebug.dump_once    On    On
xdebug.dump_undefined    Off    Off
xdebug.extended_info    On    On
xdebug.file_link_format    no value    no value
xdebug.idekey    main    no value
xdebug.manual_url    http://www.php.net    http://www.php.net
xdebug.max_nesting_level    100    100
xdebug.overload_var_dump    On    On
xdebug.profiler_aggregate    Off    Off
xdebug.profiler_append    Off    Off
xdebug.profiler_enable    Off    Off
xdebug.profiler_enable_trigger    Off    Off
xdebug.profiler_output_dir    \    \
xdebug.profiler_output_name    cachegrind.out.%p    cachegrind.out.%p
xdebug.remote_autostart    On    On
xdebug.remote_connect_back    Off    Off
xdebug.remote_cookie_expire_time    3600    3600
xdebug.remote_enable    On    On
xdebug.remote_handler    dbgp    dbgp
xdebug.remote_host    localhost    localhost
xdebug.remote_log    x:\tmp\xdebug.log    x:\tmp\xdebug.log
xdebug.remote_mode    req    req
xdebug.remote_port    9000    9000
xdebug.scream    Off    Off
xdebug.show_exception_trace    Off    Off
xdebug.show_local_vars    Off    Off
xdebug.show_mem_delta    Off    Off
xdebug.trace_format    0    0
xdebug.trace_options    0    0
xdebug.trace_output_dir    \    \
xdebug.trace_output_name    trace.%c    trace.%c
xdebug.var_display_max_children    128    128
xdebug.var_display_max_data    512    512
xdebug.var_display_max_depth    3    3

как работает:
при запуске сессии отладки и запросе отлаживаемой страницы xdebug не присоединяется, netbeans говорит ожидаение подключения

Автор: smartov 5.12.2010, 22:26
phpinfo проверял тестовым скриптом или из консоли?
9000 порт реально открыт? Проверял?

Автор: nmn 5.12.2010, 23:10
Цитата(smartov @ 5.12.2010,  22:26)
phpinfo проверял тестовым скриптом или из консоли?
9000 порт реально открыт? Проверял?

скриптом
9000 порт открыт

прикрепил вывод php.exe из консоли

Автор: nmn 6.12.2010, 00:06
заработал

но еще проблема, он останавливается только на первой строке, на брейкпоинты не реагирует

Автор: nmn 6.12.2010, 01:01
так теперь и на брейкпоинты реагирует, с ними была проблема из-за маппинга путей, я его убрал и все заработало
похоже что он изначально работал, просто у меня был выклбчен останов на первой строке, а остальные брейкпоинты не работали

еще вопрос, как сделать чтобы дебаг работал только по определенному пути на сервере, вот мне интересно только что лежит в http://localhost/phpwebservice, можно это как то сделать?

Автор: smartov 6.12.2010, 12:33
У меня с xdebug вобще редко складывалось. Так и не приловчился им пользоваться так, чтобы удобно было

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)