【发布时间】:2023-03-24 20:26:02
【问题描述】:
我们正在尝试从 PHP5 切换到 PHP7。
我们现在已经安装了 Apache 并且 PHP 可以工作了。
但是,我们在php.ini 文件中所做的更改无效。
通过phpinfo()我们意识到原因是Configuration File (php.ini) Path是C:\Windows。
在我们的httpd.conf 我们有:
# PHP7 setup
LoadFile "C:/test/php/php7ts.dll"
LoadModule php7_module "C:/test/php/php7apache2_4.dll"
AddHandler php7-script .php
PHPINIDir "C:/test/php"
据我所知,应该让 Apache 在 c:\test\php 中查找 php.ini(根据需要在 http.conf 中使用正斜杠)
不明白为什么 Apache 不在我们告诉它的地方寻找 php.ini,我们将 php.ini 放在仍然未被读取的 c:\Windows 中(我们在 php.ini 中加载的模块不是加载在phpinfo中)。
每次我们对 php.ini 或 httpd.conf 进行更改时,我们都会使用 Apache 监视器重新启动 Apache。
我们如何告诉 Apache 读取特定目录中的 php.ini 文件,而不是我们上面尝试过的?
附录:
我们将所有内容切换回 PHP5,现在出现与上述屏幕截图中 PHP 路径所在位置相同的错误。它说它现在是 PHP 5.6.0,所以它显然正在加载新的 PHP 版本,但是发生了一些变化,因此在任何一个版本中都不会读取 php.ini 文件。 (???)
重启也无济于事。
【问题讨论】:
-
这可能会有所帮助howtoforge.com/…
-
尝试使用 PHPRC?您可以指定包含 php.ini 的目录的路径,而不是 php.ini 的直接路径。所以 export PHPRC=/test/php 。希望这会有所帮助?
-
这听起来有点像执行
phpinfo()脚本时出现的缓存问题...确保在浏览器中进行深度重新加载或为此禁用缓存。 -
查看下面的行(加载的配置文件)。 配置文件 (php.ini) 路径 多年来一直显示 C:\Windows,原因不明。
-
是否将 ;c:\php 添加到 PATH 中?在系统变量