使用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、付费专栏及课程。

余额充值