我可以毫无困难地下载 1.08 GB 的文件,但此时下载总是失败。我相当确定这是因为 nginx 在将临时文件发送到客户端之前将它们写入磁盘,并且主机的 nginx 代理缓冲区限制为 1.08 GB。
我一直无法继续下载。临时文件会自动删除,下载尝试会在失败时自动从零重新开始,但不可避免地会再次失败。
我尝试过 curl、wget、各种浏览器、JDownloader 和 lftp。以上任何一项都没有运气。
有没有办法从头到尾下载大部分文件,然后再次请求它,只从头开始,从头开始,最终得到两个可以组合重新创建文件的部分?
(主机知道配置问题。他们是一个非常官僚的组织,并且要花很长时间来解决它。)
在 HTTP 中拆分传输的唯一方法是使用
Range
标头。错误 8“无效的范围标头”表示服务器发送了 curl 无法理解的回复(https://curl.se/libcurl/c/libcurl-errors.html:
所以它可能是服务器不支持范围标头,你运气不好。
“无效的范围标头”也可能意味着您给定的范围无效(例如太大),并且您可以通过传递有效范围来自己解决这个问题。