我对Nginx非常陌生,并试图了解在NGINX世界中这种事情是否可能发生。我们正在考虑在我们现有的web应用程序上设置NGINX静态页面缓存,但是我们希望基于特定的cookie值来缓存页面。
例如:
如果传入的请求有一个名为XYZ的cookie,其值为"123",只有这样,我们才会缓存该页面,只需3小时即可。否则我们就不想把它藏起来。
像这样的事情在NGINX身上有可能吗?如果是的话,有人能帮忙吗?
提前谢谢。
发布于 2016-11-02 11:25:40
是的,这是可能的。它的工作方式和你想的有点不同:
首先设置缓存,例如使用proxy_cache-directive。
然后用map映射cookie值。
map $cookie_XYZ $bypass {
'123' 0;
'default' true;
}然后可以使用此值绕过缓存(对于没有cookie的请求):
location /somelocation {
proxy_cache_bypass $bypass;
...
}https://stackoverflow.com/questions/40372132
复制相似问题