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


Solution to debug PHP code on remote server, using remote IDE

有一个安装了XDEBUG扩展的IIS服务器,正在运行PHP应用程序。我无法在此服务器上更改任何内容。有时,这里的开发团队需要在不更改代码的情况下对其进行调试。只需放置一些断点并逐步执行即可。

我可以使用Eclipse和远程调试在我的计算机上完成这项工作。但我想在虚拟机中创建一个Debian服务器,让任何只有浏览器的人都可以轻松地放置断点步骤调试该服务器,而无需设置环境。

我尝试了许多基于Web的IDE(codiad、cloud9等),但它们不提供XDEBUG集成。有没有基于web的IDE可以安装在我自己的服务器上,提供PHP调试请再读一遍这段话,不要回复垃圾邮件

或者,我是否可以在服务器端运行一些东西,如Sublime Editor、Notepad++或其他什么,并在浏览器中看到它的运行?也许是Java小程序。

任何好主意都将不胜感激!谢谢

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

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

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

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

设置断点,然后单击运行>使用PHP(cli)来启动调试器和PHP cli脚本。

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

我还制作了一个快速演示视频,向您展示它的工作原理。

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

如果你是一个不错(或更好)的程序员,我有一个解决方案。我们已经在这里用javascript实现了XDebug:https://github.com/ajaxorg/lib-phpdebug.它可能需要一些更新,因为它是为节点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/#!论坛/cloud9 sdk。

为Cloud9实现调试器实际上相当简单。最近有人构建了一个C++调试器,目前仍在PR中:https://github.com/c9/c9.ide.run.debug/pull/4.您只需要实现一个类,调试器实现如下所述:https://docs.c9.io/api/#/api/debugger.iimplementation。由于已经有了xdebug协议的实现,将这些东西捆绑在一起应该只需要几天的工作。

我希望这能有所帮助。