dedecms:没有该栏目数据?别担心,可能缓存文件没有更新...

2020年03月20日

  系统搬家后或在系统还原后,重新更新栏目或文件的时候,有时会出现这样的错误提示:没有该栏目数据 可能缓存文件(data/cache/inc_catalog_base.inc)没有更新 请检查是否有写入权限
 
  这时大家都去改文件或文件夹的写入权限,一般会去改成777或755,但实际上这并不管用。其实解决方法很简单,只要做到以下三步即可
 
  1. 把inc_catalog_base.inc缓存文件删掉
 
  2. 更新系统缓存,点“生成——>更新系统缓存——>开始执行”就可以了
 
  3. 然后重新生成栏目,就不会出现错误提示了。
 
  二、尝试一般性的解决方案:
 
  1.在网站管理后台,点击左侧“核心”——“网站栏目管理”,进入栏目管理,在右上方找到“更新栏目缓存”,点击,更新缓存,提示“操作成功,正在返回……”;
 
  开始以为这样更新一下缓存,就可以了,谁知,再次生成栏目html,依然提示“没有该栏目数据, 可能缓存文件(/data/cache/inc_catalog_base.inc)没有更新, 请检查是否有写入权限”。于是,于是开始进一步的尝试:
 
  2.登录ftp,找到data/cache目录,删掉inc_catalog_base.inc文件,然后重复1的操作,刷新ftp的data/cache目录,inc_catalog_base.inc出现,说明是有写入权限的;
 
  再次点生成栏目html,依然提示“没有该栏目数据, 可能缓存文件(/data/cache/inc_catalog_base.inc)没有更新, 请检查是否有写入权限”……很顽固,便想到肯定是8月3日的这次更新出了什么问题,于是,开始根据生成html的makehtml_list.php文件开始搜集线索,一一查验文件,最后发现,原来是dede目录下的config.php在本次更新中,被织梦的工作人员不小心给改错了,在此教大家如何改回来这个错误:
 
  3.打开dede目录(织梦系统的后台管理目录),找到config.php文件打开,查找第86行:
 
  $fp1Header = "<{$phph}phprnglobal $_Cs;rn$_Cs=array();rn";
  修改为:
  $fp1Header = "<{$phph}phprnglobal $cfg_Cs;rn$cfg_Cs=array();rn";
 
  4.继续向下,到第90行:
  fwrite($fp1,"$_Cs[{$row->id}]=array({$row->reid},{$row->channeltype},{$row->issend});rn");
  修改为:
  fwrite($fp1,"$cfg_Cs[{$row->id}]=array({$row->reid},{$row->channeltype},{$row->issend});rn");
 
  5.保存文件,进入后台,重复1的操作更新栏目缓存,然后点击生成栏目html,不在提示错误了,栏目正常生成。
 
  荣胜网络官网有海量移动建站的精品案例,为您提供网络营销一站式服务,荣胜网络官网链接 https://www.rswl.cc/