15-09
23

dedecms 网站首页自动被删除

    最近遇到一个问题,就是网站首页总是无故被删除,想了好久也想不出个原因。刚开始以为是被入侵了,但后来发现是缺少表字段,听我慢慢道来:
    最早发现这种情况时,我都会去后台在按一下生成首页,如图:

但是有件事我觉得很奇怪,第二天生成好的index.html,就会消失。经测试,选择“动态浏览”的时候
,程序会自动删除首页,而且这个生成首页默认的是动态浏览。那么问题就来了,别的网站后台默认的都是静态,只有这个网站,无论怎么保存,都是默认选择动态。而由于后台有专门的同事负责更新,她有时直接按生成,没有看动态还是静态造成了首页被删除。

    想到了这点,接着我找到了makehtml_homepage.htm文件,想把checked='checked'直接放在静态选项按钮上,结果发现代码是这样的:<?php echo ($row['showmod']==1)? "checked='checked'" : "";?>,这就意味着程序是从数据库中调用判断来得到动态还是静态选项的默认结果。那么为什么会是0而不是1呢?

    再说/index.html页面存在于根目录下,如果文件不存在,默认走index.php页面,这个页面中有一个判断:!file_exists('index.html'),当index.html页面不存在时,判断showmod字段,如果为1,则自动生成html

    想到这里后,果断SQL:Select * From dede_homepageset,得到的结果是:
引用内容 引用内容
记录:1templet:default/index.htm
position:../index.html
记录:2templet:default/index.htm
position:../index.html
记录:3templet:default/index.htm
position:../index.html

    就是说根本没有showmod字段,插入字段howmod` tinyint(2) NOT NULL default '1'之后,把数值调成1,再看生成首页选项,自动变成了选择静态化。


文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
相关日志:
评论: 0 | 引用: 0 | 查看次数: 401
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭