这里是文档:

proxy_cache_bypass
定义不从缓存获取响应的条件。如果字符串参数中的至少一个值不为空且不等于“ 0”,则不会从缓存中获取响应:
proxy_cache_bypass $cookie_nocache $arg_nocache$arg_comment;
proxy_cache_bypass $http_pragma $http_authorization;
可以与proxy_no_cache指令一起使用。
proxy_no_cache
定义不将响应保存到缓存的条件。如果字符串参数的至少一个值不为空且不等于“ 0”,则将不保存响应:
proxy_no_cache $cookie_nocache $arg_nocache$arg_comment;
proxy_no_cache $http_pragma $http_authorization;
可以与proxy_cache_bypass指令一起使用。

这是否意味着如果我要完全排除缓存中的某些内容,应该同时设置proxy_no_cacheproxy_cache_bypass?如果只设置proxy_cache_bypass可以吗?

最佳答案

是。

如果只是在不需要缓存的页面(例如,已登录的用户)上将proxy_cache_bypass设置为true,则它们仍将保存到缓存中,并提供给应该获取已缓存页面的用户(例如,未登录的用户)。

但是,将proxy_cache_bypass和proxy_no_cache都设置为true意味着这些用户既不接收也不贡献缓存。

10-04 22:24