设为首页收藏本站

ZMX - IT技术交流论坛 - 无限Perfect,追求梦想 - itzmx.com

 找回密码
 注册论坛

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

用百度帐号登录

只需两步,快速登录

搜索
查看: 1375|回复: 1

discuz论坛程序支持附件多线程下载办法,Range请求不支持响应206状态码修复

[复制链接]
 成长值: 336

签到天数: 4737 天

[LV.Master]伴坛终老

发表于 2021/11/9 01:41 | 显示全部楼层 |阅读模式 |Google Chrome 95.0.4638.69|Windows 10
天涯海角搜一下: 百度 谷歌 360 搜狗 有道 雅虎 必应 即刻
discuz论坛程序支持附件多线程下载办法,Range请求不支持响应206状态码修复

问题原文
附件下载对Range请求不支持响应206状态码吗?不能断点续传
请求头部附加
Range: bytes=0-
服务器不响应206
还是说这是我web环境问题?
感觉也不是,因为附件下载是PHP输出的,测试直接把7z文件放服务器上不经过php,静态直链输出是支持响应206的

HTTP协议如下:
The If-Range HTTP request header makes a range request conditional: if the condition is fulfilled, the range request will be issued and the server sends back a 206 Partial Content answer with the appropriate body. If the condition is not fulfilled, the full resource is sent back, with a 200 OK status.
This header can be used either with a Last-Modified validator, or with an ETag, but not with both.
The most common use case is to resume a download, to guarantee that the stored resource has not been modified since the last fragment has been received.

参考:https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Range

在单个请求中,Range头信息能够询问多个范围,这种特性称为"多部分范围(multipart ranges)"

解决办法
改config_global.php配置文件
搜索
  1. $_config['download']['readmod'] = 2;
复制代码


修改为4实测可行,已经支持Range 206成功,下载过程模式4额外内存占用对比模式2多了10M,完全可以接受
  1. $_config['download']['readmod'] = 4;
复制代码


关联:https://gitee.com/Discuz/DiscuzX/issues/I4H4VB

比如disucz的四种读取文件模式,默认值是2
// 附件下载相关
//
// 本地文件读取模式; 模式2为最节省内存方式,但不支持多线程下载
// 如需附件URL地址、媒体附件播放,需选择支持Range参数的读取模式4,其他模式会导致部分浏览器下视频播放异常
// 1=fread 2=readfile 3=fpassthru 4=fpassthru+multiple
$_config['download']['readmod'] = 2;

欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复

使用道具 举报

签到天数: 1167 天

[LV.10]以坛为家III

发表于 2021/12/14 01:57 | 显示全部楼层 |Google Chrome 96.0.4664.93|Windows 10
不懂标记路过
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册论坛 新浪微博账号登陆用百度帐号登录

本版积分规则

手机版|Archiver|Mail me|网站地图|IT技术交流论坛 ( 闽ICP备13013206号-7 )

GMT+8, 2024/12/23 17:46 , Processed in 0.103296 second(s), 21 queries , MemCache On.

Powered by itzmx! X3.4

© 2011- sakura

快速回复 返回顶部 返回列表