we need to be able to provide our client with the ability to upload large files through their PHP application. They actually requested 'unlimited' file sizes, but in reality we're looking at 5GB max.
We started off using a standard form with a file field, this was fine for large files up to about 1GB although we did have to adjust the server's PHP config max_post and max_upload values to cater for this. As they have requested the ability to upload larger and larger files this method has become problematic both in terms of the memory usage and the reliability of the a HTTP connection remaining stable long enough for the uploads to complete.
I know it must be possible to give them the ability to upload 5GB files because I see other web services offering much larger uploads (YouTube can handle over 20GB).
We've looked at the HTML5 Files API which should allow uploads to be completed in 'chunks' which are then patched together on the server. I'm not entirely clear on how this works - for example does each 'chunk' just count as a single 200kb upload, or will we still need a large memory setting on the server? Even this is not ideal as the majority of the company are using IE8 in which the HTML5 APIs don't work.
I just wondered which the best way to approach this is, we're open to trying pretty much anything.