In order to reduce the costs associated with bandwidth, I wrote a simple download script a while ago that caches the most recently accessed files from Amazon S3 on a less expensive hosting plan. This script was written using a combination of Python, Nginx, and Flask, but the same effect could be accomplished in any language / framework that supports setting response headers. At the time of writing