我正在将Web服务实现为Symfony2站点的一部分,该站点将使用JSONp和iframe从另一个(静态)站点进行访问。当用户使用iFrame登录时,Safari不会保留 session ,因此我使用javascript将 session ID存储在静态网站的Cookie中,然后将其传递回请求的GET或POST参数中,效果很好。
问题在于,在其他浏览器上,将保留Web服务的 session cookie,这意味着当用户注销时,实际上他们仍然登录到Symfony站点。
有没有一种方法,仅对于symfony网站的Web服务部分,最好以Symfony2友好的方式禁用PHP session cookie(例如,与.htaccess混为一谈)?
我仍然想要一个 session ,但是会通过在我发出的所有请求中自己传递一个PHPSESSID变量来维护它。
最佳答案
This可能正是您想要的东西。有无状态防火墙:
在您的security.yml中
# app/config/security.yml
security:
firewalls:
main:
stateless: true
关于php - 有没有一种方法可以阻止Symfony2为某些路径发送 session cookie?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10353393/