Php render_esi&controller=>会话丢失
我问你一个问题,因为我浏览了所有的网页,但我没有找到任何答案,我的错误 当我使用twig with controller函数中的render_esi函数时,会显示受access_控件保护的目标页面,但在我刷新页面10秒后达到缓存时间限制时,我会被重定向到登录页面,因为我丢失了会话,会话id会被更改Php render_esi&controller=>会话丢失,php,symfony,session,twig,esi,Php,Symfony,Session,Twig,Esi,我问你一个问题,因为我浏览了所有的网页,但我没有找到任何答案,我的错误 当我使用twig with controller函数中的render_esi函数时,会显示受access_控件保护的目标页面,但在我刷新页面10秒后达到缓存时间限制时,我会被重定向到登录页面,因为我丢失了会话,会话id会被更改 {{ render_esi(controller('MyBackBundle:Parts:leftSideBar')) }} => Redirected when cache expire {{
{{ render_esi(controller('MyBackBundle:Parts:leftSideBar')) }} => Redirected when cache expire
{{ render_esi(url('my_back_parts_sidebar')) }} => Working Good all the time, no session expiration
我明确表示,我使用的是Symfony2集成反向代理,而不是清漆
我不想为我的应用程序的每个子请求部分创建特定的路由
我想使用Symfony的_fragment系统以方便起见,主要是为了安全
解决方案
我在另一个bug出现的时候发现了解决方案
默认情况下,Symfony不会给代理带来信心,主要是在激活Symfony AppCache的情况下
您必须将127.0.0.1 Symfony反向代理添加到受信任的代理列表中,esi不会注销您并再次重定向到主页
从Symfony french的文档中解释:
如果您使用了Symfony AppCache.php反向代理服务器,请确保您的代理服务器为127.0.0.1
希望它能帮助别人。小精度,我使用Symfony 2.5.6。没人能帮我吗=/