Проблема с запуском XDebug 3.x на Laravel/Homestead Vagrant

Мне нужна помощь в настройке моей Homestead. В настоящее время я запускаю проект разработки с использованием Laravel / Homestead, который работает поверх VirtualBox Vagrant. Я установил PHP 8.0.2 и Xdebug 3.0.2 и ZendOpCache v 8.0.2 Но, к сожалению, я не могу подключить свой VSCODE, установленный в моей Windows (как IDE, так и Homestead установлены в Windows)

IP-адрес моего дома - 192.168.56.17, а хост - 192.168.56.1.

Вот моя конфигурация XDebug, и я поместил xdebug.ini в /etc/php/8.0/cli/conf.d/20-xdebug.ini

      zend_extension = xdebug.so
xdebug.mode = debug
xdebug.idekey = VSCODE
xdebug.max_nesting_level = 512
xdebug.start_with_request = yes
xdebug.client_port = 9003
xdebug.client_host = 192.168.56.1

А вот и мой VSCODE launch.json

      {
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Listen for XDebug",
            "type": "php",
            "request": "launch",
            "port": 9003,
            "stopOnEntry": false,
            "log": true,
            "pathMappings": {"/home/vagrant/code/project" : "${workspaceRoot}"}
        },
        {
            "name": "Launch currently open script",
            "type": "php",
            "request": "launch",
            "program": "${file}",
            "cwd": "${fileDirname}",
            "port": 9003
        }
    ]
}

Пожалуйста, нужна помощь в этом

2 ответа

твоя проблема

      xdebug.start_with_request = yes

просто удалите его, и ваш Xdebug заработает

Кстати, после его удаления перезапустите FPM вот так

      $ sudo service php7.4-fpm restart

и перезапустите браузер и IDE

Я бы попробовал добавить xdebug.discover_client_host = noв файл xdebug.ini. Невозможно протестировать его в Windows, но это работает для меня в Linux.

Возможно, было бы также полезно добавить xdebug.log = "/tmp/xdebug.log" чтобы вы могли лучше видеть, что там происходит.

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