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 相关文章推荐
利用PHP和AJAX创建RSS聚合器的代码
Mar 13 PHP
php将时间差转换为字符串提示
Sep 07 PHP
ThinkPHP模板引擎之导入资源文件方法详解
Jun 18 PHP
php中$_GET与$_POST过滤sql注入的方法
Nov 03 PHP
PHP将HTML转换成文本的实现代码
Jan 21 PHP
php实现在多维数组中查找特定value的方法
Jul 29 PHP
浅析PHP中call user func()函数及如何使用call user func调用自定义函数
Nov 05 PHP
php die()与exit()的区别实例详解
Dec 03 PHP
浅谈PHP中的面向对象OOP中的魔术方法
Jun 12 PHP
深入解析Laravel5.5中的包自动发现Package Auto Discovery
Sep 13 PHP
Ajax+PHP实现的分类列表框功能示例
Feb 11 PHP
Laravel框架控制器的request与response用法示例
Sep 30 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
source.php查看源文件
2006/12/09 PHP
php pdo oracle中文乱码的快速解决方法
2016/05/16 PHP
PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法
2017/11/10 PHP
解决laravel上传图片之后,目录有图片,但是访问不到(404)的问题
2019/10/14 PHP
javascript+xml技术实现分页浏览
2008/07/27 Javascript
JavaScript this 深入理解
2009/07/30 Javascript
javascript 循环读取JSON数据的代码
2010/07/17 Javascript
javascript中检测变量的类型的代码
2010/12/28 Javascript
浅谈js的setInterval事件
2014/12/05 Javascript
js控制输入框获得和失去焦点时状态显示的方法
2015/01/30 Javascript
jquery手风琴特效插件
2015/02/04 Javascript
js和jquery分别验证单选框、复选框、下拉框
2015/12/17 Javascript
JavaScript入门教程之引用类型
2016/05/04 Javascript
js图片放大镜效果实现方法详解
2020/10/28 Javascript
利用vue+elementUI实现部分引入组件的方法详解
2017/11/22 Javascript
JS实现运动缓冲效果的封装函数示例
2018/02/18 Javascript
Vue 页面跳转不用router-link的实现代码
2018/04/12 Javascript
关于vue中的ajax请求和axios包问题
2018/04/19 Javascript
js 递归json树实现根据子id查父id的方法分析
2019/11/08 Javascript
python分析nignx访问日志脚本分享
2015/02/26 Python
用Python解析XML的几种常见方法的介绍
2015/04/09 Python
python使用range函数计算一组数和的方法
2015/05/07 Python
Python基础教程之浅拷贝和深拷贝实例详解
2017/07/15 Python
pandas多级分组实现排序的方法
2018/04/20 Python
Opencv-Python图像透视变换cv2.warpPerspective的示例
2019/04/11 Python
Bogner美国官网:滑雪服中的”Dior”
2018/01/30 全球购物
美国气象仪器、花园装饰和墙壁艺术商店:Wind & Weather
2019/05/29 全球购物
乌克兰电子产品和家用电器购物网站:TOUCH
2019/08/09 全球购物
怎样比较两个类型为String的字符串
2016/08/17 面试题
《海伦?凯勒》教学反思
2014/04/17 职场文书
三好学生评语大全
2014/12/29 职场文书
工作违纪检讨书范文
2015/01/26 职场文书
顶岗实习协议书
2015/01/29 职场文书
春节慰问信范文
2015/02/15 职场文书
冬季作息时间调整通知
2015/04/24 职场文书
探究Mysql模糊查询是否区分大小写
2021/06/11 MySQL