目录

xiuno 论坛常见问题之后台插件卸载不成功

在搭建和运维 Xiuno 论坛的过程中,插件的安装和卸载应该是站长用的比较多的,插件可以丰富站点的功能和界面,

然而,很多站长或多或少会遇到插件安装和卸载的问题,在后台安装插件/卸载插件,界面虽然提示成功,但是一刷新,插件的状态依旧没变,还是处于修改前的状态。

很多战长都不是开发出身,遇到此类问题完全不知道该如何解决。

其实这类问题的根源大多集中在权限、配置、代码这几个核心维度。

本文将带大家了解问题的具体原因以及如何才能解决这个问题。

当然,如果你不关心具体原因,只需要解决方法,您可以选择直接跳转到 解决方法,查看问题的解决方案。

原因分析

Xiuno 论坛的插件机制基于文件挂载和数据缓存实现的,安装和卸载都是是在 plugin目录下对应插件目录下的 config.json 文件内进行配置

比如 tt_check 插件下的 conf.json 文件如下:

{
    "name": "兔兔审核插件",
    "brief": "发帖审核、回帖审核、新注册用户审核、编辑审核、软删除(主题回收站)。",
    "version": "2.0",
    "bbs_version": "4.0.4",
    "installed": 1,
    "enable": 1,
    "hooks_rank": [],
    "overwrites_rank": [],
    "dependencies": []
}

installed:表示是否安装,1表示安装,0表示未安装

enable:表示是否开启,1表示开启,0表示禁用

在后台插件页面,对插件进行安装/卸载/启用/禁用,本质上就是修改这个 conf.json 文件,所以如果操作安装/卸载/启用/禁用失败,

可以进入插件目录查看此文件是否被修改为正确的值。

结合实操经验,卸载失败的常见原因可归纳为 :

  1. 插件文件权限不足:插件所在目录(plugin/)或文件无写入/删除权限,导致系统无法删除文件;
  2. 插件存在依赖关联:目标插件被其他插件或论坛核心功能依赖,强制卸载会触发保护机制;
  3. 插件文件损坏或不完整:插件安装包本身有缺陷,或安装过程中断,导致卸载脚本无法正常执行。
  4. 插件操作接口调用失败

解决方法

常见的解决方法有以下几种,可以依次尝试解决

解决方法一:

修改插件目录,这种一般是因为权限不足,导致文件修改失败,

增加 xiuno 插件 plugin 目录权限

进入服务器,

找到项目部署的 xiuno 目录,在该目录下执行以下命令:

# 创建插件目录,存在也可以执行,不用担心不会覆盖
mkdir -p plugin

# 关键命令,授权目录的权限
chmod -R 777 plugin

执行完成后,记得进入后台清理下缓存,然后再进行插件的安装/卸载操作就可以了,

如果操作还是不行,可以继续试一下另外一种方法

解决方法二: 修改网站根目录 xiuno/view/js/bbs.js 文件,将下面代码取消注释(去掉前面的 //)

window.location = jthis.attr('href');

如果你懂点开发,你会发现在后台插件操作后,界面虽然提示成功,但是实际上并没有发起请求,那么这行代码就是罪魁祸首

执行完成后,记得进入后台清理下缓存,然后再进行插件的安装/卸载操作就可以了,

总结

xiuno 论坛后台插件安装/卸载/启用/禁用失败,一般情况下都是因为 xiuno 的 plugin 目录权限不足,比如 plugin 目录的写权限不够,这就会导致 xiuno 的接口操作插件的 conf.json 配置写入失败,最直接的解决方法就是进入 xiuno 目录下的 plugin 目录,增加该目录的写权限,就可以完美解决。如果还不行,可以参考解决方法中的第二个方法,打开对应的代码块。

所有操作完成后一定要记得到后台管理清理缓存,才能生效。

如果权限和代码修改后仍旧失败,那么可以从以下几个方面进行排查:

  1. 插件本身问题:插件本身不符合插件开发规则,插件的版本问题,是否和你搭建的xiuno的版本一致,一般在插件目录下 conf.json 配置中的 bbs_version 写明了版本;

  2. 网络或浏览器缓存:客户端网络不稳定,或浏览器缓存导致上传接口请求异常。

  3. 插件冲突,是否安装了多个相同类似的插件

另外,建议日常运维中:安装插件前先查看依赖说明,避免安装存在强依赖的插件;卸载前先禁用插件观察功能稳定性,再执行卸载;定期清理论坛缓存和冗余插件,保持系统轻量化。减少问题的产生

如果大家对 Xiuno 论坛插件问题的排查还有其他不清楚的地方,或者有不同的排查经验,欢迎在评论区交流~~~

版权声明

未经授权,禁止转载本文章。
如需转载请保留原文链接并注明出处。即视为默认获得授权。
未保留原文链接未注明出处或删除链接将视为侵权,必追究法律责任!

本文原文链接: https://fiveyoboy.com/articles/xiuno-err-plugin-uninstall/

备用原文链接: https://blog.fiveyoboy.com/articles/xiuno-err-plugin-uninstall/