织梦系统中出现DedeTag Engine Create File False提示原因及解决方法

今天更新网站时dedecms系统时,遇到一个问题:DedeTag Engine Create File False  出现这样的提示。

其实这也不算是什么错误,我个人觉得最重要的一点就是根目录下没有给写权限。当然,我用的是Linux系统。我直接给了777权限之后就可以了。

之后在网上看到了一些答案,也贴在这里。希望对有需要的朋友有所帮助。

第一种情况:站点、文件夹权限不足造成无法建立文件

这种情况的出现,一方面可能是Apache设置的读写权限较严格,另一方面原因可能是使用者通过服务器或FTP对一些文件夹设置了错误的读写权限造成。这时候,只需修改网站根目录或相关栏目的目录上修改权限为755即可解决。

解决办法:
第一步、定位出错的文件,即查找生成什么文件时出的问题。
方法:修改 include/dedetag.class.php文件,搜索”DedeTag Engine Create File False“,会找到以下代码
$fp = @fopen($filename,”w”) or die(“DedeTag Engine Create File False”);
修改成
$fp = @fopen($filename,”w”) or die(“DedeTag Engine Create File False:$filename”);

重新生成栏目或者文档时,即可提示当前文件信息。
第二步、检查是否有写入权限,windows服务器请给予写入权限,linux服务器请给予777权限。如果目录或者文件不存在,请手工建立。
常见的错误情况有:data目录没有写入权限,html静态文件目录没有写入权限,index.html首页静态文件没有写入权限。

此时在进行生成栏目或者页面HTML操作,即可顺利进行。

第二种情况:列表、频道、文章等命名规则未填写或填写错误

此种情况较为少见,因为初级用户一般不会去修改这些东西,情况可以大致分为:

命名规则未填写(即为空)

  • 解决方法:只需填好相应的规则即可,重新选择栏目类型,也可以快速自动填写。
  • 命名规则中含有非法字符
    解决方法:将非法字符替换或删除。
  • 命名规则设置错误
    例如:命名列表页为{typedir}/{tid}.html,这种命名方式对列表只有一页的栏目是正常的,如果列表是两页或两页以上时,由于进程冲突,生成栏目就会出现 DedeTag Engine Create File False 的提示。
    解决方法:此时只需要增加{page}变量到名称中即可解决问题。
  • 生成文件的层次不对
    例如设置列表文件要在列表{typedir}目录下,不能向下再有目录比如:{typedir}/list{tid}{page}.html是对的,可以生成但是如果设置为 {typedir}/list/{tid}{page}.html这样将会出错

第三种情况:发布文章后将栏目改为了“外部链接”类型

在某个栏目里发了几篇文章,后来把这个栏目改成外连接了,更新文档时,系统还会更新这个栏目下的那几篇文章,但地址是外连接,所以无法生成文件,由此产生DedeTag Engine Create File False提示

解决方法:把栏目改回的目录,把文章删除,再改回外部链接类型。

好了,也就差不多这些了。有什么问题可以给我留言!

posted @ 2015-02-02 10:56  V青山绿水  阅读(969)  评论(0编辑  收藏  举报