Earlier this year I configured this here little blog to offload static resources to MaxCDN. I made some mistakes in the process, which I documented in a blogpost that has been in my drafts for too long. So here’s the gist;
- Etags misconfiguration:
- Problem: By default Apache uses the file’s inode to calculate the Etag, but that inode is unknown to the CDN, so Etags can never match.
- Solution: change the Apache config not to use inode, e.g. “FileETag MTime Size”
- Cookies & domains issues:
- Problem: I created my CDN-domain as a sub-domain of my main one, which led to (small) performance and (potentially huge) security issues.
- Solution: Make sure your CDN-domain is different from the domain on which your cookies are set. So for example for main domain blog.futtta.be don’t use static-cdn.blog.futtta.be, but rather blog-cdn.futtta.be (except if cookies would be set on futtta.be, in which case I would need cdn-futtta.be).
- Todo: it might make sense to add some Apache magic to make sure that for requests from the CDN:
- only images, css & js can be requested
- the cookie header is removed alltogether