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 相关文章推荐
用文本作数据处理
Oct 09 PHP
在Windows版的PHP中使用ADO
Oct 09 PHP
php图片验证码代码
Mar 27 PHP
Ajax PHP 边学边练 之三 数据库
Nov 26 PHP
基于xcache的配置与使用详解
Jun 18 PHP
PHP采集类Snoopy抓取图片实例
Jun 19 PHP
PHP中使用php://input处理相同name值的表单数据
Feb 03 PHP
Adnroid 微信内置浏览器清除缓存
Jul 11 PHP
PHP实现的装箱算法示例
Jun 23 PHP
Laravel框架实现调用百度翻译API功能示例
May 30 PHP
PHP迭代器和生成器用法实例分析
Sep 28 PHP
浅谈laravel中的关联查询with的问题
Oct 10 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
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
2013/01/06 PHP
33道php常见面试题及答案
2015/07/06 PHP
PHP 9 大缓存技术总结
2015/09/17 PHP
使用php从身份证号中获取一系列线索(星座、生肖、生日等)
2016/05/11 PHP
jQuery中add实现同时选择两个id对象
2010/10/22 Javascript
jquery表单验证使用插件formValidator
2012/11/10 Javascript
js实现杯子倒水问题自动求解程序
2013/03/25 Javascript
location对象的属性和方法应用(解析URL)
2013/04/12 Javascript
jQuery 仿百度输入标签插件附效果图
2014/07/04 Javascript
JavaScript获取页面上被选中文字的方法技巧
2015/03/13 Javascript
初步了解javascript面向对象
2015/11/09 Javascript
js的form表单提交url传参数(包含+等特殊字符)的两种解决方法
2016/05/25 Javascript
AngularJS基础 ng-list 指令详解及示例代码
2016/08/02 Javascript
全面解析Angular中$Apply()及$Digest()的区别
2016/08/04 Javascript
js 弹出虚拟键盘修改密码的简单实例
2016/10/10 Javascript
微信小程序加载更多 点击查看更多
2016/11/29 Javascript
微信小程序配置服务器提示验证token失败的解决方法
2019/04/03 Javascript
解决vue单页面应用中动态修改title问题
2019/06/09 Javascript
Vuex实现数据共享的方法
2019/12/20 Javascript
[01:45]DOTA2新英雄“神谕者”全方位展示
2014/11/21 DOTA
Python的__builtin__模块中的一些要点知识
2015/05/02 Python
python矩阵转换为一维数组的实例
2018/06/05 Python
Python基础教程之异常详解
2019/01/10 Python
python多进程下的生产者和消费者模型
2020/05/07 Python
python 数据库查询返回list或tuple实例
2020/05/15 Python
Python reques接口测试框架实现代码
2020/07/28 Python
美特斯邦威官方商城:邦购网
2016/10/13 全球购物
琳达·法罗眼镜英国官网:Linda Farrow英国
2021/01/19 全球购物
学期自我鉴定范文
2013/10/01 职场文书
开展党的群众路线教育实践活动方案
2014/02/05 职场文书
校园文明倡议书
2014/05/16 职场文书
留学生求职信
2014/06/03 职场文书
创业计划书之健康营养产业
2019/10/15 职场文书
Python 中random 库的详细使用
2021/06/03 Python
php实现自动生成验证码的实例讲解
2021/11/17 PHP
MySQL 主从复制数据不一致的解决方法
2022/03/18 MySQL