PHP下载文件(隐藏真实的下载地址)

WBOY
풀어 주다: 2016-06-20 12:49:30
원래의
1202명이 탐색했습니다.

        

有时我们需要隐藏真实的文件下载地址,防止恶意下载,我们可以采用下面的方法(参考网络,侵权请告知)


以下为引用的内容:

$file_name = "example.exe";

$file_dir = "/public/www/download/";

if (!file_exists($file_dir . $file_name)) { //检查文件是否存在

        echo "文件未找到";

        exit; 

} else {

        $file = fopen($file_dir . $file_name,"r"); // 打开文件 

        // 输入文件标签

        Header("Content-type: application/octet-stream");

        Header("Accept-Ranges: bytes");

        Header("Accept-Length: ".filesize($file_dir . $file_name));

        Header("Content-Disposition: attachment; filename=" . $file_name);

        // 输出文件内容

        echo fread($file,filesize($file_dir . $file_name));

        fclose($file);

        exit;

}


而如果文件为远程文件,则原始码会有少许改动,程式如下:


以下为引用的内容:

$file_name = "example.exe";

$file_dir = "http://back.zhizhi123.com/"; 

$file = @ fopen($file_dir . $file_name,"r"); 

if (!$file) {

    echo "文件未找到";

} else {

    Header("Content-type: application/octet-stream");

    Header("Content-Disposition: attachment; filename=" . $file_name);

    while (!feof ($file)) {

    echo fread($file,50000);

}

fclose ($file);

}

这样就能用PHP直接输出文件了。 


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿