AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 31563
In Process
Peter Mortensen
Peter Mortensen
Asked: 2009-06-25 12:14:15 +0800 CST2009-06-25 12:14:15 +0800 CST 2009-06-25 12:14:15 +0800 CST

IIS 上的 PHP 5.3 在 CGI 模式下会出现 404 错误

  • 772

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

我按照 fastcgi 的安装教程进行操作,结果每个 PHP 页面都出现 500 个内部服务器错误。

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

结果:我尝试的每个 PHP 页面(即使是只有文本的页面)都会出现 404 not found 错误。我放在同一个文件夹中的任何 HTML 文件都可以顺利使用。

谁能帮助我......这样的事情有多难?对我来说显然很难。

额外的信息:

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

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

  • 从命令行一个 3 行 PHP 文件phpinfo();工作正常

  • 来自服务器的相同 PHP 文件只会phpinfo();导致内部服务器 500 错误。
  • 从服务器一个只有文本的 PHP 文件可以正常工作
  • 在 IIS 管理控制台中更改文档类型并将 PHP 扩展直接指向c:\php\php-cgi.exe每个 PHP 文件的结果为 404
  • 这php.ini是php.ini.production分发中的文件。没有进行任何编辑。

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

  • 显示一个只有文本的 PHP 页面....工作正常
  • 显示只有phpinfo();404 未找到结果的页面
php cgi iis
  • 2 2 个回答
  • 6039 Views

2 个回答

  • Voted
  1. Peter Mortensen
    2009-06-26T05:42:18+08:002009-06-26T05:42:18+08:00

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

    这些东西解决了问题。

    • 2
  2. Peter Mortensen
    2009-06-25T12:24:46+08:002009-06-25T12:24:46+08:00

    您是否尝试过安装程序 .msi?

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

    但首先在另一台非生产服务器上对其进行测试。编辑:无论如何它都是一个候选版本,所以你可能想在测试测试服务器上尝试安装程序......

    • -1

相关问题

  • 如何在 IIS 中发送响应标头?

  • IIS 优化

  • mod_rewrite 不转发 GET 参数

  • 更改 PHP 的默认配置设置?

  • IIS 6.0 (Windows Server 2003) 备份的最佳实践?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve