Php Codeigniter将2.2.2升级到3.0,将会话移动到文件系统

Php Codeigniter将2.2.2升级到3.0,将会话移动到文件系统,php,codeigniter,session,Php,Codeigniter,Session,我一直在遵循文档中的升级指南,并已到达有关新会话存储机制的部分 在过去,我的应用程序将会话存储在数据库中,但我选择按照文档中的建议将其移动到文件系统中 在最初遵循升级文档之后,我遇到了问题,因此我重新启动了config.php文件的新副本(3.0随附的股票版本),并更改了以下变量(您可以假设配置中未显示的任何其他内容仍保留为其默认值): 我已经在/application/session\u storage/创建了一个目录来保存会话,并将其文件权限更改为700,但似乎仍然不正确,因为我收到一个数据

我一直在遵循文档中的升级指南,并已到达有关新会话存储机制的部分

在过去,我的应用程序将会话存储在数据库中,但我选择按照文档中的建议将其移动到文件系统中

在最初遵循升级文档之后,我遇到了问题,因此我重新启动了config.php文件的新副本(3.0随附的股票版本),并更改了以下变量(您可以假设配置中未显示的任何其他内容仍保留为其默认值):

我已经在
/application/session\u storage/
创建了一个目录来保存会话,并将其文件权限更改为700,但似乎仍然不正确,因为我收到一个数据库错误,表明数据库表的格式不正确


我是否正确地认为,通过选择使用文件系统进行会话存储,根本不需要数据库?如果是这样的话,有人能告诉我为什么CI仍在尝试向其中输入数据吗?

当我按照升级指南的步骤2执行时,说明“替换系统文件夹中的所有文件和目录”,仅将目录拖放到现有文件夹顶部的FileZilla中是不够的

在比较系统文件时,我现在似乎有来自2.2.2和3.0的文件组合,这似乎导致了冲突。特别是,文件位于
system/libraries/Session.php


我已删除文件夹并重新上载,这解决了所有问题。

还值得补充的是,会话保存路径必须是绝对路径,而不是相对路径。e、 g.
/home/mydomain.co.uk/subfolder/application/session\u storage
$config['base_url'] = 'http://www.domain.com/';
$config['encryption_key'] = 'mykey';

/* default settings omitted */

$config['sess_driver'] = 'files'; 
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = 'application/session_storage';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;