Laravel项目和其它项目共享session问题

我这边总结一下,也许以后有人会需要,
其实Laravel的session并不是用PHP自带的session管理器。而是完完全全自己实现了一个。
注意是完完全全自己实现的,并不是传统意义上用session_set_save_handler自定义的session处理器。

所以解决 和另一个ThinkPHP项目的session共用 的问题就很简单了~
在Laravel中启动PHP自带的session就好了,也就是session_start。

这是他们的代码注释 "Note that the Laravel sessions do not make use of PHP "native" sessions in any way since they are crappy."
请记住Laravel在任何地方都没有用到PHP“原生”的session,因为它很蹩脚。

好吧,我现在只要启动蹩脚的session就好了。

by kankana

以上是如何从laravel访问其他程序的session.

以下,则是如何从外部访问laravel的session (file).

当laravel的session driver设置为file, 这些session files都是以json形式存放在app/storage/sessions里面.

关键是,如何找到对应的session文件?

这个文件名是以加密形式存储在cookie的laravel_session里.

如何解密laravel_session获取这个文件名?

1, 首先安装这个库:

https://github.com/illuminate/encryption

2, 获取加密key

位于app/config/app.php 的 key

3,

$encrypter = new Illuminate\Encryption\Encrypter($key);
$session_filename = $encrypter->decrypt($_COOKIE[‘laravel_session‘]);

大致如此.

================================

===================================

项目之间Session共用的最佳实践应该是将Session信息存在 诸如Redis 或者数据库中 项目只需读取Redis或者数据库即可

时间: 2024-11-03 03:29:24

Laravel项目和其它项目共享session问题的相关文章

同一个tomcat多个项目共享session,一个tomcat两个项目共享sessionId

同一个tomcat多个项目共享session,一个tomcat两个项目共享sessionId >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ?Copyright 蕃薯耀 2017年7月12日 http://www.cnblogs.com/fanshuyao/ 一个是2个项目,一个是web-sess

Axure如何如何建立共享项目、如何编辑共享项目、如何获取共享项目

如果小伙伴是一名编程工作者,我们不可以避免的会和Axure这块软件握手,但是但一个项目需要协同操作的时候,就需要用到项目共享的功能.类似我们的svn,想起机房合作的时候,每天早上来到427的我们,打开电脑,开始新的一天的工作,首先,我们从服务器下载项目组最新代码:其次,进入自己的分支,进行工作,每隔一个小时向服务器自己的分支提交一次代码(很多人都有这个习惯.因为有时候自己对代码改来改去,最后又想还原到前一个小时的版本,或者看看前一个小时自己修改了哪些代码,就需要这样做了).最后,当十点半的钟声在

MVC4.0中项目发布遇到IE11时session存入URL中,导致记不住密码的问题

///MVC4.0中项目发布遇到IE11时session存入URL中,导致记不住密码的问题,在webconfig中配置<system.web><authentication mode="Forms">      <forms loginUrl="~/Account/Login" timeout="2880" cookieless="UseCookies" />    </authent

tomcat + memcached session manager共享session

网上有很多关于通过MSM(memcached session manager)实现memcached共享session的文章,但是很多都是东拼西凑,误导别人.正巧最近有一个地方用到,特此总结一下. MSM支持tomcat6,tomcat7,tomcat8,MSM支持两种模式:sticky sessions(粘性session)和non-sticky sessions(非粘性session).我用到的是sticky session,所以以下都按照sticky session 来介绍.集群结构是2个

形散神不散:Tomcat 下多个虚拟目录共享session方法

最近开发项目,碰到跟其他团队合作开发,虽然同为java,但是基础架构完全不同,为了避免冲突,我们采用同一web容器,部署不同的服务,共享session的机制,达到散文的精髓:形散神不散. 首先看tomcat配置,打开conf/server.xml,找到Host节点,增加两个Context节点如下: <Context path="/master" docBase="master" reloadable="true" crossContext=

利用spring session解决共享Session问题

1.共享Session问题 HttpSession是通过Servlet容器创建和管理的,像Tomcat/Jetty都是保存在内存中的.而如果我们把web服务器搭建成分布式的集群,然后利用LVS或Nginx做负载均衡,那么来自同一用户的Http请求将有可能被分发到两个不同的web站点中去.那么问题就来了,如何保证不同的web站点能够共享同一份session数据呢? 最简单的想法就是把session数据保存到内存以外的一个统一的地方,例如Memcached/Redis等数据库中.那么问题又来了,如何

TP、PHP同域不同子级域名共享Session、单点登录

TP.PHP同域不同子级域名共享Session.单点登录 目的: 为了部署同个域名下不同子级域名共享会话,从而实现单点登录的问题,一处登录,同域处处子系统即可以实现自动登录. PHP支持通过设置cookie使得同域不同子域共享SESSION 1. 通过在执行PHP的入口文件中设置如下代码: ini_set('session.cookie_path', '/'); ini_set('session.cookie_domain', '.mydomain.com'); ini_set('session

redis+tomcat共享session问题(转)

为了让楼主看看Java开发是多么的简单和轻松,你说你耗时一周都没搞好,简直就是胡说八道!!我从没搞过reids和tomcat整合的(我做的项目一直都是去session用cookie,为了验证你在胡说八道,我还特意把我项目里JSP里的session=false去掉),耗时也不过20分钟!!我今天非要截图给你看看!!最受不了新手只会去copy网上的文章,不去看源码不去看文档. 所用版本tomcat7 最新版,Java 7最新版,redis 2.6,jedis 2.7.0,common-pool 2.

项目经理之项目经理需要用哪些工具?

随着IT行业的发展,IT行业内的项目拓展和投资比比皆是.为了提高项目管理水平,赢得市场竞争,特别是在加入WTO后在国内.国际市场上拥有与国际接轨的项目管理人才, --> 越来越多的业界人士正通过不同的方式参加项目管理培训并力争获得世界上最权威的职业项目经理(PMP)资格认证.同时,大部分的IT行业项目管理人士正尝试使用项目管理软件对自己的项目进行辅助管理,为了方便大家的使用,现对项目管理作一简要介绍. 目前市场上项目管理软件种类较多,具有代表性的为微软项目管理软件2000,但大多以美国项目管理协

Android浏览器(一):Webkit项目与Chromuim项目

转载请注明原文地址:http://blog.csdn.net/u012637501/article/details/46878253 目前,移动设备浏览器上常用的内核有Webkit,Blink,Trident,Gecko等,其中iPhone和iPad等苹果iOS平台主要是WebKit,Android 4.4之前的Android系统浏览器内核是WebKit,Android4.4系统浏览器切换到了Chromium(内核是Webkit的分支Blink),Windows Phone 8系统浏览器内核是T