laravel不同用户对应的同名的session是独立的
laravel不同用户对应的同名的session是独立的
一、总结
一句话总结:
laravel中 不同用户会根据不同的laravel_session从而将session存在不同的session文件里面
1、laravel中session的存储原理是什么?
laravel中 不同用户会根据不同的laravel_session从而将session存在不同的session文件里面
用户1存储了session["phone_code"=>'1111']
用户2存储了session["phone_code"=>'2222']
比如用户1存储的session文件为aaaa(和用户1的laravel_session有关),用户b存储的session文件为bbbb(和用户2的laravel_session有关)
那么session取值的时候会根据 laravel_session 来找到session文件,从而从里面读出 phone_code 字段的值
那么用户1读取的phone_code就是1111,用户2为2222
2、lavarel中session文件的存储位置在哪?
storage/framework/sessions里面
二、laravel不同用户对应的同名的session是独立的
1、lavarel在控制器中打印session

2、laravel中session存储原理
是根据不同的laravel_session来存储具体的session
不同laravel_session对应的session文件是不同的
例如如下:

比如
用户1存储了session["phone_code"=>'1111']
用户2存储了session["phone_code"=>'2222']
比如用户1存储的session文件为aaaa(和用户1的laravel_session有关),用户b存储的session文件为bbbb(和用户2的laravel_session有关)
那么session取值的时候会根据 laravel_session 来找到session文件,从而从里面读出 phone_code 字段的值
那么用户1读取的phone_code就是1111,用户2为2222
下图为不同用户的lavarel_session实例


3、实例:laravel不同用户对应的同名的session是独立的
测试是为了测试不用用户的session互补干扰
方法:先用户1使用session然后打印session值,然后用户2使用session然后打印session值,然后用户1再使用session然后打印session值,会发现用户1和用户2的同名session值独立
用户1:在chrome上:时间21:57,session中phone_code的结果为:1179

用户2:在 火狐上:时间22:03,session中phone_code的结果为:5207

用户1:在chrome上:时间22:03,session中phone_code的结果为:1179

4、上述实例对应的session的存储位置
laravel中的session存在这里:storage/framework/sessions 里面

用户1的session的存储位置

用户2的session的存储位置

laravel不同用户对应的同名的session是独立的的更多相关文章
- Laravel 下配置 Redis 让缓存、Session 各自使用不同的 Redis 数据库
为什么要这样做? 默认情况下,Redis 服务会提供 16 个数据库,Laravel 使用数据库 0 (请见 Redis 文档)作为缓存和 Session 的存储. 在使用的过程中觉得这个默认的设置挺 ...
- laravel修改用户模块的密码验证
做项目的时候,用户认证几乎是必不可少的,如果我们的项目由于一些原因不得不使用 users 之外的用户表进行认证,那么就需要多做一点工作来完成这个功能. 现在假设我们只需要修改登录用户的表,表名和表结构 ...
- java.net.URL 模拟用户登录网页并维持session
java.net.URL 模拟用户登录网页并维持session 半成品,并非完全有用 import java.io.BufferedReader; import java.io.InputStream ...
- java.net.URL 模拟用户登录网页并维持session【转】
java.net.URL 模拟用户登录网页并维持session 半成品,并非完全有用 import java.io.BufferedReader; import java.io.InputStream ...
- CKFinder根据用户设置权限,不同用户有自己的私有的、独立的文件夹
CKFinder 默认情况下多个用户共用同一个图片目录.所有上传的图片和Flash全部保存在同一个文件夹(默认为 userfiles)内. 现在想实现: 第1个需求:不同用户有自己的私 ...
- python 全栈开发,Day119(Flask初识,Render Redirect HttpResponse,request,模板语言 Jinja2,用户登录例子,内置Session)
一.Flask初识 首先,要看你学没学过Django 如果学过Django 的同学,请从头看到尾,如果没有学过Django的同学,并且不想学习Django的同学,轻饶过第一部分 三大主流Web框架对比 ...
- laravel 的用户认证
1.简介 Laravel 中实现用户认证非常简单.实际上,几乎所有东西都已经为你配置好了.配置文件位于config/auth.php,其中包含了用于调整认证服务行为的.文档友好的选项配置. 在底层代码 ...
- 使用laravel实现用户的登陆
首先在 php artisan 里面 make:auth 生产一个门脸类 修改配置文件里面要哪个模型登陆 模型得继承一下才能 先写一下注册 密码必须要使用laravel的加密方法,使用MD5都没用 l ...
- 【laravel】用户认证之----手动认证用户
模型 如果某个模型类需要用于认证,必须继承自 Illuminate\Foundation\Auth\User 基类,否则会报错.然后在这个模型类中使用 Notifiable Trait,里面提供了用户 ...
随机推荐
- RuntimeWarning: DateTimeField AppToken.expire_date received a naive datetime (2019-05-16 16:54:01.144582) while time zone support is active. RuntimeWarning)
数据库存储当前时间操作: datetime.datetime.now() 更改为: from django.utils import timezone timezone.now()
- 修改Linux命令:ls为例
Linux命令可以被修改,用于启动一些不起眼的程序. 操作方法如下: whereis ls cd /usr/bin mv ls ls_bak vim ls 新建的ls文件中 chmod +x ls c ...
- Hive笔记及配置
Hive 基于Hadoop的数据仓库工具: 将结构化的数据文件,映射为一张表,并提供类SQL查询功能: 本质:将HQL转化为MapReduce程序: Hive处理的数据存储在HDFS: Hive分析数 ...
- Computer Vision_33_SIFT:ORB_An efficient alternative to SIFT or SURF——2012
此部分是计算机视觉部分,主要侧重在底层特征提取,视频分析,跟踪,目标检测和识别方面等方面.对于自己不太熟悉的领域比如摄像机标定和立体视觉,仅仅列出上google上引用次数比较多的文献.有一些刚刚出版的 ...
- Python函数Day2
一.函数补充 只有一个参数时,变量用argv 二.动态参数 为了拓展,对于传入的实参数量不固定,需要万能参数,即动态参数 *args **kwargs 在函数定义时,在 *args为位置参数,起聚合的 ...
- DNS服务——服务端 和 客户端 配置
参考:Linux下DNS主从服务器搭建详解 前言 电脑经常会出现一些网络小毛病.有的时候,QQ能正常上网,但是网页却打不开.这种时候十有八九是DNS出问题了. QQ在DNS不可用的时候,可以跳过DNS ...
- 偶然发现的几个OPENWRT工具安装包
https://rychly.gitlab.io/openwrt-packages/ 有心人已经打好包了,下载拿用 例如:dropbrute https://rychly.gitlab.io/open ...
- artDialog提示框
API网址 http://aui.github.io/artDialog/doc/index.html 相关资料下载 https://code.google.com/archive/p/artdial ...
- 运输层4——TCP可靠运输的工作原理
目录 1. 停止等待协议 写在前面:本文章是针对<计算机网络第七版>的学习笔记 运输层1--运输层协议概述 运输层2--用户数据报协议UDP 运输层3--传输控制协议TCP概述 运输层4- ...
- BZOJ3331 压力 (圆方树+树上差分)
题意 略 题解 求路径上的割点. 然后就直接圆方树上差分 CODE #include <bits/stdc++.h> using namespace std; inline void rd ...