这几点在做免费php空间站的取回备份数据的时候,遇到了一丢丢难题,不想在存放异地备份的服务器上再搞一套会员系统,只是“简单”的将数据进行混淆后MD5加密,在下载时就会暴露出真实的下载地址,为防止“有心人”猜测到加密方式,所以文件真实地址就不能暴露了,经过查询,可用readfile函数搞定这个问题。

if(file_exists($file)){
   function downloadFile($fileName,$fileUrl)
    {
        ob_end_clean();
        header('Content-Type: application/octet-stream');
        header('Content-Disposition: attachment; filename="'. $fileName . '"');
        header('Content-Transfer-Encoding: binary');
        @readfile($fileUrl);
        exit;
    }

调用时代码

downloadFile($filename,$file);

$filename是下载的文件名,$file时文件的真实地址。