在CodeIgniter和NodeJS之间共享会话的最佳方法是什么?

时间:2013-09-17 00:14:08

标签: php node.js codeigniter session cookies

我正在尝试让NodeJS和CodeIgniter相互共享数据(会话和数据库数据)。我已经搜索了相当多的解决方案来解决这个问题,但我仍然没有找到最方便的方法来做事。似乎最合适的方法是使用某种缓存软件,例如memcached或redis,因为包装器可用于Node和PHP。

这是我到目前为止所想到的:

  1. 客户端在CodeIgniter驱动的网站上正常登录。会话已创建并添加到memcached。
  2. 客户端使用SSL连接到安全的socket.io服务器。
  3. 客户端将原始cookie数据发送到socket.io服务器。
  4. 服务器使用cookie数据进行一些字符串拆分并获取会话ID。
  5. 服务器检查缓存以查看会话ID是否存在。如果是,则用户已登录!
  6. 用户在CodeIgniter网站上注销。会话数据被破坏。
  7. 但是,我可以通过这种方法考虑一些问题:

    <击> 1。我如何从Memcached中清除过期的会话?据我所知,没有办法在CodeIgniter中检测过期的会话? - 编辑 - 刚才意识到我可以在memcached数据上设置超时来解决这个问题。

    1. CodeIgniter文档说session ids change every five minutes。难道这不会毁了我的做法吗?
    2. 那里有更好的解决方案吗?在开始实施之前,我想先了解其他选项。

0 个答案:

没有答案