首页 新闻 会员 周边 捐助

关于控制文件下载的问题

0
悬赏园豆:50 [已解决问题] 解决于 2008-08-04 21:35
http://localhost/dftr/Email/Attachment/cl/test.rar <BR>看上面的地址 <BR><BR>我在cl(cl是用户名)文件夹下写了web.config,内容如下 <BR> <DL class=code> <DT><SPAN style="COLOR: #0000ff">&lt;?</SPAN><SPAN style="COLOR: #ff00ff">xml version="1.0" encoding="utf-8"</SPAN><SPAN style="COLOR: #0000ff">?&gt;</SPAN><SPAN style="COLOR: #000000"><BR></SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">configuration</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR>&nbsp; </SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">system.web</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR>&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">authorization</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">deny </SPAN><SPAN style="COLOR: #ff0000">users</SPAN><SPAN style="COLOR: #0000ff">="?"</SPAN><SPAN style="COLOR: #0000ff">/&gt;</SPAN><SPAN style="COLOR: #000000"><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">allow </SPAN><SPAN style="COLOR: #ff0000">users</SPAN><SPAN style="COLOR: #0000ff">="cl"</SPAN><SPAN style="COLOR: #0000ff">/&gt;</SPAN><SPAN style="COLOR: #000000"><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">deny </SPAN><SPAN style="COLOR: #ff0000">users</SPAN><SPAN style="COLOR: #0000ff">="*"</SPAN><SPAN style="COLOR: #0000ff">/&gt;</SPAN><SPAN style="COLOR: #000000"><BR>&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN style="COLOR: #800000">authorization</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR>&nbsp; </SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN style="COLOR: #800000">system.web</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR></SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN style="COLOR: #800000">configuration</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR></SPAN> <DD><PRE></PRE></DD></DL><BR>也就是说只允许cl用户才可以下载这个test.rar文件 <BR>OK,我用VS2008编译调试(本地文件系统),一切正常,当用户没有登录,或不是cl登录的时候,程序会自动跳转到login.aspx页面去。 <BR><BR>但是,当我把网站架设到IIS6.0上的时候,就不管用了,只要用户在地址栏里输入一开始的地址,不管是否登录都能下载了。 <BR>请问这是为什么啊?如何做呢?请高手们不要说隐藏地址,使用session之类的话,因为由于某些原因这个地址是无法隐藏的。
JieNet的主页 JieNet | 初学一级 | 园豆:0
提问于:2008-08-03 13:18
< >
分享
最佳答案
0
在iis6下需要自己写Handler处理这个目录下的rar文件,否则会直接当成静态文件处理;其实Handler很简单,就是先调用forms验证权限部分,验证权限,然后使用Response.WriteFile(fileName)
玉开 | 大侠五级 |园豆:8822 | 2008-08-04 11:02
其他回答(2)
0
使用的不是Forms验证?
丁学 | 园豆:18730 (专家六级) | 2008-08-03 13:51
0
解决方案:换成IIS7.0; 或者在iis5或6里把rar扩展名交给asp.net处理,并添加相应的HttpHandler. *.rar在IIS5/6里会被直接当作静态文件处理,从请求到响应的整个过程,asp.net压根就什么也不知道.
deerchao | 园豆:8367 (大侠五级) | 2008-08-03 22:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册