php - CodeIgniter 正在数据库中生成多个 session 。为什么?

标签 php browser codeigniter session

我有一个网站,它在页面加载时执行一些 ajax 调用。由于某种原因,当您加载页面时,CodeIgnitor 会插入 4 个 session (我假设每个 ajax 调用一个)。我将 session 存储在数据库中。

我很确定每个浏览器应该只有一个 session 。 Firefox 似乎只生成一个;其他浏览器似乎创建了一大堆 session 。同一用户的多个 session 给我带来了一些严重的身份验证问题。

为什么会发生这种情况?我怎样才能阻止它?

最佳答案

我知道讨论发生不久,但有人可能会发现这很有用。

到目前为止,我已经使用了 CI session ,但没有将其数据存储在数据库中。今天我决定尝试一下,并立即遇到了同样的问题:CI 在每次页面加载时都会生成新 session 。

我检查了我的服务器时间、时区、cookie 等 - 我能在论坛上找到的所有提示 - 但没有结果。然后决定自己调试CI Session类。

长话短说,事实证明我的 session 表中的 user_agent 字段太小 - VARCHAR 50 - 这会剪切原始的 user_agent 字符串 - 因此 CI 找不到我的 session 并生成其他 session 一。我刚刚将 user_agent 字段大小增加到 200,一切都非常顺利。

我忘了提及我使用的是 Mac OS X Lion。

再次希望这会对某人有所帮助。

关于php - CodeIgniter 正在数据库中生成多个 session 。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2438835/

相关文章:

javascript - 运行此程序浏览器显示 "Upgrade Required"

php - 如何从 Mysql 中获取 json 数据并将其转换为 CodeIgniter 中的数组

php - 是否可以在 mysql 或 PHP 或 CODEIGNITER 中搜索显示多个可能结果的多个单词

php - 我的 LOAD DATA INFILE 语法有什么问题?

php - SQL语法只有两种类型的引号问题?

javascript - 当 XMLHttpRequest 中止时会发生什么?

php - Codeigniter + Mysql Active Record 查询 ASC DESC 顺序

php - 关于eval : How to clean up之恶

php - 使用 cookie 显示用户在 PHP 中访问网站的次数

javascript - 将图表下载为图像