最近遇到一个问题,就是网站首页总是无故被删除,想了好久也想不出个原因。刚开始以为是被入侵了,但后来发现是缺少表字段,听我慢慢道来:
最早发现这种情况时,我都会去后台在按一下生成首页,如图:
但是有件事我觉得很奇怪,第二天生成好的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
最早发现这种情况时,我都会去后台在按一下生成首页,如图:
但是有件事我觉得很奇怪,第二天生成好的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