Как отладить Symfony 4 с помощью Xdebug + PhpStorm на WSL?

У меня есть установка PHP7.1 + nginx в Windows Linux Subsystem (WSL).
Я упоминаю WSL, так что в PhpStorm Xdebug настроен как удаленный отладчик, который подключается через порт 9000. Тем не менее WSL и PhpStorm используют одни и те же физические файлы.

Для проекта Symfony 4 я использую встроенный веб-сервер: bin/console server:run

Мне удалось настроить PhpStorm для приема подключений Xdebug. Когда соединение установлено, он запрашивает или сопоставления файлов. Я бы ожидал index.php быть запрошенным, но запрошенное отображение файла:
vendor/symfony/web-server-bundle/Resources/router.php,

Как сказано в документации внутри этого файла, этот файл реализует правила перезаписи для встроенного веб-сервера PHP. Хорошо.

Если я принимаю сопоставление с этим файлом — отладка начинается с router.php идет на несколько строк дальше, и больше ничего не происходит. Это не прыгает на мой public/index.php или не останавливается ни на одной точке останова.

Вопрос в том — как настроить отладку Symfony 4 с помощью Xdebug?
Может быть, что-то не так с отображениями или как?

3

Решение

Через https://www.jetbrains.com/help/phpstorm/override-server-path-mappings-dialog.html, Вы должны расширить свои сопоставления файлов. Наверное, router.php была использована, поскольку это была первая найденная точка входа, но через этот первый файл вы можете увидеть структуру файла, которую использует WSL.

Итак: открытие диалогового окна отображения должно дать вам router.php где-то вниз по структуре с отображенным путем, который также находится где-то в более глубоком каталоге. Если вы добавили сопоставление для своей корневой папки с тем же сопоставлением, что и для router.php, удаляя vendor/symfony/web-server-bundle/Resources/router.php, ты должен быть сделан

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]