PHP安全下载文件
来源:互联网 发布:java hikariconfig 编辑:程序博客网 时间:2024/05/03 07:19
需要下载的是一个文件名为xxx.rar的文件,首先创建文件是download.php的PHP文件。通过前面的例子很容易通过文件的ID号从数据库中得到待下载文件的真实位置,在获得文件的真实存储位置后,可以通过header()函数的location参数直接重定向到这个文件。但是这样仍然是不安全的,因为某些下载软件还是可以通过重定向分析获得该文件的位置信息。因此需要用另外一种方法,就是PHP的文件处理API函数。它是通过fread()函数把文件直接输出到浏览器提示用户下载,这样所有的处理都是在服务器端完成的,因此用户就无法获得文件具体存储位置信息的,示例代码如下:
界面代码:
<!DOCTYPE html><html><head><title></title></head><body><a href="downfile.php">pigcms文件下载</a></body></html>
downfile.php代码:
$file_name = "pigcms.rar"; //下载文件名 $file_dir = "./file/"; //下载文件存放目录 //检查文件是否存在 if (! file_exists ( $file_dir . $file_name )) { echo "文件找不到"; exit (); } else { //打开文件 $fp= 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 ); //输出文件内容 //读取文件内容并直接输出到浏览器 while(!feof($fp)) { set_time_limit(0); echo fread($fp,1024); flush(); ob_flush(); } fclose ( $fp); exit (); } ?>
这样没有暴露文件存放的位置,防止非法分子得到目录路径。
0 0
- PHP 安全下载文件
- PHP 安全下载文件
- PHP安全下载文件
- PHP实现文件安全下载
- PHP实现文件安全下载
- PHP实现文件安全下载
- PHP实现文件安全下载
- PHP实现文件安全下载
- PHP实现文件安全下载
- PHP实现文件安全下载
- PHP实现文件安全下载
- 实现php文件安全下载
- 实现php文件安全下载
- PHP实现文件安全下载 (藏)
- PHP实现文件安全下载的程序
- php安全下载
- php安全下载
- php实现安全下载功能
- 常用数学符号的 LaTeX 表示方法
- 关于hibernate中一对一和一对多的之中的误区整理
- hdu 1874 畅通工程续
- 【已解决】Request exceeded the limit of 10 internal redirects due to probable configuration error.
- Android百分比布局支持库介绍——com.android.support:percent
- PHP安全下载文件
- vfork 挂掉的一个问题
- spring quartz
- 查找和排序
- 设计模式详解之享元模式
- 每个开发人员都需要了解的一个SQL技巧
- 七夕,等一人来写诗
- ListView(1)——各种Adapter的使用
- VC中Mutex的“线程所有权”