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 图片文件上传实现代码
Dec 29 PHP
解析在PHP中使用全局变量的几种方法
Jun 24 PHP
php的sprintf函数的用法 控制浮点数格式
Feb 14 PHP
php中的ini配置原理详解
Oct 14 PHP
php+xml实现在线英文词典之添加词条的方法
Jan 23 PHP
PHP生成指定随机字符串的简单实现方法
Apr 01 PHP
thinkphp分页集成实例
Jul 24 PHP
PHP filesize函数用法浅析
Feb 15 PHP
使用PHPUnit进行单元测试并生成代码覆盖率报告的方法
Mar 08 PHP
php 下 html5 XHR2 + FormData + File API 上传文件操作实例分析
Feb 28 PHP
PHP实现简单日历类编写
Aug 28 PHP
linux mint下安装phpstorm2020包括JDK部分的教程详解
Sep 17 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
最贵的咖啡是怎么产生的,它的风味怎么样?
2021/03/04 新手入门
完美实现GIF动画缩略图的php代码
2011/01/02 PHP
基于MySQL体系结构的分析
2013/05/02 PHP
用PHP实现弹出消息提示框的两种方法
2013/12/17 PHP
Laravel 5框架学习之数据库迁移(Migrations)
2015/04/08 PHP
jQuery源码分析-03构造jQuery对象-工具函数
2011/11/14 Javascript
jQuery学习笔记之jQuery原型属性和方法
2014/06/09 Javascript
jQuery Ajax()方法使用指南
2014/11/19 Javascript
javascript实现的固定位置悬浮窗口实例
2015/04/30 Javascript
JavaScript学习笔记之ES6数组方法
2016/03/25 Javascript
Javascript中级语法快速入手
2016/07/30 Javascript
AngularJS入门教程之过滤器详解
2016/08/19 Javascript
jQuery 获取select选中值及清除选中状态
2016/12/13 Javascript
easyui关于validatebox实现多重规则验证的方法(必看)
2017/04/12 Javascript
Vue中div contenteditable 的光标定位方法
2018/08/25 Javascript
详解vue的双向绑定原理及实现
2019/05/05 Javascript
新手如何快速理解js异步编程
2019/06/24 Javascript
vuex 动态注册方法 registerModule的实现
2019/07/03 Javascript
如何通过Proxy实现JSBridge模块化封装
2020/10/22 Javascript
python使用pyhook监控键盘并实现切换歌曲的功能
2014/07/18 Python
python学习教程之使用py2exe打包
2017/09/24 Python
django实现用户登陆功能详解
2017/12/11 Python
python3.6+opencv3.4实现鼠标交互查看图片像素
2018/02/26 Python
浅谈Tensorflow由于版本问题出现的几种错误及解决方法
2018/06/13 Python
python3+requests接口自动化session操作方法
2018/10/13 Python
详解Python数据分析--Pandas知识点
2019/03/23 Python
python3 dict ndarray 存成json,并保留原数据精度的实例
2019/12/06 Python
基于Tensorflow一维卷积用法详解
2020/05/22 Python
Python操作word文档插入图片和表格的实例演示
2020/10/25 Python
Python用dilb提取照片上人脸的示例
2020/10/26 Python
阿联酋优惠券服务:Living Kool
2019/12/12 全球购物
2015新生加入学生会自荐书
2015/03/24 职场文书
离职证明格式样本
2015/06/12 职场文书
2019新学期家长会工作计划
2019/08/21 职场文书
nginx结合openssl实现https的方法
2021/07/25 Servers
css3 选择器
2022/05/11 HTML / CSS