Как заставить работать отладчик?

Помогите, пожалуйста, настроить отладку Xdebug на NetBeans, вчера целый день бился над этим. Все мои попытки оканчивались надписью "ожидание подкючения".

Имеющееся ПО:
Openserver (Apache-2.4, PHP-5.6)
NetBeans 8.0.2

phpinfo() показывает вот что:
e715a0d3617e4419acb79bb8a066fbb6.PNG

Настройки Xdebug в "C:\OpenServer\userdata\config\PHP-5.6_php.ini"
[Xdebug]
zend_extension="C:\OpenServer\tests\Xdebug\php_xdebug-2.3.2-5.6-vc11.dll"
;xdebug.default_enable = 1
xdebug.auto_trace = 0
xdebug.collect_includes = 1
;xdebug.collect_params = 4
;xdebug.collect_return = 1
;xdebug.collect_assignments = 1
;xdebug.collect_vars = 1
xdebug.dump.REQUEST = *
xdebug.dump.SESSION = *
xdebug.dump.SERVER = REMOTE_ADDR,REQUEST_METHOD
;xdebug.dump.COOKIE =
;xdebug.dump.FILES =
;xdebug.dump.GET =
;xdebug.dump.POST =
xdebug.dump_globals = 1
xdebug.dump_once = 1
xdebug.dump_undefined = 1
xdebug.extended_info = 0
;xdebug.file_link_format = ""
xdebug.idekey = "netbeans-xdebug"
;xdebug.manual_url = "http://www.php.net"
xdebug.max_nesting_level = 256
xdebug.overload_var_dump = 1
;xdebug.profiler_append = 1
xdebug.profiler_enable = 0
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir="%sprogdir%/userdata/temp/xdebug/"
xdebug.profiler_output_name = "cachegrind.out.%H%R"
;xdebug.remote_autostart = 0
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "localhost"
;xdebug.remote_log = "none"
xdebug.remote_mode = "req"
xdebug.remote_port = 9000
;xdebug.scream = 1
;xdebug.show_exception_trace = 0
;xdebug.show_local_vars = 1
;xdebug.show_mem_delta = 1
;xdebug.trace_format = 1
;xdebug.trace_options = 1
xdebug.trace_output_dir = "%sprogdir%/userdata/temp/xdebug/"
;xdebug.trace_output_name = "trace.%H%R"
xdebug.var_display_max_children = 256
;xdebug.var_display_max_data = 1024
xdebug.var_display_max_depth = 16


Настройки отладки NetBeans:
2ab0049a8d3240709d4daca740bc39bb.PNG

Перепробовал очень много комбинаций настроек, разные пути к файлу, порты, менял версии пхп и, следовательно, отладчика - безрезультатно.

Хотел испробовать на других IDE - поставил CodeLobster, его собственный отладчик работал, xdebug проверить не смог. В Eclipse я не разобрался, даже просто открыть страницу не смог.
  • Вопрос задан
  • 3635 просмотров
Решения вопроса 2
@ColdSpirit Автор вопроса
В общем проблему решил, но частично.
Дело было вот в чем: в настройках проекта NetBeans -> "Дополнителные параметры веб конфигурации", я поставил по какой-то нагугленной инструкции значение "Не открывать веб-браузер", но как раз из-за этого и не работало, потому что, отладка запускается когда в строке адреса присутсвует параметр "?XDEBUG_SESSION_START=netbeans-xdebug", а когда не открывается браузер нет и никаких ссылок.
Обратил на это внимание прочитав одну статью, за что добра ее автору.

В php.ini, в разделе xdebug оставил только
[Xdebug]
zend_extension="%sprogdir%/tests/xdebug/php_xdebug-2.3.2-5.6-vc11.dll"
xdebug.idekey = "netbeans-xdebug"
xdebug.remote_enable = 1


Осталась следующая задача: как сделать так, чтобы браузер не открывался каждый раз при запуске и остановке отладки.
Так что вопрос пока в силе)
Ответ написан
Комментировать
brlumen
@brlumen
Добавьте xdebug.remote_autostart=on, тогда xdebug будет автоматически отсылать отладочную информацию вашей ide при каждом исполнении php кода. Иначе он ждет как раз "волшебную" строчку "?XDEBUG_SESSION_START=netbeans-xdebug" , что сейчас нужно начать отладку.
После можете вернуть настройку ide в "Не открывать веб-браузер"
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы