转移织梦data目录文件的方法步骤

2021年10月21日16:08:41 评论 2450字阅读8分10秒

转移织梦data目录文件的方法步骤

说到网站安全的问题,那就不得不先说下data目录文件了,data目录是系统缓存和配置文件的目录,一旦此目录文件被攻击后,那对网站可能就是致命的了,一般来说,data目录都有可以读写的权限,只要是能够写入的目录都可能存在安全隐患,很多站长甚至给予这个目录可执行的权限,更是非常危险。所以我建议大家将这个data目录搬移出Web可访问目录之外。所以今天我要在我网站平台上给大家分享的就是如何将data目录搬移出Web访问目录。

1、首先将data目录转移到非Web目录下

我们这里以“D:\dedecms\v57”为例,当作我们系统的根目录,我们需要将目录下的data文件夹(如下图)迁移要上一级目录(非Web目录),简单的办法直接剪切或者拷贝即可。

我们移动上一级目录中,注意观察文件路径,此时我们将“D:\dedecms\v57”转移为“D:\dedecms\”。

2、修改DEDEDATA目录的配置常量文件

找到系统目录下/include/common.inc.php文件,修改DEDEDATA常量为你的系统目录(如下图),也就是将默认的“define('DEDEDATA', DEDEROOT.'/data');”改成“define('DEDEDATA', DEDEROOT.'/../data');”

3、配置tplcache缓存文件目录

进入系统后台,在配置中修改tplcache目录为你想对目录。如下图所示:

按照以上三个步骤,可以说我们已经基本完成了data目录的转移了。那么接下来你可能会发现我们常用的网站地图和生成的JS文件,可能会显示路径不正确;后台登陆不显示验证码了;移动后发布文章时候联动类别不显示和后台登陆不显示验证码的问题。即使你想要转移回去,可发现问题也依然存在。

对于这种情况,我们还需要把整个程序里所有关于调用到'/data'改成'/../data' 。而不仅仅是上面官方说的

那几个。下面我就挨个说下以上所提到问题的解决方法:

1、转移data目录后验证码不显示或者输入验证码一直提示错误

不显示验证码的站长请改一下“/include/vdimgck.php”文件,也要修改一下调用的DATA路径,找到“$im = @imagecreatefromjpeg(dirname(__FILE__).'/data/vdcode.jpg');”的代码,改成你网站现在的路径,如下图所示:

2、首页index.php文件无法正常显示

对于这种情况,还需要把首页中index.php中的/data/改为/../data。如下图所示:

3、网站地图和JS文件的显示路径错误

DEDECMS默认生成的rss地图以及网站地图一般都是生成在DATA的文件夹中,但是这个是一个非常重要的文件夹,一般我们在Robots.txt设置中是禁止搜索引擎爬行这文件夹的,这就造成了一方面是data目录转移而找不到准确的路径;另一方面,我们禁止了搜索引擎的蜘蛛爬取的低级错误。对于这个问题,我也在这跟大家分享一个两全其美的办法。

其具体的方法步骤是:

(1)、在根目录下建立rss文件夹。

(2)、修改根目录下你的管理员文件夹(默认是dede)下的makehtml_map.php文件。
  将17行的$cfg_cmspath."/data/sitemap.html";改为:$cfg_cmspath."/sitemap.html";
  将22行的$cfg_cmspath."/data/rssmap.html";改为:$cfg_cmspath."/rssmap.html";

注:17行是普通网站地图,22行是RSS的网站地图

(3)、修改根目录下include下面的arc.rssview.class.php
  将71行的$murl = $GLOBALS['cfg_cmspath']."/data/rss/".$this->TypeID.".xml";
          改为:
    $murl = $GLOBALS['cfg_cmspath']."/rss/".$this->TypeID.".xml";

(4)、修改根目录下include下的sitemap.class.php
将74行的$typelink = $GLOBALS['cfg_cmsurl']."/data/rss/".$row->id.".xml"; 改为:$typelink = $GLOBALS['cfg_cmsurl']."/rss/".$row->id.".xml";
  将118行的$typelink = $GLOBALS['cfg_cmsurl']."/data/rss/".$row->id.".xml"; 改为:$typelink = $GLOBALS['cfg_cmsurl']."/rss/".$row->id.".xml";

(5)、修改/templets/default模板文件head.htm

  <li class="r3"><a href="{dede:global.cfg_dataurl/}/data/sitemap.html">网站地图</a></li>
  <li class="r4"><a href="{dede:global.cfg_dataurl/}/data/rssmap.html">RSS订阅</a></li>
  改为:
  <li class="r3"><a href="{dede:global.cfg_cmsurl/}/sitemap.html">网站地图</a></li>
  <li class="r4"><a href="{dede:global.cfg_cmsurl/}/rssmap.html">RSS订阅</a></li>

最后,进入后台,更新网站地图,更新RSS文件,更新主页即可。

好了,按照以上的步骤,我们就将data目录顺利迁移出去了。如果现在你网站的data目录还在web根目录下的话,为了网站的安全,也不妨也赶快迁移一下吧!

继续阅读
  • 文本由 发表于 2021年10月21日16:08:41
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
织梦创建栏目显示模版不存在 网站建设

织梦创建栏目显示模版不存在

织梦创建栏目显示模版不存在 现在个人创建网站的人越来越多,相信大家大多数都会使用织梦系统来创建网站。我也是使用织梦来创建网站的,现在把我在使用过程中遇到问题的解决办法和大家共享,希望能帮助大家。 有时...
织梦Dedecms转wordpress搬家方法 网站建设

织梦Dedecms转wordpress搬家方法

织梦Dedecms转wordpress搬家方法 使用织梦CMS每个月都被黑,打完官方最新补丁不久又有漏洞继续被黑,算是受够了,果断把网站从天杀的dedecms中搬家到wordpress程序,网上搜索转...
生成输出织梦Dedecms全站RSS文件 网站建设

生成输出织梦Dedecms全站RSS文件

生成输出织梦Dedecms全站RSS文件 织梦后台生成更新RSS文件是按照网站栏目生成告诉用户每个栏目的RSS订阅地址,保存在data目录下,按分类生成很适合栏目或栏目文章较多的dedecms站点,小...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: