微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – 禁用PHP弃用警告和通知

我一直在使用和配置 PHP,但现在我陷入了一个奇怪的问题,所以我要求你们帮忙.

我不想在生产服务器中看到弃用警告和通知,但是我希望看到其他错误消息,例如语法错误.

我在Ubuntu 10.10上运行带有Suhosin-Patch的PHP 5.3.3-1ubuntu9.3

在我的/etc/PHP5/apache2/PHP.ini中,我有以下几行:

error_reporting = E_ALL& ~E_DEPRECATED& 〜E_NOTICE

我重新启动了网络服务器.在虚拟主机配置中没有PHP_admin_value搞乱这种配置,在该文件夹中没有任何.htaccess文件.

尽管如此,仍然会显示弃用警告和通知.

有人可以帮忙吗?先感谢您!

解决方法

首先,我要感谢binfalse回答这个问题,但我的问题没有通过他的建议解决,并且通知继续显示.

这是因为PHP有​​几个地方可以设置配置.虽然我知道这些设置的优先级,但我决定通过实验测试它们以确定我将在这个答案中说些什么.

所以这里是一个列表,从更全球到更具体.列表中较低的每个设置都可以覆盖之前的设置.

> PHP.ini配置文件.在Ubuntu的情况下,有两个,/ etc / PHP5 / apache2 / PHP.ini是用于PHP Apache模块的.它将对所有虚拟主机产生全局影响.> conf.d目录.实际上并非所有安装都具有这种模块化配置,但是对于Apache模块,Ubuntu位于/etc/PHP5/apache2/conf.d中.此目录中添加的任何文件都将添加到主PHP.ini配置中,其优先级高于PHP.ini.换句话说,这里的任何设置都将覆盖PHP.ini中的设置 – 我测试了添加error.ini.它将对所有虚拟主机产生全局影响.> Apache虚拟主机配置.通常在/ etc / apache2 / sites-available中设置,每个虚拟主机可以有不同的设置.在VirtualHost标记内部,可以包含“PHP_value error_reporting”,其中value是常量上布尔运算的数值结果.在这种配置中,实际上不允许使用助记符常量而只允许使用数值.它只会影响单个虚拟主机.它将覆盖以上设置.> .htaccess.也可以使用3.中描述的相同语法在.htaccess中设置配置值,特别是error_reporting设置.它将仅影响.htaccess所在的目录和所有子目录.它将覆盖以上设置,在这种情况下无需重启apache.>源代码.可以更改此设置的最后一个位置是直接在执行的PHP源中.如果使用,将覆盖所有以前的设置,这正是我所面临的.可以设置调用函数“error_reporting()”或“ini_set(”error_reporting“,)”.仍然可以显示编译错误,因为在这种情况下不会执行脚本.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐