php7怎么使用session失效,php7.3升级后CI框架session失效session不能读取的问题

php7.3升级后CI框架session失效session不能读取的问题

框架ci3.0.2,php服务器从5升级到7.x后发现session失效了

ci无法设置session的问题

根本原因在,libraries/Session/Session.php 中 133行:

// Sanitize the cookie, because apparently PHP doesn't do that for userspace handlers

if (isset($_COOKIE[$this->_config['cookie_name']])

&& (

! is_string($_COOKIE[$this->_config['cookie_name']])

OR ! preg_match('/^[0-9a-z]{10,40}$/', $_COOKIE[$this->_config['cookie_name']])

)

)

{

unset($_COOKIE[$this->_config['cookie_name']]);

}

session_start();

ee0b1317d05300e83ef8e2f864d9c17b.png

如果sessionid的长度不是40的话,每次执行都会 unset($_COOKIE[ci_session])。而session_id取值范围和长度在php7中变了(默认是26)

解决办法:

将上面的/^[0-9a-f]{40}$/, 改成 /^[0-9a-z]{10,40}$/

php7.0升级到php7.1

$ add-apt-repository ppa:ondrej/php$ apt-get update$ apt-get upgrade php 来源:http://www.wuweixin.com/ ...

PHP7 ci框架session存文件,登录的时候session不能读取

config.php配置 $config['sess_driver'] = 'files';//以文件存储session $config['sess_cookie_name'] = 'ci_sessi ...

Xcode升级后插件失效的原理与修复办法

转载:http://joeshang.github.io/2015/04/10/fix-xcode-upgrade-plugin-invalid/ Xcode 的插件大大丰富了 Xcode 的功能,而 ...

Session失效后所有Ajax请求跳转登录地址

当登录的Session失效后,采用ajax请求数据时会没有反应,这时候应该自动跳转到登录页面,让用户重新登录. 全局配置以下可实现 $(function() { $.ajaxSetup({ compl ...

mac ci框架安装使用 memcached存session

mac 安装memcached brew info memcached brew install memcached brew install memcached 安装过程具体不详细多讲 memcac ...

升级framework4.0后form认证票据失效的问题

好久没来了,密码都差点忘了,顺便记录下今天配置环境碰到的小问题 网站使用的form authentication做SSO登录,登录域名使用的framework20配置环境 一个栏目升级为4.0环境后, ...

SpringBoot学习:整合shiro(rememberMe记住我后自动登录session失效解决办法)

项目下载地址:http://download.csdn.NET/detail/aqsunkai/9805821 定义一个拦截器,判断用户是通过记住我登录时,查询数据库后台自动登录,同时把用户放入ses ...

解决ajax 遇到session失效后自动跳转的问题

在项目中,经常会遇到session失效后,点击任何链接无反应的情况!这样给客户的体验就不是很好,以为是系统出了故障!所以在项目中我们会处理session失效后的跳转问题(一般给用户提示,并跳转后登录页 ...

详解springmvc控制登录用户session失效后跳转登录页面

springmvc控制登录用户session失效后跳转登录页面,废话不多少了,具体如下: 第一步,配置 web.xml

随机推荐

Java之JUC系列:外部Tools

前面写了两篇JDBC源码的文章,自己都觉得有点枯燥,先插一段JUC系列的文章来换换胃口,前面有文章大概介绍过JUC包含的东西,JUC体系包含的内容也是非常的多,不是一两句可以说清楚的,我这首先列出将会 ...

[Java] Serializable(序列化)的理解

1.序列化是干什么的?       简单说就是为了保存在内存中的各种对象的状态(也就是实例变量,不是方法),并且可以把保存的对象状态再读出来.虽然你可以用你自己的各种各样的方法来保存object st ...

Notepad++中的颜色属性大全

Indent guideline style  缩进参考线的颜色 Brace highlight style 鼠标指针在框架左右时框架的颜色(如css中{}   js中的()) Bad brace c ...

Zepto 使用中的一些注意点

Zepto 只针对移动端浏览器编写,因此体积更小.效率更高,更重要的是,它的 API 完全仿照 jQuery ,所以学习成本也很低. 但是在开发过程中,我发现 Zepto 还远未成熟,其中包含了一些或 ...

QueryOver<T>

NHibernate 数据查询之QueryOver   一.限制运算符 Where:筛选序列中的项目WhereNot:反筛选序列中的项目 二.投影运算符 Select:创建部分序列的 ...

[Linux] PHP程序员玩转Linux系列-自动备份与SVN

我的代码经常在开发修改,为了代码的安全性,比如哪天误删了文件,或者哪天改错东西了,可以恢复回来,我要搞代码备份.备份代码,我先做最简单的,使用linux的定时机制加shell命令打包文件,每天按日期保 ...

ATM+购物商城完整版

一,需求:模拟实现一个ATM + 购物商城程序 要求如下: 1.额度15000或者自定义 2.实现购物商城,买东西加入购物车,调用信用卡接口结账 3.可以提现,手续费5% 4.支持多账户登陆 5.支持 ...

如何解决loss NAN的问题

问题 如上图所示,第二次迭代时出现NAN值,nan表示无穷大或者非数值,一般是在一个数除以0或者log(0)时会出现无穷大.可能的原因有:1)学习率过大:2)batch过大:3)不当的损失函数等. 试 ...

CentOS 7 配置Tomcat9连接MySQL

配置Tomcat 首先安装Tomcat 安装Tomcat分为安装Tomcat和安装JDK两个步骤 JDK( Java Development Kit ) 是Sun Microsystems针对Java ...

[Project] MiniSearch文本检索简介

1. 预处理过程 预处理主要用来事先生成程序在运行过程中可能用到的数据,以便加速处理时间. 预处理的过程主要生成程序所需的三个文件:网页库文件,网页位置信息文件和倒排索引文件. 网页库文件 其中网页库 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值