2015-05-21 2 views
1

Я пытаюсь получить Xdebug работает с PHPStorm для сайта Magento, над которым я работаю.Проблемы с Xdebug не удается подключиться с помощью PHPStorm

Это удаленный сервер, и это моя первая настройка времени.

Насколько я могу сказать, что он настроен правильно, но когда у меня есть PHPStorm Listen , он никогда не подключается. Когда я нажимаю «Отладка» в конфигурации удаленного отладки, он просто остается на «Ожидание входящего соединения с ключом IDE (ключ IDE)».

У меня нет статического IP-адреса, поэтому я установил xdebug.remote_connect_back. Конечно, я включил сеанс, используя как букмарклет PHPStorm, так и вручную добавив его в URL. Я пробовал и другие IDE-ключи. И я всегда помню, чтобы установить PHPStorm для прослушивания

Так что я делаю неправильно?

Некоторые подробности:

phpinfo() выход связанные с Xdebug:

`xdebug` 

    xdebug support enabled 
    Version 2.2.2 
    IDE Key PHPSTORM 

    Supported protocols Revision 
    DBGp - Common DeBuGger Protocol $Revision: 1.145 $ 

Directive Local Value Master Value 

    xdebug.auto_trace Off Off 
    xdebug.cli_color 0 0 
    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.coverage_enable On On 
    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 no value no value 
    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 /tmp /tmp 
    xdebug.profiler_output_name cachegrind.out.%p cachegrind.out.%p 
    xdebug.remote_autostart Off Off 
    xdebug.remote_connect_back On On 
    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 /var/log/xdebug.log /var/log/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_enable_trigger Off Off 
    xdebug.trace_format 0 0 
    xdebug.trace_options 0 0 
    xdebug.trace_output_dir /tmp /tmp 
    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 

some screen caps of settings in PHPStorm (извините, я не могу отправить изображения еще, или более чем 2 ссылки) включены screns :

  • переводчики установки
  • Ru п/Debug конфигурации
  • Серверы (в Run/Debug)
  • Настройки> PHP> Debug
  • Сервер "Validate Remote Environment"
  • Debug "ждет входящего соединения"
+0

Что такое xdebug.log? Поскольку это удаленный сервер ... это может быть ваш локальный брандмауэр; ваш маршрутизатор (ему необходимо переслать все входящие запросы на порт xdebug (по умолчанию TCP 9000) на ваш компьютер, на котором запущен PhpStorm); это также может быть ваш удаленный брандмауэр (некоторые дистрибутивы Linux блокируют исходящие соединения на более низких номерах портов) или даже SE Linux или аналогичные. – LazyOne

+0

Предложение: 1) предоставить журнал xdebug; 2) Убедитесь, что PhpStorm прослушивает порт xdebug (вы можете просто активировать его, используя значок «phone handle»); 3) убедитесь, что вы можете подключиться с вашего сервера к вашему PhpStorm на этом порту (просто используйте telnet для подключения к порту xdebug). 4); если ничего и у вас есть SFTP-доступ к вашему серверу - попробуйте отладить через SSH-туннель. – LazyOne

+0

Некоторые ссылки: 1) https://confluence.jetbrains.com/display/PhpStorm/Debugging+with+PhpStorm 2) http://matthardy.net/blog/configuring-phpstorm-xdebug-dbgp-proxy-settings-remote -debugging-множественные пользователи / – LazyOne

ответ

0

порт 9000 (который я использовал) заблокирован на удаленном сервере. Мне потребовалось много времени, чтобы понять, потому что у меня нет прямого доступа к серверу. Это было исправлено, попросив клиента попросить своего хозяина удалить блок.

комментарий @lazyone помог мне, предоставив мне ссылку на matthardy.net. Этот пост получил меня на правильном пути и представил мне удобный инструмент «canyouseeme.org»