Вложение кэширования средствами nginx позволяет повысить скорость отдачи часто используемых листов в очень много раз. Фишка в том, что сгенерированная апачем страница сохраняется в виде готового html-файла на диске и при прибытье запроса на такой же урл (совпадение по md5) файл-кэш быстро отдается клиенту. Кэширование в nginx общедоступно с версии 0.7.44. Благо в репозитории EPEL уже штатно присутствует 0.8. К настройке кэширования необходимо относиться очень внимательно, потому что на динамических сайтах весьма высока вероятность обрубания работоспособности сайта: перестанут работать корзины на сайтах-магазинах, поломаются счетчики просмотров и тд.
Наиболее простая настройка выглядит так:
Сначала в http-секции прописываем где будет лежать кэш, его размер и время ветшания:
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=myzone:16m inactive=7d max_size=1024m;
Начищать кэш nginx будет сам. Кстати, в процессе отладки вы можете просто ходить в эту папку и видеть что там закэшировалось.
Кэш можно включить либо для определенного location либо для всего виртуального хоста.
proxy_no_cache $cookie_logged; #факторы, при которых ответ не будет сохраняться в кэш
proxy_cache_bypass $cookie_logged; #факторы, при которых ответ не будет браться из кэша
proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504;
proxy_pass_header Set-Cookie;#позволяет передавать от проксируемого сервера клиенту запрещённые для передачи строки
proxy_ignore_headers «Expires» «Cache-Control»; #воспрещает обработку некоторых строк заголовка из ответа проксированного сервера
proxy_cache_valid 200 301 302 304 1h; #время кэширования для различных ответов
proxy_cache myzone; #включает кэширование и задает зону
В процессе опции посмотрите какие куки и в какой момент отправляет пользователю ваше приложение. В вебе можно найти готовые конфиги nginx-а для кэширования под различные популярные CMS. “Тупой” вид кэширования (или кеш (англ. cache, от фр. cacher — «прятать»; произносится [kæʃ] — «кэш») — промежуточный буфер с быстрым доступом, содержащий информацию, которая может быть запрошена с наибольшей вероятностью) с большим сроком устаревания кэша можно использовать в момент DDOS-а, тогда есть шанс, что сервер справится с наплывом запросов и сайт хоть и потеряет в работоспособности, но останется доступен для поисковых систем и не уронит в след за собой остальные сайты на данном сервере.

