August 26, 2016 11:01AM
So I have been trying to make the fastcgi_cache_valid value based on user request.

if ($request_uri ~ "/url1" ) {
set $cachetime "any 5s";
}
if ($request_uri ~ "/url2" ) {
set $cachetime "any 5m";
}

These did not work because it turns out your not allowed to have a dynamic variable within the fastcgi_cach_valid command.
fastcgi_cache_valid $cachetime;

fastcgi_cache_valid "$cachetime";

They give of this error.
invalid time value "$cachetime"



So instead of the above i tried this instead.

if ($request_uri ~ "/url1" ) {
set $cachetime "5";
}
if ($request_uri ~ "/url2" ) {
set $cachetime "300";
}
add_header "X-Accel-Expires" $cachetime;

fastcgi_cache_valid any 60s;

But on url1 i get X-Cache: HIT when it should of expired after 5 seconds.


Is what i am trying to achieve even possible ? From my understand the X-Accel-Expires might just be for proxy_cache requests.

http://www.networkflare.com/
Subject Author Posted

Nginx | fastcgi_cache_valid dynamic based on request

c0nw0nk August 26, 2016 11:01AM

Re: Nginx | fastcgi_cache_valid dynamic based on request

Maxim Dounin August 26, 2016 11:46AM

Re: Nginx | fastcgi_cache_valid dynamic based on request

c0nw0nk August 26, 2016 02:17PM

Re: Nginx | fastcgi_cache_valid dynamic based on request

c0nw0nk August 26, 2016 02:43PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 295
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready