Codeigniter 3 会话不适用于 PHP 7.1.4
Codeigniter 3 Session not working With PHP 7.1.4
我有一个使用 Codeigniter 3 HMVC
构建的应用程序。该应用程序在 PHP 5.6
版本上运行良好,但是在将我的 PHP 版本升级到 7.1.4
我无法登录我的应用程序。经过全面检查后,我发现会话根本没有设置。
我的角色回到 PHP 5.6
并且会话在切换到 PHP 时再次正常工作 7.1.4
恢复 "session not working" 问题。
我尝试更改一些配置值,如 cookie 前缀和 cookie 保存名称等,似乎没有任何解决办法。
谁能帮忙。
我发现问题出在一些早期版本的 Codeigniter 3 上,这是一个已经在他们的 website.The 中报告的错误,底层会话错误已修复:
- 3.1.2
- 3.1.3
- 3.1.4
因此在最新版本的 Codeigniter 3 中不会出现此问题。
解决方案:
如果您的 codeigniter 版本已经有问题,请考虑将系统文件夹替换为 最新 版本的版本。写这篇文章时版本 3.1.6。
在 XAMPP(windows) 上的 codeigniter 3.1.9 和 PHP 7.2 中,我检查了我的 application/config/config.php 并看到 sess_driver 是数据库:
$config['sess_driver'] = 'database';
$config['sess_cookie_name'] = '165_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = "ci_sessions";
所以我创建了数据库ci_sessions:
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`)
);
成功了。
我有一个使用 Codeigniter 3 HMVC
构建的应用程序。该应用程序在 PHP 5.6
版本上运行良好,但是在将我的 PHP 版本升级到 7.1.4
我无法登录我的应用程序。经过全面检查后,我发现会话根本没有设置。
我的角色回到 PHP 5.6
并且会话在切换到 PHP 时再次正常工作 7.1.4
恢复 "session not working" 问题。
我尝试更改一些配置值,如 cookie 前缀和 cookie 保存名称等,似乎没有任何解决办法。
谁能帮忙。
我发现问题出在一些早期版本的 Codeigniter 3 上,这是一个已经在他们的 website.The 中报告的错误,底层会话错误已修复:
- 3.1.2
- 3.1.3
- 3.1.4
因此在最新版本的 Codeigniter 3 中不会出现此问题。
解决方案:
如果您的 codeigniter 版本已经有问题,请考虑将系统文件夹替换为 最新 版本的版本。写这篇文章时版本 3.1.6。
在 XAMPP(windows) 上的 codeigniter 3.1.9 和 PHP 7.2 中,我检查了我的 application/config/config.php 并看到 sess_driver 是数据库:
$config['sess_driver'] = 'database';
$config['sess_cookie_name'] = '165_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = "ci_sessions";
所以我创建了数据库ci_sessions:
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`)
);
成功了。