IIS上的PHP 5.3在CGI模式下给出了404错误

在这里慢慢失去理智。 我有PHP 5.2工作正常(ISAPI)在IIS下,但对于一些扩展,我需要5.3。 所以不用担心,我安装了这个,但事实certificate,ISAPI不再提供。

我遵循了fastcgi的安装教程,最后每个PHP页面都有500个内部服务器错误。

所以我现在的情况是:我有fastcgi删除。 在我的网站中,我添加了PHP(head,get,post)并将它们路由到c:\ php \ php-cgi.exe。

结果:我尝试的每个PHP页面(即使是只有文本的页面)都会给404找不到错误。 我放在同一个文件夹中的任何HTML文件都没有问题。

谁可以帮助我…这样的事情有多难? 对我来说显然非常困难。

额外的信息:

  • 按照下面的build议运行安装程序。 将其设置为使用fastcgi。

  • 我的fcgiext.ini文件现在看起来像这样:
    [types]
    PHP = C:\ PHP中\ PHP-cgi.exe文件
    [C:\ PHP \ PHP-cgi.exe文件]
    exepath = C:\ PHP中\ PHP-cgi.exe文件

  • 从命令行使用phpinfo();的3行PHP文件phpinfo(); 工作正常

  • 从服务器的相同的PHP文件只有phpinfo(); 导致内部服务器500错误。
  • 从服务器一个PHP文件只有文本工作正常
  • 当在IISpipe理控制台中更改文档types时,将PHP扩展名直接指向每个PHP文件的404 c:\php\php-cgi.exe结果
  • php.ini是发行版中的php.ini.production文件。 没有编辑。

直接将PHP PHP处理程序设置为PHP(而不是通过fastcgi) c:\php\php-cgi.exe导致以下结果:

  • 显示只有文本的PHP页面….工作正常
  • 仅用phpinfo();显示页面phpinfo(); 结果404找不到

我发现了这个问题。 在php.ini中有一些需要为CGI和IIS设置的值。 force_redirect需要为0.此外,PHP扩展需要添加在IIS的webextensions部分。

那些东西解决了问题。

你有没有试过安装程序.msi?

对于PHP 5.3的rc4它位于http://windows.php.net/downloads/qa/php-5.3.0RC4-nts-Win32-VC6-x86.msi

但是先在另一个非生产性服务器上进行testing。 编辑:无论如何,这是一个发布候选人,所以你可能要尝试在testingtesting服务器上的安装程序…