解决DEDECMS移动data文件夹后生成网站地图和rss报错的办法
使用DEDECMS做网站的时候,为了安全起见,系统为提示我们要把data这个文件夹给转移到上一层目录,但是这样会导致DEDECMS生成rss地图以及网站地图会出错,因为它们默认的生成文件等都是在data的文件夹中,那有什么办法来弥补这样的错误呢,接下来就为大家详细的介绍转移data文件夹后怎样正确的生成网站地图和rss文件
第一步:登录服务器或者空间,在网站根目录下建立rss文件夹,是为了装rss的生成文件。
下面修改文件都是以dedecmsv5.7为例,其中所指的第多少号不一定那么精确!
第二步:修改根目录下dede文件夹(默认是dede,但是为了安全起见,一般建议更改为其它名称)下的makehtml_map.php文件,
第26行:将$cfg_cmspath."/data/sitemap.html";中的/data删除
变成为: $cfg_cmspath."/sitemap.html";
第31行:将$cfg_cmspath."/data/rssmap.html";中的/data删除
变成为: $cfg_cmspath."/rssmap.html";
第三步:修改根目录下include下的地图类文件(sitemap.class.php)文件,
第74行:将$typelink = $GLOBALS['cfg_cmsurl']."/data/rss/".$row->id.".xml";中的/data删除
变成为:$typelink = $GLOBALS['cfg_cmsurl']."/rss/".$row->id.".xml";
第118行:$typelink = $GLOBALS['cfg_cmsurl']."/data/rss/".$row->id.".xml";中的/data删除
变成为: $typelink = $GLOBALS['cfg_cmsurl']."/rss/".$row->id.".xml";
第四步:修改网站根目录下include下面的(rss视图类文件)arc.rssview.class.php文件
第101行: 将:$murl = $GLOBALS['cfg_cmspath']."/data/rss/".$this->TypeID.".xml";中的/data删除
变成为: :$murl = $GLOBALS['cfg_cmspath']."/rss/".$this->TypeID.".xml";
第二三四步:如果你仔细的观察就会发现,都是把那个/data删除就可以啦,因为这个目录不存在,所以要删除
第五步:修改/templets/default模板文件中的头部文件(head.htm文件)
将
<li><a href="{dede:global.cfg_dataurl/}/sitemap.html">网站地图</a></li>
<li><a href="{dede:global.cfg_dataurl/}/rssmap.html">RSS订阅</a></li>
替换为
<li><a href="{dede:global.cfg_cmsurl/}/sitemap.html">网站地图</a></li>
<li><a href="{dede:global.cfg_cmsurl/}/rssmap.html">RSS订阅</a></li>
第六步:登录网站后台,更新网站地图,更新RSS文件,更新所有文件。