Chrome不会删除cookie吗?

Posted

技术标签:

【中文标题】Chrome不会删除cookie吗?【英文标题】:Chrome will not delete cookie? 【发布时间】:2013-05-28 20:01:38 【问题描述】:

我有一个注销用户的脚本 (logout.php),它在 FF 和 IE 中运行良好,但在 Chrome 中,即使关闭浏览器,cookie 仍然可用。

我用这段代码测试过:

logout.php

session_start();
$_SESSION['un'] = '';
$_SESSION['pw'] = '';
unset($_SESSION['un']);
unset($_SESSION['pw']);
setcookie("spf", "", time()-3600);
session_destroy();
echo "Cookie: ".$_COOKIE['spf']."<br />";
echo "Session: ".$_SESSION['un'];

尽管如此,在 Chrome 中它仍会回显 spf 的内容。我做错了什么?

编辑:

在 FF 中,我的测试页回应了这一点:

Cookie: 

Session:

(例如,两者都留空)。

在 Chrome 中它是这样说的:

Cookie: \"un\":\"test3333\",\"pw\":\"593c114983263124656dd6bb922b7bd8\"

Session:

(例如,cookie 有内容,会话为空白)。

【问题讨论】:

指定cookie路径,例如:setcookie('spf', '', time()-3600, '/')。 我不确定 Chrome 回显旧 cookie 值是什么意思,您的 echo 语句回显 PHP 认为 cookie 值在它们到达 Chrome 之前是什么......? 【参考方案1】:

设置一个过去的日期,它会成功,也不要忘记添加一个路径,以便删除好的路径。

setcookie('your_cookie', '', time()-3600,'/');

【讨论】:

【参考方案2】:

你可以试试:

$_SESSION=array(); // assign an empty array to the session

session_unset();     // unset $_SESSION variable for the run-time, frees all session variables currently registered.  

INFO

然后:

session_destroy();   // destroy session data in storage

注意: session_destroy() 销毁与当前会话关联的所有数据。它不会取消设置与会话关联的任何全局变量,也不会取消设置会话 cookie。要再次使用会话变量,必须调用 session_start()。

为了使用 session_destroy() 完全终止会话,例如注销用户,还必须取消设置会话 ID。如果使用 cookie 传播会话 id(默认行为),则必须删除会话 cookie。 setcookie() 可以用于此。

取自: INFO

更新:

那我觉得你需要这个,注意spf是cookie的名字

setcookie ("spf", "", time() - 3600);

如果是数组,则改名为 spf[one] ex:

setcookie ("spf[un]", "", time() - 3600);

看看HERE

【讨论】:

谢谢,但它真的不会消失。我可以轻松地设置普通 cookie 并在 Chrome 中销毁它们,但不是这个。如果我使用 print_r($_COOKIE);它将输出 "Array ( [spf] => \"un\":\"test3333\",\"pw\":\"593c114983263124656dd6bb922b7bd8\" )"。 更新:终于有了一些进展。如果我使用这个 "setcookie("spf[un]","somethingcookietwo");"我将设法将 spf 中 un 的值更改为 somethingcookietwo。并将其设为空白将完全删除该值。然而数组仍然存在。

以上是关于Chrome不会删除cookie吗?的主要内容,如果未能解决你的问题,请参考以下文章

在 chrome 中未删除会话 cookie 的解决方法

Chrome 关闭后 Jsessionid cookie 不会过期

postman怎么清除cookie

无法使用 document.cookie 删除 Chrome 上的特定 cookie [重复]

Chrome扩展程序获取功能不会发送Cookie

关闭会话时未删除移动浏览器(chrome、safari)cookie