用传统的超连接方式提供的文件下载很容易暴露文件的路径,从而使得那些没有经授权的用户也可以下载到这些文件.如何来保护这些文件呢?下面是一个ASP实现的文件下载函数,有了它,你就不用担心会泄露文件的下载路径了...
Function downloadfile(fullpath)
downloadfile = False
Dim strfilename, s, fso, f, intfilelength
Set fso = server.createobject("scripting.filesystemobject")
If not fso.fileexists(fullpath) Then
Response.write "<br><font color=red>注意:你所请求的文件不存在!</font>"
Exit Function
End If
Set f = fso.getfile(fullpath)
获取文件大小
intfilelength = f.size
Set s = server.createobject("adodb.stream")
s.open
s.type = 1
s.loadfromfile(fullpath)
response.buffer = True
response.clear
response.addheader "content-type","application/x-msdownload"
response.addheader "Content-Encoding","GB2312"
response.addheader "content-disposition","attachment;filename=" & f.name
response.addheader "content-length" ,intfilelength
response.contenttype = "application/octet-stream"
While not s.eos
response.binarywrite s.read(1024 * 64)
关键的一句
response.flush
wend
s.close
Set s = Nothing
downloadfile = True
End Function
用ASP实现文件的下载-不保留资源的真实路径
[日志分享]
[日志信息]
该日志于 2009-02-25 16:26 由 redice 发表在 redice's Blog ,你除了可以发表评论外,还可以转载 “用ASP实现文件的下载-不保留资源的真实路径” 日志到你的网站或博客,但是请保留源地址及作者信息,谢谢!! (尊重他人劳动,你我共同努力)
呵呵,谢谢
VaTG790i.最好的<a href=http://www.kyfei.com>网站推广软件</a>,
非常好
....................
;ui;普i;uighur;ui;ui;个
在unix网络编程中看到了关于TCP/IP的一些内容,我感觉还是写的不够。正在下载中,一定
下载地址呢