如何为 app.user 禁用缓存

How to disable cache for app.user

我有一个要缓存的 Symfony2 页面:

$response = $this->render(...);
$response->setMaxAge(15*60);
return $response;

现在在该页面上我显示 username(如果已登录)或登录按钮(如果未登录)。现在当该页面被调用并且我已登录时,注销并返回到该页面页面,仍然显示username

如何在为页面正文启用缓存的同时防止这种行为?

这最好使用 ESI 来完成。

http://symfony.com/doc/current/book/http_cache.html#using-esi-in-symfony

您可以使用 ESI 单独缓存页面的各个部分。