Nginx:从缓存内容中删除 cookie

Nginx:从缓存内容中删除 cookie

尝试用 Nginx 替代 Apache 作为某些 Tomcat 服务器前端的 Web 代理,处理起来Set-Cookie JSESSIONID非常有挑战性。我们的 Tomcat 内容通过 Cache-Control 和 Set-Cookie 提供。

在 Apache 中,我们可以通过使用 ... 来完全基于 Cache-Control 进行缓存,CacheIgnoreHeaders Set-Cookie这是重要的部分:缓存的内容无需 Set-Cookie 即可提供,因此我们可以避免会话泄漏。但在 Nginx 中,proxy_ignore_headers Set-Cookie将回退到Cache-Control决定是否应缓存页面... 但缓存的内容随后会使用该 JSESSIONID 提供。

添加proxy_hide_header Set-Cookie将从所有提供的内容(无论是否缓存)中删除 JSESSIONID,这意味着整个站点变为无状态的。

相关内容