Nginx proxy_cache 缓存 502 错误

Nginx proxy_cache caches 502 errors

我正在使用 Nginx proxy_cache 来缓存来自节点服务器的响应。当该服务器离线时,Nginx returns 自定义 502 页面。目前一切顺利...

当节点服务器恢复在线时,Nginx 持续返回 502 页面 5 分钟(我的缓存时间)。如果我删除缓存目录中的所有文件,则没有任何区别。如果我重新启动 Nginx,它会破坏缓存并再次开始提供真实内容。

Nginx缓存502正常吗?请注意,它不会缓存来自后端服务器的 502 响应,它会缓存服务器不可访问的事实。

我能做些什么来阻止它?

我设法自己解决了这个问题。 Nginx确实缓存了上游服务器不可访问的知识

为了解决这个问题,我将缓存配置从 proxy_cache_valid any 5m; 更改为 proxy_cache_valid 5m; 删除 any 意味着您只想缓存 200、301 和 302 响应。