【发布时间】:2014-11-23 14:51:33
【问题描述】:
这让我很烦,主要是因为它工作正常,然后突然断点停止中断,当我检查调试器时它只是在等待传入连接。
我的流浪机器在private_ip: 192.168.13.37上运行
我的xdebug.ini 配置如下:
zend_extension=/usr/lib/php5/20090626+lfs/xdebug.so
xdebug.remote_enable = on
xdebug.remote_connect_back = on
xdebug.remote_port = 9020
这些是我的 PHPstorm 调试设置:
我在 PHPstorm 中有一个 vagrant 服务器设置,它有一个主机 dev.website.com,它指向 windows 主机文件中的正确 IP,端口是 80,并且文件夹映射正确。
我还设置了 PHP 应用程序以使用已解释的服务器,该服务器的起始 URL 为 /。
我点击了开始监听 PHP 调试连接,然后点击了绿色的小错误图标开始调试。这将使用以下查询字符串 ?XDEBUG_SESSION_START=18359 启动项目,但是当我在调试窗口中查看 PHPstorm 时,它会显示 waiting for incoming connection with ide key 18359
任何想法如何让它再次工作?
编辑 新增 xdebug 日志:pastebin
【问题讨论】:
-
太棒了。 1) xdebug 日志对这种情况有什么说明(请提供片段)?它尝试连接到哪个 IP:端口? 2) 如果它使用正确的详细信息 -- 请检查是否是 PS 监听 xdebug 端口(在您的 PC 上,激活“电话手柄”图标后 -- 运行
netstat或任何其他工具这可以给你这样的信息——确保它是 PhpStorm 而不是其他软件)3)你确定它不是你的防火墙/安全软件吗?请确认您可以在该端口上从远程计算机连接到本地(激活“电话手柄”图标并从远程使用telnet) -
我现在刚刚在事件日志中注意到以下内容:
09:38:58 Error running Unnamed: Handler with the same session id is already registered -
据我所知,这是来自
idea.log。如果是这样 - 尝试重新启动 IDE(和 php 进程) - 听起来调试会话以某种方式挂起(没有其他想法可能是什么)。 -
我已经多次重启了ide和hostpc,销毁并重建了vagrant VM。如果它们对您自己有意义,我已经添加了 xdebug 日志?
-
您已截断日志。在任何情况下:日志清楚地表明在设置断点时 xdebug 和另一端(PhpStorm?)之间发生了通信。也许它们被设置在错误的文件中?我建议启用“强制中断...”设置来检查。我还将删除“设置 | PHP | 服务器”中的所有条目,并按照零配置方法从头开始配置它们。根据您的信息,没有其他真正的想法。
标签: php networking vagrant phpstorm xdebug