为什么 IIS 要使用两个不同的 PHP 安装?

为什么 IIS 要使用两个不同的 PHP 安装?

我继承了这台 Windows Server 2008 服务器,我们将其用作主要 Web 服务器,最近遇到了一些奇怪的问题。以前,PHP 的安装只需下载一个 zip 文件,将其解压到特定文件位置 (C:\Apps\php),进行适当的 php.ini 更改,然后就可以了。由于我认为这有点低效,我选择放弃该模型,转而采用 Web 平台安装程序路线,主要是为了使升级更简单、更高效。现在我相信我已经删除了所有对旧 PHP 安装的引用,但我们的 Wordpress 安装却告诉我们并非如此。

有时,在我们的 PHP 错误日志中,Wordpress 会抛出一些随机的致命错误,原因无需在此提及,但它引用了旧 PHP 安装的旧 pear 扩展。这让我很困惑,因为在 中php_info(),所有内容都引用了新的 PHP,而没有引用旧的 pear 安装,并且运行pear config-show仅引用了新的 PHP 安装。

所以我不知道为什么似乎仍在使用旧的 PHP 内容。我想将 IIS 配置为仅使用我指定的任何内容,只要我从 WPI 安装新的 PHP 版本即可。任何帮助都将非常有帮助,谢谢!

答案1

您是否尝试过为 PHP 重新创建 IIS FastCGIModule?检查第一部分文章。另外,检查注册表编辑器上的旧 PHP 实例,几年前我在使用 Symantec Endpoint Protection Manager 时遇到过类似的问题,并通过删除所有相关注册表(之前已备份)解决了该问题

答案2

尝试切换 PHP 处理程序以使用您刚刚安装的较新版本的 .EXE。

  1. 在 IIS 管理器中,选择左侧窗格中的网站,然后双击处理程序映射在右侧窗格中。
  2. 找到包含 *.php 处理程序的条目,右键单击该行并选择编辑
  3. 检查可执行文件属性来查看它是否指向较旧的C:\Apps\php\bin\php-cgi.exe文件或者刚刚安装的新路径。

您还可以在顶级服务器中设置 PHP 处理程序路径,该路径将由创建的新网站继承。

相关内容