【问题标题】:Solution to debug PHP code on remote server, using remote IDE使用远程 IDE 在远程服务器上调试 PHP 代码的解决方案
【发布时间】:2015-02-17 17:18:01
【问题描述】:

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

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

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

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

非常感谢任何聪明的想法!谢谢!

【问题讨论】:

    标签: php xdebug


    【解决方案1】:

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

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

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

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

    设置断点,然后点击Run > Run With > PHP (cli) 启动调试器和 PHP CLI 脚本。 p>

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

    我还创建了一个quick demo video 来向您展示它是如何工作的。

    【讨论】:

    • 仅供参考,这里有更新指南c9.io/blog/debug-your-php-code-with-xdebug-and-cloud9
    • 早在 2015 年,当我问这个问题时,我没有时间像 Ruben Daniel 所说的那样实施 XDebug,这只是当时可用选项无法满足的公司要求.现在我工作的公司已经不存在了。我将这篇文章标记为答案,因为现在(2017 年末)我已经看到了对 Cloud9 的大量改进,已经对其进行了测试,我相信现在的 Cloud9 可以解决这个问题!
    【解决方案2】:

    我是 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 自动连接到您的虚拟机。

    我们刚刚发布了 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 协议的实现,将这些东西捆绑在一起应该只需要几天的工作。

    我希望这会有所帮助。

    【讨论】:

    • 谢谢鲁本,好东西!一定会看看的!我只是喜欢 cloud9 界面(对我来说,这是我尝试过的最好的基于 Web 的 IDE,在众多界面中)。
    猜你喜欢
    • 2012-08-25
    • 2018-12-20
    • 2023-03-14
    • 2013-02-07
    • 2019-07-12
    • 2013-07-13
    • 2018-10-19
    • 2010-10-21
    • 1970-01-01
    相关资源
    最近更新 更多