Предотвращение ошибок Xdebug при отсутствии прослушивания с помощью IDE

У меня возникла проблема с Xdebug в моей локальной настройке PHP. Вот ситуация:

У меня настроен Xdebug, и он работает нормально, когда в моей среде IDE (PhpStorm) установлено значение «Начать прослушивание соединений отладки PHP». Однако моя IDE не всегда меня слушает. Когда он не слушает, я сталкиваюсь с ошибками при выполнении любой команды PHP, например php artisan migrate, и ошибка выглядит примерно так:

Xdebug: [Step Debug] Could not connect to debugging client. Tried: localhost:9003 (through xdebug.client_host/xdebug.client_port) :

Эта проблема не возникает, когда моя IDE прослушивает, но тогда я сталкиваюсь с другой проблемой: каждая команда PHP (например, php artisan) останавливается в отладчике, и мне приходится нажимать «Продолжить» в PhpStorm, чтобы продолжить.

Я хотел бы избежать необходимости запускать и останавливать прослушиватель Xdebug в PhpStorm или иметь дело с этими прерываниями. Есть ли способ настроить игнорирование этой ошибки, когда IDE не прослушивает?

Любая помощь или предложения будут очень признательны!

Я тестировал две разные системы на базе Docker (с последней версией Xdebug), и одна из них выводит это предупреждение в stderr, когда у пользователя нет файла журнала разрешений на запись (/tmp/xdebug.log в моем случае), что часто встречается в настройках Docker. Однако другая система этого не делает. Интересно, от чего это зависит?

Álvaro González 14.06.2024 08:13
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
1
58
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Есть несколько способов запустить XDEBUG, и вы, вероятно, заставили его запуститься, используя директиву xdebug.start_with_request=yes в вашем файле php.ini.

Установите для него значение trigger, как указано в официальной документации , и добавьте соответствующий параметр в строку запроса (т. е. ?XDEBUG_SESSION) при вызове вашей страницы.

Спасибо. Я установил trigger. У меня также установлено расширение Xdebug для Chrome. Когда я включаю его и отправляю запрос, срабатывает мой отладчик. В противном случае нет

JangoCG 18.06.2024 21:24

Другие вопросы по теме