浏览 726
在配置缓存的时候,第一次我没有配置proxy_cache_valid,结果发现本地没有生产缓存文件。每次请求都需要从上游服务器获得。
配置了proxy_cache_valid any 30m;以后问题得到解决。
请问,1, 这个proxy_cache_valid指令是用来做什么的?为什么不使用这条指令nginx不生产缓存文件?
2 , 这条指令后面的时间参数是用来控制什么的? 和proxy_cache_path中的invalid参数有什么不同?
多谢!
按点赞数排序
按时间排序
proxy_cache_valid用来匹配上游HTTP响应是否使用缓存的2个条件:
1、HTTP响应码,比如是否缓存404响应;
2、当上游响应中未携带cache-control、expires头部时,缓存将使用它后面的时间作为过期时间。
proxy_cache_path定义的淘汰时间,即到达后立刻删除,而过期时间只是资源过期,缓存不会立刻删除。
0
回答于2021-01-07 15:47
多谢陶老师,那么当上游响应中携带了cache-control、expires等头部时,不使用proxy_cache_valid指令NGINX也会保存缓存文件,对吗?
0
回答于2021-01-07 08:21