PHP 在 IIS Windows Server 2012 上不是 运行,尽管 FastCGI 是并且 MySQL 是

PHP is not running on IIS Windows Server 2012 although FastCGI is and MySQL is

这应该不会花很长时间,但我有 Windows Server 2012/R2 并在 IIS8 上安装了 PHP Manager。

我尝试点击简单的 "localhost/phpinfo.php" 并得到以下结果:

HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

Most likely causes:
The directory or file specified does not exist on the Web server.
The URL contains a typographical error.
A custom filter or module, such as URLScan, restricts access to the file.

Things you can try:
Create the content on the Web server.
Review the browser URL.
Create a tracing rule to track failed requests for this HTTP status code and see which module is calling SetStatus. For more information about creating a tracing rule for failed requests, click here.

Detailed Error Information:
Module     IIS Web Core
Notification       MapRequestHandler
Handler    PHP56_via_FastCGI
Error Code     0x80070002
Requested URL      http://localhost:80/phpinfo.php
Physical Path      D:\inetpub\wwwroot\ccretebase\phpinfo.php
Logon Method       Anonymous
Logon User     Anonymous

所以我查找了错误代码,但无济于事,没有任何内容适用于我的情况。

http://forums.iis.net/t/1166213.aspx?The+FastCGI+executable+Error+Number+2+0x80070002+

我在尝试 vcredist_x64.exe[=73= 后通过 vcredist_x86.exe 安装了正确版本的 MSVCR110.dll ].

The program can't start because MSVCR110.dll is missing from your computer

我已确保 DLL 在 System32SYSWOW64 文件夹中。

不过,PHP 并没有像预期的那样在 IIS8 下 运行ning。

我只想运行 Concrete5。我以前可以在另一台 Win2012 服务器上执行此操作,但我忘记了该服务器是如何消失的....需要复制过程文档....假我!

如有任何帮助,我们将不胜感激...

更新: 尝试从我的本地计算机或从内部服务器访问我的服务器时;我现在明白了:

**HTTP Error 500.0 - Internal Server Error
C:\Program Files (x86)\PHP\v5.6\php-cgi.exe - The FastCGI process exited unexpectedly**

更新 2:马克的问题:这是我得到的:

Detailed Error Information:
Module     IIS Web Core
Notification       MapRequestHandler
Handler    PHP56_via_FastCGI
Error Code     0x80070002
Requested URL      http://localhost:80/ccretebase/phpinfo.php
Physical Path      D:\inetpub\wwwroot\ccretebase\ccretebase\phpinfo.php
Logon Method       Anonymous
Logon User     Anonymous

另外:这是基本设置对话框:

注意:D:\inetpub\wwwroot 已在 IIS 中注册,因为我服务器上的 D: 驱动器刚刚超过 800GB,而 C: 驱动器还剩不到 25GB...1and1 没有根据需要对驱动器进行分区。需要让 Aome for Servers 将 space 从 D: 移动到 C:,除非有人有 "FREE" 开源方式...


马克更新!!!马克,谢谢,我检查并重新安装了它们。都在 "correct" 文件夹中...SYSWOW64 中的 32 位和 System32 中的 64 位...是的,有点奇怪。

我再次测试了这个文件................WALA!!!!该死的嗯!!!!你这个男人!太棒了!

请看,先生!!!!呜呜!!!

您在评论中说 msvcr100.dll 文件在 System32SysWOW64 文件夹下的大小相同。

这是你的问题。 System32 文件夹应该包含 64 位 DLL,而 SysWOW64 文件夹应该包含 32 位 DLL(是的,可能有点混乱)。它们的大小通常不同;在我的系统 (Windows 10) 上,它们分别是 809KB 和 755KB。我建议重新安装这两个 Visual C++ 包。