Я пытался установить 2 разных времени кеширования. Мне нужен микрокэш для разового запроса. А все остальные запросы следует кэшировать на более длительное время. Все запросы должны идти в блок местоположения, чтобы запросы передавались PHP.
Я получаю ошибку при запуске nginx -t:
nginx: [emerg] недопустимое значение времени "$ cache_time"
Вот часть моего серверного блока nginx conf:
set $cache_time 5m;
if ($request_uri ~ "myurl/\d*"){
set $cache_time 2s;
}
location ~ \.php {
fastcgi_cache MYCACHE;
fastcgi_cache_valid 200 $cache_time;
fastcgi_no_cache 0;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index /index.php;
include /etc/nginx/fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
Почему указано недопустимое значение $ cache_time? Тоже пробовал "2s". Мне вообще не разрешено устанавливать его из переменной? Есть обходные пути?