| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 853 人关注过本帖
标题:asp 访问有权限的文件夹可以吗?
只看楼主 加入收藏
chg
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-4-15
收藏
 问题点数:0 回复次数:7 
asp 访问有权限的文件夹可以吗?
我不想让别人盗链接下载自己网站上的文件.我在放下载的文件的文件夹上设置了权限,想问可以用ASP访问吗
搜索更多相关主题的帖子: 权限 asp 文件 访问 
2008-06-26 09:50
chg
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-4-15
收藏
得分:0 
怎么没人回呀
2008-06-27 14:04
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
ASP好像不能访问设有读写权限的文件夹
2008-06-27 14:24
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
可以不公开文件真实路径,用asp的redirect。
当然了,这样还不够。可以用asp里读取文件内容再BinaryWrite出来,但比较费资源。
2008-06-27 22:32
chg
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-4-15
收藏
得分:0 
不公开真实路径...用了迅雷之类的软件不就出来了吗?
2008-06-28 16:53
anlige
Rank: 3Rank: 3
等 级:新手上路
威 望:7
帖 子:401
专家分:0
注 册:2006-11-3
收藏
得分:0 
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="mdb.asp"-->
<!--#include file="inc/WFile.asp"-->
<%
fileid=request.querystring("id")
'防盗链
if session(fileid)<>"canload" then 'session是通过点击下载连接产生的,点击才会产生这个session
response.write "请勿盗链本站内容!!!!<br>"&vbcrlf
response.write "请从<a href=""http://www.列表首页</a>下载本文件;<br>"&vbcrlf
response.write "若找不到文件,请使用搜索功能;<br>"&vbcrlf
response.write "非常感谢您的访问。"&vbcrlf
response.end
end if

Dim Stream
Dim Contents
Dim FileName
Dim FileExt
Const adTypeBinary = 1
'下面代码从数据库提取文件信息
sql="select Title,FileUrl from Files WHERE id="&fileid
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,1
FileName=rs(1)
fileexc=mid(FileName,instrrev(FileName,"."))
name=rs(0)&fileexc
tit=rs("Title")
rs.close
set rs=nothing
'提取文件信息结束
' 下载这个文件
Response.Clear
Response.ContentType = "application/octet-stream"
Response.AddHeader "content-disposition", "attachment; filename="&name
Set Stream = server.CreateObject("ADODB.Stream")
Stream.Type = adTypeBinary
Stream.Open
Stream.LoadFromFile Server.MapPath(FileName)
While Not Stream.EOS
Response.BinaryWrite Stream.Read(1024 * 64)
Wend
Stream.Close
Set Stream = Nothing
'下面仅仅是统计代码
m_msg="→ 来自<font color=red>"&request.servervariables("REMOTE_ADDR")&"</font>的访客在<font color=red>"&now()&"</font>下载了<font color=red>"&tit&"</font><br />"
call writeF(server.mappath("logs.asp"),m_msg) '下载记录写入文件
if arii<>"yes" then
response.cookies("user")(fileid)="yes"
response.Cookies("user").Expires=DateAdd("d", 1, now())
sql="update Files Set Download=Download+1 where id="&fileid
conn.execute sql
end if
'统计结束
conn.close
set conn=nothing
Response.Flush
Response.End
%>

http://www.
zhanghuiguoanlige@
2008-06-29 01:25
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
嗯,楼上的这个思路非常好,但是注意运行起来是非常占资源的,所以大型网站嘛……最好是用类似isapi的技术防盗链,还有一段时间改文件名
2008-06-29 08:58
chg
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-4-15
收藏
得分:0 
假如知道了你的文件名和存放路径是不是可以绕过下载页直接下载了
2008-06-30 08:33
快速回复:asp 访问有权限的文件夹可以吗?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020019 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved