我在边缘检查了会话cookie,但它不可用。在chrome中,会话cookie工作正常。我在设置会话
时尝试了php超全局$_SESSION[]
和魔术吸气器$this->session->set_userdata($newdata);
以下是会话配置值:
$config['sess_driver'] = 'database';
$config['sess_cookie_name'] = 'cekosessions';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = 'cekosessions';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;
以下是cookie配置值:
$config['cookie_prefix'] = 'ncitce';
$config['cookie_domain'] = 'localhost';
$config['cookie_path'] = '/';
$config['cookie_secure'] = FALSE;
$config['cookie_httponly'] = TRUE;
答案 0 :(得分:0)
实际上,我所有的CodeIgniter 3项目在Edge中运行良好。请在config.php文件中尝试此配置
$config['sess_driver'] = 'database';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = 'ci_sessions';
$config['sess_match_ip'] = TRUE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;
和
$config['cookie_prefix'] = '';
$config['cookie_domain'] = '';
$config['cookie_path'] = '/';
$config['cookie_secure'] = FALSE;
$config['cookie_httponly'] = FALSE;
请记住在数据库中创建ci_session表。
CREATE TABLE IF NOT EXISTS `ci_sessions` (
`id` varchar(128) NOT NULL,
`ip_address` varchar(45) NOT NULL,
`timestamp` int(10) unsigned DEFAULT 0 NOT NULL,
`data` blob NOT NULL,
KEY `ci_sessions_timestamp` (`timestamp`)
);
如果上述方法失败,请在下方发表评论。
答案 1 :(得分:0)
如果使用的是较低版本的Codeigniter,则可以用此类替换CI的Session类,该类将会话数据存储在服务器上:
https://github.com/bcit-ci/CodeIgniter/wiki/Dariusz-Debowczyk%27s-Session-Class
另请参见以下链接进行讨论: https://expressionengine.com/forums/archive/topic/135722/codeigniter-session-problems-thread