会话cookie与其他类型的cookie


Session cookie versus other kinds of cookies

例如,在Internet Explorer中,您可以启用第一方cookie、第三方cookie和允许会话cookie。

我知道以下的区别:

  • 第一方cookie和第三方cookie,以及
  • 一个PHP会话和一个cookie
但是什么是会话cookie呢?如何使用PHP设置呢?

例如,如果没有启用cookie,您就无法登录Facebook。但是,如果允许会话 cookie,则可以登录Facebook。

那么,会话cookie与其他类型的cookie有什么不同呢?

cookie有一个生命周期,在此之后它将过期(如Expires指令所示)。如果您没有设置超时时间,当您关闭浏览器时,浏览器将使cookie过期。这被称为会话cookie。

这类cookie通常用于跟踪用户在服务器端的当前会话状态(例如php的会话),但是在"会话"这个词的两种用法之间没有很强的关系

会话cookie保存PHP在调用session_start()时生成的唯一标识符,以便每个客户端可以与一个会话相关联,并且没有两个会话可以同时具有相同的ID

会话cookie通常在浏览器窗口关闭时销毁,或者可以使用session_destroy()手动完成。

来自维基百科:

老定义:

(2011-12-17)

当没有提供Expires指令时创建会话cookie完成cookie的创建。

最新定义:

一个会话cookie,也称为内存cookie瞬态cookieCookie ,只存在于用户导航时的临时内存中的网站。[18] Web浏览器通常在用户关闭浏览器。[19]与其他cookie不同,会话cookie可以没有指定过期日期,这就是浏览器知道将它们视为会话cookie。

在PHP中,当您使用session_start()创建会话时,这将在客户端浏览器中创建会话cookie, PHP需要客户端将此信息发送回每个请求,以便PHP可以告诉会话ID。