Regarding gzipping, you don't want your webserver doing this on the fly. At least in nginx, you can tell the webserver to load pre-gzipped files, I'm sure apache has something similar.
Put this into nginx.conf: gzip_static on;
Then run this command in /var/www to gzip your content: find . -name "*' + ext + '" -print | xargs -I filename echo "gzip -c filename > filename.gz" | sh
This is a small win (reduced cpu/disk IO), but at two lines it's an even smaller cost.
Also, if you use django mediagenerator, it will handle a lot of this stuff for you.
http://www.allbuttonspressed.com/projects/django-mediagenera...