nginx + fastcgi + php-fpm + cache

В интернетах не смог нагуглить внятной инструкции по настройке связки nginx + php-fpm и при этом, чтобы nginx кешировал странички.
Почему-то инструкции либо по настройке fastcgi, либо по настройке кеша.
Совместить эти два мануала почему-то никто не осилил и это у меня вызвало некоторые сложности.
Конфиг php-fpm максимально стандартный, там не с чем особо мудрить
Короче, делюсь с вами инфой:

server {
        listen                  your_ip:80;
        server_name             example.com;

        access_log              /var/www/example.com/logs/nginx.access.log;
        error_log               /var/www/example.com/logs/nginx.error.log   info;
        root                    /var/www/example.com/www;
# Искренне не понимаю, почему в предыдущих 3х строчках нельзя использовать переменные. 
# Обжегся, когда пытался сделать красиво в конфиге
        index                   index.php;
# задаем индексный файл, который должен открываться сначала
# идея в том, что весь сайт роутится через него. но всегда есть необходимость открыть просто какой-нибудь пхп файлик
# поэтому оставляем эту возможность (подмена ниже)
        set     $fpm_name       "/index.php";

# блок конфига, который будет обрабатывать все запросы, кроме тех, что хотим кешировать
        location / {

                try_files   $uri $uri/ /index.php?$query_string;
                if ($uri ~ \.php$){
# а вот и подмена
                        set $fpm_name $uri; 
                }
                include         fastcgi_params;
                include         fpm_params;
        }
# описываем что хотим кешировать
        location ~* ^(\/(articles|reports)\/[0-9]+.+)$ {
# в моем случае не нужно кешировать, если пользователь авторизирован на сайте.
# если вам это не требуется, то просто удалите if
                if ($http_cookie !~* "cabinet") {
                        rewrite ^ /ng_cache last;
                }
                include         fastcgi_params;
                include         fpm_params;
        }
# внутренний урл для кеша
        location /ng_cache {
                internal;
                fastcgi_cache           examplecom_cache;
                fastcgi_cache_valid     200 301 302     304     3m;
                fastcgi_cache_key       "$request_method|$http_if_modifed_since|$http_if_none_match|$host|$request_uri";
                fastcgi_cache_use_stale error timeout invalid_header http_500;
                fastcgi_hide_header     "Set-Cookie";
                fastcgi_ignore_headers  "Cache-Control" "Expires";
                include                 fastcgi_params;
                include                 fpm_params;
        } 
        ........
}

и файлик fpm_params:

# не забываем указать правильный путь до сокета
fastcgi_pass    unix:/var/run/php-fpm/fcgi-php.sock;
fastcgi_index   $fpm_name;
# тут пригождается наша переменная $fpm_name
fastcgi_param   SCRIPT_FILENAME $document_root$fpm_name;
fastcgi_buffers 16      16k; 
fastcgi_buffer_size     32k