我用以下代码在PHP中删除一个cookie:
setcookie('test', null, -1, '/');
它在所有浏览器中运行良好,Safari除外。如果速度足够快,Safari的后续请求会将此Cookie发送到Web服务器。
我能想到的最简单的例子:
<?php
setcookie('test', null, -1, '/');
print_r( $_COOKIE );
?>
在浏览器中快速按F5。有时您会看到删除了值的cookie。平台似乎无关紧要。我在iPhone,Safari(Windows)和Safari(Mac)上得到这个结果。对我来说,它看起来像Safari错误,但也许我错过了一些东西?
我希望cookie永远不会在以下请求中设置,无论有多快。感谢您的任何见解。
3条答案
按热度按时间9gm1akwq1#
已报告此问题here。
通过设置路径的解决方案:
kzmpq1sx2#
第四个参数中的路径设置是否正确?
safari cookie issue
qeeaahzv3#
我也有同样的问题。我是这样解决的,
设置和删除cookie时设置路径和域