【问题标题】:Yii Session Timeout and Periodic Server Short PollingYii 会话超时和定期服务器短轮询
【发布时间】:2014-08-24 04:10:50
【问题描述】:

我在 jQuery 中使用短轮询来定期(5 分钟)检查服务器的通知更新。我还在服务器上设置了会话超时,之后我希望用户自动注销。问题是轮询会导致会话延长并且用户永远不会自动超时。

在 Yii 中有什么方法可以避免单独为这个调用更新会话吗?我错过了什么吗?

我正在考虑将这个调用的服务器端脚本单独移动到一个独立的 PHP 脚本,但是会产生与此相关的维护开销,所以我有点希望在 Yii 中可以做一些事情来解决这个问题。谢谢。

【问题讨论】:

    标签: php jquery yii


    【解决方案1】:

    我建议为最后一次活动设置一个会话变量

    ,每次一个activity算作一个activity,更新这个

    如果有这种特殊要求,请不要更新它并检查时间段是否结束,手动注销用户并销毁它的会话

    Yii::app()->user->logout();
    unset($_SESSION);
    

    【讨论】:

    • 谢谢。这是我正在考虑的一种选择。但它基本上复制了会话管理已经在做的大部分工作。我想知道是否有更清洁的方法来做到这一点。也许扩展 CDBbHttpSession 或类似的东西......
    • 最后,我编写了一个单独的独立 PHP 脚本来获取通知更新。我将 Yii 的配置包含在这个脚本中以获取 db 配置,这样我仍然可以将 db 配置保存在一个地方。
    猜你喜欢
    • 1970-01-01
    • 2015-07-20
    • 2012-07-31
    • 1970-01-01
    • 1970-01-01
    • 2015-12-31
    • 1970-01-01
    • 2013-03-31
    • 2012-09-06
    相关资源
    最近更新 更多