什么叫session和cookie-及其设置
http的无状态?
保持状态, 是指当程序关闭后重启, 上一次操作的历史还能继续, 保持的. 如word中的 "选项"设置. 如windows系统的设置等等. http的设计目的, 只是为了简单的 让客户端请求文件 服务器响应分发文件 而已. 彼此之间都不需要记住以往的历史. 就像 散客/游客 在 自动售货机/自由卖场 购买东西一样. 这一次和每一次的 购买/访问 行为都是独立的,互不相关的. 所以当 b访问s后, 下一次再访问s; 甚至在同一次访问中 的不同页面间跳转也是独立的, 彼此间的状态都不共享,不互知
为什么需要状态保持?
而web程序或有些应用中,需要在 下一次访问S ,或不同页面间 跳转时, (保持状态的概念:)知道以往的访问历史 或程序状态, 和交互信息. 这就需要 在B /S 间保持状态. 如统计访问次数, 判断用户是否登录等.
保持状态的理解例子?
如同 在咖啡店喝咖啡的会员制, 喝上5杯咖啡送一杯咖啡. 就要记录这一次和以往喝咖啡的记录.就需要保持状态. 三种方式: 店员记住每个顾客的消费记录,这是http协议自身实现; 顾客一张消费卡,卡上记有各次消费的情况, 这个是客户端 cookie 保持状态; 给顾客一张会员卡,上面只有一个记录号, 然后咖啡店的服务器上保存顾客消费情况, 当顾客进店消费时, 出示会员卡,根据卡号查询记录,决定消费情况. 这是服务器端 session 保持状态. 由于客户端消费卡, 可能被修改/仿造, 为了保证顾客信息/资金的安全, 通常采用服务器端保持状态. 也就是说, 重要信息的状态保持, 要采用session, 不要采用cookie.
session的设置set, 不叫设置, 叫做 "装逼的 注册".
session的存在形式? 是以服务器内存变量的形式存在的, 不是以文件的形式保存的. 保存在服务器的内存中,所以服务器进程一旦终止 或 机器重启,那么, server上的session 就不存在了.
session的创建和终止消亡?
不是客户端一连接服务器,就创建session, 而是要显式的调用 Session::set('username', $Think.post.name).
session的消亡也不是 "会话" 一结束就消亡, 而是: 显式的调用 Session::clear/destroy(); 或者session的静默 超过设置的session过期时间; 或者如上的进程终止或机器重启.
那么session的默认过期时间
是空格, 也可以用 &#方式来表示, 注意要写上#, 否则会按原样输出 &12288;
cookie的最大尺寸, 大小限制: 3K?
cookie的保存?
cookie的设置包括名称, 过期时间, 域,路径. 域是整体 的范围, 如 .baidu.com , 路径是作用的具体范围,通常是一个子目录. 域和路径组合 表示cookie的作用范围. 过期时间, 如果没有设置,表示会话一结束cookie就失效, 称为"会话cookie".
cookie的使用方式?
cookie不需要用户 显式的去调用, 去引用. 它是放在 浏览器的目录中, 在访问服务器时, 浏览器会自动的 扫描检查 每一个 cookie, 然后将cookie 添加到 http请求头中, 一并发送给服务器. 然后由服务器去检查? if(Session::is_set('username')....
session的使用也需要cookie吗?
是的, session的使用,如同上面的咖啡厅会员卡一样, 顾客是持有 会员卡 卡号, 店里面根据会员卡号查询记录. 同样的, 服务器上有session 记录, 而session的标识, 即session id是保存在客户端, 的cookie中的. 浏览器访问服务器时, 会自动的将cookie中的 session id发给服务器, 然后检测.
对于多用户并发的session,难道不会重叠,覆盖吗?
正是因为上面的那个session id的原因.
盗用用户名发帖?
就是将你的机器上的cookie盗用,拷贝到它机器上的浏览器目录下, 因为浏览器会自动地发送cookie, 所以它上网时就是盗用你的身份了.
git tag 的操作包括: 创建/列表/删除/推送 标签
-a 创建, -l list, -d 删除标签. -m 加上创建标签时的备注信息
git show : 可以显示查看 任何类型的 对象. show various types of objects. git show Release-0.1
git tag是放在 .git/refs/tags/目录中的, 比如Release-0.1, 其实是一个 中的.
git tag -a 'Release-0.1' -m 'first tagger tagged'
git tag; git tag -l; git show Release-0.1(git show是直接查看各种git对象)
什么叫session和cookie-及其设置的更多相关文章
- flask设置cookie,设置session,模拟用户认证、模拟管理后台admin、模拟用户logout
设置cookie HTTP协议是无状态的,在一次请求响应结束后,服务器不会留下关于客户端状态的信息.但是对于某些web程序来说,客户端的信息有必要被记住,比如用户的登录状态,这样就可以根据用户的状态来 ...
- Django中的session和cookie及分页设置
cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不 ...
- 理解Session与Cookie
写在前面的话:Session和Cookie是非常有意思的两个概念,对于两者的管理可以处理的很复杂,但是无论如何,理解Session和Cookie的基本概念和发明初衷,对于问题的解决,大有裨益. === ...
- session和cookie的区别
cookie机制和session机制的区别 具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案. 同时我们也看到,由于才服务器 ...
- 安全退出,清空Session或Cookie
概览: 网站中点击退出,如果仅仅是重定向到登录/出页面,此时在浏览器地址栏中输入登录后的某个页面地址如主页,你会发现不用登录就能访问.这种所谓的退出并不是安全的. 那么怎样做到安全退出呢? 那就是点击 ...
- 关于session和cookie
一.cookie机制和session机制的区别 **************************************************************************** ...
- 【荐】PHP Session和Cookie,Session阻塞,Session垃圾回收,Redis共享Session,不推荐Memcached保存Session
什么是 Session 在 web 应用开发中,Session 被称为会话.主要被用于保存某个访问者的数据. 由于 HTTP 无状态的特点,服务端是不会记住客户端的,对服务端来说,每一个请求都是全新的 ...
- Session与Cookie概念
摘:一.Session机制session是一种服务器端的状态管理技术,服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息.当程序需要为某个客户端的请求创建一个session的时候,服务 ...
- session和cookie
第一次听到cookie这个词的时候着实兴奋了一段时间,以为是小饼干呢~快喝一杯82年的java压压惊!哈哈~ 与cookie的第一次邂逅——清缓存和清cookie 刚毕业的时候上班,做二次开发,明明后 ...
随机推荐
- Android 中shape的使用(圆角矩形)
一.在res/drawable文件夹下创建一个名为gradient_box的xml文件: <?xml version="1.0" encoding="utf-8&q ...
- 腾讯 Bugly for Xamarin Android 的插件
因为项目中需要异常控制,所以在 gpyer bugly 等 Bug 收集平台中选择,最后选定了 Bugly. 于是将 Bugly 的插件 进行了 Java Binding,打成了 Xamarin 可用 ...
- spark standalone ha spark submit
when you build a spark standalone ha cluster, when you submit your app, you should send it to the l ...
- MMORPG大型游戏设计与开发(服务器 游戏场景 动态场景与副本)
场景的内容讲解到今天算是暂时划上一个句号了,接下来为大家讲解的是AI部分(大型AI),如果有兴趣的朋友不妨持续关注这些文章,大家一起学习和进步.动态场景和副本是场景中特殊的类型,副本在这里想必已经是无 ...
- C#使用正则表达式检测数字 char 和韩文
if (!System.Text.RegularExpressions.Regex.IsMatch(strRoleName[i].ToString(), @"^[\uac00-\ud7ff] ...
- PAT 1038. 统计同成绩学生(20)
本题要求读入N名学生的成绩,将获得某一给定分数的学生人数输出. 输入格式: 输入在第1行给出不超过105的正整数N,即学生总人数.随后1行给出N名学生的百分制整数成绩,中间以空格分隔.最后1行给出要查 ...
- apache 多站点配置
安装时可以选择gbk-gb2312的编码(我自己用utf-8). 2: 修改本机的hosts文件,如下: 示例:127.0.0.1 localhost127.0.0.1 ...
- 1089 最长回文子串 V2(Manacher算法)
1089 最长回文子串 V2(Manacher算法) 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 回文串是指aba.abba.cccbccc.aaaa ...
- Autofac手动注入及自动注入示例
参考:http://www.cnblogs.com/xinchuang/archive/2013/05/07/3065433.html#2911661 一.环境 vs2012.mvc4..Net Fr ...
- .net ServiceStack.Redis 性能调优
最近在debug生产环境的问题时,发现了ServiceStack 4.0.60版本RedisClient存在一个非常严重的性能问题.在高并发下,PooledRedisClientManager.Get ...