cookie设置过期时间(cookie有效期设置)

1. cookie有效期设置

cookie的默认有效期是20分钟

cookie相当于一个公园的门票,服务器相当于卖票的大爷,要是cookie的有效期是2天,那么你注册成功后(大爷把票卖给你了),就相当于在这两天内拿着这张票(cookie),就可以随意进出这个公园(访问同源网站都会携带这个cookie)

2. cookie有效期设置多长时间

一般都是在两个月失效的

3. cookie可以设置有效期

cookie存在时间一般会保存在响应头中,可获取响应头在进一步获取到有效期

4. cookie设置有效期

一、对保存到cookie里面的敏感信息必须加密

二、设置HttpOnly为true 该属性值的作用就是防止Cookie值被页面脚本读取。

三、设置Secure为true 给Cookie设置该属性时,只有在https协议下访问的时候,浏览器才会发送该Cookie。

四、给Cookie设置有效期 如果不设置有效期,万一用户获取到用户的Cookie后,就可以一直使用用户身份登录。

5. 设置cookie有效时间

开启好,现在浏览器存储方案很多了,可以根据自己是使用场景综合分析,选取最优方案。

session是对于后台服务而言的,失效时间由后台服务控制,浏览器关闭以后,session不再活跃,一般30分钟(服务端session有效期可以任意调整)自动失效。

目前浏览器客户端也支持sessionStorag

6. cookie有效期设置为永久有效

(1)cookie的有效期:

      默认:会话周期结束(就是浏览器关闭),默认情况下,cookie会在浏览器关闭时失效,这种cookie是 临时cookie或者叫会话。

      支持设置有效期,setcookie的第三个参数,可以对cookie的有效期进行设置,有效期采用一个时间戳来表示。(下面的这个就是设置了60秒,但是一分钟后不管浏览器是否关闭,这个cookie就失效)

7. cookie设置有效期的方法

1.设置Cookie的HttpOnly属性为true。

  一般来说,跨站脚本攻击(XSS)最常见的攻击方式就是通过在交互式网站(例如论坛、微博等)中嵌入javascript脚本,当其他用户访问嵌有脚本的网页时,攻击者就能通过document.cookie窃取到用户cookie信息。如果网站开发者将cookie的httponly属性设置为true,那么浏览器客户端就不允许嵌在网页中的javascript脚本去读取用户的cookie信息。

  2.设置cookie的secure属性为true。

  虽然方式1能防止攻击者通过javascript脚本的方式窃取cookie,但是没办法防止攻击者通过fiddler等抓包工具直接截取请求数据包的方式获取cookie信息,这时候设置secure属性就显得很重要,当设置了secure=true时,那么cookie就只能在https协议下装载到请求数据包中,在http协议下就不会发送给服务器端,https比http更加安全,这样就可以防止cookie被加入到http协议请求包暴露给抓包工具啦。

  3.设置cookie的samesite属性为strict或lax。

  前文提到攻击者获取到cookie后,还会发起跨站请求伪造(CSRF)攻击,这种攻击方式通常是在第三方网站发起的请求中携带受害者cookie信息,而设置了samesite为strict或lax后就能限制第三方cookie,从而可以防御CSRF攻击。当然,当前常用的还有校验token和referer请求头的方式来防止CSRF攻击,感兴趣的读者也可以自己翻阅材料了解下。

  4.设置cookie的expires属性值。

  通常,cookie的有效期会被设置为永久有效或一个较长时间的正数值,这样的cookie会被保存在本地,攻击者获取cookie信息后可以在相当长的一段时间里控制用户账号,而如果给cookie设置expires值为-1,那么该cookie就仅仅保存在客户端内存中,当浏览器客户端被关闭时,cookie就会失效了。

8. cookie默认有效期

大概率使用手机号验证码登录的京东的 cookie 有效期大概一个月(没有实际论证过,存疑)。

电脑上打开 Chrome 浏览器,按 F12 打开开发者工具,并点击工具栏的左上角选择手机模式。

然后选中一个设备

输入地址 https://plogin.m.jd.com/login/login 并打开网页,输入手机号验证码,点击登录。

9. cookie如何设置有效期

不一样的,setcookie('a','b',mktime(23,59,59,date('d'),date('m'),date('Y')),'/')设置的是当天的23:59:59的时候过期.setcookie('a','b',time()+3600)是一小时之后过期

10. 设置cookie的过期时间

会话cookie一般不存储在硬盘而是保存在内存里,当然这个行为并不是规范规定的。

若设置了过期时间,浏览器就会把cookie保存到硬盘上,关闭后再打开浏览器这些cookie仍然有效直到超过设定的过期时间。

设置过期时间失效(只要设置了过期时间cookie就会存储在硬盘里面),当会话结束时失效,即关闭浏览器窗口(如果没有设置Expires。

11. cookie的默认有效期

在php函数里面setcookie是有时间限制的

setcookie有3个参数

第一个参数是设置的变量名字

第二个参数是变量的值

第三个参数就是有效期了.有效期是以秒来计算的

假设你设置的cookie的有效期是1个小时,那么从你设置的时间开始,到一个小时候这个cookie都有效.换句话说就是这个cookie变量能够读取到的时间是1个小时

一个小时之后这个变量就失效了.不存在了

用php控制用户过期的话.先设置一个cookie.并设置时间长度.例如1天.每次当用户访问的时候都去读取这个cookie.如果存在.就免验证.如果不存在就重新验证.这样就实现了登陆用户的过期时间问题.

setcookie("testcookie",$value);

setcookie("testcookie",$value,time()+3600);/*有效期1小时*/