2014-04-11 100 views
16

我试图通过Windows 2008服务器上的FastCGI运行PHP。FastCGI进程意外退出

我遵循此安装文档http://learn.iis.net/page.aspx/246/using-fastcgi-to-host-php-applications-on-iis7/并已检查完成了多次correclty步骤。

然而,当我试图执行一个PHP页面我正在出现以下错误:

HTTP错误500.0 - 内部服务器错误 C:\ PHP \ PHP-cgi.exe文件 - FastCGI进程意外退出

+0

可能的重复[IIS 7.5 PHP失败“FastCGI进程意外退出”](http://stackoverflow.com/questions/11992153/iis-7-5-php-failure-the-fastcgi-process-exited-出乎意料) – Guns

回答

1

你可能在使用C:/ [你的PHP目录] /php.exe处理程序映射IIS的只是改变它C:/ [你的PHP目录]/PHP-CGI。 exe

0

在我的情况下,问题是通过应用程序池。尝试更改您的应用程序池ASP.NET v4.0。

60

也许你应该尝试安装VC++运行库,如解释here

There's a fairly good chance you're missing the correct VC++ runtime for the version of PHP you're running.

If you're running PHP 5.5.x you need to ensure the VC++11 runtime is installed:

http://www.microsoft.com/en-us/download/details.aspx?id=30679

Make sure you download and install the x86 version (vcredist_x86.exe), PHP on Windows isn't 64 bit yet.

If you're running PHP 5.4.x then you need to install the VC++9 runtime:

http://www.microsoft.com/en-us/download/details.aspx?id=5582

+5

谢谢。有用。对于PHP 5.6,也请按照5.5.x –

+1

相同的方式工作。谢谢 – Volem

+0

完美,非常感谢! –

1

如果你有两个类似的应用程序(您的应用程序,phpMyAdmin的)只是禁止APC扩展 。希望解决这个问题 它与我一起工作

3

我试过直接打开名为php-cgi.exe,它给了我有一个更清楚的错误信息。

8

经历了很多痛苦和折磨之后,事实证明,我需要安装“Visual Studio 2012 Update 4 32位版本的Visual C++可再发行版”,即使在我的64位服务器上也是如此。

+0

是的。我在Windows Server 2012 R2上的IIS上安装了PHP 5.6。在x64 VC++之后没有工作,但在x86之后工作并重新启动IIS。 – Zeeshan

18

当您从dos命令行运行php-cgi.exe时,您会收到MSVCR110.dll弹出消息弹出消息。

像本说,获取的dll这里的x86下载:http://www.microsoft.com/en-us/download/details.aspx?id=30679

+0

谢谢你拯救我的生命! – Patito

+0

感谢您指定x86,我第一次得到错误的版本:) –

+0

也为我工作。服务器运行IIS Express。 –

0

在我来说,我不得不配置的错误星座:

  • 错误配置
  • 报告禁用
  • 错字错误

启用error_reporting后,显然session_path被指向错误的文件夹。

“悲哀而真实”

1

对于使用PHP 5.6.x遵循这一link并安装x86版本的用户。

0

我在Windows Server 2008 R2上安装PHP 7时遇到了同样的错误。我通过安装适用于Visual Studio 2015的Visual C++ Redistributable解决了这个问题。

0

作为'sepehr'的答案,这个问题是因为VC++ Redistributable适合PHP的版本没有安装,或者需要重新安装。

我之前遇到过,所以我会解释我的步骤来解决它。

1-每个PHP版本都是由特定的Visual C++ Redistributable版本构建的,比如(10,11,12,14,...)。 ((你怎么知道!看..))

  • 回来检查enter link description here PHP的网站,然后在这个页面的左边,看“我选择哪个版本?”然后看看什么版本的VC++适合你的PHP版本安装。

  • 现在您必须下载VC++ 32和64.如果您的电脑已经安装了它,请先取下它们。然后安装最近下载的内容:BU (前32和64)。

- 在下面提到的PHP站点上也有VC下载链接。

我希望它可以帮助你。

0

对于发行C:\ PHP \ php-cgi.exe - FastCGI进程意外退出。

我通过安装的Visual C++可再发行的Visual Studio 2015(微软的Visual C++ 2015年可再发行组件更新3)32的Visual C++可再发行的Visual Studio 2012更新4位和64位版本解决了这一点。并确保在php.info文件中cgi.fix_pathinfo = 0启用。

0

我重新启动fastcgi设置,处理程序映射,来自IIS管理器(Windows 10)的CGI,它显示了我的测试php页面。