PHPStorm 无法与 xdebug 建立外部连接

Posted

技术标签:

【中文标题】PHPStorm 无法与 xdebug 建立外部连接【英文标题】:PHPStorm unable to make external connection with xdebug 【发布时间】:2013-01-13 20:25:15 【问题描述】:

我的操作系统是 Mac Mountain lion。

我的 phpStorm 版本是 5.0.4。

这是我的 php xdebug 信息:

xdebug.remote_autostart => 关闭 => 关闭 xdebug.remote_connect_back => 关闭 => 关闭 xdebug.remote_cookie_expire_time => 3600 => 3600 xdebug.remote_enable => 开启 => 开启 xdebug.remote_handler => dbgp => dbgp xdebug.remote_host => 127.0.0.1 => 127.0.0.1 xdebug.remote_log => data/logs/xdebug.log => data/logs/xdebug.log xdebug.remote_mode => req => req xdebug.remote_port => 9000 => 9000 xdebug.idekey => 无价值 => 无价值

我可以在 PhpStorm 中调试 PhpScript 运行类型,它工作正常。所以我认为 xdebug 配置很好。

但在我尝试按照“零配置调试”(Webapplication Run Type)之后,Phpstorm无法连接传入连接。

这是我的步骤:

    单击 Start Listion Php Connection。(将呼叫切换为绿色) 点击Run->Break at first line in PhpScript,并在第一条语句处设置断点。 选择 My WebApplication Config 并单击 Debug 按钮。然后它会启动 chrome 并链接到我的 phpscript。(使用 ?XDEBUG_SESSION_START=19869) 在 PhpStorm 中,调试器显示 Waiting for incoming connection with ide key '19869'。 在终端中,打印lsof -i4TCP:9000

    命令 PID 用户 FD 类型 设备大小/关闭节点名称 webide 288 wangfeng 69u IPv6 0xa83881cdce30c579 0t0 TCP *:cslistener (LISTEN)

    打开 Chrome 的开发者工具,选择 Cookies。

    XDEBUG_SESSION 19869 localhost / 2013 年 1 月 30 日星期三 05:27:17 GMT 19

    刷新 Chrome。无法连接到 PhpStorm 调试连接。

补充:

我的防火墙已关闭。 我的服务器是 nginx。我的 phpwebapp 和服务器都在我的本地机器上。

会不会导致ipv6?

希望有所帮助!我已经尝试了所有方法,扩展书签,根本不起作用。

【问题讨论】:

启用xdebug.remote_log 可以为您提供更多详细信息。 是的,我已经设置了。但是没有记录。 data/logs/xdebug.log -- 我不是 Mac 用户,所以只是一个建议:1) 使用 full 路径(从根目录) 2) 确保它是可写的.但最有可能的问题是 xdebug 不适用于 IPv6 -- 您将需要 IPv4 1)我的路径已设置为完整。2)我已完全许可。3)我该如何配置?请告诉我,非常感谢! 正如我已经提到的“我不是 Mac 用户”,因此我不立即知道解决方案。要我帮你google一下吗? PS 我绝对可以确认 xdebug 需要 TCP v4 而不是 v6 —— xdebug 作者多次说过,我设法找到的最近一次提到少于 1一年前。 【参考方案1】:

9000 端口可能正被其他进程使用。

    在 php.ini 中设置 xdebug.remote_port=9001 或您选择的另一个未使用的端口。 在 PHPStorm 中转到 Settings->PHP->Debug 并在 Xdebug 部分下将调试端口设置为 9001。 重新启动您的网络服务器。 开始调试。

【讨论】:

@jerson 不用担心。当我遇到同样的问题时很痛苦。【参考方案2】:

检查php.ini文件和IDE中的所有配置后,不要忘记添加浏览器特定的扩展,它基本上通过IDE Key通过IDE进行通信。

请参考这个link

【讨论】:

以上是关于PHPStorm 无法与 xdebug 建立外部连接的主要内容,如果未能解决你的问题,请参考以下文章

Minikube 与 PhpStorm 和 Xdebug

如何在 Windows 10 上将 Xdebug 3 连接到 PhpStorm?

如何将PhpStorm与Xdebug连接

Symfony Xdebug PhpStorm 设置后无法工作

PhpStorm XDebug 通过 ssh 隧道

phpstorm xdebug 无法断点调试问题