PHP 7.4需手动启用ignore_repeated_errors=On和ignore_repeated_source=On(后者依赖前者)来抑制连续相同错误及同源错误的日志重复记录,配合log_errors=On、有效error_log路径及display_errors=Off方可生效。

PHP 7.4 默认不会自动去重错误日志,但可通过两个关键配置项避免同一错误在短时间内反复刷屏式记录,这对生产环境日志收敛和排查效率很实用:
ignore_repeated_errors = On
启用后,PHP 会跳过记录**连续出现的相同错误**(比如同一行代码在一次请求中被反复执行多次触发相同 warning)。注意:它只对“完全一致”的错误(含错误类型、消息、文件、行号)生效,且仅作用于本次请求周期内。
- 该设置默认为 Off,需手动开启
- 修改 php.ini 后必须重启 PHP-FPM 或 Web 服务器(如
systemctl restart php7.4-fpm)
ignore_repeated_source = On
进一步限制重复来源——当多个不同请求在**同一文件、同一行**触发相同错误(例如某个配置文件里写死的错误路径被大量并发访问),此选项可阻止后续请求重复记录该错误。
- 它依赖
ignore_repeated_errors = On才有效 - 适合防止因高频访问导致的日志爆炸,比如某个废弃接口被爬虫持续调用
搭配 error_log 和 log_errors 使用才真正生效
这两个“忽略”参数只有在 log_errors = On 且 error_log 路径有效时才有意义。若错误没开启记录,忽略也就无从谈起。
立即学习“PHP免费学习笔记(深入)”;
- 务必确认日志目录存在、权限正确(如
chown www-data:www-data /var/log/php_errors.log) - 建议与
display_errors = Off和html_errors = Off一起配置,确保安全与日志整洁并存
不复杂但容易忽略



















