关于下载系统防盗链的问题!!!
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好象只可以打开文件,请问各位大虾有无解决办法?或者有其他类似的解决方案?