【问题标题】:PHP is not running on IIS Windows Server 2012 although FastCGI is and MySQL isPHP 没有在 IIS Windows Server 2012 上运行,尽管 FastCGI 和 MySQL 是
【发布时间】:2016-08-06 15:11:03
【问题描述】:

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

我尝试点击简单的“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之后,我通过vcredist_x86.exe安装了正确版本的MSVCR110.dll。

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

我已确保 DLL 位于 System32SYSWOW64 文件夹中。

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

我只想运行 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:Marc 的问题:这就是我得到的:

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 将空间从 D: 移动到 C:,除非有人有“免费”开源方式...


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

我再次测试了文件,然后……哇!!!!该死的啊!!!!你大男人!!!!太棒了!

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

【问题讨论】:

  • 如果您尝试访问以下 URL:localhost/ccretebase/phpinfo.php 会发生什么?
  • 请参阅更新 2 下的问题内部注释:Marc。谢谢...
  • system32SysWOW64 文件夹下的 DLL 文件是否完全相同? (提示:检查它的字节大小)
  • 马克,是的,刚刚验证。

标签: php dll iis-8 windows2012 syswow64


【解决方案1】:

你在cmets中说System32SysWOW64文件夹下的msvcr100.dll文件大小是一样的。

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

【讨论】:

  • @Peter 很高兴我能帮上忙,伙计。
猜你喜欢
  • 1970-01-01
  • 2016-11-28
  • 1970-01-01
  • 2018-09-01
  • 2015-10-13
  • 2014-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多