我正在尝试使用jQuery-File-Upload插件为大文件实现简单的分块文件上传。我将 GitHub-repo 克隆到一个文件夹中,并将我的更改main.js
为以下内容:
$('#fileupload').fileupload({
maxChunkSize: 10000000,
add: function (e, data) {
var that = this;
$.getJSON('server/php/', {file: data.files[0].name}, function (file) {
data.uploadedBytes = file && file.size;
$.blueimp.fileupload.prototype.options.add.call(that, e, data);
});
}
});
如文档中所述。这适用于最大 2GB 的文件(我可以在控制台和服务器上看到分块),但是当我尝试上传大于 2.1GB 的文件时,会发生以下情况:最后一个数据块将正确附加到现有文件myUpload.file
,然后脚本将开始编写一个新文件myUpload.file (1)
,从头开始,客户端和服务器端都不会抛出任何错误。当第二个文件达到 2.1GB 的大小时,也会发生同样的情况。文件的进度计数器将被重置,而整体进度计数器将溢出并告诉我我完成了 142%(和计数)。
我在服务器端运行 PHP 5.3.5。
我已经尝试摆弄 , 的设置max_post_size
,就像插件的常见问题解答和关于 SO 的这个问题upload_max_file_size
中描述的那样,但没有任何成功。我还在 GitHub 上发现了这个听起来很相似的问题,但它在没有任何实际输入的情况下就关闭了。memory_limit
除了摆弄php.ini
设置之外,我对此一无所知。