PHP 4不接受Apache重启后的PHP.ini更改


PHP 4 won't take PHP.ini changes after Apache restart

我们有一个非常老的PHP应用程序,需要PHP 4才能运行。我们正在停用旧服务器,所以我在新服务器(Ubuntu 13.04 32位)上构建了PHP 4。当我做./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和phpinfo的截图来证明我没有说谎

--with-config-file-path需要一个目录,而不是文件名。因此,根据您的配置,PHP将查找/etc/php4/php.ini/php.ini

背景:使用路径的原因是,实际上PHP是按顺序查找不同的文件:首先是SAPI特定的文件php-$SAPI.ini,然后是通用的php.ini。这允许在CLI上使用不同的配置,其中初始启动时间更重要,需要其他缓存设置(apc等)。