涉及会话时如何使用 Nginx 缓存动态内容?

Tha*_*ale 5 nginx cache

此链接解释了如何使用 Nginx 从动态内容创建静态文件

我的问题是:如果涉及登录会话,我可以实现相同的目标吗?IE。当我只想向注册用户提供内容而不是其他用户时。那么如何在涉及缓存时克服会话,并最终在下次将缓存用于另一个会话?

详细场景:

我的网站的目标是仅向注册用户提供内容。

有大量用户登录,每个用户都有不同的会话 ID。

一个 php 页面查询数据库并找到用户“A”想要的“XYZ”并生成 HTML 输出。

现在,如果用户“B” (具有不同的会话 ID)在一段时间后想要相同的“XYZ”,如何让 Nginx 从缓存中传送,而无需让 php 页面再次查询数据库。

以前有人这样做过吗?


关于可能的问题欺骗的澄清:

nginx 将动态内容缓存为静态 我的问题是在涉及会话时缓存动态内容。上面的问题更笼统(没有提到会话)。

小智 4

我认为你最好看看Varnish,因为 nginx 的缓存功能非常有限。

使用 nginx,您可以检测 cookie 数据并使用它来强制用户使用不同的缓存键,如此处所示,但这可能不足以满足您想要做的事情。