Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Will I have to change some DNS settings? If so, what would I have to change? Will they work automatically as long as I set the correct cache-control headers?

EDIT: I'm completely new to CDNs and curious about what sort of things you typically have to do. Like what are the procedures for some popular CDNs.

share|improve this question
There's so many ways that a CDN could work there's no way to answer this question in it's current state. Please be much more specific as to what you're trying to accomplish. –  Chris S May 11 '11 at 16:27
@Chris - I'm completely new to CDNs, I'm just wondering some typical ways it works. –  Kyle May 11 '11 at 17:42
A CDN is just a web-host for static content that keeps your content in highly available data-centers, geographically scattered around to keep distribution times to a minimum. There's nothing magical about them, and there are tons of ways to use them. You can use 302 redirects, you can setup a dns alias in your domain, you can hotlink directly to their domain; I'm sure there are other options as well, but you get the idea that they're typically quite flexible. –  Chris S May 11 '11 at 17:48

1 Answer 1

I'm not 100% sure what the question is so I'll try and give you some general information;

There are two main types of CDN, Origin-Pull and Origin-Push

Origin-Pull means the CDN provider will pull content from your server and store it on their network of POPs (Points of presence). Say you had a file located at http://domain.com/image.jpg, and you wanted to pull it through your CDN providers domain, http://somecdn.com/, you could just send a request to http://somecdn.com/image.jpg. The first time the file was requested the CDN provider would connect to your server like a normal user but then save and distribute the content to all the POPs (Some CDN providers have upwards of 20 POPs), the next time the content is requested the POPs already have the content cached so they can just serve it straight from their local disks, until whatever factors the CDN provider used to store data (Normally a combinations of headers, expires, last-modified etc.)

Origin-Push means you push your content to a remote server which stores it automatically on the POPs, so even the first request is fast.

In terms of performance, their about the same, so it's really down to which system you find easier to work with. I generally choose origin-pull because I find it easier, although most origin-push providers also give you cloud storage (See Amazon S3, Rackspace CloudFiles, Edgecast etc.)

In terms of setting it up, most CDN providers give you a domain to use (cloudfront.net for Amazon, edgecastcdn.net for Edgecast etc.) but nearly all will also allow you to CName your own domain (cdn.mydomain.com). Your content should, but doesn't need to, send correct last-modified, cache-control and expires headers, but these can easily be set up by Apache in .htaccess files

If you're looking to just play around with the different types, or using a CDN, get yourself an Amazon AWS account, you pay for what you use and there's no minimum usage requirement so you can play around with professional level systems for just a few cents

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.