2010-07-01 34 views
1

可能重复:
HTML Compress File Upload?如何在(上传)之前压缩100 MB文件,以便上传速度可以提高?

我从我的网站正在采取更多的时间来上传100 MB的时间(我知道这肯定需要更多的是因为这时候客户投诉大小),因此我打算上传文件,以便在上传之前将其压缩,然后上传到所需位置,然后在删除压缩格式上传文件的同时解压缩。

那么任何人都可以建议我如何进一步?

我使用PHP,有上传文件,它只是与常规文件上传functionalty形式没有笨拙的代码...

编辑我怎么能Silverlight的整合为此,在PHP?

请帮助

+1

和http://stackoverflow.com/questions/1864908/compress-file-before-upload-via-http – Palantir 2010-07-01 06:50:34

+0

我可能是错误的,但我认为服务器配置为“接受编码”或“内容编码“可能值得探索。我也会把这个问题发布到serverfault.com。在启动传输时,您可能必须在上传文件的页面上设置请求标头。这会让我感到奇怪的是,支持'gzip,deflate'的浏览器和支持'gzip,deflate'的服务器无法协商压缩文件上传。 – Andrew 2010-07-01 07:03:43

+0

还有一个想法......我看到[nochump.com](http://nochump.com/blog/archives/15)有一个Adobe Air库,可以实时压缩和解压缩文件。如果你没有足够的客户来证明自定义的上传者,这可能是一个很好的解决方案。这对他们来说很简单,你可以使用你现有的所有服务器端代码。 – Andrew 2010-07-01 07:15:39

回答

2

有没有办法来处理这样的文件,一个普通的HTML表单和PHP脚本。出于某种原因,使用浏览器的沙箱,无法访问客户端的文件系统。

您可能想要探索一个Java Applet,Silverlight,Flash类型的解决方案,在客户端可以访问该文件的内容更丰富。

Here's one example using Silverlight

0

为了压缩文件之前上传它需要在客户端完成。 PHP在这里没有用处,因为PHP仅在服务器端。

选项1:您要求客户上传已经压缩的文件(看起来像不是你想要的)。选项2:您需要一种方法来通过javascript代码在服务器端完成它 - 说实话,我怀疑是否有一个简单的解决方案,如果有的话。也许一个zip数据流可以工作,但对于脚本的特殊权限(f.e.ActiveX)是必需的 - 而今天没有最新的浏览器将允许。

+0

Thanx分析Thariama ...那么上传100mb文件没有延迟的可能解决方案是什么冷... ...? – 2010-07-01 07:02:49

+0

但如前所述,我怀疑它会适用于新浏览器导致的安全问题。在这里简单地讨论一下:http://www.phpbuilder.com/board/showthread.php?t=10316619 – Thariama 2010-07-01 09:05:29

相关问题