Существует возможность архивировать контент (html,css,js) при передаче по сети. Сервер архивирует контент, а браузер при получении разархивирует его. Происходит это автоматически и поддерживается почти всеми браузерами за исключением IE6. (далее...)
В Nginx есть простая конструкция для кэширования статических файлов на клиенте. Тем самым страницы загружаются быстрее, а сервер не нагружается повторными запросами. Картинки, стили практически не меняются, поэтому ставим 10 лет и не паримся. Даже если файл стилей изменился, то надежней всего добавить какой-нибудь мусор в GET-параметры (например, /style.css?version=23)
server {
...
location ~* ^.+\.(jpg|jpeg|gif|sfw|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar)$ {
root /.../www/ekimoff.ru;
access_log off;
expires 10y;
add_header Last-Modified: $date_gmt;
error_page 404 = @fallback;
}
...
}
Результат в FireBug