phpinfo()将display_errors显示为关闭,尽管php.ini将其设置为打开,而命令行php -i将其显示为打开

时间:2018-10-15 12:36:14

标签: php

我正在一起使用php 7和nginx。

令人困惑的问题-phpinfo()显示display_errors为off。转到命令行并运行:

  

php -i | grep'display_errors'

返回

  

display_errors => STDOUT => STDOUT

我的理解是,这意味着应该显示错误。此命令确认我使用了正确的ini文件:

  

php -i | grep php.ini

当它返回此输出时:

  

配置文件(php.ini)路径=> /etc/php/7.0/cli

那是我正在使用的文件。

我已经用

重启了nginx
  

systemctl重新启动nginx

我没有其他选择了。我能做的最好的事情是使用以下命令将其本地设置在文件的顶部:

  

ini_set('display_errors',1)

此后,运行phpinfo()会显示display_errors处于“本地”状态,但对于“ master”处于关闭状态,即每个脚本均处于打开状态。没关系,但是不会检测到语法错误,因此我希望在phpinfo中的两列中都启用它,而不必通过ini_set在每个脚本中对其进行设置。

请注意-我知道之前已经有人问过这个问题,但是在修改了正确的php.ini文件并通过php -i确认display_errors值正确之后,我还没有遇到这个问题的人。

编辑:忘记了,我还修改了php / 7.0 / fpm中的php.ini文件,并重新启动了nginx,没有成功

1 个答案:

答案 0 :(得分:0)

不确定nginx,但是在默认安装的apache中,我有2个php.inis。

一个用于cli(/ etc / php5 / cli),另一个用于apache(/etc/php5/apache2/php.ini)。

您的命令行调用明确地将一个用于cli,我想您的Web服务器将notherx用于“另一个”。

我希望他们平等,并创建了一个软链接...