Удаленная отладка PHP с использованием XDebug - PullRequest
4 голосов
/ 01 февраля 2011

У меня много вопросов о том, как отлаживать php-файлы с помощью xdebug и eclipse на удаленном сервере.

То, чего я хотел бы добиться, это : у меня естьудаленный сервер (с WAMPP (appache (порт 8502), php, mysql (порт 8501) и т. д.)) и я хотел бы отладить php-файлы с помощью Eclipse PDT с моего локального компьютера.

Я подготовил следующие вещи :

  • Установлен Eclipse PDT (идентификатор сборки:
    20100617-1415) на локальном ПК
  • Установлен и активирован xdebug на удаленном сервере(доступно по адресу (скажем, 111.111.111.111:8502) со следующей конфигурацией в php.ini

[XDebug]
zend_extension = C:\TYPO3_4.4.6\php\ext\php_xdebug-2.1.0-5.3-vc6.dll
xdebug.profiler_output_dir = "C:/xampp/tmp/xdebug"
xdebug.profiler_output_name = "cachegrind.out.%p"
xdebug.profiler_enable = 0
xdebug.profiler_append=0
xdebug.extended_info=1
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.idekey=ECLIPSE_DBGP
xdebug.remote_log="C:\TYPO3_4.4.6\tmp\xdebug\xdebug_remote.log"
xdebug.show_exception_trace=0
xdebug.show_local_vars=9
xdebug.show_mem_delta=0
xdebug.trace_format=0

  • В Eclipse я добавилсервер в «Окно - PHP - Серверы PHP» с URL-адресом «http://111.111.111.111:8502"» и «Отображение пути - Путь на сервере:« C: \ TYPO3_4.4.6 \ htdocs »и Путь в рабочей области:« / debug_test »(я создалПроект PHP с именем "debug_test").

  • Я также изменил PHP - Debug на следующее:

    • PHP-отладчик: XDebug
    • Сервер: 111.111.111.111
    • Исполняемый файл PHP Не определен
  • Далее я добавил отладкуконфигурация (веб-страница PHP):

    • Отладчик сервера: XDebug
    • Сервер PHP: 111.111.111.111
    • Файл: /debug_test/debug.php
    • Разрыв первой строки: выкл.
    • Автогенерация: вкл.
  • Я создал файл debug.php на удаленном сервере в C: \ TYPO3_4.4.6 \ htdocs \ debug_test \ и в моем проекте PHP ("debug_test").

Если я сейчас запущу "Debug" и выберу свой файл конфигурации, веб-страница появится (во внешнейбраузер) с URL http://111.111.111.111:8502/debug_test/debug.php?XDEBUG_SESSION_STOP_NO_EXEC=ECLIPSE_DBGP&KEY=129657398681515 и страница (полностью) загружается как обычная страница, но отладки нет.Даже если я переключаюсь на PHP Debug - просматриваю и вставляю любые точки останова или подобные вещи, нет ничего лучше отладки.

Как мне добраться до того, что я могу выполнять удаленную отладку с помощью xdebug и eclipse pdt?

Приветствия, Cheeesi

1 Ответ

0 голосов
/ 01 февраля 2011

Вы уверены, что ваш XDebug-Client / PC может быть доступен с вашего сервера на 127.0.0.1?

B / c, если я вас правильно понял, ваш сервер не установлен на вашем ПК.Ото тогда мне интересно, как вы настроили свою XAMPP-систему.В таком случае обычно все ваши вещи устанавливаются локально.

Также важно поведение браузера.Если после запуска XDebug-сессии через Eclipse ваш сайт полностью загружен, значит, ваш XDebug-Client в Eclipse не может достичь вашего сервера.Если вы видите, что ваш браузер пытается загрузить страницу, но она останавливается, тогда ваш клиент может указать серверу запустить сеанс XDebug, но ваш XDebug на сервере не может подключиться обратно.

Ваш порт 8502, который выуказать для вашего сервера также немного нечетно, но может быть правильным, учитывая соответствующие конфигурации.

С уважением

Раффаэль

РЕДАКТИРОВАТЬ: и для первой попытки вы должны включитьразрыв на первой линии

...