3

在 chrome 上,我遇到以下问题:

  • 使用用户名和密码登录,这会为用户名和登录会话创建一个 cookie。
  • 查看主页(其中有一个脚本来检查登录会话)
  • 登出
  • 尝试查看主页。但是我被引导回到登录屏幕/主页。
  • 刷新并尝试查看主页。启动回到登录屏幕。
  • 浏览到任何其他站点。
  • 返回example.com/mainpage.php,我现在可以查看它(使用以前的用户名)

问题是,很明显,当返回站点时,用户应该仍然被注销并且在他们登录之前无法查看 mainpage.php。

我对此感到非常困惑。一时兴起,我检查了在其他浏览器上是如何处理的。并且在 Safari、Firefox 或 IE 上不会出现此问题。他们正确地将用户踢回主页。

似乎 chrome 正在“暂停”会话而不是正确结束会话,然后在我导航回站点时重新启动会话。

相关脚本如下:

// log out script
session_start();
setcookie("username", "", time()-360000);
setcookie("token", "", time()-360000);
$_SESSION["Login"] = "no";


// The mainpage script
if ($_SESSION["Login"] != "YES")
  header("location: home.php");
4

1 回答 1

0

我找到了解决方案。我想我会在这里为任何仍然困惑的人记录下来。

不知何故(在我之外)通配符重定向没有压缩 www。和非 www。访问该网站时进入相同的(我使用 www. 为所有)。

结果由于某种原因,一些页面正在处理配音配音,而另一些则没有。离开站点并重新访问时尤其如此……注销在 www 版本中终止了会话,但随后返回到非配音版本,就像“哦仍在登录”

于 2012-08-02T15:38:08.497 回答