巧妹儿,点滴生活,生活点滴,都需要你来陪伴,往后余生,请多多指教。男人最幸福的事情是:一个好妻子,一份好工作,一个好身体。

2009-2022
DFHL
首页 » thinkphp » thinkphp 经典报错,处理思路。

thinkphp 经典报错,处理思路。

目前遇到过的情况:
1.报错404,大致原因是伪静态规则问题的,还有二级目录伪静态导致的。也有是访问的文件确实没有。
2.报错某个文件第几行错误。不完全打开调试模式,基本等于报个黄灯,没有卵用,打开调试模式,调试模式打开所有报错显示,可以看到详细的报错信息,才能找到真正的问题。
3.待更新

因处理一个报错有感:
最近处理了一个全站都可以打开,后台也可以打开,就是更新文章时候报错发布失败,可以修改,无法发布新文章这样一个问题。
原本以为是服务器被黑了,中毒了,这个方向入手,因为看到数据库备份丢了一个月的,怀疑是被恶意破坏的,下载下来用木马扫描扫出来4个,但是经过比对查看代码,应该是敏感词库。
本来想着小问题,最多半个小时就搞定了,最后下午下班没吃饭,又搞到凌晨1点半,最后又重做系统,睡觉,第二天再搞。
整体下来系统重做了3-4遍,因为有问题导致宝塔都无法打开,怀疑中毒的问题,一直没消除。
第二天快中午下班时候,我找孟工来看了看,孟工准备从实际报错来入手,然后打开了调试模式,又打开了调试模式大多数明确显示报错信息的模块,然后再看,具体看到了报错是,数据库有几个字段无法写入,因为字段为空,我又对比了我手动恢复的最原始数据,对比数据库发现结构都一样呢,为什么这个正常呢?
然后对比了两个服务器上的所有因素,最后发现数据库版本不一样,然后我想起来了,以前处理过这样的问题,数据库版本不一样,有的版本要求不太严密,可以容错,有的不能容错,比如你不赋值为null,那么他就不会自动赋值nul,然后如果数据库结构上要求为非空,那么就无法执行写入,最后导致数据库语句执行不了,或者执行报错无法实现数据写入,然后我想到最简单的问题就是改数据库版本。
问题原因找到,解决问题就是快,当然一般情况下就是这样子,花费大量时间都是在找病因,做个手术才多长时间。
修改数据库版本后,数据果然可以正常写入,但是遇见另外一个问题,这个问题还是老问题,就是二级目录伪静态的问题。
这个问题原本也不会消耗多长时间,可能是昨晚休息比较少,人注意力不太集中,最后对比我以前的笔记来看哪里出问题,才找到了,一个很小的地方一个细节问题导致伪静态部分地方有问题。
整体算是花费了十几个小时吧,先是进行一系列排除,然后找到了原因,来解决问题,然后处理一些常见问题。
最后说一下二级目录伪静态的问题,这个apache比nginx真的好用多了,apache放根目录就能实现伪静态太好用了。
最后二级目录伪静态终极解决方法还是我换回了apache,可能是因为我对伪静态还是不太精通吧,nginx写的二级目录伪静态,部分可以打开,部分打不开,还会出现中英文站点数据混合出现。
搞定后,同事问我什么问题,我说安排吧,到时候好好讲讲,还有你到底干什么哪些事情,开个玩笑,后来说了具体问题。
用十几个小时努力解决了问题,然后装了13.大多是自己强大的好奇心,遇见这么诡异的事情,组后还是找到了原因。最后想说,THINKPHP报错信息,调试模式不开全,真的没法看,就跟跟领导请假一样,今天家中有事请个假,其实那说不了是晚上刷剧太晚,或者游戏玩的太嗨,当然也有真的是家中急事,比如,我家孩子,晚上好好的,早上发高烧了,喂药又难,一个都弄不了,真的没法去上班。反正就是我请假都是正当理由,你们请假都是刷剧或者玩游戏太晚,哈哈。

文章如无特别注明均为原创! 作者: 等风也等你, 转载或复制请以 超链接形式 并注明出处 走近风的BLOG
原文地址《 thinkphp 经典报错,处理思路。》发布于2023年6月7日

分享到:
打赏

评论

游客

看不清楚?点图切换