我希望一个使用不同电脑的团队能够在远程服务器上调试PHP,但我很难让NetBeans 7.0.1中的Xdebug正常工作。我已经尝试了许多在线提示,但都无济于事。
值得一提的是,我已经成功地在运行WampServer的Windows 7机器上本地安装了Xdebug。因此,只要我将“项目属性->运行配置->作为本地网站运行”的属性设置为“本地网站”,我就可以在NetBeans中使用断点调试PHP。然而,如上所述,我的目标是在“远程网站”上使用NetBeans进行调试。
我的服务器是一台Ubuntu 11.04机器。我已经使用http://www.xdebug.org/find-binary.php的输出将正确的二进制文件放到了该机器上。我已经修改了我能找到的所有
如果我检查
所以Xdebug似乎已经正确安装。然而,当我尝试在NetBeans中进行调试时,我得到了无尽的状态栏消息“Waiting For Connection (netbeans-xdebug)”。当我点击停止按钮时,我会收到“X秒内未检测到来自xdebug的连接。原因可能是xdebug未安装或未正确配置”的信息。
也许我在混淆本地设置和服务器设置?一篇文章说
任何能够澄清这个问题的帮助都将不胜感激!
值得一提的是,我已经成功地在运行WampServer的Windows 7机器上本地安装了Xdebug。因此,只要我将“项目属性->运行配置->作为本地网站运行”的属性设置为“本地网站”,我就可以在NetBeans中使用断点调试PHP。然而,如上所述,我的目标是在“远程网站”上使用NetBeans进行调试。
我的服务器是一台Ubuntu 11.04机器。我已经使用http://www.xdebug.org/find-binary.php的输出将正确的二进制文件放到了该机器上。我已经修改了我能找到的所有
php.ini
文件(位于php5/apache2
和php5/cli
目录中),包括以下几行:zend_extension="/usr/lib/php5/20090626+lfs/xdebug.so"
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9000
如果我检查
phpinfo.php
网页,它会显示:This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
with Xdebug v2.1.2, Copyright (c) 2002-2011, by Derick Rethans
所以Xdebug似乎已经正确安装。然而,当我尝试在NetBeans中进行调试时,我得到了无尽的状态栏消息“Waiting For Connection (netbeans-xdebug)”。当我点击停止按钮时,我会收到“X秒内未检测到来自xdebug的连接。原因可能是xdebug未安装或未正确配置”的信息。
也许我在混淆本地设置和服务器设置?一篇文章说
xdebug.remote_host
应该设置为“运行NetBeans的机器的IP”,但我希望团队能够使用具有不同IP地址的机器进行调试。问题可能是端口9000,但我已经检查过它没有被阻止。任何能够澄清这个问题的帮助都将不胜感激!