Amazon S3 is the distributed file system that can be used over the Web. It's nearly limitless in terms of storage capacity, it's cheap, and you pay only for what you use. S3 has recently become very popular for these reasons.
Before we get started, you need to understand some of the basic features of S3, in order to create an application that makes the best use of the system. There are two resources under S3—buckets and objects. Objects are files, while buckets hold collections of objects. Buckets can be public or private, with Access Control Lists (ACLs) for finer permissions control. Objects can be accessed through the browser by URIs. Objects can also have complex names, making up for the lack of folders.
To learn more about S3 and sign up for the account, go to http://aws.amazon.com/.
We will be using the Amazon S3 PHP class for all our interfacing with the S3 service. You can download it from http://code.google.com/p/amazon-s3-php-class/.