是否通过php上传非常大的文件(例如500mb)?

时间:2010-09-07 12:10:42

标签: php post upload

我创建了一个简单的Web界面,允许各种用户上传文件。我将上传限制设置为100mb,但现在结果是客户端偶尔想要上传文件500mb +。

我知道如何更改php配置以更改上传限制,但我想知道通过php上传此大小的文件是否有任何严重的缺点?

显然ftp会更好,但如果可能的话,我宁愿没有两种不同的上传文件的方法。

由于

3 个答案:

答案 0 :(得分:4)

首先,FTP绝不是首选。对任何事情。

我认为你的意思是你通过HTTP传输文件。虽然没有FTP那么糟糕,但如果你能找到另一个解决问题的话,这不是一个好主意。 HTTP(以及组件程序)在围绕互联网传输相对较小的文件时进行了优化。

虽然协议支持服务器到客户端范围请求,但它不允许反向操作。即使两端的软件不受卷的影响,您推送的数据越多,可能会丢失连接的时间间隔越大。但最大的问题是最后一句中的警告。

答案 1 :(得分:1)

无论您使用哪种服务器技术(PHP或其他),在同步模式下一次扫描大文件绝不是一个好主意。

有许多插件可供任何技术/框架为您进行异步上传。

除了连接超时之外,还有一个缺点是文件上载消耗了Web服务器内存。你通常不希望这样。

答案 2 :(得分:1)

PHP将处理尽可能多的文件,因为您将允许它。但是考虑到在PHP中恢复中止上传基本上是不可能的,因为脚本在上传完成之后才会被激活。文件越大,网络故障杀死上传的可能性就越大,浪费了大量的时间和带宽。同样,如果没有APC的额外工作,或使用像uploadify这样的东西,就没有进度报告,用户只会盯着浏览器,除了悸动之外没有明显的实际工作迹象。