0

我正在使用 Codeigniter 会话来登录用户。由于对我来说一直很神秘的原因,有时用户会话被破坏,他们必须重新登录。

因为 Codeigniter 会话是基于 cookie 的,所以我假设我需要查看浏览器以尝试了解 cookie 被破坏的原因。

首先,这是真的吗?如果是这样,有人可能会建议一种方法(php、js、浏览器开发工具?)来记录导致每个会话被破坏的错误?

4

1 回答 1

0

我会尝试检查./application/config/config.php中的 cookie 超时设置,并确保这不是低得离谱的东西。

$config['sess_expiration']      = 7200;

此行为还有许多其他潜在原因,所有这些都取决于您的环境。例如:

  • 如果您的代码在未配置为“粘性会话”的负载均衡器后面的多台服务器上运行,那么您将(可能)为每个请求访问一个新服务器,从而导致您的会话被重新创建。
  • 如果您的网站使用多个域,您的 cookie 将不会对所有域有效,仅对创建它的域有效。

但在不了解您的代码或环境的情况下,我建议使用 firebug 或 chrome 开发人员工具从浏览器检查您的 cookie,同时检查网络层中请求和响应的内容。

于 2013-11-08T16:10:13.060 回答