附件中有两个下载类,直接拿来可以用,都支持断点续传、速度限制,但是在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模块安装,网上已经有,我稍微整理下
2. 安装apxs,只要安装httpd-devel就可以
yum install httpd-devel
3. 安装xsendfile模块 apxs -cia mod_xsendfile.c
4. 向httpd.conf中增加配置,/tmp 修改为文件存放目录
5. 目录文件中增加.htaccess,文件内容为
<Files XXXXX.php>
XSendFile on
</Files>
分享到:
相关推荐
主要介绍了php readfile下载大文件失败的解决方法,涉及php针对大文件的分割及逐块下载操作实现技巧,需要的朋友可以参考下
php上传文件大小限制的解决办法。各种方法的总结。
解决PHP搭建大文件如何上传
3. 利用后台代码(PHP)驱动上传文件分片,且需要上传分片的索引值和总分片数; 4. 后台上传代码识别到最后一个分片后,需要将已上传的分片进行合并,合并后保存为一个完整的新文件。 具体详情,参考代码。
JAVA文件文档在线预览项目解决方案,对标业内付费产品有【永中office】【office365】【idocv】等,该项目使用流行的spring boot搭建,易上手和部署,支持主流办公文档的在线预览,如doc,docx,Excel,pdf,txt,zip,rar,...
所以要解决的问题具体来讲有以下几点: 对上传的文件进行分割,每次只上传一小片。服务端接收到文件后追加到原来部分,最后合并成完整的文件。 每次上传文件片前先获取已上传的文件大小,确定本次应切割的位置 每次...
php上传大文件,分片上传,分享完美解决php无法上传大文件的方法,无法上传大文件是因为php.ini配置有限制了,这样限制了用户默认最大为2MB了,webuploader上传大文件到服务器。
这是维护版本。在此版本中,PHPMailer获得了官方的PHP 8兼容性;早期版本可在PHP 8预发行版中使用...解决了由于修复了一个非常老的PHP错误而导致的PHP 8换行问题 使用旧的openssl函数时避免警告 改善Travis-CI构建配置
1、修复大文件上传,上传到100%,合并文件这步容易失败(失败原因是文件越大合并耗时越长,超出运行时间就会超时失败,增加设置长运行时间来解决) 2、增加断点续传功能(标题写有 断点续传,试了下和代码里也没看到...
php文件生命 (2)分数 (3)游戏状态 (4)火力状态 (5)光标位置 2)介质 显示器,电脑 4) 显示和其它输出的视听特性 颜色、布局、字体、图标和其它显示元素; 5) 包之间的关系:
php无法上传大文件完善解决方案_.docx
本篇文章是对PHP超大文件下载,断点续传下载的解决方法进行了详细的分析介绍,需要的朋友参考下
本文实例讲述了php使用fgetcsv读取csv文件出现乱码的解决方法。分享给大家供大家参考。具体分析如下: 一般来说在php中碰到乱码多半是编码问题,在这里我们实例分析了fgetcsv读取csv文件乱码原因所在与解决方法。 ...
3、启动php zip支持,windows环境下在php配置文件php.ini中,将extension=php_zip.dll前面的分号“;”去除;(如果没有,请添加extension=php_zip.dll此行并确保php_zip.dll文件存在相应的目录),然后同样在php.ini...
PHP深度分析:101个核心技巧、窍门和问题解决方法(原书第2版).pdf、PHP 内核文档.chm。
php无法上传大文件完善解决方案__2.docx
php无法上传大文件完善解决方案__1.docx