Соединение не установлено Xdebug 3 с PhpStorm

Добрый день.

При попытке отладки скрипта на PHP 8 PhpStorm сообщает об отсутствии связи с xdebug версии 3. Работает со всеми версиями ниже 3. Я пытался изменить параметры xdebug.remote_ {host, port} на xdebug.client_ {host, port}, но тоже не помогло.


person RusTaylor    schedule 13.11.2020    source источник
comment
Какая именно у вас версия IDE?   -  person LazyOne    schedule 13.11.2020
comment
PhpStorm 2020.2.3   -  person RusTaylor    schedule 13.11.2020
comment
Xdebug 3 будет поддерживаться только версией PhpStorm 2020.3, которая в настоящее время находится на стадии EAP (программа раннего доступа) и будет выпущена примерно через месяц. См. stackoverflow.com/a/64777506/783119   -  person LazyOne    schedule 13.11.2020
comment
Большое спасибо!)   -  person RusTaylor    schedule 13.11.2020
comment
Я установил PhpStorm 2020.3 и увидел, что PhpStorm 2020.2 не добавлял некоторые флаги, из-за которых соединение не работало.   -  person RusTaylor    schedule 13.11.2020


Ответы (1)


Xdebug 3 будет полностью поддерживаться только в версии PhpStorm 2020.3, которая в настоящее время находится на стадии EAP (программа раннего доступа) и будет выпущена примерно через месяц.

Он уже поддерживается в последней сборке EAP # 6: дополнительную информацию можно найти в этом сообщении в блоге: https://blog.jetbrains.com/phpstorm/2020/11/phpstorm-2020-3-eap-6/


Я загрузил Xdebug 3.0.0beta1 для своего PHP 7.4 в Windows 10, настроил его с нуля (используя правильные значения конфигурации Xdebug 3: https://3.xdebug.org/docs/upgrade_guide и https://3.xdebug.org/docs/all_settings) ... и он по-прежнему отлично работает в PhpStorm 2020.2.3.

Да, IDE отправляет параметры старого стиля при запуске отладки для сценария CLI (например, xdebug.remote_{host, port} и т. Д.), Но отладка по-прежнему работает нормально.

Это мой контент php.ini для настроек Xdebug 3 (так просто):

[xdebug]
xdebug.client_host = 127.0.0.1
xdebug.client_port = 9001
xdebug.mode = debug

(У меня есть немного дополнительных настроек, но это настройка имен выходных файлов, местоположений журналов, дополнительных вещей для быстрого включения некоторых параметров в некоторых сценариях / при необходимости и т. д. - здесь они не нужны, и он отлично работает без их)
 введите описание изображения здесь

Отладка CLI, инициированная из IDE (тип конфигурации PHP Script):
 введите описание изображения здесь

Вот что выполняет IDE: E:\Projects\php\php74\php.exe -dxdebug.remote_enable=1 -dxdebug.remote_mode=req -dxdebug.remote_port=9001 -dxdebug.remote_host=127.0.0.1 E:\Projects\web\_idetest\test.php. Как видите, эти параметры старого стиля вообще не влияют на Xdebug 3.

P.S. Если я установлю xdebug.start_with_request = yes в php.ini, тогда отладка будет работать даже для Run (или при выполнении этого PHP-скрипта вне IDE) - пока значок ручки телефона зеленый (IDE прослушивает входящие запросы отладки).

person LazyOne    schedule 13.11.2020
comment
Точно такую ​​же смену php.ini я забыл сделать, думал будет подключена смена conf.d / 20-xdebug.ini - person RusTaylor; 13.11.2020