2012-12-12 89 views
3

我已将Plesk/apache上运行的uploadify设置为FastCGI上传到文档根目录的上传文件。这似乎适用于小于1MB的文件,但会对更大的文件创建一个ERROR 500。Uploadify只上传小文件

$(function() { 


var idx=$('.useri').val(); 
$('#file_upload2').uploadify({ 
    'multi' : false, 
    'swf'  : 'images/uploadify.swf', 
    'uploader' : 'admin_includes/uploadify.php', 
    'formData' : {'user_id': idx}, 
    'fileSizeLimit' : '10MB', 
    // Put your options here 
    // Some options 
    'onUploadSuccess' : function(file, data, response) { 
     if(data==2) 
     { 
      alert("File Extension needs to be either .docx, .doc or .pdf"); 
     } 
     else 
     { 
      var data_split=data.split("|"); 
      $('.title_holder').fadeIn(200); 
      $('.upload_hider').show(); 
      $('.added_file').html(""); 
      $('.message12').html('<p class="added_file" data-file2='+data_split[1]+'>'+data_split[0]+' Successfully Uploaded.</p>'); 

     } 
    } 
}); 
}); 

如下

safe_mode = Off 
upload_tmp_dir /tmp 
upload_max_filesize = 40M 
post_max_size = 40M 

这似乎并没有任何工作我也设置php.ini中。有什么我失踪或似乎做错了吗?

+0

也许是一个Apache'LimitRequestBody'? – Wrikken

+2

你看过你的网络服务器错误日志文件吗?这通常会产生答案 –

+1

不要忘记php的memory_limit - 你需要一个稍高于post_max_size的限制。正如Barry所说,检查服务器的错误日志。关于500代码的更多细节将在那里。 –

回答

1

感谢您的帮助,但我似乎已经解决了这个问题。 我在这个主题中没有说的是我的服务器安装了Plesk 10.3.1。看来这个版本的Plesk会将服务器配置中的maxRequestLen覆盖为128Kb。

解决的办法是在/usr/local/psa/admin/conf/templates/default/domain/domainVirtualHost.php或/ etc/httpd/conf中将其重置为1GB(正常默认大小)或所需大小。 d/fcgid.conf并重新启动服务器。

就我所知,未来版本的Plesk没有这个问题。

2

尝试将sizeLimit选项,

'sizeLimit': 5000000000 

此外,作为一个建议,你可以尝试订阅您的通话uploadify的onError的处理程序。事情是这样的,在onUploadSuccess处理后...

onError: function(a, b, c, d) { 
    if (d.status == 404) alert('Could not find upload script.'); 
    else if (d.type === "HTTP") alert('error ' + d.type + ": " + d.status); 
    else if (d.type === "File Size") alert(c.name + ' ' + d.type + ": " + d.status); 
    else alert('error ' + d.type + ": " + d.text); 
}​ 
0

您可能会收到与PHP配置有关的错误。除了upload_max_filesizepost_max_size,你应该有值:

max_execution_time 
max_input_time 

两个定义脚本的最大续航时间,该脚本应在接受输入花费的时间。

+0

正确 - 这些已被添加到我的php.ini中,但默认值(除非需要大文件上传达到1GB)似乎已经足够。我已经将上传脚本中的文件大小限制设置为15MB,所以这似乎没有问题。谢谢 :) – Sideshow