`
feitu_jeff
  • 浏览: 44592 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

PHP大文件下载解决

阅读更多

附件中有两个下载类,直接拿来可以用,都支持断点续传、速度限制,但是在linux都不能下载超过2G文件(都使用了fopen,但由于文件超过2G,无法返回文件句柄) ,不过在windows上测试超过2G的可以下载。

php下载类.zip (其中有个类需要BC高精函数库支持,linux上yum -y install php-bcmath)

 

超过2G解决方案:

一种直接将2G文件放到服务器目录下,通过url直接访问文件下载。 这个。。。不管怎么样也解决了问题

另一种通过apache拓展库mod_sendfile进行下载

代码片段如下:

 

 

$file = "XXX.zip";
header("Content-type: application/octet-stream");
header('Content-Disposition: attachment; filename="' . basename($file) . '"');
header("X-Sendfile: $file");

 

 关键代码为header("X-Sendfile: $file");

 

 

下面说下xsendfile模块安装,网上已经有,我稍微整理下

 

1. 获取mod_xsendfile文件(https://tn123.org/mod_xsendfile/);
2. 安装apxs,只要安装httpd-devel就可以
    yum install httpd-devel
3. 安装xsendfile模块 apxs -cia mod_xsendfile.c
4. 向httpd.conf中增加配置,/tmp 修改为文件存放目录
 XSendFilePath /tmp
   
5. 目录文件中增加.htaccess,文件内容为
<Files XXXXX.php>
XSendFile on 
</Files>


 

分享到:
评论

相关推荐

    php readfile下载大文件失败的解决方法

    相关资料和教程可以在专业网站上找到,如《php文件操作总结》、《PHP网络编程技巧总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》以及《php常见数据库...

    PHP文件下载

    PHP文件下载类就是为了解决这个问题而设计的,它封装了处理文件下载所需的核心功能,使得开发者可以更方便、高效地实现文件的下载服务。下面将详细阐述PHP文件下载的原理以及如何使用此类。 首先,理解PHP是如何...

    制作个php网页,当访问该PHP页面时自动下载文件,本例为下载APK APP安装包.zip

    在PHP中创建一个网页以实现访问时自动下载文件的功能,主要涉及到HTTP协议、文件系统操作以及用户代理检测等知识。以下是对这些知识点的详细说明: 1. **HTTP响应头控制**: 当用户访问PHP页面时,服务器需要通过...

    phpword.zip

    在IT行业中,PHPWord是一个非常实用的开源库,专门用于创建和...无论是简单的文本插入还是复杂的文档排版,PHPWord都能提供有效的解决方案。如果你需要在PHP项目中处理Word文档,那么PHPWord无疑是一个值得考虑的工具。

    解决PHP搭建大文件如何上传(图文)

    在PHP环境中,大文件上传是一个常见但又需要注意的问题。默认情况下,PHP对上传文件的大小有限制,通常为2MB,这可能导致用户在尝试上传超过这个限制的大文件时遇到错误。要解决这个问题,我们需要调整PHP配置文件`...

    php下载远程文件到本地存储的函数类.zip

    这个压缩包"php下载远程文件到本地存储的函数类.zip"提供了一个专门解决这个问题的函数类,它可以帮助开发者更方便、高效地处理此类任务。下面我们将详细讨论这个函数类的工作原理、使用方法以及可能涉及的相关知识...

    phpstudy php5.2.17nts 下载

    2. 解压下载的压缩包,通常会有一个名为“php5.2.17nts”的文件,这便是我们要使用的PHP解释器。 3. 进入PHPStudy的配置界面,选择添加新的PHP版本,指向解压后的PHP目录。 4. 配置环境变量,确保系统能够识别PHP...

    大型项目中定位文件的PHP库.zip

    例如,`Locator::find('path/to/start', '*.php')` 将会找到指定目录下所有的PHP文件。 4. **面向对象编程**: 这个库很可能采用了面向对象的设计,提供了类和接口来处理文件定位的逻辑。例如,可能有一个`...

    PHP的FPDF的中文包chinese.php

    1. **字体引入**:添加支持中文的TrueType字体文件,如SimSun(宋体)、Arial Unicode MS等,这些字体包含了大部分中文字符。 2. **函数扩展**:扩展FPDF的核心类,添加新的方法用于设置中文字体、大小和样式。 3....

    php5环境配置文件

    一、Apache服务器配置 ...下载Apache的Win32版本(httpd-2.4.33-Win32-VC15.zip),这是专门为Windows系统优化的。解压后,将其放置在您...配置过程中遇到问题时,可以参考配置文档.doc中的指导或在线搜索解决方案。

    php各个版本的openssl的dll文件包

    总的来说,这个文件包提供了一站式的解决方案,帮助Windows PHP用户轻松解决OpenSSL扩展的依赖问题。正确安装和配置这些dll文件,可以让你的PHP应用充分利用OpenSSL的强大功能,保证数据的安全传输,增强系统的安全...

    分享nginx+php-fpm实现大文件下载排坑的过程

    在互联网上,下载大文件是一项常见的需求,但也是存在一定挑战的任务,尤其是当涉及到使用Nginx和PHP-FPM来实现时。当服务器配置不当,或者代码实现存在漏洞时,很容易导致下载过程中出现问题,例如下载中断、下载...

    php导出word文档(支持样式导出)

    最后,我们使用`IOFactory`创建一个Writer对象,设置HTTP头以下载文件,然后保存Word文档到HTTP输出流。 然而,要注意的是,不是所有的HTML样式都能完美地转换为Word样式,特别是涉及到CSS3和某些浏览器特定的属性...

    js+php分片上传大文件学习demo(上传进度条、解决php单文件上传大小限制)

    3. 利用后台代码(PHP)驱动上传文件分片,且需要上传分片的索引值和总分片数; 4. 后台上传代码识别到最后一个分片后,需要将已上传的分片进行合并,合并后保存为一个完整的新文件。 具体详情,参考代码。

    基于PHP的在线文档管理系统源码.zip

    【基于PHP的在线文档管理系统源码】是一款专为毕业设计而打造的应用,它利用PHP语言构建,旨在提供一个便捷、高效的在线文档管理解决方案。通过这个系统,用户可以上传、存储、检索、编辑和分享各种类型的文档,实现...

    php实例文件下载更多例子

    这个"php实例文件下载更多例子"的资源包,显然是为了帮助初学者和有经验的开发者更好地掌握PHP编程语言。PHP(Hypertext Preprocessor)是一种广泛使用的开源脚本语言,特别适合于Web开发,可以嵌入到HTML中使用。...

    PHP多文件上传插件,PHP+jQuery+Ajax多图片上传

    在PHP开发中,多文件上传是一项常见的功能,尤其在处理用户提交的图片或者文档时。本插件结合了PHP、jQuery和Ajax技术,提供了一种高效、用户友好的多图片上传解决方案。通过Ajax异步传输,用户可以在不刷新页面的...

    基于PHP的文件管理系统

    【基于PHP的文件管理系统】是一种实现企业内部文档高效管理和协作的解决方案。PHP(Hypertext Preprocessor)作为服务器端脚本语言,以其开源、跨平台和易用性在Web开发领域广泛应用。配合MySQL数据库和Apache HTTP...

Global site tag (gtag.js) - Google Analytics