Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 上载到5%,然后重置为0%_Php_Jquery_Fine Uploader - Fatal编程技术网

Php 上载到5%,然后重置为0%

Php 上载到5%,然后重置为0%,php,jquery,fine-uploader,Php,Jquery,Fine Uploader,我有一些问题与罚款上传。对于较小的文件(~20MB),一切都很好。但是,对于较大的文件(100MB+),文件将上载到5%左右,然后进度条将重置回0% 上载最终失败,出现“尝试解析xhr响应文本时出错(SyntaxError:输入意外结束)” 在我的端点(upload.php)中,我的最后一行是“echo json_encode($result);”$结果是一个数组,下面是相关的PHP: if (move_uploaded_file($file['tmp_name'], $target)){

我有一些问题与罚款上传。对于较小的文件(~20MB),一切都很好。但是,对于较大的文件(100MB+),文件将上载到5%左右,然后进度条将重置回0%

上载最终失败,出现“尝试解析xhr响应文本时出错(SyntaxError:输入意外结束)”

在我的端点(upload.php)中,我的最后一行是“echo json_encode($result);”$结果是一个数组,下面是相关的PHP:

if (move_uploaded_file($file['tmp_name'], $target)){
    $result = array('success'=> true);
    $result['uploadName'] = $file['name'];
} else {
    $result = array('error'=> "Upload failed");
}
header("Content-Type: text/plain");
echo json_encode($result);

这是upload.php的问题还是fine uploader出现了问题?

这是服务器端代码错误的症状。当然,您的服务器返回了一个错误。这将在javascript控制台中报告。请查看。

发现此问题是由CloudFlare引起的

我为包含上传内容的整个目录添加了一个自定义页面规则,但似乎没有任何帮助。页面规则实际上禁用了该文件夹的所有CloudFlare内容以及其中的所有内容(除非我不了解页面规则的功能)

不过,在域上暂停CloudFlare似乎可以解决这个问题。自暂停CloudFlare后,上载大文件一直有效


CloudFlare员工。

您可能需要检查php.ini文件,因为我认为默认情况下上传的限制是50MB。如果你想增加它,你必须修改你的php.ini。你是否检查了
$file['error']
中的非零值?我已经在我的dreamhost服务器上将phprc文件中的php上传限制设置为350MB。没有检查$file['error'],将很快检查并报告。我也是这么想的,但控制台并没有什么帮助。我把内容放在这里:我不确定服务器端会发生什么,导致fine uploader报告5%已上传,0%已上传。在上传最终失败之前,它会这样做3到4次。我想你忘了包含gist的链接。文本“gist with console contents”已链接。很高兴看到您如此密切地关注这个优秀的上传标签。:)javascript控制台错误消息表明服务器返回的响应不是有效的JSON。最可能的情况是,您的服务器代码正在执行一些意外的操作,导致错误进入响应。除了告诉您找出您的服务器在哪里无法正确处理请求之外,我无能为力。当您查看Chrome或Firebug的网络选项卡中的响应时,您看到了什么?网络选项卡没有显示更多内容,只显示对我的端点的请求花费了1.5分钟。但感谢您确认这是服务器端的问题。这至少缩小了可能性。