【问题标题】:Xdebug PhpStorm: Waiting for incoming connection with ide keyXdebug PhpStorm:等待带有 ide 键的传入连接
【发布时间】:2013-07-18 05:24:17
【问题描述】:

我在使用PhpStorm和xdebug调试php时搜索了很多这个问题,我发现3或4个链接讨论这个问题,但没有一个有用。我的Xdebug版本是2.2.3,PhpStorm'版本是6.03。除了这一行,我可以逐步调试每一行

$this->link = mysql_connect($this->dbserver, $this->dbuser, $this->dbpass);

PhpStorm 显示此错误:等待带有 ide 键“14841”的传入连接。 这是我的 xdebug 配置:

 zend_extension="/usr/lib/xdebug.so"
 xdebug.remote_autostart=1
 xdebug.show_local_vars=1
 xdebug.dump.GET=*
 xdebug.dump.POST=*
 xdebug.dump.SERVER=*
 xdebug.auto_trace=On
; default trace output directory /tmp
 xdebug.collect_vars = On
 xdebug.trace_output_dir=/tmp
 xdebug.collect_params=4
 xdebug.collect_return=On

 xdebug.profiler_enable=Off
; default trace output directory /tmp
 ;xdebug.profiler_output_dir=/tmp
 ;xdebug.profiler_enable_trigger=On
;test.php?XDEBUG_PROFILE
 xdebug.remote_enable=On
 xdebug.remote_host="localhost"
 xdebug.remote_port=9001
 xdebug.remote_handler="dbgp"
 xdebug.remote_log = "/tmp"
 xdebug.remote_connect_back=1
 xdebug.idekey=PHPStorm  

我添加了这些行“ xdebug.remote_connect_back=1 xdebug.idekey=PHPStorm ",也抗了ide,还是一样 我保证三个参数都是正确的。

【问题讨论】:

    标签: xdebug phpstorm


    【解决方案1】:

    你写道:

    PhpStorm 显示此错误:Waiting for incoming connection with ide key "14841"。

    但你使用:

     xdebug.idekey=PHPStorm
    

    那些 ide 键需要匹配。 PHP Storm 有点搞笑。

    但是你也说过:

    除了这一行,我可以逐步调试每一行

    $this->link = mysql_connect($this->dbserver, $this->dbuser, $this->dbpass);
    

    它们有何不同?是否有不同的行为,或者只是没有停止?

    【讨论】:

    • 谢谢,后来找到原因,发现忘记安装mysql.so扩展,所以这个功能失败了。
    • 好的,但是如何让 phpstorm 使用 idekey "PHPStorm" 而不是随机数?
    • 这与上面无关。请在下面查看我的帖子
    • @Andrew 我已经在这里回答了你的问题stackoverflow.com/questions/26096056/…
    • 你能帮我们看看吗?你的答案很神秘
    【解决方案2】:

    对我来说,调试器从未连接过,我看到了 Waiting for incoming connection with ide key 消息,因为我将服务器配置设置为端口 9000。这应该设置为端口 80 (或网络服务器正在监听的任何其他端口!这让我感到困惑,因为它就在调试器下拉列表旁边,我认为它是设置 Xdebug 端口。

    Debug 端口在 Settings->Languagues & Frameworks->PHP->Debug 中配置。将此设置为 9000 或您配置 php.ini 的任何值。

    请注意,我使用的是 IntelliJ IDEA,但它都是 jetbrains 平台。

    【讨论】:

      【解决方案3】:

      我遇到了类似的问题。就我而言,这是由于对 PHPStorm/IntelliJ PHP 调试模式的误解造成的。有两种模式:

      1. “本地”PHP 调试
      2. “远程”PHP 调试

      当您使用“本地”调试时,会自动生成 IDE 密钥

      这意味着,在http://www.jetbrains.com/phpstorm/marklets/ 创建的原始小书签在本地模式下将不起作用:小书签包含一个硬编码的 IDE 密钥,但 PHPStorm 会生成一个随机的!

      解决方法是在“运行/调试配置”中开启“远程”PHP调试模式(目前称为“PHP远程调试”),并在创建启动配置的右侧窗格中设置IDE键。

      全局设置中的“DBGp代理”可能不是你想要的;创建一个“远程”调试配置并在那里设置 IDE 密钥。

      【讨论】:

        【解决方案4】:

        我在本地安装中遇到了类似的问题。 我通过取消选择设置来修复它:使用路径映射

        在设置 > 语言和框架 > PHP > 服务器下找到

        【讨论】:

        • 这是我的问题。谢谢!
        • 为什么你认为这解决了它?你没有使用符号链接吗?
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-11-23
        相关资源
        最近更新 更多