将Xdebug与PhpStorm和WSL一起使用

我使用Windows 10中的WSL(Ubuntu 16.14)作为带有PHP 7.1 FPM和Apache的Web服务器。

我想将PhpStorm 2018中的Xdebug与WSL一起使用,但它工作不正常。

Xdebug已安装在我的Ubuntu服务器上,并且工作正常,我在phpinfo()输出中看到它。

这里是Xdebug的php.ini配置:

[Xdebug]
zend_extension="/usr/lib/php/20170718/xdebug.so"
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
xdebug.remote_connect_back=On
xdebug.remote_host=127.0.0.1
xdebug.remote_port = 9001
xdebug.idekey = PHPSTORM

我也将php Storm中的端口配置为9001。

问题更多的是PhpStorm和WSL之间的连接。我用遥控器试一下。在Run > Edit config弹出窗口中,我使用的是PHP网页,当我使用验证工具时,除了远程主机之外,一切正常。 我将其设置为127.0.0.1,这就是点。

当我听调试工具时,它说:端口9001忙

如何在localhost和localhost之间建立链接?


解决方案

我使用Windows10中的WSL(Ubuntu20.04LTS)作为Web服务器,PHP7.4FPM和Apache使用Xdebug版本3.0.4

以下是在PHPSTORM中配置Xdebugger的步骤,适用于我:

  1. 安装Xdebug

  2. 在CLI解释器中选择WSL

  3. 要获取客户端主机,请运行ubuntu中的ifconfig或bash中的ipconfig

  4. 打开以下文件

sudo vi /etc/php/7.4/cli/conf.d/20-xdebug.ini

在上述文件中添加以下内容

zend_extension=xdebug.so
xdebug.mode=debug
xdebug.client_host=[ip4 address/Client_host]
xdebug.remote_connect_back=On
xdebug.client_port="9003"
xdebug.remote_handler=dbgp
xdebug.start_with_request=yes
xdebug.remote_log=/tmp/xdebug.log

  1. 然后使用Xdebugger Chrome扩展(xdebugger帮助器)

  2. 重新启动Apache服务器。

  3. 将断点添加到文件并刷新页面

相关文章