views:

49

answers:

2

Some of the problems that can happen are timeouts, disconnections, and not being able to resume a file and having to start from the beginning. Assuming these files are up to around 5gigs in size, what is the best solution for dealing with this problem?

I'm using a Drupal 6 install for the website.

Some of my constraints due to the server setup I have to deal with:

  1. Shared hosting with max 200 connections at a time (unlimited disk space)
  2. Shared hosting.
  3. Unable to create users through an API (so can't automatically generate ftp accounts)

I do have the ability to run cron-type scripts via a Drupal module.

My initial thought was to create ftp users based off of Drupal accounts and requiring them to download an ftp client for their OS of choice. But the lack of API to auto-create ftp accounts and the inability to do it from command line kind of hinder that solution. If there's a workaround someone can think of, let me know!

Thanks

+1  A: 

You're kind of limited in what you can do on a shared host. Your best option is probably to install SWFUpload and hope there aren't a lot of mid-upload errors.

Better options that you probably can't use on a shared host include the upload progress PHP extension (which Drupal automatically uses when it's installed) and, as you said, associating FTP accounts with Drupal accounts.

Scott Reynen
Going the ftp route, plus a low-tech usb in the mail! Thanks for your input!
Andrew
+2  A: 

Usually, shared hostings does not support large files uploads through the browser. A solution may be to use another files hosting for your large uploads. A nice an easy solution to integrate is Amazon S3 and its browser based upload with a from POST.

It can be integrated in a custom module that provide an upload form protected using Drupal access control. If you require the files to be hosted on the Drupal server, you can use cron (either Drupal's or an external one) to move the files from S3 to your own hosting.

mongolito404
Thanks for the response, have chosen a low-tech approach (usb key in the mail) :)
Andrew