维护啦:提供专业网站维护服务,以实惠、方便、快捷著称!一次服务,终身朋友! ·付款帐号 ·联系我们
网站维护,网站维护教程,如何维护网站
网站维护热线: 网站维护咨询热线 网站维护:
网站维护
网站建设: 网站建设
首页
维护介绍
维护套餐
案例分享
维护申请
维护反馈
维护知识
行业动态
联系我们
建站服务请点这里>>
网站维护申请
当前位置:网站维护 > 维护知识 > 程序知识

ASP教程,ASP实现防盗链的方法

来源:网站维护 作者:www.weihula.com 人气: 2016-7-22
内容提示:ASP防盗链对于广告做网站的朋友来说一直是个头疼的问题,盗链严重影响了服务器及网站的正常运行,放盗链变的十分需要了,今天一起来看看一个ASP防盗链的实现方法吧。
   ASP防盗链对于广告做网站的朋友来说一直是个头疼的问题,盗链严重影响了服务器及网站的正常运行,放盗链变的十分需要了,今天一起来看看一个ASP防盗链的实现方法吧。
    如果我们知道一个静态文件的实际路径如:http://www.xx.com/download/webjx.pdf,如果服务器没有作特别的限制设置,我们就可以毫不费力的把它下载下来!当网站提供webjx.pdf下载时,怎么样才能让下载者无法得到他的实际路径呢!本文就来介绍如何使用Asp来隐藏文件的实际下载路径。
  我们在管理网站文件时,可以把扩展名一样的文件放在同一个目录下,起一个比较特别名字,例如放pdf文件目录为the_pdf_file_s,把下面代码另存为down.asp,他的网上路径为http://www.xx.com/down.asp,我们就可以用http://www.xx.com/down.asp?FileName=webjx.pdf来下载这个文件了,而且下载者无法看到这个文件实际下载路径的!在down.asp中我们还可以设置下载文件是否需要登陆,判断下载的来源页是否为外部网站,从而可以做到防止文件被盗链。
<%
From_url = Cstr(Request.ServerVariables("HTTP_REFERER"))
Serv_url = Cstr(Request.ServerVariables("SERVER_NAME"))
if mid(From_url,8,len(Serv_url)) <> Serv_url then
response.write "非法链接!" ''防止盗链
response.end
end if
if Request.Cookies("Logined")="" then
response.redirect "/login.asp" ''需要登陆!
end if
Function GetFileName(longname)''/folder1/folder2/file.asp=>file.asp
while instr(longname,"/")
longname = right(longname,len(longname)-1)
wend
GetFileName = longname
End Function
Dim Stream
Dim Contents
Dim FileName
Dim TrueFileName
Dim FileExt
Const adTypeBinary = 1
FileName = Request.QueryString("FileName")
if FileName = "" Then
Response.Write "无效文件名!"
Response.End
End if
FileExt = Mid(FileName, InStrRev(FileName, ".") + 1)
select Case UCase(FileExt)
Case "ASP", "ASA", "ASPX", "ASAX", "MDB"
Response.Write "非法操作!"
Response.End
End select
Response.Clear
if lcase(right(FileName,3))="gif" or lcase(right(FileName,3))="jpg" or lcase(right(FileName,3))="png" then
Response.ContentType = "image/*" ''对图像文件不出现下载对话框
else
Response.ContentType = "application/ms-download"
end if
Response.AddHeader "content-disposition", "attachment; filename=" & GetFileName(Request.QueryString("FileName"))
Set Stream = server.createObject("ADODB.Stream")
Stream.Type = adTypeBinary
Stream.Open
if lcase(right(FileName,3))="pdf" then ''设置pdf类型文件目录
TrueFileName = "/the_pdf_file_s/"&FileName
end if
if lcase(right(FileName,3))="doc" then ''设置DOC类型文件目录
TrueFileName = "/my_D_O_C_file/"&FileName
end if
if lcase(right(FileName,3))="gif" or lcase(right(FileName,3))="jpg" or lcase(right(FileName,3))="png" then
TrueFileName = "/all_images_/"&FileName ''设置图像文件目录
end if
Stream.LoadFromFile Server.MapPath(TrueFileName)
While Not Stream.EOS
Response.BinaryWrite Stream.Read(1024 * 64)
Wend
Stream.Close
Set Stream = Nothing
Response.Flush
Response.End
%>
【声明】本文章系本站编辑转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与本站联系,我们将在第一时间删除内容!
收藏本页到:

感谢您对维护啦的大力支持!

上一篇 上一篇:ASP Server object error的解决办法
下一篇 下一篇:公共免费服务探访:多家4A景区免费Wi-Fi掉链子
返回文章目录 返回维护知识
icon-008.jpg (3733 bytes) icon-009.jpg (3728 bytes)
维护啦是做什么的,点此了解>>
维护啦的优势是什么,点此了解>>
维护啦服务有哪些,点此了解>>
维护服务申请,点这里>>
维护动态 网站维护套餐介绍 更多动态 维护动态
·入门型网站维护服务 申请>>
·标准型网站维护服务 申请>>
·经济型网站维护服务 申请>>
·商务型网站维护服务 申请>>
·豪华型网站维护服务 申请>>
·专业型网站维护服务 申请>>
·订制型网站维护服务 申请>>
维护动态 网站维护案例 更多动态 维护动态
西箔侯铝箔餐盒
铜川市重德热力运营管理有限公司
青海旅游包车
西安中联传感技术有限公司
莱德种业
维护动态 网站维护知识 更多动态 维护动态
·域名知识 ·空间知识
·网页知识 ·程序知识
·数据库知识 ·邮件知识
·安全知识 ·优化知识
·营销知识 ·其他知识
网站维护 网站维护申请 网站维护申请点此进入 网站维护意见反馈 反馈意见

网站维护电话咨询

网站维护 返回顶部
关于维护啦 | 案例分享 | 维护套餐 | 维护申请 | 意见反馈 | 维护知识 | 行业动态 | 友情链接 | 网站导航 | 联系方式
2023 © 网站维护 www.weihula.com 版权所有 ICP11006297