gpt4 book ai didi

cakephp - 尝试了一切,但无法关闭 CakePHP 中的错误

转载 作者:行者123 更新时间:2023-12-04 05:03:00 25 4
gpt4 key购买 nike

我已尽我所能来阻止在 CakePHP 中显示错误。我已经检查了 CakePHP 说明手册,并在 Internet 和 stackoverflow 上搜索了诸如“关闭 CakePHP 中的错误报告”和“关闭 CakePHP 中的 Debug模式”之类的短语。以下是对仍在显示的错误的描述,以及我试图在 CakePHP 中隐藏这些错误的方法:

我仍然遇到的错误

  • 错误一:我故意在其中一个中错误地声明了一个变量我的 Controller 类来测试错误是否正在显示和接收“解析错误:语法错误,意外的 T_VARIABLE,期待 T_FUNCTION(文件路径和行号)”

  • 错误二:我尝试在 URL 中输入一堆乱码作为测试它是否会显示错误。我得到一个“失踪来自 Cake 的 Controller ”错误。

我已尝试阻止错误显示的内容

  • 配置::写入('调试', 0); (编辑为零)在\app\Core.php

  • error_reporting(0); (添加行)在\app\Config\bootstrap.php

  • Configure::write 在\app\Core.php 的数组中有一个 'level' 键,所以我将它从“E_ALL & E_DEPRECATED”更改为 0。然后我尝试将其清空。

  • 向 public_html 添加了一个 php.ini 文件,其中包含一大堆用于关闭错误的命令。我还删除了这个文件,以确保它一直都没有干扰。

  • 在\lib\Cake\Utility\Debugger.php 中注释掉了 ___construct() 的部分(这从页面的标题标签中删除了错误消息,当在 url 中输入乱码而不是缺少 Controller 错误)。顺便说一句,错误消息被放入 HTML 标题中。这很奇怪。

  • 注释掉 echo $self->outputError($data);在\lib\Cake\Utility\Debugger.php 中显示错误

  • 仔细检查了手册的“部署”页面,这让我看到了“调试”页面。该页面讨论了设置“Configure::debug”,它的写法与“Configure::write('debug', 0);”略有不同。所以我尝试了变体。

  • 我在所有包含 php 的目录中搜索了短语“error_reporting(”和“ini_set(”,以确保我没有在某处启用错误而忘记了。

如果有人知道为什么尽管我已经尝试过这些仍然显示,或者可以做些什么来关闭它们,我将非常感激。

谢谢。

最佳答案

我尝试了 Mark 的建议,它奏效了。当我在我的整个 Cake 安装中搜索“Configure::write('debug'”时,我发现了很多行来打开调试——尽管其中大部分都存在于从官方 CakePHP 站点下载的原始文件中。作为一个实验,我复制了我的 Cake 安装,更改了所有将 debug 设置为高于 0 的实例,并且成功了。然后,假设其中一些应该存在,但不确定哪些应该存在在那里,我决定完全删除 CakePHP,下载一个新的副本并替换它。

在我配置了新的 core.php 之后,丢失的 Controller 错误被替换为未找到的错误,我出于测试目的故意造成的解析错误被替换为内部服务器错误。我不确定显示内部服务器错误是它应该做的......但是在编辑调试设置后行为确实发生了变化,并且它不再显示文件路径。所以,我猜它的行为方式应该如此。

我想感谢 Mark 帮助我解决了这个问题,但他只发表了评论。

关于cakephp - 尝试了一切,但无法关闭 CakePHP 中的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14866508/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com