当前位置:编程学习 > php >>

解决display_errors设置为Off无效,仍然输出报错

某台服务器php.ini的设置:
error_reporting = E_ALL & ~E_NOTICE
display_errors = Off
log_errors = On
error_log = /www/logs/php_error.log

按理说这样,错误信息是不会输出了,但是当PHP有错误时,会把报错提示显示在页面上。

搜索了下,发现有人说当log_errors开启时,如果error_log的路径不对,会导致报错显示。经查与此无关。

输出phpinfo(),查看到display_errors是On。在页面中指定:ini_set("DISPLAY_ERRORS",0),仍然无效!

最后发现php-fpm.conf里有句:
引用
Additional php.ini defines, specific to this pool of workers.
                        <value name="php_defines">
                           <value name="sendmail_path">/usr/易做图in/sendmail -t -i</value>
                           <value name="display_errors">1</value>
                        </value>

原来忘了修改这个地方的配置,display_errors被设置为1了!这里面也说明了在php_defines里可以额外指定某些php的参数。
直接将这两段注释掉,php-fpm reload后,报错提示不再显示到页面上了。
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,