zoukankan      html  css  js  c++  java
  • Session与Cookie的区别与联系

    描述两个事情的不同,一般先从概念入手,然后分析他们是怎么生成、怎么使用以及怎么消亡的:

    1、Cookie仅由客户端生成、管理并使用,PHP只是发出指令要求客户端如何生成Cookie、何时过期等,但是客户端不一定会按照PHP的指令办事。

    2、如果没有设置Cookie过期时间,Cookie会一直以文件或SQLit等DB形式存在客户端磁盘。

    3、Session是用户进入某个网站到关闭浏览器这段时间的会话,默认以文件形式存在服务器磁盘,所以设置过多的Session会影响磁盘IO,也可以用Memory引擎存入MySQL,因为内存引擎读写速度快,现在也可以指定用Redis来处理Session,这样更快,效率更高。

    4、Session的收回机制是被动的,如果设置了生存周期,一般来说,一旦关闭浏览器Session也就被PHP自动回收了,但有时即使设置了过期时间并且关闭浏览器并不一定会删除Session,比如设置多目录多层级保存Session时,这时需要通过PHP脚本手动删除Session。

    5、通常Cookie与Session是绑定的,即用户在没有禁用Cookie时,Cookie一般会保存sessionID及Session生存周期,如果用户删除Cookie一般会退出系统;如果没有禁用Cookie关闭浏览器Session也会立即失效,要重新登录系统。

    6、Cookie与Session一般应于标识用户、权限认证、存储简单数据、还有就是利用P3P实现Cookie跨域单点登录(SSO:Single Sign On)。

  • 相关阅读:
    另一种保证单次插入回文自动机复杂度的做法
    loj #6070. 「2017 山东一轮集训 Day4」基因
    求第一类斯特林数的一行
    NOIP2018游记
    HDU3377 Plan
    【BZOJ】1830: [AHOI2008]Y型项链
    【BZOJ】1832: [AHOI2008]聚会
    【BZOJ】1831: [AHOI2008]逆序对
    【BZOJ】1085: [SCOI2005]骑士精神
    【BZOJ】1798: [Ahoi2009]Seq 维护序列seq
  • 原文地址:https://www.cnblogs.com/gentsir/p/7922777.html
Copyright © 2011-2022 走看看