2013-03-23 66 views
1

我正在使用Symfony2,但这可能只是一个PHP问题。每个用户在PHP/Symfony2中的两个会话

  1. 根据我的理解(请纠正如果我错了)如果我设置会话cookie,以确保再饼干只拿到安全连接发送。因此,在非安全连接上,服务器实际上根据用户访问记录了任何内容。我只想确认我对此的理解。

  2. 是否有可能拥有两个会话cookie?一种用于存储不安全的会话数据的所有协议(例如,不是用户身份验证/登录),第二个会话仅用于安全并处理登录授权。

    我知道我可以设置一个奇怪的非安全事物的本地cookie,但我真的希望能够使用$ _SESSION两次(一次为所有,一次为https)。

    我觉得使用安全cookie对用户认证/登录至关重要,但我也希望能够在非安全页面上进行某种形式的会话。

  3. 是否Symfony2做任何特别的任何事情?我知道它通过它的内置类来处理会话,但是它在使用安全cookie方面做了什么特别的工作?

回答

2

对于(1) - 是的,你是正确的

对于(2) - 你可以有2个独立的$ _SESSION(担保和无担保的)通过传递的SessionID在查询中相互通信字符串(可能带有一些散列保护以避免顽皮的用户)。一些更多的信息在这里Session lost when switching from HTTP to HTTPS in PHPSwitching between HTTP and HTTPS pages with secure session-cookie

如线程建议,如果可能的话,你也可以让你的生活更轻松,考虑到让你的页面HTTPS

对于(3) - 我不是专家Symfony2,但快速浏览文档,它没有任何特定的工具供您在这种情况下使用,除了支持设置,如果你想你的cookie安全或不