session和cookie

1.无状态的HTTP协议:
        协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则,超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文档冲web服务器传送到客户端的浏览器。
         HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器的连接就会关闭,再次交换数据需要建立新的连接。这就意味着服务器无法从连接上跟踪会话。
2. 会话(session)跟踪:
      会话是指用户登陆网站后的一系列动作,比如浏览商品添加购物车并购买。会话(session)跟踪是web程序中常用的技术,用来跟踪用户的整个会话。
     常用的会话跟踪技术是Cookie和Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。
 
Cookie实际上是一小段的文本信息。客户端请求服务器,如果服务器需要记录该用户状态,就使用response(响应)向客户端浏览器颁发一个Cookie。客户端会把Cookie保存起来。当浏览器再请求该网站时,浏览器把请求的网址连同该Cookie一同交给服务器。服务器检查改cookie,以此来辨别用户状态。服务器还可以根据需要修改Cookie的内容。
 
总结:
1.cookie数据存放在客户的浏览器上,session数据放在服务器上。
2.cookie不是很安全,别人可以通过分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session。
3.session会一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用cookie。
4.单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
5.可以考虑将登陆信息等重要信息存放在session,其他信息如果需要保留,可以存放在cookie中。
6.cookie设置方式:setcookie(key【名字】,value【值】,time【存储时间】);
   session的设置方式:用session_start()开启,用给数组单元赋值的操作
  时间的设置方式:在服务器的配置文件php-ini中设置

原文地址:https://www.cnblogs.com/killgangan/p/10913209.html