Cookie在不同浏览器之间是否持久存在


Are cookies persistent across different browsers?

cookie在不同的浏览器中是否持久存在?

为了详细说明这个问题,假设我们有一个网站在用户机器上寻找特定的cookie。如果找不到,它将创建一个。假设用户退出Chrome并在Firefox上访问同一个网站,该网站会在用户的机器上找到相同的cookie吗?或者它会为Firefox创建一个新的吗?

否。Cookie存储在特定于浏览器的文件中。

cookie是从服务器(web服务器)发送回客户端(浏览器)的一段数据。两者之间有一个合同,描述了客户端何时应在后续请求时将cookie返回给服务器。这使得服务器能够再次识别客户端。

因为每个浏览器都是一个唯一的客户端,所以他们不知道在其他浏览器上设置了任何cookie。

看看这个SO问题,它解释了你如何用flash破解:

两个不同的浏览器可以共享一个cookie吗?

否,如果它们是非持久性cookie,则会在关闭浏览器时删除;如果它们是持久性的,则会保存在硬盘上,但只能由单个浏览器使用。

然而,您可以通过将数据保存到mysql表中,并将用户的ip地址链接到您本应保存在cookie中的特定数据来解决此问题:

$ip = $_SERVER[ 'REMOTE_ADDR' ];