Модель ngx_http_proxy_module позволяет передавать запросы другому серверу и управляет настройкой кеширования.
Nginx (с версии 0.7.44) умеет кэшировать, что позволяет повысить скорость отдачи часто используемых страниц. Nginx сохраняет сгенерированные страницы Apache в виде HTML- файлов на диске и при повторном обращении по одинаковому URL файл из кэша отдается клиенту. Ключом и именем файла в кэше является результат функции MD5 от проксированного URL.
Настройку кэширования нужно проводить внимательно, потому что на динамических сайтах может быть утерян функционал, например, перестанут работать корзины на сайтах-магазинах. Если движок сайта(CMS) известен можно попробовать найти готовые конфигурационный файлы для Nginx в интернете.
Настройки кэша в nginx. Конфигурирует кэш, который может хранить различные метаданные.
proxy_pass_header Set-Cookie; # разрешает передавать от проксируемого сервера клиенту запрещённые для передачи строки proxy_ignore_headers "Expires" "Cache-Control"; # запрещает обработку некоторых строк заголовка из ответа проксированного сервера
Пример кода для включения кэширования в виртуальном хосте nginx вашего сайта:
location ~* ^.+\.(?:css|cur|js|jpe?g|gif|htc|ico|png|html|xml|otf|ttf|eot|woff|woff2|svg)$ { expires 30d; add_header Cache-Control public; }
Вариант из интернета, включит кэш на бесконечный срок для файлов с перечисленными расширениями
server { ... location ~* ^.+.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ { expires max; } ... }