【问题标题】:Error "The FastCGI process exited unexpectedly"错误“FastCGI 进程意外退出”
【发布时间】:2020-07-18 22:55:37
【问题描述】:

我正在开发一个 PHP 应用程序(在 IIS 服务器上运行),并且大多数页面都可以正常工作,但其中一个会引发以下错误:

HTTP 错误 500.0 - 内部服务器错误 C:\[PHP 路径]\php-cgi.exe - FastCGI 进程意外退出

我使用的 PHP 版本是 7.1.10x86。我已经验证在我的 IIS 服务器中正确配置了 FastCGI。我看到的唯一错误是在事件查看器中,它看起来像这样:

日志名称:应用程序 来源:应用程序错误 日期: 事件 ID:1000 任务类别:(100) 级别:错误 关键词:经典 用户:不适用 计算机:[机器名称] 描述: 错误应用程序名称:php-cgi.exe,版本:7.1.10.0,时间戳:0x59cab423 错误模块名称:VCRUNTIME140.dll,版本:14.16.27012.6,时间戳:0x5bc12895 异常代码:0xc0000005 故障偏移量:0x0000282e 错误进程ID:0x5cdc 错误应用程序启动时间:0x01d60c369ee4b582 错误的应用程序路径:C:[PHP 路径]\php-cgi.exe 错误模块路径:C:\WINDOWS\SYSTEM32\VCRUNTIME140.dll 报告 ID:7040cd3e-9ced-4579-8cbb-57aa2ecf72c2 故障包全名: 错误的包相关应用程序 ID:

我该如何解决这个问题?

【问题讨论】:

  • 通过 php.ini 中的 error_log 启用错误日志记录,以确定哪个文件和哪一行给出了错误。
  • 0xc0000005 是本机应用程序中典型的访问冲突。您必须调试 php-cgi.exe 才能了解更多信息。但是,请记住,PHP 7.1 已停产php.net/supported-versions.php,那么您不应该在上面浪费时间,应该立即升级。
  • @LexLi 如何调试 php-cgi.exe?我对 PHP 完全陌生。你可能会认为我对此一无所知。
  • 你可能会从stackoverflow.com/questions/14502834/debug-php-cgi-exe-vb6-dll 那里得到一些提示,但调试原生内存问题对于初学者来说绝非易事。
  • php 错误日志中没有关于此错误的任何内容,我最终不需要调试 php-cgi.exe。然而,在我的团队的帮助下,我能够弄清楚是什么原因造成的。它与 xDebug 有关。

标签: php iis fastcgi


【解决方案1】:

该错误是由 xDebug 版本不匹配引起的。我已经安装了最新版本的 xDebug,但我不知道,应用程序的一部分(但不是整个应用程序)需要一个较低的版本。因此,有些页面可以正常工作,而有些则不能。

因此,为了解决问题,我不得不将我的 xDebug 版本降级为应用程序所期望的版本,并更新我的 php.ini,以便设置与 xDebug 和 PHP 版本相对应。

【讨论】:

    猜你喜欢
    • 2014-05-25
    • 2020-05-19
    • 2017-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-13
    • 2020-11-02
    • 1970-01-01
    相关资源
    最近更新 更多