What is the default way to upload files from a EC2 web server to a S3 bucket for content delivery?
|
feedback
|
|
Here's a simple example to illustrate uploading directly to s3 http://sente.cc/upload_to_s3.html code:
copied from my answer to a similar question - here | |||
|
feedback
|
|
Via HTTP, the same way you upload to S3 from, well, anywhere else. | |||||||||||
feedback
|
|
You can use s3cp tool. It's a like of scp command. For download and documentation, see http://www.beaconhill.com/opensource/s3cp.html and http://aws.amazon.com/code/Java/3124 After install, you can for example copy to S3: s3cp local-file s3://bucket/object[/] | |||
|
feedback
|
|
In general if you're uploading files from an application to S3 for the purpose of setting up a CDN to use for that application you would want to first look and see if that application didn't already have the functionality or a plugin to do that. If you take Wordpress for instance there is the W3 Total Cache plugin that handles this for you very nicely. It is of course written in PHP and using the AWS API calls to handle the uploads/deletions when necessary. If you're writing your own application then I would look for libraries that assist in communicating with AWS. For Python you would want to look at Boto for instance which allows you to interact with the AWS API seamlessly. As well you can always check out Amazon itself for information on the other SDK APIs that you could use. | |||
|
feedback
|
|
The answer is rather dependent on the purpose. For instance, if your EC2 instance is running a PHP application, then using the PHP-SDK would be the best route. Some applications might find it useful to mount an S3 bucket as a local file-system (e.g. S3-fuse). If however, you are simply trying to upload a file via the shell from EC2 to S3, I would recommend Tim Kay's aws script. It is a self-contained perl script that can run without installation, or can be installed to setup alias functions. Uploading a file to an existing bucket using this script amounts to the following:
It supports most of the features of AWS and is sufficiently verbose in its error messages to make debugging a problem fairly easy. | |||
|
feedback
|