IE / Edge阻止的本地域cookie

时间:2016-07-05 13:06:26

标签: php internet-explorer cookies

我对IE和Edge有一个奇怪的问题 - 他们似乎在我的本地机器上阻止了cookie,域名指向我的PC。

所以我有一个域http://mydomain.local/cookie.php,代码如下:

<?php
setcookie('my','cookie',0);
print '<pre>'; print_r($_COOKIE); print '</pre>';
?>

如果我将其上传到我的服务器并通过IE / Edge运行它我没有遇到任何问题。然而,在本地运行它并没有设置任何东西。没有饼干。我已经检查了“不要阻止cookie”的cookie选项,但我有点困惑 - 某处有安全设置吗?感谢。

1 个答案:

答案 0 :(得分:0)

你知道在读取cookie之前需要重新加载吗?所以你设置了cookie但是因为你需要重新加载页面而无法读取它 如果您重新加载页面,则再次设置cookie,因此无法读取。

if(!isset($_COOKIE)){
   setcookie('my','cookie',0);
}else{
   print '<pre>'; print_r($_COOKIE); print '</pre>';
}

打开页面,然后按刷新。

编辑:这与Internet Explorer没有任何关系,这就是setcookie和PHPs cookie功能的工作原理。
http://php.net/manual/en/function.setcookie.php

常见陷阱:

Cookies will not become visible until the next loading of a page that the cookie should be visible for. To test if a cookie was successfully set, check for the cookie on a next loading page before the cookie expires.