使用PHP设置和检查Cookie无法在Safari中运行

时间:2014-11-07 03:57:03

标签: php wordpress cookies safari

我有一个非常奇怪的问题..我正在尝试设置一个cookie,除了Safari,桌面和iOS Safari之外,它在所有浏览器中都能正常工作。

奇怪的是,我可以看到它被设置了,因为在Safari的检查器中它显示了应该的cookie。

当我尝试使用$_COOKIE["wpcode"]访问Cookie时,它不会显示它,但在其他浏览器中它会显示...

更进一步,执行print_r($_COOKIE)不显示任何cookie,但在我的cookie面板中有一堆cookie设置。

我正在使用Safari 8,但问题出现在我测试的所有Safari版本上(6.2 +)

我使用WPEngine作为主机,我也在使用WordPress。

我用来设置我的cookie的代码是(但我已经尝试了所有可能的方式):

setcookie("wpcode", md5("true"), time()+60*60*24*7,"/", "", false);

我正在尝试访问Cookie,如:

$_COOKIE["wpcode"] != md5("true")

虽然我尝试了以下所有内容:

isset($_COOKIE["wpcode"])

这显然是Safari的一个问题,我已经浏览了Google中关于类似问题的每一页都没有结果......

谢谢!

1 个答案:

答案 0 :(得分:0)

很抱歉迟到了,但我自己也遇到了这个问题。事实证明,WP Engine的激进缓存使得通过php检索cookie变得困难/不可能。

WP Engine - Cookies and PHP Sessions

看起来我需要使用.js我希望尽管我迟到了,这个答案会给你一些关闭。