使用老数据库安装 typecho 后报各种错误的解决方案

使用老数据库安装 typecho 后报各种错误的解决方案

梦浪的小虾米
2021-09-29 / 0 评论 / 2,974 阅读 / 正在检测是否收录...

骚操作

博主喜欢折腾自己的服务器,每次折腾完后,都无法把服务器进行复原操作,导致 linux 环境出现各种各样的问题,没办法只好备份 typecho 数据库,然后重新安装系统,安装完后,安装 typecho 博客。然后 typecho 博客总是会出现各种各样的错误。

错误类型

例如:

  1. class '这里是某个名字' not found
  2. class '这里是某个名字' not exist

总之,就是各种提示找不到文件或者找不到类。

错误原因

因为我的 typecho 会安装很多的插件,然后我又不备份我的插件和主题,所以就导致了插件的主题找不到,那么就没有解决方案了吗?

答案是当然

如何解决

  1. 打开你的 typecho 数据库,找到 options 表
  2. 使用如下 sql 进行搜索 [本步骤不是必须] 我的表前缀是 typecho_ ,请自行修改成你的

    select * form typecho_options where name='plugins';

    然后把所得结果进行备份或者直接进行下一步

  3. 把 options 表的 name='plgins'; 的 value 变成 a:0:{} 注意:我的表前缀是 typecho_ ,请自行修改成你的

    UPDATE `typecho_options` SET `value` = 'a:0:{}' WHERE `name` = 'plugins'

搞定,收工。博客首页可以正常打开了。

 如果您想恢复自己以前的插件

对照着上面的第二步的操作所备份的字段进行查找自己的插件。如何查找?

例如我的 value :

a:2:{s:9:"activated";a:4:{s:7:"TeStore";a:1:{s:7:"handles";a:1:{s:21:"admin/menu.php:navBar";a:1:{i:0;a:2:{i:0;s:14:"TeStore_Plugin";i:1;s:6:"render";}}}}s:8:"AddTheme";a:1:{s:7:"handles";a:1:{s:21:"admin/menu.php:navBar";a:1:{i:0;a:2:{i:0;s:15:"AddTheme_Plugin";i:1;s:6:"render";}}}}s:6:"Spider";a:0:{}s:6:"Donate";a:1:{s:7:"handles";a:3:{s:24:"rootvip.cn.Donate:Donate";a:1:{i:0;a:2:{i:0;s:13:"Donate_Plugin";i:1;s:6:"render";}}s:21:"Widget_Archive:header";a:1:{i:0;a:2:{i:0;s:13:"Donate_Plugin";i:1;s:5:"style";}}s:21:"Widget_Archive:footer";a:1:{i:0;a:2:{i:0;s:13:"Donate_Plugin";i:1;s:2:"js";}}}}}s:7:"handles";a:4:{s:21:"admin/menu.php:navBar";a:2:{i:0;a:2:{i:0;s:14:"TeStore_Plugin";i:1;s:6:"render";}s:5:"0.001";a:2:{i:0;s:15:"AddTheme_Plugin";i:1;s:6:"render";}}s:24:"rootvip.cn.Donate:Donate";a:1:{i:0;a:2:{i:0;s:13:"Donate_Plugin";i:1;s:6:"render";}}s:21:"Widget_Archive:header";a:1:{i:0;a:2:{i:0;s:13:"Donate_Plugin";i:1;s:5:"style";}}s:21:"Widget_Archive:footer";a:1:{i:0;a:2:{i:0;s:13:"Donate_Plugin";i:1;s:2:"js";}}}}
  1. 打开 https://www.bejson.com/convert/deserialize/
  2. 在上面输入 对应的 value
  3. 复制得到 json 打开在线 json 工具(请自行搜索使用 json格式化工具)
  4. 然后 会得到如下格式:

    {
        "activated": {
            "TeStore": {
                "handles": {
                    "admin\/menu.php:navBar": [
                        ["TeStore_Plugin", "render"]
                    ]
                }
            },
            "AddTheme": {
                "handles": {
                    "admin\/menu.php:navBar": [
                        ["AddTheme_Plugin", "render"]
                    ]
                }
            },
            "Spider": [],
            "Donate": {
                "handles": {
                    "rootvip.cn.Donate:Donate": [
                        ["Donate_Plugin", "render"]
                    ],
                    "Widget_Archive:header": [
                        ["Donate_Plugin", "style"]
                    ],
                    "Widget_Archive:footer": [
                        ["Donate_Plugin", "js"]
                    ]
                }
            }
        },
        "handles": {
            "admin\/menu.php:navBar": {
                "0": ["TeStore_Plugin", "render"],
                "0.001": ["AddTheme_Plugin", "render"]
            },
            "rootvip.cn.Donate:Donate": [
                ["Donate_Plugin", "render"]
            ],
            "Widget_Archive:header": [
                ["Donate_Plugin", "style"]
            ],
            "Widget_Archive:footer": [
                ["Donate_Plugin", "js"]
            ]
        }
    }
  1. 查看 4 中的 activated 下面的东西就可以了,例如本文中包含的名字

    • TeStore
    • AddTheme
    • Donate
    • Spider 这个里面啥也没有,先忽略
  2. 打开你的 typecho 插件安装工具,搜索第 5 步中出现的字段名字

    例如: AddTheme 然后点击安装。 OK ,安装成功

End

OK, 真正的打完收工了

如果您对本文有任何的疑惑都可以评论哦,作者看到后就会回复了。希望能够帮到您。

1

评论 (0)

取消