最坏的情况发生了。
尽管我采取了所有必要的预防措施,但 varnish 似乎缓存了用户登录的页面。
现在,当你访问我的网站时,你被连接为这个 XXX 人,显然不是你。你可以编辑他的个人资料...
我只缓存了我有标签的 2 个页面(主页和一个列表页面):
@Cache(smaxage="10800")
在我所有的模板中,我使用 ESI(用于菜单/页脚/登录模式)来防止这种情况:
{% render "HomeBundle:Home:login" with { 'appRequestUri' : app.request.uri }, { 'standalone': true } %}
{% render 'HomeBundle:Home:menu' with { 'locale' : app.request.locale }, { 'standalone': true } %}
登录操作没有@Cache
注释。
这是 Varnish 使用的我的default.vcl 。
请问我做错了什么?
PS:我确实有esi: { enabled: true }
并导入了esi路由routing.yml