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“,)”.仍然可以显示编译错误,因为在这种情况下不会执行脚本.

相关文章

1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...
1 删除0字节文件 find -type f -size 0 -exec rm -rf {} ...
## 步骤 1:安装必要的软件包 首先,需要确保系统已安装 `dh...