Php 大文件上传

Php 大文件上传,php,file,upload,Php,File,Upload,我正在开发一个允许在web服务器上上传和存储大型文件的应用程序。目前我正在使用PHP通过http处理发布的文件。我的php.ini设置为: upload_max_filesize = 100M post_max_size = 100M memory_limit = 128M max_input_time = 6000 max_execution_time = 6000 似乎没有为LimitRequestBody设置任何apache指令。我使用APC跟踪文件上传进度。由于某种原因,文件上传总是在

我正在开发一个允许在web服务器上上传和存储大型文件的应用程序。目前我正在使用PHP通过http处理发布的文件。我的php.ini设置为:

upload_max_filesize = 100M
post_max_size = 100M
memory_limit = 128M
max_input_time = 6000
max_execution_time = 6000
似乎没有为LimitRequestBody设置任何apache指令。我使用APC跟踪文件上传进度。由于某种原因,文件上传总是在50米左右停止

我知道http并不是文件上传的最有效解决方案,但这个应用程序需要用户友好,而且我知道ftp存在防火墙问题

我想知道是否有人能给我一些建议,到底是什么让我的下载停止在50米?它必须是某种配置设置

<> P>另外,我还需要考虑使用JavaScript/PHP和HTTP进行文件上传工作。我研究了java小程序和使用flash。可能会使用swfuploader,但如果是服务器配置导致我通过http上传失败,我真的不知道java小程序或flash上传程序如何解决这个问题

我应该注意到,我希望找到一个解决方案,允许我在某个时候上传高达1GB的超大文件

我使用非常简单的PHP来接收文件

$uploaddir = '/'.$_POST['upload_directory'].'/';
$uploadfile = $uploaddir . basename($_FILES['file']['name']);

if (is_uploaded_file($_FILES['file']['tmp_name'])) {
    if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) {  some success code; }

显然还有更多的内容,但这就是我处理上传的要点。

在vhost中设置LimitRequestBody指令


经过几个小时的头痛,我已经解决了这个问题。我将Extjs用于前端组件。我正在使用的upload小部件中有一个硬编码设置,它将POST请求的MAX_uuUpload_FILESIZE属性设置为50M,超过了我在别处设置的值。它现在正在按预期工作。谢谢你的评论。

你是如何上传文件的,以及上传后你在做什么?简单的php是\u upload\u file()和move\u upload\u file()命令,并将文件从$\u文件中取出这篇文章是关于如何设置LimitRequestBody来限制上传大小的。如果我没有设置LimitRequestBody,那么它不是已经无限了吗?表示“如果客户端请求超过该限制,服务器将返回错误响应,而不是为请求提供服务”。如果你在浏览器中没有收到错误响应,这不是问题……是的,我没有收到错误,所以我知道这不是问题。我没有足够的“声誉”来否决这个答案,但这个答案根本没有帮助