前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >记一次ThinkPHP框架错误解决处理!

记一次ThinkPHP框架错误解决处理!

作者头像
二爷
发布2021-12-02 12:16:26
1.8K1
发布2021-12-02 12:16:26
举报
文章被收录于专栏:二爷记二爷记

提起Web始终不能绕过一个语言,那就是PHP,而要说到PHP的Web框架,对于php开发工程师而言,ThinkPHP和Laravel应该都是必须掌握好的框架,甚至需要熟练乃至精通一个框架!

而下面本渣渣要记录的一个网页错误就是ThinkPHP框架的,严格意义上来说应该是数据库的错误处理,以下仅供参考,仅为记录学习!

某一个正常上线的网站突然之间首页,详情页均访问不了,后台进入同样也是一个提示报错:页面错误,请稍候再试!

身为技术渣,本渣渣是彻底蒙蔽了!!!

错误代码

代码语言:javascript
复制
[10501] PDOException in Connection.php line 390
SQLSTATE[HY000]: General error: 1030 Got error 28 from storage engine
            $this->PDOStatement->execute();
            // 调试结束
            $this->debug(false, '', $master);
            // 返回结果集
            return $this->getResult($pdo, $procedure);
        } catch (\PDOException $e) {
            if ($this->isBreak($e)) {
                return $this->close()->query($sql, $bind, $master, $pdo);
            }
            throw new PDOException($e, $this->config, $this->getLastsql());
        } catch (\Throwable $e) {
            if ($this->isBreak($e)) {
                return $this->close()->query($sql, $bind, $master, $pdo);
            }
            throw $e;
        } catch (\Exception $e) {
            if ($this->isBreak($e)) {
                return $this->close()->query($sql, $bind, $master, $pdo);
            }

请注意,这是最终显示出来的错误代码,这需要设置调试模式才能看到报错,这与Django框架类似,通过调试状态的下的错误代码来知晓错误的具体情况及代码块!

ThinkPHP框架调试状态

已经上线正常的网站通常都会关闭调试状态,把报错设定为一个温馨提示,不会把具体的出错的代码块暴露出来,这个时候想要知晓具体的错误代码方便搜索查找解决方案,将ThinkPHP框架调试状态开启是一定要处理的!

未开启错误提示:

开启错误提示:

ThinkPHP框架调试开启

请注意ThinkPHP框架版本以及开发人员设置,本渣渣这里的开启仅供参考!

  • thinkphp目录中的 convention.php

经测试修改,无效!本渣渣没改对目录,这应该是总的开关!

  • application目录中的 config.php

经过测试修改,有效!这应该是项目配置的开关,开启后,具体的错误代码已更新!

  • 而具体的修改的地方,请看下面的代码
代码语言:javascript
复制
  // 应用调试模式
    //'app_debug'              => false,
    'app_debug'              => true,
代码语言:javascript
复制
 // 错误显示信息,非调试模式有效
    'error_message'          => '页面错误!请稍后再试~',
    // 显示错误信息
    //'show_error_msg'         => false,
    'show_error_msg'         => true,

很明显,开启和关闭,就是在true和false修改,而网页正常的错误提示就是'error_message' => '页面错误!请稍后再试~',这一代码!

错误解决方案

其实经过搜索资料,很容易就能得出解决方案,一搜一大把!

经过比对,的确是服务器上的磁盘空间满了,仅仅是删除了一个文件夹,网站访问就正常了!

本渣渣确实捏了一把汗!

当然还有干扰信息,虽然本渣渣按照能正常访问,但是,这个替换处理方法实际上我这边是更换了一个本地的数据库,数据倒回到了去年20年的数据!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-12-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python与SEO学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 错误代码
  • ThinkPHP框架调试状态
  • ThinkPHP框架调试开启
  • 错误解决方案
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档