【发布时间】:2011-10-17 12:51:57
【问题描述】:
尝试在 IIS 6.0 上从 PHP 5.2.5 升级到 5.2.17(然后升级到 5.3.6),安装语言本身运行良好,我更改了 IIS 使用的 PHP.ini/ect 位置对于 PHP,一切仍然有效,但是当我在我的网站上运行 PHP 信息时,它仍然说它正在运行 PHP 5.2.5。重新启动IIS,甚至重新启动服务器,没有区别。我该怎么做才能更改 PHP IIS 使用的版本/位置?
当我安装 PHP 5.3.6 时,该站点不再工作,所以我知道安装不同的版本正在做一些事情,但我认为它可能只是更改了我的服务器正在使用的 PHP.ini,而不是 PHP 的版本。
除了安装 PHP 的 windows 二进制版本外,我还尝试从 Microsoft 的 Web 平台安装程序(5.3.6 和 5.2.17)安装 PHP,但安装后两者都没有在 phpinfo 中显示为当前版本。
【问题讨论】:
-
不知道 iis 但您是否尝试过按照教程进行操作:blogs.iis.net/donraman/archive/2009/10/08/…?
-
将 PHP 5.2.5 升级到 5.2.17: 1) 完全停止 IIS(或停止使用 PHP 的网站并重新启动 IIS); 2)将新的PHP版本安装到相同的位置——你可以复制新文件而不是替换所有旧文件..但最好先删除所有旧文件(也许.ini文件除外); 3) 如果您使用一些非标准的 php 扩展,那么您可能还需要更新它们; 4) 恢复 IIS。这对我来说总是很有效。
-
如果从 5.2 升级到 5.3 -- 那是另一回事。我不知道你是如何运行 5.2 的(很可能是 ISAPI 模式),但 5.3 只能通过 FastCGI 运行。在 ISAPI 模式下,您需要使用线程安全构建,而在 FastCGI 中必须是非线程安全的。这是要检查的另一点。在任何情况下——在进行这种升级时禁用所有非捆绑扩展,直到你使这个简单的代码工作:
<?php phpinfo(); ?>。完成后——启用扩展并再次检查。如果可行——试试你的代码。
标签: php iis iis-6 php-5.3 php-5.2