繁体   English   中英

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

[英]Codeigniter Upgrade 2.2.2 to 3.0 moving sessions to filesystem

我一直在遵循此处记录的升级指南并已到达有关新会话存储机制的部分。

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

在最初遵循升级文档之后,我遇到了问题,因此我重新启动了config.php文件(3.0附带的原始版本)的新副本,并更改​​了以下变量(您可以假定配置中的其他内容未显示)以下仍然是其默认值):

$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;

我已经在/application/session_storage/创建了一个目录来保存会话,并将其文件权限更改为700,但是由于我收到数据库错误指示数据库表不在其中,因此某些东西似乎仍然不正确。正确的格式。

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

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM