我正在使用 Codeigniter 将会话数据存储在 ci_sessions 表中。第一次加载网页时,我得到一个 cookie(没关系),但同时我在 ci_session 表中得到两个完全相同的记录(会话 ID 除外)。这是荒谬的,因为应该只有一个用户代理和 IP 组合。
此外,当我尝试使用另一个浏览器时,它开始在 user_agent 字段中显示我的所有浏览器以获取 1 条记录。这让我发疯。以下是我在使用其他浏览器访问我的网站后在用户代理中看到的内容。我很快就要活了,请帮忙!
user_agent
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36
我的会话表如下
# Name Type
1 session_id varchar(40)
2 ip_address varchar(45)
3 user_agent varchar(255)
4 last_activity int(10)
5 user_data text
6 login_time timestamp
而我的会话配置如下
$config[‘sess_cookie_name’] = ‘cisession’;
$config[‘sess_expiration’] = 7200;
$config[‘sess_expire_on_close’] = TRUE;
$config[‘sess_encrypt_cookie’] = FALSE;
$config[‘sess_use_database’] = TRUE;
$config[‘sess_table_name’] = ‘ci_sessions’;
$config[‘sess_match_ip’] = TRUE;
$config[‘sess_match_useragent’] = TRUE;
$config[‘sess_time_to_update’] = 300;
仅供参考 - 我正在自动加载会话库。