我正在开发一个应用程序,允许在Web服务器上上传和存储大文件。目前,我正在使用PHP通过http处理POST的文件。我已经设置了我的php.ini文件:
似乎没有设置LimitRequestBody的Apache指令。我使用APC跟踪文件上传进度。由于某种原因,文件上传总是在恰好50M处停止。
我知道HTTP不是最有效的文件上传解决方案,但这个应用程序需要用户友好性,并且我理解FTP存在防火墙问题。
我想知道是否有人能给我一些建议,关于为什么我的下载在恰好50M处停止?这一定是某种配置设置。
此外,还有其他方法可以考虑绕过JavaScript/PHP和HTTP进行文件上传。我已经研究了Java小程序和使用Flash。可能会使用swfuploader,但如果是服务器配置导致我的上传失败,我不太清楚Java小程序或Flash上传器如何解决这个问题。
值得注意的是,我希望能够找到一个解决方案,允许我上传非常大的文件,最多达到1 GB。
我只使用简单的PHP来接收文件。
很明显,这其中还有更多细节,但大致上就是我处理上传的方式。
upload_max_filesize = 100M
post_max_size = 100M
memory_limit = 128M
max_input_time = 6000
max_execution_time = 6000
似乎没有设置LimitRequestBody的Apache指令。我使用APC跟踪文件上传进度。由于某种原因,文件上传总是在恰好50M处停止。
我知道HTTP不是最有效的文件上传解决方案,但这个应用程序需要用户友好性,并且我理解FTP存在防火墙问题。
我想知道是否有人能给我一些建议,关于为什么我的下载在恰好50M处停止?这一定是某种配置设置。
此外,还有其他方法可以考虑绕过JavaScript/PHP和HTTP进行文件上传。我已经研究了Java小程序和使用Flash。可能会使用swfuploader,但如果是服务器配置导致我的上传失败,我不太清楚Java小程序或Flash上传器如何解决这个问题。
值得注意的是,我希望能够找到一个解决方案,允许我上传非常大的文件,最多达到1 GB。
我只使用简单的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; }
很明显,这其中还有更多细节,但大致上就是我处理上传的方式。