我的配置文件看起来像这样 - >
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_expire_on_close'] = TRUE;
$config['sess_encrypt_cookie'] = FALSE;
$config['sess_use_database'] = FALSE;
$config['sess_table_name'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update'] = 300;
autoload是 - >
$autoload['libraries'] = array('database','session','uri');
我收到错误:
Unable to load the requested class: session
请告诉我实际问题是什么。我已经搜索了所有以前关注此问题的问题但尚无法解决问题。提前谢谢。
答案 0 :(得分:5)
设置config.php文件
$config['encryption_key'] = 'xyz'
答案 1 :(得分:4)
您的自动加载功能正常。如果你用上限字母或没有大写字母写它并不重要。
在配置时将一些随机密钥放在
$config['encryption_key']
2检查您的文件夹权限。
告诉我们您正在使用的CI版本:)
目前有两个可能的原因.. 第一个是由于某种原因你的CI找不到会话类,第二个是它试图加载它多次..
答案 2 :(得分:0)
您可能尝试多次加载Session类。 检查代码是否有重复的会话加载。它会解决你的问题! 另外,请确保将Session类作为库加载,而不是作为驱动程序加载。
答案 3 :(得分:0)
尝试:
$this->load->library('Session');
取代
$this->load->driver('Session');
答案 4 :(得分:0)
我遇到此问题,问题出在会话脚本所在的System文件夹中。您需要将结构树上的会话文件移动一级(从System/libraries/session
到System/libraries
的文件)。我知道改变系统的文件和结构是不好的做法,但这是唯一的解决方案。
答案 5 :(得分:-1)
可能是以下原因抛出此消息Unable to load the requested class - encrypt
1)在新服务器上有些文件名如何更改。所以CI无法找到该文件
2)可能是服务器上不存在lib文件。所以CI无法找到该文件
3)可能是文件名大小写的问题。
首先检查system / application / libraries / Session.php是可执行的。 如果这不起作用,请尝试更改自动加载中的行:
$autoload['libraries'] = array('database', 'session','uri');
到
$autoload['libraries'] = array('database', 'Session','uri');
并尝试
$config['encryption_key'] = '
ABC1234' ;