thinkphp51遇到的一次没有权限的错误的处理Fatal error: Uncaught think\exception\ErrorException: mkdir()

在使用Cocos开发并实现注册功能时,尽管数据库写入成功,但控制台返回500错误。问题根源是ThinkPHP的日志文件无法创建,由于runtime/log目录缺少777权限导致。开启debug模式后,找到了具体的异常信息。解决方案是将项目runtime/log目录的权限设置为777,从而允许日志写入。

首先说一下过程,用cocos开发,注册帐号功能的时候,点击注册按钮,注册成功了,数据库写入成功了,但是consle返回的确是500 intent err,如果直接通过网页返回的是正常结果,只是在按了F12后,才有一个错误提示,各种找原因,找不到,然后通过开启thinkphp的debug模式,返回如下错误:

Fatal error: Uncaught think\exception\ErrorException: mkdir(): Permission denied in /www/wwwroot/default/ctr/thinkphp/library/think/log/driver/File.php:61 Stack trace: #0 [internal function]: think\Error::appError() #1 /www/wwwroot/default/ctr/thinkphp/library/think/log/driver/File.php(61): mkdir() #2 /www/wwwroot/default/ctr/thinkphp/library/think/Log.php(224): think\log\driver\File->save() #3 /www/wwwroot/default/ctr/thinkphp/library/think/Error.php(94): think\Log->save() #4 [internal function]: think\Error::appShutdown() #5 {main} thrown in /www/wwwroot/default/ctr/thinkphp/library/think/log/driver/File.php on line 61

经过不断搜索,终于找到原因,是runtime目录没有给到777权限,日志写入失败导致的报错。

解决:

把 项目根目录/runtime/log 目录的权限改成 0777即可

如图:在这里插入图片描述
右击此文件夹,然后找到权限,更改为777,便解决了

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值