我正在尝试将 Xdebug 添加到我的 Magento 项目中以便更好地调试。我实际上正在开发 WSL2,我在其中安装了 Laradock。
如果我尝试显示
xdebug_info()
我可以看到我已经正确安装了 Xdebug,但在我的 PhpStorm 中我无法在断点等处验证/停止。
这是我的 Xdebug 配置:
zend_extension=xdebug.so
xdebug.mode=develop,coverage,debug,gcstats,profile,trace
xdebug.client_host=host.docker.internal
;# For PhpStorm set below to 9000 (or update IDE's settings).
xdebug.client_port=9003
xdebug.start_with_request=trigger
;xdebug.log=/var/log/xdebug.log
xdebug.idekey=PHPSTORM
xdebug.discover_client_host=1
xdebug.cli_color=1
以及我在 PhpStorm 中的所有设置:
我尝试安装不同的Xdebug版本,也在xdebug.ini中做了很多更改。我还尝试在 WSL 中运行 PhpStorm(我就是这样工作的),但我也尝试从 Windows 运行它,但没有成功。
如果您有 PhpStorm inside WSL,则需要使用
xdebug.client_host=localhost
。
如果是在 Windows 中,您应该设置
xdebug.client_host=xdebug://gateway
。
如果你在WSL中使用Laradock(docker),那么你需要使用
xdebug.client_host=xdebug://nameserver
。 host.docker.internal
用于网络网关,它不会链接回您的 WSL 主机。
https://docs.google.com/document/d/1W-NzNtExf5C4eOu3rRQm1WlWnbW44u3ANDDA49d3FD4/edit有一个大列表,适用于多种其他场景。