Discuz! System Error:mysqli object is already closed
前阵子硬盘出事了,在忙硬盘,现在(2024.11.22 22:00)好不容易有点空闲时间了,赶紧恢复网站。结果登录时就出现上图现象,真是让人郁闷。
想了想都是以前的配置,没有改动过,现在的目录结构和以前的都是一样的。为什么会出现这个现象呢?
先查下dz的log日志吧:发现它指向 dbi.class.php#break():0044 。但已经运行了那么长时间了,不可能是代码问题。
调试,跟进去,43行加上dd打印变量的方法,
打印出来的值,直让人郁闷:
咦?端口号3305呢?为什么不显示出来?难道只能用默认的3306端口号?我以前两个版本的mysql随便切换都可以的,为什么今天不行了呢(以前切换数据库后,并没有登录dz的动作)?
那我先统一所有mysql相关的端口号为3306看看(mysql改完要重启服务,dz也要改配置文件 config\config_global.php)。
改完端口号3306后,再次用原先的账号登录,艹,成功登录。NNDX,再来一次,把所有端口号全部改为3305(mysql改完要重启服务,dz也要改配置文件 config\config_global.php)。刷新页面,一切正常。然后再登录管理后台, 呵呵,又出现上面第一张图。至此,真相大白。
再换回3306端口号,登录:
总结:登录时会验证uc账号信息,而且只能为默认的mysql端口号3306;登录后,可以改配置文件 config\config_global.php 加上端口号3305,只是数据显示正常,依然无法登录。我了个去,你这也太不严谨了吧。 这算是一个bug吗?写完这篇博客,已经深夜11点了,手脚都冰凉冰凉的。睡觉去……明天,给官方说下看看。
唉,几个小时什么都没干成,尽是折腾,消耗时间……
页:
[1]