您现在的位置是:首页 > cms教程 > phpcms教程phpcms教程
phpcms的phpsso不能同步退出的解决方法
文子隐2025-05-08 20:15:36phpcms教程已有3人查阅
导读phpcmsv9自带了一个phpsso_server用于多站点同步登录,还可以整合ucenter。为了不改动太多的代码,今天整合ECSHOP和PHPCMS的时候还是用了这个phpsso。
phpcms不能同步退出怎么办?phpcmsv9phpsso无法同步退出?
phpcmsv9自带了一个phpsso_server用于多站点同步登录,还可以整合ucenter。为了不改动太多的代码,今天整合ECSHOP和PHPCMS的时候还是用了这个phpsso。
ECSHOP很方便,简单配置了一下就可以和ucenter通信了。这个phpsso搞了半天没有成功和ucenter通信。经过几个小时的琢磨,最终还是成功让他们通信了。
注册,登录,都可以同步,唯独在phpcms中退出登录时ECSHOP没有退出,反之确可以。
问题出现的原因:
首页看到了PHPCMS的登出的代码里面有一句同步登出的语句: 这个同步登出的代码是这样的 注意这里_ps_send的第二个参数是一个空的数组
再看到phpsso_server中phpsso类的构造函数: 这里对$this->data有一个判断,如果empty返回true就直接返回0不会再执行下面的同步退出代码了。而上面一步可以看到调用同步登出时传入的data参数恰恰就是array(),empty当然会返回true。于是调用同步退出就在这里终止。
问题的解决办法:
知道了原因要想解决就很容易了,主要有两种。
保险一点的方法是到ps_member_synlogout里面给那个空的数组随便增加一个元素。
第二种就是去掉empty($this->data)这个判断。
phpcmsv9自带了一个phpsso_server用于多站点同步登录,还可以整合ucenter。为了不改动太多的代码,今天整合ECSHOP和PHPCMS的时候还是用了这个phpsso。
ECSHOP很方便,简单配置了一下就可以和ucenter通信了。这个phpsso搞了半天没有成功和ucenter通信。经过几个小时的琢磨,最终还是成功让他们通信了。
注册,登录,都可以同步,唯独在phpcms中退出登录时ECSHOP没有退出,反之确可以。
问题出现的原因:
首页看到了PHPCMS的登出的代码里面有一句同步登出的语句: 这个同步登出的代码是这样的 注意这里_ps_send的第二个参数是一个空的数组
再看到phpsso_server中phpsso类的构造函数: 这里对$this->data有一个判断,如果empty返回true就直接返回0不会再执行下面的同步退出代码了。而上面一步可以看到调用同步登出时传入的data参数恰恰就是array(),empty当然会返回true。于是调用同步退出就在这里终止。
问题的解决办法:
知道了原因要想解决就很容易了,主要有两种。
保险一点的方法是到ps_member_synlogout里面给那个空的数组随便增加一个元素。
第二种就是去掉empty($this->data)这个判断。
本文标签:
很赞哦! (0)
暂无内容 |
暂无内容 |
相关文章
暂无内容 |
暂无内容 |
随机图文
phpcms常用接口调用方法代码示例
常用函数 , 打开include/global.func.php,下面存放一些公共函数view plaincopy to clipboardprint数据库类,打开include/db_mysql.class.phpPHPCMS和帝国CMS的安全性分析
phpcms和帝国cms在安全性上的差异主要体现在代码复杂性和更新频率上。1. phpcms的代码复杂,需定期审计和更新以防漏洞。2. 帝国cms代码简洁,更新频率高,安全性相对较高。phpcms提示hash验证失败怎么办
解决phpcms保存文章出现hash数据验证失败的一种方法每天记录一下工作中遇到的问题,不管是大问题还是小问题,对于自己或者他人也许会有很大的帮助。phpcms可以做商城吗
可以,但是它不是专业的商城系统,即没有现成的模块去使用直接做商城,要做适当的二次开发。它有支付模块和自定义数据模型,支持自己开发模块。二次开发起来个人感觉比较方便。
留言与评论 (共有 0 条评论) |