我们有一个非常老的PHP应用程序,需要运行PHP 4。我们要退役旧服务器,所以我在新服务器上构建了PHP 4(Ubuntu 13.04 32位)。当我做./configure
时,我确保--with-config-file-path=/etc/php4/php.ini
。我正在尝试启用错误记录,但我对php.ini
的更改似乎没有成功。
是的,该文件存在并由Apache用户拥有
nick@server:/etc/php4$ ls
php.ini
是的,我重启了Apache。是的,它出现在phpinfo()
:
Configuration File (php.ini) Path /etc/php4/php.ini
--with-config-file-path
是否仅在编译时保留,因此为了进行更改,我必须重新编译?或者它与新版本的PHP一样工作?
例如,php.ini
我已关闭display_errors
,但phpinfo()
显示:
display_errors On
请注意,它显示此服务器的本地值和主值的On
。
另外,我很抱歉让PHP 4永久化
我的php.ini和screenshot的phpinfo证明我不是在撒谎
答案 0 :(得分:2)
--with-config-file-path
需要一个目录,而不是文件名。因此,在您的配置下,PHP会查找/etc/php4/php.ini/php.ini
。
背景:
采用路径的原因是,事实上PHP正在按顺序查找不同的文件:首先是SAPI特定文件php-$SAPI.ini
,然后是通用php.ini
。这允许在CLI上使用不同的配置,其中初始启动时间更重要,并且需要其他缓存设置(apc等)。