I would highly recommend Varnish using S3 as a backend origin. Add to that a few 100TB.com dedicated server and you have an extremely cheap CDN with pretty decent bandwidth and minimal maintenance.
CDNs have the advantage that they control more of the stack so can do more precise routing and have more edge nodes in more places. However, under the right circumstances, you can take the above quite far before a real CDN becomes necessary.
100TB.com specifically forbids using their service to create a CDN in their ToS[0].
9. Acceptable Use/Illegal Activity
d. We strive to maintain a high level of service, and a lot of
customers depend on our high standards of quality. As such, we
will not provide Services to those that are using our Services
for:
vii Using the Services for a content delivery network or content
distribution network (CDN). An authorized CDN network offered
through 100TB is accepted. Special requests to use the Services
to run an unauthorized CDN network may be approved on a case-
by-case basis. Failure to comply with this policy will result
in termination of this TOS, and you will not receive a refund
of the Fees.
Nothing fancy right now. It's all static files. I think if I were doing caching of a dynamic application, some special settings would be far more valuable.
CDNs have the advantage that they control more of the stack so can do more precise routing and have more edge nodes in more places. However, under the right circumstances, you can take the above quite far before a real CDN becomes necessary.