昨天安装了xdebug之后,可以成功调试php程序了,但是今天想再次使用xdebug调试php代码,发现xdebug根本没有反应,于是查看9000端口:
andy@AndyMacBookPro:/usr/local/webdata/andy$ lsof -i:9000 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME Sublime 1252 andy 9u IPv4 0x6fa58d66efc1aa2d 0t0 TCP *:cslistener (LISTEN) andy@AndyMacBookPro:/usr/local/webdata/andy$
没有问题,确实是Sublime的xdebug client插件在监控。
然后经过排查之后,我总结如下:
1.需要通过sublime的project打开昨天保存的andy.sublime-project文件打开工程才可以调试。
2.需要将xdebug的xdebug.remote_autostart开启,也就是在php.ini的设置中添加如下一行 xdebug.remote_autostart = 1 。
然后我们需要重启apache:
apachectl restart
然后我们在sublime中重新调用xdebug就生效了。
************************************************************************************
在把remote_autostart开启之后,突然发现之前一直失灵的MacGDBp竟然可以监控了~~~~~~
MacGDBp要比sublime中的xdebug要好用得多,不需要像sublime那样去写name.sublime-project来配置project,也不需要忍受sublime里面那简陋的调试IDE,可以直接点击按钮步进,所以我打算以后就使用MacGDBp了~~~~~~~~
另外打开MacGDBp之后的端口情况是这样的:
andy@AndyMacBookPro:/usr/bin$ lsof -i:9000 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME MacGDBp 2715 andy 4u IPv4 0x6fa58d66df930245 0t0 TCP *:cslistener (LISTEN) andy@AndyMacBookPro:/usr/bin$