【问题标题】:Session data lost so fast and rapidly in codeigniter会话数据在codeigniter中丢失得如此之快
【发布时间】:2013-04-12 07:51:35
【问题描述】:

我已经使用 codeignitet 构建了一个 Web 应用程序。我的应用程序中有大约 200 个用户。当用户登录时,它成功,但会话数据只保留大约一分钟,然后自动杀死。

我使用 ci_sessions 来存储自定义会话数据。

这是我的会话配置:

$config['sess_cookie_name']     = 'ci_session';
$config['sess_expiration']      = 7200;
$config['sess_expire_on_close'] = FALSE;
$config['sess_encrypt_cookie']  = FALSE;
$config['sess_use_database']    = TRUE;
$config['sess_table_name']      = 'ci_sessions';
$config['sess_match_ip']        = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update']  = 900;

在我的应用程序中,如果会话终止,它将重定向到登录页面。它总是重定向并重定向到登录页面,我认为它会导致会话数据迅速丢失。需要帮助和感谢。

【问题讨论】:

  • 我需要您的代码来判断问题所在。如果会话表存在,您的配置似乎没问题。
  • 登录成功后,我从数据库中获取用户角色数据并将其保存在会话中。我的应用程序中有 4 个角色,我的错误代码是,我总是使用会话角色数据来验证我的网络中的用户授权。
  • 登录成功后,我从数据库中获取用户角色数据并将其保存在会话中。我的应用程序中有 4 个角色,我的错误代码是,我总是使用会话角色数据来验证我的网络中的用户授权。
  • @Stephan S. :是否总是使用会话数据来检查我网站中每个页面的用户授权是否好。谢谢。
  • 如果您不发布某种代码先生,它不可能帮助您。 -1.

标签: codeigniter session


【解决方案1】:

您的会话配置看起来不错,并且您还将其存储在数据库中,这也是一个很好的做法。

您的代码中的某个地方似乎正在破坏会话或其中的一部分。 如果您无法自己追踪,我们必须查看一些代码。

祝你好运!

【讨论】:

  • 我没有看到这段代码中的会话处理有什么问题。检查代码的另一部分或服务器。
  • 在我的网页中使用会话数据验证用户授权是否合适?谢谢。
  • 验证用户后,无需在每个页面上再次验证,但最好在进行交易或其他重要操作之前重新验证
  • 我的意思是,验证应该在网页中执行的信息。比如,如果角色管理员显示信息A,在另一个中,如果角色普通用户显示信息B。谢谢。
猜你喜欢
  • 1970-01-01
  • 2013-06-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-28
  • 2012-12-16
  • 2013-01-06
相关资源
最近更新 更多