Xdebug (опционально)
На этой странице
Общие данные
Xdebug не входит в базовую установку проекта. Для обычной работы с Битрикс он не нужен — отладчик замедляет работу PHP и требует настройки IDE.
Эта страница пригодится, если вы уже разобрались с базовой установкой и хотите пошагово отлаживать PHP-код в PhpStorm или другой IDE.
Для сред, отличных от Windows, шаги по настройке должны быть проще, но будут отличаться от указанных здесь. Используйте поиск в интернете. Начните со следующих ссылок:
Установка Xdebug в Docker
Чтобы добавить Xdebug в PHP-контейнер, откройте Dockerfile сервиса php.
Найдите вызов install-php-extensions и добавьте после него установку Xdebug через pecl:
RUN install-php-extensions \
curl \
mysqli \
zip \
gd && \
pecl install xdebug && \
docker-php-ext-enable xdebug
Файл конфигурации config/php/99-xdebug.ini уже есть в проекте и будет подключён автоматически.
После изменений пересоберите контейнеры:
docker compose up -d --build
Настройка для Windows
После того как Xdebug установлен в Docker-образе, выполните настройку конфига и IDE.
- В корне проекта выполните команду
ip route show | grep -i default | awk '{ print $3 }' Откройте файл
config/php/99-xdebug.ini. Введите полученный выше ip-адрес в значение параметраxdebug.client_host
Например:xdebug.client_host=154.25.98.2- Для параметра
xdebug.modeустановите значениеdebugИтоговый конфиг выглядит так
Установите расширение браузера
Откройте статью. Перейдите к разделу “Настраиваем PhpStorm” и выполните указанные в нем шаги. Обратите внимание на некоторые отличия:
- на одном из шагов потребуется установить маппинг.
Введите значения как на скрине:
- не используйте php-storm для добавления переменной
PHP_IDE_CONFIG. Вместо этого добавьте переменнуюPHP_IDE_CONFIGв файлsite/.envФайл с добавленной переменной
- в статье контейнер запускается из IDE (зеленые стрелочки). Не повторяйте такой запуск, вместо этого используйте команду перезапуска контейнеров
docker compose up -d
- на одном из шагов потребуется установить маппинг.
- В соответствии со статьей убедитесь, что отладка работает. Далее дополнительно можно продолжить настройку для отказа от переменной
PHP_IDE_CONFIG(см. радел Бонусные материалы в той же статье)