Первым этапом нужно настроить xDebug в Lando. Сделать это очень просто, нужно добавить ключ xdebug со значением true в секцию config:
name: mysite
recipe: drupal8
config:
webroot: .
php: 7.4
xdebug: true
Дополнительно можно подключить свой php.ini файл, в котором можно указать настройки для xDebug, например установить другой порт запуска. Этот шаг опциональный, воспользуйтесь только если вам действительно нужен доступ к php.ini
name: mysite
recipe: drupal8
config:
webroot: .
php: 7.4
xdebug: true
config:
php: php.ini
По умолчанию xDebug запускается на порту 9000.
Следующим шагом нужно настроить PHPStorm. Для этого откройте настройки в разделе File - Settings, выберите раздел PHP и в нем раздел Debug. Далее нужно настроить секцию для дебага как на скрине (включите все чекбоксы).
Далее нужно добавить веб сервер для отслеживания запросов и сконфигурировать директории файлов. Для этого в настройках File - Settings выберите раздел PHP и раздел Servers. Здесь нужно добавить новый сервер.
В качестве хоста укажите хост который сгенерировал Lando. Также нужно включить опцию "Use path mapping" и указать с левой стороны локальный каталог, а с правой стороны путь каталога в контейнере (обычно /app).
Последним этапом нужно скачать и установить xdebug tool для браузера. Можно использовать расширение xdebug helper extension.
Конфигурация закончена. Теперь можно запускать отладку. Для этого в PHPStorm запустите трубку прослушивания команд отладки:
Далее в браузере необходимо включить расширение:
После этого в cookies будет добавлен ключ XDEBUG_SESSION.
Теперь можно пользоваться отладкой xDebug.