CodeIgniter似乎吞下(而不是记录)PHP分析错误。为什么?

伦布朗

这让我发疯。

我在Centos-Apache-PHP服务器(PHP 7.2.6)中安装了最新CodeIgniter(3.1.9)的完整副本。

在全球范围内,我的PHP将错误记录到(说)/var/www/logs/php_err.log

我检查是否确实PHP Parse error: syntax error, unexpected 'public' (T_PUBLIC)...在任何非CI PHP页面中都记录了我的PHP错误,包括解析错误()。它还记录解析错误是否在包含的文件中发生require_once()

我还检查了在CI应用程序代码(控制器或模型)中是否在调用时将其记录在其中error_log("something");

我什至还检查是否故意破坏了CI index.phpasd在打开后添加一行<?php,则解析错误会出现在我的日志中。

问题在于(例如)控制器中的解析错误(例如,删除中的第一个大括号application/controllers/Welcome.php),给出了一个普通的500错误页面,而日志文件中没有任何内容

通过将环境从更改为productiondevelopment我可以在网页中看到解析错误。但日志中仍然没有任何内容。而且,无论如何,我绝对希望日志中还有生产中的错误!

如果我将整个“ ERROR_REPORTING”块注释掉,问题仍然存在 index.php

为什么会这样呢?

亚历克斯

默认情况下,Codeigniter使用其自己的错误报告系统。要获取错误记录,请查看config.php文件$config['log_threshold'];变量上方有一个定义表,用于定义不同的值等于什么,但我认为可以满足$config['log_threshold'] = 1;您的要求(默认为0,即关闭)。如果用于生产/开发的文件夹不同,则应为两个配置文件修改此变量。默认情况下,如index.php生产所示,将通过以下行抑制输出错误:ini_set('display_errors', 0);

日志将显示在application/logs/目录中,并按进行组织Y-m-d H:i:s

希望这能回答您的问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么会停止记录 PHP 错误?

为什么这似乎不是随机的?

为什么cherrypy服务器似乎可以记录错误消息?

为什么堆栈溢出似乎导致程序挂起而不是分段错误?

为什么我收到该错误:XML内容似乎不是XML

为什么记录错误的项目?

为什么此代码似乎存在错误?

为什么=!似乎在PHP的合法条件?

为什么使用 map 给我错误( .map 不是函数),我的代码中似乎一切正常?

为什么平等在Python中似乎不是对称关系?

为什么使用i ++的for循环似乎增加2而不是1?

为什么我的多进程队列似乎不是线程安全的?

为什么laravel的updateOrCreate创建新记录而不是更新记录?

为什么jquery.blockUI吞下onClick事件?

为什么发生CodeIgniter安装错误

为什么在PHP 7.2而不是PHP 7.4.5上出现语法错误?

为什么它似乎调用错误的方法?

为什么这些print()调用似乎执行顺序错误?

为什么 EF Core 2.0 似乎生成了错误的值?

为什么此错误不是例外

为什么“ keys ::”不是语法错误?

为什么JUnit超时是错误而不是失败?

为什么ArrayIndexOutOfBoundsException不是编译时错误?

为什么会出现“不是函数”错误?

为什么“ in”运算符使用字符串文字抛出错误而不是将其记录为false?

为什么使用 codeigniter 的列表不显示所有记录?

如果php不是数组,为什么不显示未定义的索引错误?

在PHP中,为什么imagecreatefromjpeg“不是jpeg文件”更改为致命错误?

分析:为什么查询时间可能会花费这么长时间,而且成本似乎很低?