| 域名空间 下载中心 社区论坛 信息公告 my小屋 |
![]() |
联系我们 设为首页 加入收藏 |
|
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿 论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图 专题 | 应用软件 | 聊天通讯 | q q 专栏 | 建站经验 | 在线工具 | 站长club | 注 册 表 | 旧版 社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 网络赚钱 | 网站地图 | 广告服务 | 服务 |
| 新版上线![旧版] | |||||
注:打开慢时请稍等
|
我们在管理网站文件时,可以把扩展名一样的文件放在同一个目录下,起一个比较特别名字,例如放pdf文件目录为the_pdf_file_s,把下面代码另存为down.asp,他的网上路径为http://www.xx.com/down.asp,我们就可以用http://www.xx.com/down.asp?filename=51windows.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 %> 编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部] 上一篇:如何灵活地运用sql injection做数据库渗透 下一篇:搜索型注入之我看---注入不分家 转载请注明来源:www.iyit.net 特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。 |
| 最新更新 | 热点排行 | 推荐新闻 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 友情链接 | ||||||
| 设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接 |
| |||||||