Mit*_*teg 3 php session cas codeigniter
我从Codeigniter 2升级到3,现在我的CAS库出现了这个错误:
A PHP Error was encountered
Severity: Error
Message: session_start() [function.session-start]: Failed to initialize storage module: user (path: C:\Windows\Temp)
Filename: CAS/Client.php
Line Number: 3588
Backtrace:
Run Code Online (Sandbox Code Playgroud)
它与session有关,我猜CI3.0与CI2.0的处理方式不同.
我在config.php中有以下内容
$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = NULL;
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE
Run Code Online (Sandbox Code Playgroud)
;
任何帮助将受到高度赞赏.谢谢.
新:
我做了一个干净的CI3.0.4安装,似乎问题是CAS身份验证库:https: //github.com/eliasdorneles/code-igniter-cas-library
它适用于CI 2.x,但不适用于CI3.0.如果我只是不加载CAS模块,一切都可以正常运行(我没有设置会话等问题).但是一旦我加载CAS session_start(),CAS/Client.php上的行就会出现问题.有任何想法吗?
您尚未配置sess_save_path确保文件夹也是chmod 700
$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = FCPATH . 'application/cache/';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;
Run Code Online (Sandbox Code Playgroud)
自动加载会话
$autoload['libraries'] = array('session');
Run Code Online (Sandbox Code Playgroud)