php session (二): 同样的代码 ,不同域名访问 对session存储的影响.
一:准备工作:
位置:
- htdocs
- a目录:
- sessiona.php
- b目录
- sessionb.php
- c目录
- sessionc.php
- a目录:
------
sessiona.php
<?php session_start();
$_SESSION["test"] = "this is a"; ?>
-------
sessionb.php
<?php session_start();
$_SESSION["test"] = "this is b"; ?>
--------
sessionc.php
<?php session_start();
$_SESSION["test"] = "this is c"; ?>
-----
a,b,c 目录分别设置了 网址. www.a.com , www.b.com , www.c.com
-------
二:访问:
2-1: localhost方式访问:
1. 访问 localhost/a/sessiona.php

2.访问 localhost/b/sessionb.php

3.访问localhost/c/sessionc.php

4. 查看客户端 cookie:

结论:
上面域名都是 localhost , 虽然在 不同的目录 下 设置 session变量. 但是 只有一个session文件.
可见,同一个domain 下 的所有session 都保存在 一个文件中, 不能你在那个脚本中设置session
同名的session会不断更新, $_SESSION["test"] 的值 从 this is a --> this is b --->this is c.
补充: 上面说的不完整. 应该是如果 用同一个 浏览器(具体某个人的电脑上的某个浏览器) 访问一个域名, 那么这个域名下 所有 的 session变量(这个域名下不同脚本设置的session变量) 都会
储存在一个session文件中.
session是区分浏览器(这个指得是不只是浏览器品牌.) ,
例如有浏览器 : 360 ,搜狗.
不是说网站下 只有两个session文件 ,
而是说 小明的电脑上 有 360 ,搜狗; 小花的电脑上有 360 ; 那么小明分别用 360 ,搜狗访问网站 ,小花 用 360 访问网站, 那么 网站的服务器中就会有三个 session文件.
2-2: 不同域名的访问:
清空原来的所有的session存储文件:
1. 访问www.a.com/sessiona.php
session:

----
cookie:

2. 访问 www.b.com/sessionb.php
---
session:

服务器端多了一个 存储 www.b.com 中的所有session的文件.
----
cookie:

当前 www.b.com 只有一个cookie . 名字是 PHPSESSID
-----
3.访问 www.c.com/sessionc.php
--
session:

服务器端 又多了一个 session文件.
---
cookie:

----
结论:同样的代码只是 访问的url不同 ,产生的session也就不同.
上面我们用了三个域名访问, 在服务器端 就生成了 三个文件 ,分别保存 这三个 域名下的 所有 session.
---
上面 是域名完全不同.
现在测试一下 二级域名相同, 三级域名不同的情况.
- htdocs
- a目录
- sessiona.php
- a1目录
- sessiona1.php
- a目录
a目录 : www.a.com
a1目录: a1.a.com
------
sessiona.php
<?php session_start();
$_SESSION["test"] = "this is a"; ?>
--------------
sessiona1.php
<?php session_start();
$_SESSION["test"] = "this is a1"; ?>
----------
1:访问: www.a.com/sessiona.php


----------
2. 访问 a1.a.com


-------------
可见, 服务器端总共有两个 session文件. www.a.com 和 a1.a.com 是不同的 domain.
可见 ,域名是从三级域名算起的, 如果二级域名相同,三级域名不同, 那么就算作是不同的主机.
php session (二): 同样的代码 ,不同域名访问 对session存储的影响.的更多相关文章
- JavaWeb(二)会话管理之细说cookie与session
前言 前面花了几篇博客介绍了Servlet,讲的非常的详细.这一篇给大家介绍一下cookie和session. 一.会话概述 1.1.什么是会话? 会话可简单理解为:用户开一个浏览器,点击多个超链接, ...
- asp.net 配置二级域名的共享session,并实现sso单点登录
公司最近做了一个新网站.原先网站的网址是www.xxxx.com.新做的网站要部署到info.xxxx.com.这两个网站要实现单点登录.而新老网站本身机构的原因,对于登录状态的判断,说白了就是对于s ...
- {Django基础八之cookie和session}一 会话跟踪 二 cookie 三 django中操作cookie 四 session 五 django中操作session
Django基础八之cookie和session 本节目录 一 会话跟踪 二 cookie 三 django中操作cookie 四 session 五 django中操作session 六 xxx 七 ...
- TFS API:二、TFS 代码查询工作项
TFS API:二.TFS 代码查询工作项 首先我们需要认识TFS的两大获取服务对象的类. 他们分别为TfsConfigurationServer和TfsTeamProjectCollection, ...
- asp.net C#生成和解析二维码代码
类库文件我们在文件最后面下载 [ThoughtWorks.QRCode.dll 就是类库] 使用时需要增加: using ThoughtWorks.QRCode.Codec;using Thought ...
- php session学习笔记(实例代码)
http 无状态协议 一个服务器向客户端发送消息的时候有三条信息 一是状态二是头信息三是内容 会话控制 让一个用户访问每个页面,服务器都知道是哪个用户访问 cookie cookie是通过头信息发送 ...
- Asp.net Mvc 自定义Session (二)
在 Asp.net Mvc 自定义Session (一)中我们把数据缓存工具类写好了,今天在我们在这篇把 剩下的自定义Session写完 首先还请大家跟着我的思路一步步的来实现,既然我们要自定义Ses ...
- Session for Tornado(Redis) - 代码分享
Session for Tornado(Redis) - 代码分享 Session for Tornado(Redis) session id的生成借用了web.py. 使用了 redis 的 h ...
- Re:从零开始的Spring Session(二)
上一篇文章介绍了一些Session和Cookie的基础知识,这篇文章开始正式介绍Spring Session是如何对传统的Session进行改造的.官网这么介绍Spring Session: Spri ...
随机推荐
- SQL SERVER 字符拆分列为多行
注:先学习sql server里的递归CTE. 假设有兴趣表Hobbys Name Hobby 小张 篮球,足球,羽毛球 Name Hobby 小张 篮球 小张 足球 小张 羽毛球 采用[递归cte] ...
- java动态代理机制
首先了解代理设计模式,其思想是为其他对象提供一种代理以控制对这个对象的访问. java动态代理就是遵循这种思想,spring中的AOP实现原理就是java的动态代理. 在java的动态代理机制中,有两 ...
- 集成学习二: Boosting
目录 集成学习二: Boosting 引言 Adaboost Adaboost 算法 前向分步算法 前向分步算法 Boosting Tree 回归树 提升回归树 Gradient Boosting 参 ...
- git如何merge github forked repository里的代码更新?(转)
参考内容:git如何merge github forked repository里的代码更新? [refer to ]http://www.haojii.com/2011/08/how-to-git- ...
- Ubuntu 14.04(64位)+GTX970+CUDA8.0+Tensorflow配置 (双显卡NVIDIA+Intel集成显卡) ------本内容是长时间的积累,有时间再详细整理
(后面内容是本人初次玩GPU时,遇到很多坑的问题总结及尝试解决办法.由于买独立的GPU安装会涉及到设备的兼容问题,这里建议还是购买GPU一体机(比如https://item.jd.com/396477 ...
- [LeetCode] 98. Validate Binary Search Tree(是否是二叉搜索树) ☆☆☆
描述 解析 二叉搜索树,其实就是节点n的左孩子所在的树,每个节点都小于节点n. 节点n的右孩子所在的树,每个节点都大于节点n. 定义子树的最大最小值 比如:左孩子要小于父节点:左孩子n的右孩子要大于n ...
- weblogic开启http访问日志并实时写入日志文件
由于http访问会产生大量日志,耗去不少IO和CPU所以在生产一般是不启用的:但有时我们会想启用http访问日志,尤其是在系统上线调试的时候. weblogic的日志默认在domain_name/se ...
- 使用Intellij中的Spring Initializr来快速构建Spring Boot/Cloud工程(十五)
在之前的所有Spring Boot和Spring Cloud相关博文中,都会涉及Spring Boot工程的创建.而创建的方式多种多样,我们可以通过Maven来手工构建或是通过脚手架等方式快速搭建,也 ...
- spring事务管理(详解和实例)
原文地址: 参考地址:https://blog.csdn.net/yuanlaishini2010/article/details/45792069 写这篇博客之前我首先读了<Spring in ...
- flex入门----基础知识
传统的页面布局 在flex出现之前,双列布局,三列布局,动态盒居中,绝对居中布局等常见的布局均是采用dispaly+float+定位来布局的,一般包括以下几种布局策略: normal flow(文 ...