您现在的位置是:首页 > 技术交流技术交流
dedecms网站模板保护的方法
2015-06-11【技术交流】2230 人已围观
简介 相信大家用Dede架构网站的有很多吧,很多时候我们是直接复制一个templets\\default文件夹修改掉名字来达到修改模版路径...
相信大家用Dede架构网站的有很多吧,很多时候我们是直接复制一个templets\\default文件夹修改掉名字来达到修改模版路径的目的,但是如果自己做的模板,往往很多地方考虑的不周到,因为不是所有功能都用得到。访问一些不存在模板的功能,有时候会暴露模板的真实路径。
1,批量修改模版文件
方法,使用批量修改工具。比如你模版目录是templets\\0574nb.cn\\,那么你需要批量替换{dede:global.cfg_templets_skin/}和$cfg_templets_skin; ?>为/templets/default或者其他安全路径。PS,批量修改工具网上有很多,我用的服务器那个很好用(绝非AD)。
这条貌似没什么用,凡是前台能看到模版路径的一律可以直接在浏览器内打开并且浏览到。
2,模板放进数据库
用dede程序自带的自定义标记功能来防止模板被下载也不错。简单来说就是把真正的模板放到数据库里面,html模板只是一个壳子没有内容。
具体操作步骤:进dede后台,新建一个自定义标记,标记名称为0574nb。至于内容你可以把模板文件的内容全复制进去。然后把模板里的内容清空,写上自定义标记代码{dede:0574nb ismake=\'yes\'/} 好了,现在即使模板被下载,泄漏的也只是这句自定义标记而已。
3,使用网站的伪静态(url重写)功能来重置链接
A,服务器支持.htaccess(linux)文件的在根目录建一个.htaccess,按以下方法修改,
比如我的模板文件放在/templest/xahot.net/这个目录
现在我要设置一个规则,只要访问模板目录下的任何文件,都显示主页内容。
改一下.htaccess文件:
RewriteEngine On
RewriteBase /
ErrorDocument 404 /
RewriteRule templest/0574 /
注意最后那条规则,意思是只要访问的地址里面包含“templets/0574”,就会显示主页的内容。
可以看到我的模板目录名没写全,只要以0574开头就行了,这样既保护了模板,又不会暴露模板的路径。
B,IIS类网站方法httpd.ini写法(具体httpd.ini放置不多讲,可以自己搜索下)
[ISAPI_Rewrite]
#3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteRule ^(.*)/aa?(.+)$ $1/templest/0574$2.htm [L]
IIS的只能返回404错误页面,先设置一个404页面,让他随便返回吧(实际测试可用)
对于喜欢猜解路径的,不论怎样猜都返回一个错误页牛逼吧!
综述:第一种方法和最后一种方法结合起来比较好用也很有效,修改模版也方便。第二种修改起来比较麻烦,不推荐使用。
关注宁波网站建设博客,更多精彩分享,敬请期待!
Tags:
很赞哦! ()
上一篇:网站开发当中CMS的使用看法
下一篇:dedecms如何添加自定义函数
相关文章
随机图文
dedecms 获取文章列表 dede:arclist标签循环计数
案例1. 新闻文章的图片幻灯列表,就需要使用数字的导航小按钮1234以此类推。常见代码如下 {dede:arclistrow=\'...[javascript]window.history.go(-1)和window.location.go(-1)的区别
window.history.go(-1)和window.location.go(-1)的区别 虽然都跑到上一页去了,但: window...JQuery判断radio(单选框)是否选中和获取选中值方法汇总
篇文章主要介绍了JQuery判断radio(单选框)是否选中和获取选中值方法汇总,基本全部介绍到了radio的使用情况 ,本文讲解了利用获取...thinkphp 模板中存值
模板里存值,这样的场景经常使用在循环内需要对变量进行比较判断的情况下.下面我们来看看是如何做到的. 在项目开发的时候,有时候希望直接在模板...