php中http与https跨域共享session的解决方法


Posted in PHP onDecember 20, 2014

遇到了HTTP、HTTPS协议下session共享解决cookie失效的问题,这里提供一个临时解决办法。
实现原理:把session id设置到本地的cookie。

如下:

$currentSessionID = session_id();

session_id($currentSessionID );

以下是实现代码,分为http与https两部分。

1,http部分:

<?php

session_start();  

$currentSessionID = session_id();  

$_SESSION['testvariable'] = 'Session worked';  

$secureServerDomain = '3water.com';  

$securePagePath = '/safePages/securePage.php'  

echo '<a href="https://' . $secureServerDomain . $securePagePath . '?session="' . $currentSessionID . '">点这里跳转到HTTPS 协议</a>'; 

?>

2,HTTPS部分

<?php

$currentSessionID = $_GET['session'];

session_id($currentSessionID);

session_start();

if (!emptyempty($_SESSION['testvariable'])) {

      echo $_SESSION['testvariable'];

} else {  

      echo 'Session did not work.';

}

?>

说明:
有点安全问题,session id的传输是没加密的,可以嗅探侦测到,获取这个session id进而获取session数据。
建议加密此id。

PHP 相关文章推荐
Banner程序
Oct 09 PHP
PHP如何得到当前页和上一页的地址?
Nov 27 PHP
默默小谈PHP&amp;MYSQL分页原理及实现
Jan 02 PHP
PHP 文件上传源码分析(RFC1867)
Oct 30 PHP
获取用户Ip地址通用方法与常见安全隐患(HTTP_X_FORWARDED_FOR)
Jun 01 PHP
php操作csv文件代码实例汇总
Sep 22 PHP
php实现的支持imagemagick及gd库两种处理的缩略图生成类
Sep 23 PHP
PHP实现Soap通讯的方法
Nov 03 PHP
PHP实现163邮箱自动发送邮件
Mar 29 PHP
tp5框架使用composer实现日志记录功能示例
Jan 10 PHP
PHP判断访客是否手机端(移动端浏览器)访问的方法总结【4种方法】
Mar 27 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
Feb 18 PHP
php将textarea数据提交到mysql出现很多空格的解决方法
Dec 19 #PHP
thinkphp中session和cookie无效的解决方法
Dec 19 #PHP
thinkphp3.0输出重复两次的解决方法
Dec 19 #PHP
thinkphp3.2.2实现生成多张缩略图的方法
Dec 19 #PHP
9个经典的PHP代码片段分享
Dec 18 #PHP
PHP程序员必须清楚的问题汇总
Dec 18 #PHP
8个PHP程序员常用的功能汇总
Dec 18 #PHP
You might like
PHP判断指定时间段的2个方法
2014/03/14 PHP
PHP生成plist数据的方法
2015/06/16 PHP
php简单判断两个字符串是否相等的方法
2015/07/13 PHP
JavaScript静态的动态
2006/09/18 Javascript
document.getElementById为空或不是对象的解决方法
2010/01/24 Javascript
基于jquery的让textarea自适应高度的插件
2010/08/03 Javascript
如何用ajax来创建一个XMLHttpRequest对象
2012/12/10 Javascript
js猜数字小游戏的简单实现代码
2013/07/02 Javascript
原生javaScript做得动态表格(注释写的很清楚)
2013/12/29 Javascript
JS获取iframe中longdesc属性的方法
2015/04/01 Javascript
AngularJS仿苹果滑屏删除控件
2016/01/18 Javascript
微信小程序使用input组件实现密码框功能【附源码下载】
2017/12/11 Javascript
基于vue.js 2.x的虚拟滚动条的示例代码
2018/01/23 Javascript
JS面向对象的程序设计相关知识小结
2018/05/26 Javascript
vue组件之间数据传递的方法实例分析
2019/02/12 Javascript
js实现删除li标签一行内容
2019/04/16 Javascript
[01:04:08]完美世界DOTA2联赛PWL S3 INK ICE vs GXR 第一场 12.16
2020/12/18 DOTA
python函数缺省值与引用学习笔记分享
2013/02/10 Python
Python构造函数及解构函数介绍
2015/02/26 Python
Python实现简单截取中文字符串的方法
2015/06/15 Python
python函数式编程学习之yield表达式形式详解
2018/03/25 Python
python3 遍历删除特定后缀名文件的方法
2018/04/23 Python
使用Django搭建web服务器的例子(最最正确的方式)
2019/08/29 Python
10个Python面试常问的问题(小结)
2019/11/20 Python
Python使用Selenium模拟浏览器自动操作功能
2020/09/08 Python
HTML5实现直播间评论滚动效果的代码
2020/05/27 HTML / CSS
巴西宠物商店:Cobasi
2019/04/19 全球购物
大学生演讲稿范文
2014/01/11 职场文书
入党思想汇报怎么写
2014/04/03 职场文书
党员干部一句话承诺
2014/05/30 职场文书
运动会拉拉队口号
2014/06/09 职场文书
2014教育局对照检查材料思想汇报
2014/09/23 职场文书
甲乙双方合作协议书
2014/10/13 职场文书
承诺函范文
2015/01/21 职场文书
《追风筝的人》:人心中的成见是座大山,但请不忘初心
2019/11/15 职场文书
导游词之阆中古城
2019/12/23 职场文书