使用远程IDE在远程服务器上调试PHP代码的解决方案

时间:2015-02-17 17:18:02

标签: php xdebug

安装了XDEBUG扩展的IIS服务器,运行PHP应用程序。我无法在此服务器上进行任何更改。有时,这里的开发团队需要调试它,而无需更改代码。只需添加一些断点并逐步执行它。

我可以使用Eclipse和远程调试从我的计算机上完成。但我想在虚拟机中创建一个Debian服务器,以便任何只有浏览器的人 放置断点步骤< / em> debug 该服务器,无需设置环境。

我尝试了许多基于Web的IDE(codiad,cloud9等),但他们没有提供XDEBUG集成。是否有任何基于Web的IDE可以安装在我自己的服务器上,提供PHP调试? 请再次阅读本段,不要回复垃圾邮件

或者,无论如何我可以在服务器端运行一些东西,如Sublime Editor,Notepad ++等等,并看到它在浏览器中运行?也许是一个Java小程序。

任何好主意都将非常感谢!谢谢!

2 个答案:

答案 0 :(得分:4)

我们刚刚发布了在Cloud9 IDE中使用Xdebug调试PHP的支持。

您可以放置​​断点(正常或条件),跳过/跳入/跳出,设置监视表达式,查看调用堆栈以及检查变量和值。还有一种REPL模式可以直接评估代码。

已准备好尝试,但请确保通过运行以下命令在工作区上安装了正确的依赖项:

$ npm install -g debug
$ sudo apt-get install php5-xdebug

设置断点,然后点击运行&gt; 使用&gt;运行 PHP(cli)启动调试器和PHP CLI脚本。

很想听听您的反馈意见。我们的目标是尽快添加对调试PHP网页和Python的支持。该实现在GitHub(https://github.com/c9/c9.ide.run.debug.xdebug

上是开源的

我还制作了quick demo video来向您展示它是如何运作的。

答案 1 :(得分:3)

我是Cloud9的创始人,所以期待极度偏见。

如果你是一个体面的(或更好的)编码器,我有一个解决方案。我们已经在javascript中实现了XDebug:https://github.com/ajaxorg/lib-phpdebug。它可能需要一些更新,因为它是为Node 0.6编写的。它确实支持最新的xdebug。

此外,我们刚刚发布了一个SDK,允许您为Cloud9编写插件。在此处查找更多信息:http://cloud9-sdk.readme.io/v0.1/docs/getting-started-with-cloud9-plugins。它允许您在自己的计算机或服务器上安装Cloud9,并且可以在那里开发插件。您还可以通过c9.io分发插件,并使用SSH工作区功能让Cloud9通过SSH自动连接到您的VM。

我们刚刚发布了SDK的(pre-alpha)版本,并在此处积极支持邮件列表上的少数开发人员:https://groups.google.com/forum/#!forum/cloud9-sdk

为Cloud9实现调试器实际上相当简单。最近有人建立了一个C ++调试器,它仍在PR中:https://github.com/c9/c9.ide.run.debug/pull/4。您只需要实现一个类,即此处记录的调试器实现:https://docs.c9.io/api/#!/api/debugger.implementation。由于已经实现了xdebug协议,因此将这些内容捆绑在一起应该只需要几天的时间。

我希望这会有所帮助。