首页 » 工作 » 攻防 » 正文

解决办法:防止DedeCMS网站模板文件被下载(附批量处理站点的方法)

发布者:站点默认
2012/12/6 浏览数(2,562) 分类:攻防 解决办法:防止DedeCMS网站模板文件被下载(附批量处理站点的方法)已关闭评论

如下下载别人的DedeCMS网站模板?

查看网站首页源代码可以找到模板路径:

<link  href="/templets/default/style/index.css" type="text/css"/>

之后通过工具下载对应的 list_article.htm、article_image.htm 等文件就可以了:

如何防止别人下载自己的模板?

在 templets 目录中放一个“.htaccess”文件,内容如下:

RewriteEngine on
RewriteRule .(htm|html|inc) / [R,NC,L]

将这个文件放入 templets 后所有直接打开这个目录下 htm、html 文件的操作都将被重定向到 /。

不足:不能防止 index.htm 被下载,也不能防止JS、CSS、图片被下载。因为直接打开“http://www.域名/templets/default/”就能查看 index.htm 的代码,而JS、CSS也加入禁止列表的话,网站自己也会不能访问这些文件,导致页面错乱。

已经上线的几百个网站如何批量放入“.htaccess”文件?

创建“/root/.htaccess”文件后执行下边的命令(小心操作:所有路径中包含 templets 的目录都会被放置一个“.htaccess”文件,比如后台管理目录中的“templets”目录和Dsicuz中的“templets”目录;另外“-f”参数会在覆盖已经存在的“.htaccess”文件时不给予提示,可以在使用时删除这个参数):

find /www -type d -name "templets" -print -exec cp -f /root/.htaccess {} \;

批量处理已经上线的网站,除了用上边一个目录一个目录添加 .htaccess 文件的笨办法外还有一个快捷的方法:

修改 httpd.conf 添加下边代码,就不用一个目录一个目录放置 .httaccess 文件了(只要路径中含有“templets/”,里边的 html 和 htm 都会禁止访问):

<DirectoryMatch "templets\/">
   <FilesMatch "\.html?$">
      Order allow,deny
      Deny from all
   </FilesMatch>
</DirectoryMatch>

禁止特定目录执行 php 文件可以参考这篇文章

<完>

点击返回顶部
  1. 留言
  2. 联系方式