On Static Media and Django
November 13, 2008 | django | 6 comments
We all know not to serve static media (images, CSS, Javascript, etc.) in production directly from Django. Thankfully, Django gives us some nice settings like MEDIA_URL and MEDIA_ROOT to make serving them a lot less painless. Lately, however, I’ve come to realize that these settings shouldn’t really apply to all static media.
Not All Static Media Is Created Equal
Static media really comes in two flavors. Media that is part of your site like your stylesheets and user generated media or files that are uploaded to the site once it is live. We don’t want to serve all this media from the same place for a couple of reasons:
- Our source checkouts shouldn’t be crufted up by stuff our users are uploading
- User generated content and source code should live in two different places on the filesystem
We could fix the first problem with some .gitignore ...

