会话控制是指网站与用户之间跨页面数据交互的一种解决方案,主要有cookie和session两种。

cookie

  • 使用本地文件处理跨页面传值,用户的基本信息加密后保存到本地
  • 安全性相对不高
  • 用户可以禁止cookie
  • 存储数据有大小限制(<4k)
  • 不同浏览器存储不同的cookie

session

  • 在服务器中一种解决方式,可以使用sessionid来唯一识别某个用户
  • 有时间周期大致24分钟
  • 安全性高
  • 存储的数据没有大小限制;

cookie的使用

配置

session.use_cookies = 1   //设置cookie是否开启
session.cookie_path = /   //|"d:/tmp"   :设置cookie路径,一定在使用cookie之前设置

设置值

bool setcookie ( string $name [, string $value = "" [, int $expire = 0 [, string $path = "" [, string $domain = "" [, bool $secure = false [, bool $httponly = false ]]]]]] )

读取

$_cookie

session的使用

配置

session.use_only_cookies = 1:

设置session运行时,唯一的用户标识符是通过cookie存储还是通过request_url来传递,如果设置为1,就是cookie,如果0就是url传递,无论使用任何方法存储,用户的sessionid是唯一

session的有效周期设置时,是通过cookie有效周期和session周期同时设置的

session.cookie_lifetime=0   0:关闭浏览器会话结束
session.gc_maxlifetime = 1440     判断24分钟之后,session失效,需重新登录

session会话结束后是否立刻清除,主要看session的垃圾机制,如果是100,那么就有1%的概率清除

	session.gc_probability =1
	session.gc_divisor     =100

读取

$_session