php隐藏实际地址的文件下载方法


Posted in PHP onApril 18, 2015

本文实例讲述了php隐藏实际地址的文件下载方法。分享给大家供大家参考。具体如下:

下面这段php代码可不透露实际的文件下载地址。

function download_document($filename,$path="",$mimetype="application/octet-stream")
{
 header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
 header("Content-Disposition: attachment; filename = $filename");
 header("Content-Length: " . filesize($pathto . $filename));
 header("Content-Type: $mimetype");
 echo file_get_contents($pathto . $filename);
}

实现方法二:

<?php
$file = "1.txt";// 文件的真实地址(支持url,不过不建议用url)
if (file_exists($file)) {
  header('Content-Description: File Transfer');
  header('Content-Type: application/octet-stream');
  header('Content-Disposition: attachment; filename='.basename($file));
  header('Content-Transfer-Encoding: binary');
  header('Expires: 0');
  header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
  header('Pragma: public');
  header('Content-Length: ' . filesize($file));
  ob_clean();
  flush();
  readfile($file);
  exit;
}
?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
BBS(php &amp; mysql)完整版(七)
Oct 09 PHP
在PHP里得到前天和昨天的日期的代码
Aug 16 PHP
输入值/表单提交参数过滤有效防止sql注入的方法
Dec 25 PHP
php实现Linux服务器木马排查及加固功能
Dec 29 PHP
php将文本文件转换csv输出的方法
Dec 31 PHP
PHP访问数据库集群的方法小结
Mar 14 PHP
phpcms的分类名称和类别名称的调用
Jan 05 PHP
PHP判断数组是否为空的常用方法(五种方法)
Feb 08 PHP
yii2.0整合阿里云oss的示例代码
Sep 19 PHP
PHP count()函数讲解
Feb 03 PHP
Yii框架ACF(accessController)简单权限控制操作示例
Apr 26 PHP
php array 转json及java 转换 json数据格式操作示例
Nov 13 PHP
php实现用于计算执行时间的类实例
Apr 18 #PHP
php递归遍历多维数组的方法
Apr 18 #PHP
php实现二进制和文本相互转换的方法
Apr 18 #PHP
php使用指定字符列表生成随机字符串的方法
Apr 18 #PHP
php准确计算复活节日期的方法
Apr 18 #PHP
PHP使用Face++接口开发微信公众平台人脸识别系统的方法
Apr 17 #PHP
PHP学习笔记(三):数据类型转换与常量介绍
Apr 17 #PHP
You might like
php使用exec shell命令注入的方法讲解
2013/11/12 PHP
PHP中设置一个严格30分钟过期Session面试题的4种答案
2014/07/30 PHP
为PHP安装imagick时出现Cannot locate header file MagickWand.h错误的解决方法
2014/11/03 PHP
浅析PHP7新功能及语法变化总结
2016/06/17 PHP
PHP实现根据密码长度显示安全条
2017/07/04 PHP
JS跨域总结
2012/08/30 Javascript
firefox浏览器不支持innerText的解决方法
2013/08/07 Javascript
Javascript表格翻页效果实现思路及代码
2013/08/23 Javascript
复制网页内容,粘贴之后自动加上网址的实现方法(脚本之家特别整理)
2014/10/16 Javascript
JavaScript重载函数实例剖析
2016/05/13 Javascript
web前端vue之vuex单独一文件使用方式实例详解
2018/01/11 Javascript
原生JS实现网页手机音乐播放器 歌词同步播放的示例
2018/02/02 Javascript
vue 实现axios拦截、页面跳转和token 验证
2018/07/17 Javascript
vue+echarts实现动态绘制图表及异步加载数据的方法
2018/10/17 Javascript
Vue 递归多级菜单的实例代码
2019/05/05 Javascript
jquery实现动态改变css样式的方法分析
2019/05/27 jQuery
详解从vue-loader源码分析CSS Scoped的实现
2019/09/23 Javascript
node.js 如何监视文件变化
2020/09/01 Javascript
[01:50]2014DOTA2西雅图邀请赛 专访欢乐周宝龙
2014/07/08 DOTA
Python中的连接符(+、+=)示例详解
2017/01/13 Python
Python编程求质数实例代码
2018/01/31 Python
深入理解python中sort()与sorted()的区别
2018/08/29 Python
Django框架实现分页显示内容的方法详解
2019/05/10 Python
Python 多进程、多线程效率对比
2020/11/19 Python
python中复数的共轭复数知识点总结
2020/12/06 Python
CSS3 mask 遮罩的具体使用方法
2017/11/03 HTML / CSS
Lululemon英国官网:加拿大瑜伽服装品牌
2019/01/14 全球购物
Fossil美国官网:化石手表、手袋、首饰及配饰
2019/02/17 全球购物
俄罗斯连接商品和买家的在线平台:goods.ru
2020/11/30 全球购物
初中生期末考试的自我评价
2013/12/17 职场文书
企业安全生产演讲稿
2014/05/09 职场文书
我与祖国共奋进演讲稿
2014/09/13 职场文书
常务副总经理岗位职责
2015/02/02 职场文书
2016年公司新年寄语
2015/08/17 职场文书
2016年教师节特级教师获奖感言
2015/12/09 职场文书
MYSQL主从数据库同步备份配置的方法
2021/05/26 MySQL