php出现web系统多域名登录失败的解决方法


Posted in PHP onSeptember 30, 2014

本文实例讲述了php出现web系统多域名登录失败的解决方法,分享给大家供大家参考。具体分析如下:

下面只是简单的逻辑结构,对于正式的系统需要做具体的处理。

这里需要注意的是:加解密一定需要做安全验证。但是这个方法也不够完美,两个站点必须有相同一级域名;另外这种完全基于cookie的方式,安全性不够高

function login()
{
  $info = callloginserver(); //访问登录服务器
  if(!empty($info))  //登录成功了
}
//用户没有登录,则在本系统中登录并调用登录服务器接口
function login()  //正常的登录
{
  .......//验证用户的合法性
  $_session['uid'] = $user_id;
  setcookie('sign', encrypt($pass9), '', '/', 'the.com');
}

先检查用户是否在登录系统中登录

funtion sign()
{
 $sign = $_cookie['sign'];
 if(!empty($sign))
 {
   $sign = decrypt($sign);
  ..........///登录成功
 }
}

用户没有登录,则在本系统中登录并调用登录服务器接口

function loging() //本系统登录
{ 
 .....//登录成功
 callseverlogin();//通知用户登录
}

所有的站点共享一个登录系统;当用户在其中的一个站点登录成功时, 该系统调用其他站点的登录接口,完成用户在其他站点的登录,同时设置相应的登录信息;或者在用户登录时,只在该系统保存用户登录信息,当用户在其他站点登录时,必须请求该系统接口,获取用户是否登录的信息。前一种方式的缺点是:不管用户有没有使用其他站点,那些站点都需要保存用户状态;后一种方式就把所有的压力都转移到登录系统上面来。而如果要实现用户退出的统一操作,就需要站点调用登录系统的退出接口,然后登录系统接口调用其他站点的退出接口;或者设置一个标记,如果这个标记不存在则标示用户退出,此时只要把该标示清空即可,其他站点发现该标示不存在就知道用户已经退出系统。

这种处理方式需要在登录系统和个站点之间规定登录接口,和注销接口。通过这些接口,各站点可以很方便的处理用户登录或退出。

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
用IE远程创建Mysql数据库的简易程序
Oct 09 PHP
php 日期时间处理函数小结
Dec 18 PHP
PHP程序员基本要求和必备技能
May 09 PHP
ThinkPHP3.2.2的插件控制器功能简述
Jul 09 PHP
PHP中的use关键字概述
Jul 23 PHP
Yii2 assets清除缓存的方法
May 16 PHP
PHP多维数组元素操作类的方法
Nov 14 PHP
PHP实现上传多文件示例代码
Feb 20 PHP
PHP简单获取随机数的常用方法小结
Jun 07 PHP
Laravel多域名下字段验证的方法
Apr 04 PHP
实例分析10个PHP常见安全问题
Jul 09 PHP
详解PHP 7.4 中数组延展操作符语法知识点
Jul 19 PHP
php中运用http调用的GET和POST方法示例
Sep 29 #PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
Sep 29 #PHP
PHP中echo,print_r与var_dump区别分析
Sep 29 #PHP
PHP5.3安装Zend Guard Loader图文教程
Sep 29 #PHP
推荐25款php中非常有用的类库
Sep 29 #PHP
PHP连接和操作MySQL数据库基础教程
Sep 29 #PHP
PHP的mysqli_query参数MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的区别
Sep 29 #PHP
You might like
星际争霸, 教主第一视角, ZvT经典龙蛇演义
2020/03/02 星际争霸
中国的第一台收音机
2021/03/01 无线电
一个用php3编写的简单计数器
2006/10/09 PHP
php切割页面div内容的实现代码分享
2012/07/31 PHP
摘自织梦CMS中的图片处理类
2015/08/08 PHP
mongodb和php的用法详解
2019/03/25 PHP
PHP的图像处理实例小结【文字水印、图片水印、压缩图像等】
2019/12/20 PHP
jQuery选中select控件 无法设置selected的解决方法
2010/09/01 Javascript
获取下拉列表框的值是数组,split,$.inArray示例
2013/11/13 Javascript
jquery制作图片时钟特效
2020/03/30 Javascript
基于javascript实现图片滑动效果
2016/05/07 Javascript
简单理解vue中el、template、replace元素
2016/10/27 Javascript
js仿小米手机上下滑动效果
2017/02/05 Javascript
Bootstrap响应式导航由768px变成992px的实现代码
2017/06/15 Javascript
分享5个小技巧让你写出更好的 JavaScript 条件语句
2018/10/20 Javascript
vue实现配置全局访问路径头(axios)
2019/11/01 Javascript
解决pycharm双击但是无法打开的情况
2020/10/31 Javascript
[07:43]《辉夜杯》公开赛晋级外卡赛战队—TRG训练生活探秘
2015/12/11 DOTA
利用Python的Twisted框架实现webshell密码扫描器的教程
2015/04/16 Python
Python切片工具pillow用法示例
2018/03/30 Python
Python基于TCP实现会聊天的小机器人功能示例
2018/04/09 Python
基于pytorch padding=SAME的解决方式
2020/02/18 Python
Python读取JSON数据操作实例解析
2020/05/18 Python
python爬虫---requests库的用法详解
2020/09/28 Python
我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串?
2014/03/30 面试题
酒店实习个人鉴定
2013/12/07 职场文书
室内趣味活动方案
2014/08/24 职场文书
公务员爱岗敬业演讲稿
2014/08/26 职场文书
财务部会计岗位职责
2015/02/03 职场文书
培训督导岗位职责
2015/04/10 职场文书
会议通知范文
2015/04/15 职场文书
员工开除通知书
2015/04/25 职场文书
2015年中学图书馆工作总结
2015/07/22 职场文书
勤俭节约主题班会
2015/08/13 职场文书
Python中threading库实现线程锁与释放锁
2021/05/17 Python
利用Python将list列表写入文件并读取的方法汇总
2022/03/25 Python