我阅读了很多有关此常见Xdebug错误的解决方案,但似乎无法解决我的问题:
netbeans shows “Waiting For Connection (netbeans-xdebug)”
Netbeans not connecting with xdebug on Wamp : “showing waiting for connection”
在phpinfo()中Xdebug似乎配置正确:
下面是我的php.ini:
zend_extension = "c:/wamp/bin/php/php5.5.12/zend_ext/php_xdebug-2.2.5
-5.5-vc11-x86_64.dll"
;
[xdebug]
xdebug.remote_enable=1
xdebug.remote_mode = req
xdebug.remote_handler=dbgp
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9001
xdebug.profiler_enable = off
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = "c:/wamp/tmp"
xdebug.show_local_vars=0
xdebug.idekey=netbeans-xdebug
Netbeans:
尝试禁用防火墙似乎没有帮助.
用尽所有想法来了解Xdebug发生了什么.
解决方法:
一旦开始调试,请在命令提示符下检查netbeans正在侦听9001端口:
C:\Users\***> netstat -ano | findstr 9001
TCP 0.0.0.0:9001 0.0.0.0:0 LISTENING 20928
TCP [::]:9001 [::]:0 LISTENING 20928
最后的PID(在我的情况下为20928)应该属于netbeans,可以从Windows任务管理器进行验证(添加pid后:view> select column> pid)
如果PID不正确或端口未打开,请重新启动netbeans或重新启动系统,它将正常工作
如果netbeans具有9001端口,则意味着您的浏览器未在监听或未连接到netbeans.有时浏览器无法建立连接或无法正常启动.
为了手动尝试建立连接,您需要按一下netbeans中的调试按钮,并在接下来的一分钟左右(超时之前)中打开您喜欢的浏览器中的以下网址(如果一个浏览器失败,请尝试使用其他浏览器)
localhost/<yoursite>/page/?XDEBUG_SESSION_START=netbeans-xdebug
您也可以尝试在netbeans项目属性中切换到嵌入式浏览器.
您也可以尝试将端口从9001更改为其他端口,例如两侧的9002,如果其他程序试图连接到端口9001或尝试在该端口上侦听,这将很有帮助.