Подтвердить что ты не робот

Отладчик PhpStorm не останавливается в BreakPoints; продолжает ждать xdebug _SESSION_

Обновленный вопрос: PhpStorm | WebMatrix (IISExpress) | Xdebug.remote_port | - Какой порт поставить где?


Я запускаю веб-сервер localhost на своей машине Windows с помощью WebMatrix и IISExpress. Я установил в него PHP и Xdebug, и они оба работают.

У меня есть локальная установка WordPress.

Теперь я пытаюсь заставить PhpStorm отлаживать его с помощью Xdebug.

Когда я запускаю PhpStorm, он запускает веб-приложение в браузере с соответствующими параметрами отладки в браузере.

IDE KEY соответствует

ide

xdebug.remote_port настроен правильно. (Позже я обнаружил, что это неправильно, но не ошибочно. Это должен быть порт 9000)

xdebug.remote_port

Но, похоже, Xdebug никогда не связывается с PhpStorm. PhpStorm продолжает прослушиваться, и выполнение выполняется полностью, не останавливаясь ни в каких точках прорыва.

PhpStormPhpStorm

4b9b3361

Ответ 1

В php.ini была синтаксическая ошибка. Были дополнительные " цитаты " и ; colons ;.

xdebug.remote_port

Ответ 2

Эти строки имеют решающее значение для работы (в php.ini):

zend_extension=/usr/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so
xdebug.remote_autostart = 1 <-------- THIS
xdebug.remote_enable = 1 <----------- AND THIS

Без этих строк xdebug никогда не будет работать на phpstorm;)

Ответ 3

Попробуйте изменить порт прослушивания xdebug в вашем php.ini и вашей среде IDE.

Запуск Mac Yosemite, для меня проблема заключалась в том, что я установил с homebrew, следуя руководству, использующему php-fpm, который по умолчанию использует порт 9000 (который конфликтует с портом по умолчанию xdebug)... Изменение моего xdebug.remote_port до 9001 и изменение порта xdebug в phpstorm устраняло проблему, хотя я подозреваю, что эта проблема может произойти для любого в любой среде IDE. Я googled в течение большей части дня и не видел этого решения (так как я считаю, что это так специфично для установки метода). Но я надеюсь, что это кому-то поможет.

Ответ 4

Взял меня около часа, пока я не заметил, что эта кнопка не была активирована;)

"Запустить" → "Начать прослушивание подключений отладки PHP"

введите описание изображения здесь

Ответ 5

Сначала проверьте, на каком порту xdebug работает, вы можете найти его в своем php.ini под xdebug.remote_port=9123. Как вы можете видеть в моем случае, оно установлено на 9123.
Теперь откройте PhpStorm перейдите к отладке php, см. Снимок экрана: enter image description here

в Xdebug вы найдете отладочный порт, убедитесь, что его значение такое же, как в файле php.ini в разделе xdebug.remote_port (9123 в моем случае).

Надеюсь, что это поможет

Ответ 6

Для меня это изменило строку:

xdebug.remote_host = локальный в xdebug.remote_host = myComputerIP

(пользователь Mac: в терминале запустите ifconfig, чтобы найти ваш ip)

Ответ 7

PHPStorm имеет встроенный инструмент в Run > Проверка отладки веб-сервера.

Это помогло мне решить мою проблему.

введите описание изображения здесь

Ответ 8

Если кто-то еще сталкивается с этой проблемой и использует Vagrant, это то, что окончательно исправил ее для меня:

xdebug.remote_host=10.0.2.2

Это должен быть IP-адрес вашего локального компьютера внутри поля Vagrant, а 10.0.2.2 по умолчанию. Если вы ssh в поле "Бродяга", он отобразит IP-адрес, в который вы вошли, если вы хотите подтвердить.

Я знаю, что это не имеет прямого отношения к конкретной настройке OP, но это сообщение появляется во многих файлах xdebug/PhpStorm Google, поэтому, надеюсь, это может помочь кому-то другому.

Ответ 9

Я также получаю это сообщение об ошибке.
Также были проблемы с php.ini, но более тонкие.

Попробуйте найти и удалить строку, подобную этой

extension=php_xdebug-...

Посмотрите на мой ответ здесь для деталей "Xdebug - команда недоступна.

Ответ 10

У меня была такая же проблема, пытаясь проверить проект Laravel с помощью XAMPP на Windows в PHPStorm. Я понятия не имею, что именно я делаю неправильно, но в конечном итоге я получил работу. Я последовал за пошаговыми инструкциями на сайте PHPStorm здесь.

Одна вещь, которая, как мне кажется, не была настроена правильно, заключалась в том, что в меню PHP в настройках не было интерпретатора.

В моем php.ini мне также было предложено несколько комбинаций настроек. Это были настройки, которые у меня были при работе:

zend_extension = C:\xampp\php\ext\php_xdebug-2.3.2-5.6-vc11.dll //as recommended from the Xdebug site itself 
xdebug.remote_enable=1=
xdebug.profiler_enable=1
xdebug.profiler_output_name = "cachegrind.out.%t-%s"

В моих конфигурациях Run/Debug я использую настройку веб-приложения PHP, которая начинается только в корневом каталоге сайта. (Сначала я думал, что добавленная ?XDEBUG_SESSION_START=<xxxxxxx> была ошибкой, но это не так). Надеюсь, это может помочь, если кто-то сталкивается с аналогичной проблемой.

Ответ 11

Может быть брандмауэр.

День 572... Все еще не спал и не ел... Но я наконец нашел виновника: Защитник Windows!

По сути, у меня был брандмауэр, блокирующий расширение Chrome поддержки JetBrains IDE от отправки данных в PhpStorm через адрес по умолчанию 127.0.0.1:63342.

--- Изменить

День 864... Та же проблема повторилась, на этот раз в Linux... Но я наконец нашел виновника: Ubuntu Firewall!

Серьезно, это случилось со мной снова несколько месяцев спустя, с использованием Linux, и это снова был брандмауэр. Отключение брандмауэра решило эту проблему sudo ufw disable - Если вы заботитесь о брандмауэре и хотите оставить его включенным, нужно углубиться в создание своего рода белого списка для него.

Ответ 12

У меня была проблема, когда один проект работал, а не другой. Я пробовал много разных конфигураций, и я попытался посмотреть журналы xdebug и т.д. Это исправление, похоже, решило мою проблему:

Попробуйте настроить фактические порты xdebug на 9123 вместо 9000.

Новая версия (9) PHPStorm изменила свой порт подключения по умолчанию xdebug на 9123 (конфигурация PHPSTORM, а не фактическая конфигурация xdebug), вероятно, по уважительной причине, так как наличие конфигурации PHPSTORM для xdebug по умолчанию 9000 не работа, но с их установкой на 9123 действительно работала и разрешала проблему.

Ответ 13

Я попробовал любой из предложенных трюков, и, наконец, я вызвал script на 127.0.0.1/script.php вместо localhost/script.php и bingo!

Ответ 14

Исходя из ответа peteclark3:

Я думаю, что одно из решений, если у вас есть несколько версий php-fpm с xdebug, например php5.6-fpm, php7.1-fpm, - убедитесь, что работает только одна. У меня были и 5,6, и 7,1 бега. Потом попытался поменять на 7.1 на 9001 порт. Но если я изменю на порт 9001 в PhpStorm, то 5.6 начнет работать, потому что он слушает на 9000. Поэтому каждый раз, когда вы меняете версию php, тогда, вероятно, вам нужно будет изменить настройки в phpStorm. Поэтому я думаю, что лучше иметь только один из запущенных php-fpm, и все версии php-fpm могут использовать один и тот же порт.

Ответ 15

Щелкните правой кнопкой мыши вкладку "Консоль" и снимите флажок "Фокус при запуске" (как показано на рисунке ниже), чтобы добиться цели. enter image description here