在使用 Dedecms CMS 时,有时会遇到后台发表或更新文章时提示“没有该栏目数据,可能缓存文件 (data/cache/inc_catalog_base.inc) 没有更新,请检查是否有写入权限”的问题。虽然提示中提到可能是写入权限的问题,但实际上大多数情况下这并不是真正的原因。

很多人看到“请检查是否有写入权限”后,通常会尝试修改相关文件的写入权限,但往往发现这种方法并没有效果。那么,我们应该如何解决这个问题呢?以下是具体的解决步骤:

解决方法:

1、首先,找到并删除位于 /data/cache/ 目录下的 inc_catalog_base.inc 文件。
删除这个文件可以清除旧的缓存数据,为后续的更新做好准备。

2、接着,进入 Dedecms 后台,点击“生成”菜单,然后选择“更新系统缓存”。
在弹出的选项中,点击“开始执行”按钮即可完成系统缓存的更新。


// 示例代码:手动删除 inc_catalog_base.inc 文件(仅作参考)
const fs = require('fs');
const filePath = './data/cache/inc_catalog_base.inc';

if (fs.existsSync(filePath)) {
    fs.unlinkSync(filePath);
    console.log('缓存文件已成功删除');
} else {
    console.log('缓存文件不存在');
}
    

通过以上两步操作,您可以有效解决“没有该栏目数据”的问题。需要注意的是,在进行任何文件操作之前,请确保您已经备份了重要数据,以防止意外情况的发生。

此外,如果您仍然遇到问题,可以检查服务器环境是否符合 Dedecms 的运行要求,例如 PHP 版本和相关扩展是否正确安装。同时,确保 data/cache 目录及其子目录具有正确的读写权限,这对于系统的正常运行非常重要。

希望这篇指南能够帮助您快速解决问题!如果还有其他疑问,请随时查阅 Dedecms 官方文档或社区支持。


注意:在实际操作中,请根据您的具体情况调整路径和权限设置,避免因误操作导致不必要的麻烦。