【问题标题】:PHP Configuration file won't load IIS7 x64PHP 配置文件不会加载 IIS7 x64
【发布时间】:2010-10-16 17:28:05
【问题描述】:

使用 Fast CGI 我无法读取 php.ini 文件。请参阅下面的我的 phpinfo。

系统 Windows NT WIN-PAFTBLXQWYW 6.0 build 6001
构建日期 2009 年 3 月 5 日 19:43:24
配置命令 cscript /nologo configure.js "--enable-snapshot-build" "--enable-debug-pack" "--with-snapshot-template=d:\php-sdk\snap_5_2\vc6\x86\template" "--with-php-build=d:\php-sdk\snap_5_2\vc6\x86\php_build" "--disable-zts" "--disable-isapi" "--disable-nsapi" "--with- pdo-oci=D:\php-sdk\oracle\instantclient10\sdk,shared" "--with-oci8=D:\php-sdk\oracle\instantclient10\sdk,shared" "--enable-htscanner=shared"
服务器 API CGI/FastCGI
虚拟目录支持已禁用
配置文件 (php.ini) 路径 C:\Windows
加载的配置文件(无)
扫描此目录以获取其他 .ini 文件(无)

我的 php.ini 文件位于我的 c:\php 和我的 c:\windows 中,我已确保它在这两个地方都具有网络服务的读取权限。

我添加了各种注册表设置、环境变量,并遵循了在网络上找到的多个教程,但目前还没有骰子。每次都重新启动。

我最初的安装是使用 MS“Web 平台安装程序”,但后来我重新启动了。

欢迎任何关于从这里去哪里的想法。

【问题讨论】:

  • 比勒?你好?! 100分人
  • 我不认为发布一堆 cmet 会让人们更有可能帮助你。

标签: load 64-bit php


【解决方案1】:

我终于找到了问题所在。默认情况下,Windows Server 2008 显然默认启用了“隐藏已知文件类型的文件扩展名”。我没有注意到它,因为它显示了它周围其他文件的扩展名

我无意中将我的文件重命名为 php.ini.ini,由于设置原因,它在我看来是 php.ini。

当我弄明白的时候,感觉真的很愚蠢。但是查看具有该设置的目录实际上很难分辨。

【讨论】:

  • 哇。 3个月找到你的答案。希望它没有耽误你的工作那么久。我希望我们的回答能对您有所帮助。
【解决方案2】:

配置文件路径是否与您放置 php.ini 的位置匹配?

只需使用以下内容创建一个名为 getinfo.php 的文件:

<?php phpinfo(); ?>

把它保存在你的根目录,然后去http://www.yourwebsite.com/getinfo.php看看它是什么。

【讨论】:

  • 是的。我试图将 php.ini 放在 c:\windows 中(是的,我知道这是不好的做法 [试图在保护它之前让它工作]。我还更改了 PHPRC var 以尝试得到它目录从 c:\windows 改变了,但它仍然在 phpinfo() 中显示 c:\windows,如上所示。
【解决方案3】:

您需要 64 位版本的 php 和 fast-cgi。
没有找到php的64位安装程序,所以需要从源码编译php。

【讨论】:

  • fast-cgi 正常工作和执行,但没有显示它加载了配置文件。
  • 意思是fast-cgi 64位(我认为)。还要在 64 位 IIS 中寻找 32 位模块(此处为 php)兼容性。看learn.iis.net/page.aspx/248/…
【解决方案4】:

在 Windows XP 上,我将 php.ini 放在 C:\Windows\system32 中取得了更好的成功。由于您使用的是 x64,请尝试输入 C:\Windows\system64。然后我通常会在 C:\php 中为其放置一个别名以便于访问,但这不是绝对必要的。

当然,将文件放在该位置后重新启动 IIS。

【讨论】:

    【解决方案5】:

    我不能告诉你你的安装有什么问题,但我已经在 Windows Vista 64 位上成功安装了 PHP。我不记得有任何问题。

    我的 phpinfo 文件说:

    系统 Windows NT AQUA 6.0 build 6002
    构建日期 2009 年 4 月 9 日 08:22:37
    配置命令 cscript /nologo configure.js "--enable-snapshot-build" "--enable-debug-pack" "--with-snapshot-template=d:\php-sdk\snap_5_2\vc6\x86\template" "--with-php-build=d:\php-sdk\snap_5_2\vc6\x86\php_build" "--with-pdo-oci=D:\php-sdk\oracle\instantclient10\sdk,shared" "- -with-oci8=D:\php-sdk\oracle\instantclient10\sdk,shared"
    服务器 API ISAPI
    启用虚拟目录支持
    配置文件 (php.ini) 路径 C:\Windows
    加载的配置文件 C:\PHP\php.ini
    扫描此目录以获取其他 .ini 文件(无)

    我安装的 PHP 版本是 PHP 5.2.9-2 zip 包 - 2009 年 4 月 8 日来自http://www.php.net/downloads.php。这是一个 32 位软件包,但在 Vista-64 下运行良好。我之前在运行 64 位版本时遇到了麻烦,所以我选择了 32 位版本。它对我有用。

    你会注意到我使用了 ISAPI,它比 CGI 更推荐。不管怎样,我认为这不会有什么不同。

    如果您确实想在 Windows 上运行 64 位 PHP,您可能想尝试通过首先安装 Apache 并按照此处给出的说明进行操作:http://www.elxis.org/guides/developers-guides/64bit-apache-php-mysql-windows.html 但是,我不能保证这一点,因为我没有' t 尝试了这组特定的说明。但它看起来确实很完整。

    这些说明(如果您还没有看过的话)也可能会为您提供一些关于各种 PHP 文件的位置的提示。

    要检查的另一件事是查看有关在 Windows 系统上安装的 PHP 文章:http://ca2.php.net/install.windows - 用户 cmets 特别有用,可能会为您提供一些想法,以便在必须进行卸载/重新安装之前尝试。

    希望这里有帮助。

    【讨论】:

    • 您说您在 Vista x64 上编译了 PHP,但随后发布了一个来自 BSD 安装的 phpinfo。这有什么相关性和/或帮助?
    • 糟糕。我的错。我从我的网站而不是我自己的机器上发布了 phpinfo。我不应该为我的本地站点和托管站点使用如此相似的 URL,我应该更仔细地查看 PHP 信息。我现在已经更新了答案中的 phpinfo。感谢您指出这一点。
    猜你喜欢
    • 1970-01-01
    • 2014-02-19
    • 1970-01-01
    • 1970-01-01
    • 2019-03-15
    • 1970-01-01
    • 2015-11-13
    • 2017-02-04
    相关资源
    最近更新 更多