【问题标题】:How can I debug PHP in IIS?如何在 IIS 中调试 PHP?
【发布时间】:2009-07-31 16:16:59
【问题描述】:

我开始使用 PHP 5.3 和 FastCGI 将一些网站迁移到 IIS7 中托管的 WordPress。我很快发现,虽然 WordPress 的核心似乎开箱即用,但有许多插件在 IIS 中运行时存在问题,我希望能够调试、修复它们并提交补丁。

我找到的唯一解决方案是在 Windows 上的 Apache 中运行 WordPress 进行调试,但这些问题似乎与 IIS 和 FastCGI 如何与 PHP 一起工作有关,而不是在 Windows 上。我查看了 Expression Web 3 和 Aptana Studio 1.5,但都找不到使用这两种工具的方法。

有什么方法可以调试在 IIS7 上的 FastCGI 下运行的 WordPress(或一般的 PHP)?需要什么工具,具体步骤将不胜感激。

【问题讨论】:

    标签: php debugging wordpress iis-7


    【解决方案1】:

    XDebug是一个非常非常好的PHP调试工具。

    如果您使用像 Netbeans 这样的 IDE,XDebug 允许您在本地服务器上以逐步模式运行 PHP 代码,并带有断点和变量监视。非常非常强大且非常易于使用。

    【讨论】:

    • 具体遵循 XDebug 说明,不要只是下载一个 DLL 并自己将其添加为 PHP 的扩展 - XDebug 需要在 php.ini 中的特定行中注册,而不是使用默认的 XDebug由 IIS 生成的行。
    【解决方案2】:

    我建议做一个 phpinfo() 并粘贴输出 here 这是 XDebug 一个非常好的调试器,在他们的站点上带有 Windows 二进制文件。现在,您使用的任何编辑器都需要支持 xdebug 才能逐步完成。

    您还应该查看FirePHP,它是Firefox 中的Firebug 插件。它介于 print_r(); 之间。和 xdebug 或...

    最后看看dbg,它也可以在windows上工作。在这个post 中有一些IIS 的配置信息,忽略VS.php 的内容。

    希望对您有所帮助。

    【讨论】:

      【解决方案3】:

      我在 Windows 上调试了很多 PHP,从来没有遇到过这么多问题,这将有助于了解您尝试使用什么来调试事物以及您遇到了什么错误。通常,您可能遇到的错误与 Apache 函数和/或关于 $_SERVER[] 的假设有关。

      无论如何,鉴于 FastCGI 可能不是问题,我会将开发环境设置为像普通 CGI 一样运行,这对于调试器来说应该更容易访问。

      【讨论】:

      • 主要问题是我没有找到在 IIS 中调试 PHP 而不是 Apache 的任何方法。我同意你关于错误可能来自哪里的想法,这就是为什么我希望能够在 IIS 而不是 Apache 下进行调试,以便我可以准确地看到发生了什么。
      • 您首先使用什么来尝试调试 PHP?上次我尝试时,我使用 [无论我当时使用什么,我认为是 PHPEdit] 并通过 IIS 和在 CGI 上运行的 PHP 在本地进行实时调试都没有问题。
      • 我尝试过 Expression Web 3 和 Aptana Studio 1.5,但不知道如何在 IIS 中调试 PHP。我什至不确定你要附加什么,w3wp.exe 还是 php-cgi.exe?
      • 嗯,不能说我用过任何一个包。我使用的大部分东西都是基于旧的 phpdbg 库 (php-debugger.com/dbg)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-20
      • 1970-01-01
      • 2013-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多