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 相关文章推荐
php的控制语句
Oct 09 PHP
提高define性能的php扩展hidef的安装和使用
Jun 14 PHP
yii中widget的用法
Dec 03 PHP
php使用explode()函数将字符串拆分成数组的方法
Feb 17 PHP
详解php的socket通信
Aug 11 PHP
使用xampp搭建运行php虚拟主机的详细步骤
Oct 21 PHP
Symfony2框架学习笔记之表单用法详解
Mar 18 PHP
理解php依赖注入和控制反转
May 11 PHP
PHP实现JS中escape与unescape的方法
Jul 11 PHP
PHP结合Ueditor并修改图片上传路径
Oct 16 PHP
laravel 实现关闭CSRF(全部关闭、部分关闭)
Oct 21 PHP
laravel 框架执行流程与原理简单分析
Feb 01 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编写和读取XML的几种方式
2013/01/12 PHP
php获取远程图片体积大小的实例
2013/11/12 PHP
PHP简单实现HTTP和HTTPS跨域共享session解决办法
2015/05/27 PHP
PHP+swoole实现简单多人在线聊天群发
2016/01/19 PHP
jQuery Ajax之load()方法
2009/10/12 Javascript
javascript学习笔记(十七) 检测浏览器插件代码
2012/06/20 Javascript
JS上传前预览图片实例
2013/03/25 Javascript
js中单引号与双引号冲突问题解决方法
2013/10/04 Javascript
form.submit()不能提交表单的错误原因及解决方法
2014/10/13 Javascript
JS实现在线统计一个页面内鼠标点击次数的方法
2015/02/28 Javascript
轻松掌握JavaScript单例模式
2016/08/25 Javascript
js控制台输出的方法(详解)
2016/11/26 Javascript
Bootstrap Table使用心得总结
2016/11/29 Javascript
简单实现node.js图片上传
2016/12/18 Javascript
原生js实现吸顶效果
2017/03/13 Javascript
js实现验证码功能
2020/07/24 Javascript
[44:01]2018DOTA2亚洲邀请赛3月30日 小组赛B组 EG VS paiN
2018/03/31 DOTA
解决windows下Sublime Text 2 运行 PyQt 不显示的方法分享
2014/06/18 Python
Python赋值语句后逗号的作用分析
2015/06/08 Python
Python模块WSGI使用详解
2018/02/02 Python
python实现聚类算法原理
2018/02/12 Python
简单实现python数独游戏
2018/03/30 Python
python3+PyQt5实现柱状图
2018/04/24 Python
Python之inspect模块实现获取加载模块路径的方法
2018/10/16 Python
在Python中,不用while和for循环遍历列表的实例
2019/02/20 Python
Python 列表的清空方式
2020/01/13 Python
python和JavaScript哪个容易上手
2020/06/23 Python
python中time tzset()函数实例用法
2021/02/18 Python
Joules美国官网:出色的英国风格
2017/10/30 全球购物
千禧酒店及度假村官方网站:Millennium Hotels and Resorts
2019/05/10 全球购物
编程实现当输入某产品代码则打印出该产品记录的功能
2014/05/03 面试题
亿阳信通股份有限公司C#笔试题
2016/12/06 面试题
清洁工表扬信
2014/01/08 职场文书
药剂专业自荐信范文
2014/04/16 职场文书
独生子女证明范本
2015/06/19 职场文书
Tomcat starup.bat 脚本实现开机自启动
2022/04/20 Servers