Skip to content

解决 XDebug 的进度条会停在 57%,显示 "waiting for XDebug session" 的问题

🏷️ C#

之前只修改了 php 目录下的 php.ini 文件,没修改 apache 目录下的 php.ini 文件。

修改 phpinfo() 显示的 Loaded Configuration File 属性所对应的 php.ini 文件,把 3 个 off 改成 on

重启 apache 服务器就可以正常 Debug 啦。

ini
zend_extension = "D:/wamp/bin/php/php5.5.12/zend_ext/php_xdebug-2.2.5-5.5-vc11-x86_64.dll"
;
[xdebug]
xdebug.remote_enable = on
xdebug.profiler_enable = on
xdebug.profiler_enable_trigger = on
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = "D:/wamp/tmp"
xdebug.show_local_vars=0

参考文章

今天配置 Eclipse 的 XDebug 的时候,遇到怎么也在 断点停不了的问题

我总结了一下,主要是三个原因:

  1. 端口设置不对,在 php.ini 文件里设置的跟 eclipse 的不一样,或者端口被占用。

    可以 netstat 一下,找个没用的端口 php 设置远程调试接口

    php
    xdebug.remote_port = 19000
  2. XDebug 的版本不对,可以 phpinfo(); 一下,看现在的版本是个版本,支不支持 threadsafe,disable 的话,就不能装 TS 的版本。

  3. 如果有不是端口又不是版本问题,那就查一下 php.ini 里其他设置对不对,XDebug 的路径对不对

    最重要的是看修改的 php.ini 文件对不对,apache 下有个 php.ini, PHP 文件夹下有个 php.ini

    具体要以 phpinfo(); 显示的 Loaded Configuration File 的 php.ini 文件路径为准