关于下载系统防盗链的问题!!!

tboer 2002-12-21 11:50:04
在asp的下载系统上我试过多种办法,没有一种有效。今日发现一种php的防盗链方法十分有效,根本不能得到真实下载地址,各位不妨一试:

http://www.df365.org/modules/mydownloads/

其代码如下:
<?php
$dir=$HTTP_GET_VARS["dir"];
$file=$HTTP_GET_VARS["file"];
$url=parse_url($HTTP_REFERER);
if($url[host]!=$HTTP_HOST){echo "要下载本软件请到<a href=http://www.df365.org>东方小屋</a>";exit;}
if(empty($dir))$dir="/";
if(empty($file)){echo "未指定要下载的文件!";exit;}
$rootdir="文件存放的根目录";
$realurl=$rootdir.$dir;
chdir($realurl);
if(!file_exists($file)){echo "对不起,此链接已经失效,请在下载页面上向我们报告,谢谢!";exit;}
$filename=$file;
header("Cache-control: private"); // fix for IE
header("Content-Type: application/octet-stream");
header("Content-Length: ".filesize($filename));
header("Content-Disposition: attachment; filename=$filename");
$fp = fopen($filename, 'r');
fpassthru($fp); // ** CORRECT **
fclose($fp);
?>
使用时向这个页传递两个参数
$dir=文件所在子母录
$file=文件名

我想要在asp中实现,问题是这一行:
$fp = fopen($filename, 'r');
在PHP中fopen函数可以打开文件或url,而asp的fso好象只可以打开文件,请问各位大虾有无解决办法?或者有其他类似的解决方案?

...全文
99 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
tboer 2002-12-22
  • 打赏
  • 举报
回复
这篇文章很不错,看来不用组件asp是没戏了。不过还是有收获,分都给孟子大人了。
kuflash8 2002-12-21
  • 打赏
  • 举报
回复
ok
孟子E章 2002-12-21
  • 打赏
  • 举报
回复
另外,下载的文件不要放在虚拟目录下

http://www.csdn.net/Develop/read_article.asp?id=13004
孟子E章 2002-12-21
  • 打赏
  • 举报
回复
传递参数
<a href="down.php?id=234">
在php里判断是从哪来的,如果本站就转向下载即可
tboer 2002-12-21
  • 打赏
  • 举报
回复
具体点?
ahalf 2002-12-21
  • 打赏
  • 举报
回复
只能用发送二进制流的方式

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧