【问题标题】:Waiting for the XDebug Session 57% in Eclipse PDT在 Eclipse PDT 中等待 XDebug Session 57%
【发布时间】:2012-03-21 00:22:28
【问题描述】:

当我写这个消息时浏览提示,这似乎是一个棘手的问题,有各种各样的补丁,但没有明确的答案......无论如何,我试试我的机会,就在这里。 我在 Ubuntu 10.04 上使用 Eclipse Helios PDT,XDebug 和 php.ini 中的相应部分如下:

xdebug support  enabled
Version 2.0.5

Supported protocols Revision
DBGp - Common DeBuGger Protocol $Revision: 1.125.2.6 $
GDB - GNU Debugger protocol $Revision: 1.87 $
PHP3 - PHP 3 Debugger protocol  $Revision: 1.22 $

Directive   Local Value Master Value
xdebug.auto_trace   Off Off
xdebug.collect_includes On  On
xdebug.collect_params   0   0
xdebug.collect_return   Off Off
xdebug.collect_vars Off Off
xdebug.default_enable   On  On
xdebug.dump.COOKIE  no value    no value
xdebug.dump.ENV no value    no value
xdebug.dump.FILES   no value    no value
xdebug.dump.GET no value    no value
xdebug.dump.POST    no value    no value
xdebug.dump.REQUEST no value    no value
xdebug.dump.SERVER  no value    no value
xdebug.dump.SESSION no value    no value
xdebug.dump_globals On  On
xdebug.dump_once    On  On
xdebug.dump_undefined   Off Off
xdebug.extended_info    On  On
xdebug.idekey   no value    no value
xdebug.manual_url   http://www.php.net  http://www.php.net
xdebug.max_nesting_level    100 100
xdebug.profiler_aggregate   Off Off
xdebug.profiler_append  Off Off
xdebug.profiler_enable  Off Off
xdebug.profiler_enable_trigger  Off Off
xdebug.profiler_output_dir  /tmp    /tmp
xdebug.profiler_output_name cachegrind.out.%p   cachegrind.out.%p
xdebug.remote_autostart Off Off
xdebug.remote_enable    Off Off
xdebug.remote_handler   dbgp    dbgp
xdebug.remote_host  localhost   localhost
xdebug.remote_log   no value    no value
xdebug.remote_mode  req req
xdebug.remote_port  9000    9000
xdebug.show_exception_trace Off Off
xdebug.show_local_vars  Off Off
xdebug.show_mem_delta   Off Off
xdebug.trace_format 0   0
xdebug.trace_options    0   0
xdebug.trace_output_dir /tmp    /tmp
xdebug.trace_output_name    trace.%c    trace.%c
xdebug.var_display_max_children 128 128
xdebug.var_display_max_data 512 512
xdebug.var_display_max_depth    3   3

到目前为止,我一直在使用 Eclipse 进行 PHP 开发,没有任何问题,但从未使用过调试。当我以调试模式启动项目时,我在后台的浏览器中正确启动了应用程序,我的 by Debug/PHPDebug 透视图是空的,而在 Eclipse 控制台中,我在这篇文章的标题中看到了消息。 感谢您的帮助

【问题讨论】:

  • 知道了!尽管我在 php.ini 中执行了 xdebug.remote_enable=On,但对于 XDebug 设置,这似乎被 xdebug.ini 覆盖了。因此,我在 xdebug.ini 中设置了上述内容,最后,它可以工作了!其他人的 HTH。

标签: xdebug eclipse-pdt


【解决方案1】:

如果 Eclipse 在 57% 处停止,则无法启动远程调试过程。这可能是这种情况,当...

  • 你没有在 /PHP/php.ini 文件中启用远程调试:

    xdebug.remote_enable=on
    
  • 远程主机 IP 地址(启动调试会话的客户端(您的 IDE))不正确:

    xdebug.remote_host=IP_ADDRESS
    
  • 您可以使用以下方法启用“多主机”远程调试,而不是定义远程主机 IP 地址:

    xdebug.remote_connect_back=1
    

还可以查看所有设置的 xdebug 文档:http://xdebug.org/docs/all_settings

【讨论】:

  • 是xdebug.ini是php.ini还是其他文件
  • 就我而言,我必须将这些行添加到/etc/php5/apache2/conf.d/20-xdebug.ini
  • 通过编辑 php.ini 修复(php.ini 中只有前两个条目可用)
  • 我有几个项目,每个项目在 Nginx 中都有一个虚拟主机,我的 PHP Eclipse Neon 4.6.1 将项目域名作为基本 URL,每个项目的域名都不同。因此,我无法使用xdebug.remote_host=IP_ADDRESS 选项指定的单个远程主机。因此使用xdebug.remote_connect_back = On 选项会有所帮助。
【解决方案2】:

我一直在努力设置 xdebug 和 eclipse。

我在 32 位系统上使用 ubuntu 12.04。 要设置最新版本的 eclipse (juno) 和灯技术堆栈,我强烈推荐 this 教程。也有一个非常好的设置虚拟主机指南 - 包括脚本。

不要遵循他们关于安装 xdebug 的部分,而是使用 xdebug 的 custom installation instructions @hakre 在相关的 post 中引用。

一旦 xdebug 出现在 phpinfo 输出中,您可以按照前面提到的教程中的说明为 xdebug 设置 eclipse。

如果还是不行,请确认

  • 已阅读上述答案
  • xdebug 的端口是空闲的,并且匹配 eclipse 的调试配置 -> 服务器选项卡 -> 服务器部分 -> 配置按钮(默认为 9030!)

试试

  • 从 php.ini 文件中的 zend_extension 属性中删除引号
  • 将所有 xdebug 设置放入 php.ini 文件中 - 我没有使用 xdebug.ini 文件。
  • 在 Eclipse 调试配置 -> 服务器选项卡 -> url 部分 -> 最后一个输入字段中重复文件名,如下所示。

【讨论】:

    【解决方案3】:

    我发现问题与特定浏览器 Firefox 有关,并且可能是由于将 java 更新到 7_21。

    在这里查看我的解决方案 Eclipse, XAMPP, xDebug - waiting for XDebug session - stays in 57%

    【讨论】:

    • 我的 FF 20.0.1 也未能发送任何调试请求。一旦我将 Eclipse 的外部网络浏览器切换到 Chrome,事情就开始发生了。谢谢
    【解决方案4】:

    我遇到了同样的问题,并搜索了很多年试图解决它!我使用远程主机、端口监听和 Eclipse 设置验证了所有内容。我终于发现问题是我需要在我的 php.ini 中为 XDebug 指定 IDE,比如:

    xdebug.idekey=ECLIPSE_DBGP
    

    【讨论】:

    • 其他人说 Eclipse 可以使用默认值(未指定),但不适用于我。
    【解决方案5】:

    尝试在以下位置编辑 php.ini:wamp\bin\apache\Apache2.4.4\bin

    xdebug.remote_enable = on
    xdebug.remote_host="localhost"
    xdebug.remote_connect_back=1
    

    我遇到了同样的问题 - 使用 WAMP 时编辑 php 文件夹 php.ini 似乎还不够。

    【讨论】:

    • WAMP 不使用位于 php 中的 php.ini 文件,这是默认安装,然后它会在 Apache 目录中创建另一个副本,如果有疑问,只需单击 WAMP 图标然后转到 PHP-> php.ini 将提取正确的文件。
    【解决方案6】:

    在我做了一个自定义 php 构建后,我遇到了完全相同的问题,它意外地替换了原来的 apache php 模块:

    /usr/lib64/httpd/modules/libphp5.so
    /usr/lib64/httpd/modules/libphp5-zts.so
    

    对我来说,解决方法是:

    sudo rpm -e --nodeps php
    sudo dnf install php
    sudo service httpd restart
    

    【讨论】:

      【解决方案7】:

      我发现对我来说这是c:>\php\php.ini中缺少的xdebug.idekey=ECLIPSE_DBGP

      这是我当前的php.ini xdebug 配置,注意我没有设置远程地址:

      [xdebug]
      zend_extension=C:\php\ext\php_xdebug-2.9.6-7.3-vc15-nts-x86_64.dll
      xdebug.remote_enable=1
      xdebug.remote_connect_back=1
      xdebug.remote_handler=dbgp
      ;xdebug.remote_host=127.0.0.10
      xdebug.remote_autostart=1
      xdebug.remote_port=9000
      xdebug.show_local_vars=1
      xdebug.expose_remotely=always
      xdebug.default_enable=1
      xdebug.idekey=ECLIPSE_DBGP
      

      我的环境: W10 x64,php7.3.18 非线程安全,IIS 作为网络服务器

      【讨论】:

        猜你喜欢
        • 2013-04-13
        • 2014-01-10
        • 1970-01-01
        • 1970-01-01
        • 2023-04-04
        • 2012-01-23
        • 2011-08-23
        • 2010-12-05
        • 2012-03-12
        相关资源
        最近更新 更多