php - phpinfo() 将 display_errors 显示为关闭,尽管 php.ini 将其设置为 on 并且命令行 php -i 显示它已打开
问题描述
我一起使用 php 7 和 nginx。
令人费解的问题 - phpinfo() 将 display_errors 显示为关闭。进入命令行并运行:
php -i | grep '显示错误'
返回
显示错误 => 标准输出 => 标准输出
我的理解是这意味着应该打开显示错误。此命令确认我使用了正确的 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,但没有成功
解决方案
不确定 nginx,但我在默认安装的 apache 中有 2 个 php.inis。
一个用于 cli ( /etc/php5/cli ),一个用于 apache ( /etc/php5/apache2/php.ini )。
您的命令行调用明确地将一个用于 cli,我猜您的网络服务器将“另一个”用于 nginx。
我希望他们平等并创建了一个软链接......
推荐阅读
- java - 密钥提取如何与 Java Comparator.comparing() 方法一起使用?
- r - 将多个 PDF 文件转换为文本(R 语言)
- javascript - 如何使用嵌套子文档制作数组的猫鼬模式
- node.js - 隐藏节点js和angular8的端口号
- sql - 如何编写更好的 SQL 语句进行数据验证
- android - 如何在 Android Studio 中执行命令?
- r - 通过R执行SQL查询后清除缓存
- python - check_hostname 需要币安的 server_hostname
- java - Spring Boot Batch:获取 Reader 可连接的 ExecutionContext
- java - 如何在 JFrame 中将图像设置为背景