使用php实现隐藏文件实际位置的文件下载

        //检查文件是否存在
        if (!is_file($file)) { die("文件不存在"); }
        
        
//取得文件大小
        $len = filesize($file);
        
//取得不包含路径信息的文件名
        $filename = basename($file);       
        
        
//输出http头信息
        header("Pragma: public");
        
header("Expires: 0");
        
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
        
header("Cache-Control: public");
        
header("Content-Description: File Transfer");
        
Header("Content-type: application/application/octet-stream");
        
header("Content-Disposition: attachment; filename=". $filename); 
        
header("Content-Transfer-Encoding: binary");
        
header("Content-Length: " . $len);
        
//输出文件
        @readfile($file);



这个方法可以很好的实现隐藏文件具体位置。
但是有个问题我一直无法解决,就是如何实现断点续传功能。
在实际使用中如果使用flashget之类的断点续传软件会下载不到文件。


更具体的例子可以参见:
http://cn.php.net/manual/zh/function.header.php
中的note部分。
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值