日期:2012-10-10  浏览次数:20958 次

开门见山。
我们的目的:防止网站的ACCESS数据库文件被下载。
现行的办法:将数据库文件的扩展名改为.asp
缺陷:事实上即使你将扩展名改为.asp,数据库仍然可以被下载,因为这个文件里不含<%或%>等标签,所以IIS不对这个文件作任何处理,下载的数据库和原数据库完全一样!
解决方案:思路很简单,在这个文件中加入<%或%>,IIS就会按ASP语法来解析,然后就会报告500错误,自然不能下载了。
可是如果只是简单的在数据库的文本或者备注字段加入<%是没用的,因为ACCESS会对其中的内容进行处理,在数据库里他会以< %的形式存在,无效!
正确的方法是将<%存入OLE对象字段里,这样我们的目的就能达到了。
至于怎么往里加我就不废话了。如果你不会或者嫌麻烦,我已经做好了一个数据库,你下载回来后,在ACCESS中把里面那个表粘贴到你的数据库里,表名随便,然后别忘了将数据库的扩展名改成.asp,这样就ok了。其实写一个ASP页来做最方便,不过我比较懒,哈。谁空闲时间多就写一个吧。
这个数据库的下载地址:
http://huolx.533.net/nodown.mdb
http://user1.7host.com/huolx/nodown.mdb


注:上面的方法是我自己想出来的,如有雷同,实属巧合。不过我学ASP4个月了,相关的文章看得不少,还没看到有这个方法,所以写出来,希望对大家有点帮助。