Your choices are basically:
1. Host content at home (e.g. Apache)
- Cheap (free?), but reliability and network speed are problems.
2. Use a consumer online storage service (box.net, idrive, skydrive, etc)
- Designed for this especially, but interfaces are often proprietary. Box.net does offer convenient linkage to mobile devices though.
3. Use a developer online storage service (amazon S3 and rackspace, already mentioned)
- Flexible, but the interfacing part is up to you.
4. Use a web host / VPS
- Flexible, but can be unreliable or expensive depending on the quality of host you choose.
5. Online backup (mozy, backblaze, carbonite, crashplan)
- (Quite freaking) cheap GB wise, but I don't think mobile access is going to be possible.
I personally use a mixture of 4 and 5. I have used S3 before but storing dozens of gigs on it is not necessarily economical. I have a skydrive account (they give 25 gigs for absolutely free) but find the interface ... well, incredibly frustrating. That's putting it kindly.