face9 会话控制

会话控制

充分理解 seesion和cookie的工作原理

默认存储服务器文件,遍历

$_SESSION数组

lvs

session

session_set_save_handler()

不建议使用文件存储

存储 建议存储 mysql  memcache  redis等

传递 seesionID的问题

session_name()

session_id()

<?php echo session_name().'='.session_id()? >

禁用cookie  SID= session_name().'='.session_id() 不禁用为空

<?php echo SID? >

简述cookie和session的区别及各自的工作机制 ,存储位置等,简述cookie的优缺点

cookie  服务器发送给客户端的片段信息,存储在客户端浏览器内存或硬盘当中的技术 文件

cookie的操作

写 setcookie($name,$value,$expir,$path,$domain,$secure);

读 $_COOKIE

数组形式setcookie('a[b]','val');

删除setcookie($name,'',time()-1000);

优点缺点

存储客户端 不占用服务器资源 效率会高一些

不建议敏感重要的信息保存cookie 用户可以禁止cookie  一旦cookie被禁止,没有办法保存用户信息了

session 服务端

基于cookie 用户没有权限禁用

存储在服务端的session文件里

seesion id存储cookie里 cookie被禁用 可以通过url传递,保存session状态

配置

seesion.auto_start  是否自动开启  seesionstart

seesion.cookie_domain  存储sessionid cookie的有效域名

seesion.cookie_lifetime 存储sessionid cookie的生命周期

seesion.cookie_path存储sessionid cookie的路径

seesion.name  默认 PHPSESSID

seesion.save_path session存储路径

seesion.use_cookies 是否使用cookie传递 session id

seesion.use_trans_sid  是否使用传递方式传递 session id

垃圾回收机制 配合使用

每100次请求 有1次清空 超期资源-不建议很小

seesion.gc_probability =1    1次

seesion.gc_divisor=100  访问100次清空

seesion.gc_maxlifetime=1440 最大生命周期 

seesion.save_handler seesion存储句柄

优点

安全

占用服务器资源

分布式问题

开启session_start();

$_SESSION

删除$_SESSION=[]

删除session_destroy();

为什么要使用会话控制技术

http无状态 保持连续请求 登录状态保持

通过get方式传递 参数丢失 不安全

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、为什么使用会话控制? web是通过http协议来实现的,而http协议又是无状态的协议,http没有一个内建机...
    Monkey_zhou阅读 4,396评论 0 0
  • Session的声明与使用 Session的设置不同于Cookie,必须先启动,在PHP中必须调用session_...
    寻回骄傲阅读 7,988评论 0 18
  • 作者:晚晴幽草轩www.jeffjade.com/2016/10/31/115-summary-of-cookie...
    饥人谷_Dylan阅读 4,933评论 0 51
  • 背景在HTTP协议的定义中,采用了一种机制来记录客户端和服务器端交互的信息,这种机制被称为cookie,cooki...
    时芥蓝阅读 6,936评论 1 17
  • 我从梦中惊醒,外面淫雨霏霏。 一场噩梦不期而至惊扰了今天的好觉,虽以清醒但恐惧的感觉仍然挥之不去。 有人问爱情是什...
    皮大侠阅读 1,040评论 0 0