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 相关文章推荐
PHP 中文处理技巧
Apr 25 PHP
destoon实现调用热门关键字的方法
Jul 15 PHP
PHP浮点数精度问题汇总
May 13 PHP
WordPress中创建用户角色的相关PHP函数使用详解
Dec 25 PHP
php实现购物车产品删除功能(2)
Jul 23 PHP
PHP用PDO如何封装简单易用的DB类详解
Jul 30 PHP
php连接MSsql server的五种方法总结
Mar 04 PHP
PHP实现数据库的增删查改功能及完整代码
Apr 18 PHP
PHP date()格式MySQL中插入datetime方法
Jan 29 PHP
php写入文件不覆盖的实例讲解
Sep 17 PHP
PHP简单实现图片格式转换(jpg转png,gif转png等)
Oct 30 PHP
Laravel框架源码解析之反射的使用详解
May 14 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
cmd下运行php脚本
2008/11/25 PHP
PHP 中执行排序与 MySQL 中排序
2009/04/21 PHP
有关PHP中MVC的开发经验分享
2012/05/17 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
QQ登录简单实现代码
2021/03/09 Javascript
JavaScript 异步调用框架 (Part 5 - 链式实现)
2009/08/04 Javascript
Uglifyjs(JS代码优化工具)入门 安装使用
2020/04/13 Javascript
Js,alert出现乱码问题的解决方法
2013/06/19 Javascript
Js nodeType 属性全面解析
2013/11/14 Javascript
javascript 弹出的窗口返回值给父窗口具体实现
2013/11/23 Javascript
js中split和replace的用法实例
2015/02/28 Javascript
JavaScript实现短信倒计时60s
2017/10/09 Javascript
微信小程序全局变量GLOBALDATA的定义和调用过程解析
2019/09/23 Javascript
JS中队列和双端队列实现及应用详解
2020/09/29 Javascript
Python中Django框架利用url来控制登录的方法
2015/07/25 Python
python简单实现刷新智联简历
2016/03/30 Python
疯狂上涨的Python 开发者应从2.x还是3.x着手?
2017/11/16 Python
Django为窗体加上防机器人的验证码功能过程解析
2019/08/14 Python
浅析Python迭代器的高级用法
2020/07/16 Python
Python开发.exe小工具的详细步骤
2021/01/27 Python
美国指甲油品牌:Deco Miami
2017/01/30 全球购物
香港礼品网站:GiftU eshop
2017/09/01 全球购物
日本最大的药妆连锁店:Matsukiyo松本清药妆店
2017/11/23 全球购物
The North Face北面荷兰官网:美国著名户外品牌
2019/10/16 全球购物
数据库连接池的工作原理
2012/09/26 面试题
学前教育求职自荐信范文
2013/12/25 职场文书
儿子婚宴答谢词
2014/01/09 职场文书
雪山饭庄的创业计划书范文
2014/01/18 职场文书
自考毕业自我鉴定
2014/03/18 职场文书
无房产证房屋转让协议书合同样本
2014/10/18 职场文书
幼儿园教师考核评语
2014/12/31 职场文书
欠款证明
2015/06/24 职场文书
社区干部培训心得体会
2016/01/06 职场文书
SQLServer2019 数据库环境搭建与使用的实现
2021/04/08 SQL Server
如何解决.cuda()加载用时很长的问题
2021/05/24 Python
python opencv检测直线 cv2.HoughLinesP的实现
2021/06/18 Python