当遇到无效请求,ThinkPHP6默认会显示一个默认页面。若希望获取具体错误信息,有以下两种解决方案:
首先,你可以修改配置。在config/app.php文件中,将show_error_msg设置为true。这样,访问不存在的控制器或方法时,会显示出详细的错误信息:
若需在不同的环境(如线上)保持控制,可以将APP_DEBUG设置为false,以保持默认的错误页面显示。
另一种方式是通过环境变量。在项目的根目录下,找到.example.env文件,将其重命名或直接删除.example前缀,开启debug模式。此时,再次访问未存在的资源,将看到详细的错误报错信息。
针对方法不存在的情况,可以在BaseController控制器中添加自定义的__call方法。当子控制器尝试调用不存在的方法时,程序将转而执行这个方法。需要注意,处理的可能是API请求或者返回页面,需要根据请求类型进行相应的处理。
而对于控制器不存在的情况,可以创建一个名为Error的控制器,通常放在app\controller目录下。当访问不存在的控制器时,系统会自动导向这个Error控制器,提供统一的错误处理。
本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。