用户注销时如何使PHP中的页面过期

Posted

技术标签:

【中文标题】用户注销时如何使PHP中的页面过期【英文标题】:How to expire page in PHP when user logout 【发布时间】:2011-02-19 11:17:43 【问题描述】:

当最终用户点击浏览器的 LogOutBack 按钮 时,我希望我的上一页失效。

【问题讨论】:

【参考方案1】:

使用session_destroy();销毁会话密钥

【讨论】:

【参考方案2】:

如果您将其包含在所有页面的顶部,它将要求客户端始终重新加载内容,从而使后退按钮请求页面的新副本。

<?php
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
?>

http://php.net/manual/en/function.header.php

【讨论】:

它确实适用于我的本地主机和远程。您应该使用 firebug 或 fiddler 之类的调试代理检查 HTTP 标头。 这应该可以工作,除非您的计算机时间实际上是在 1997 年 7 月 26 日之前。确保您还破坏了用户会话。【参考方案3】:

浏览器的后退按钮可能存在一些问题,因为单击后,某些浏览器根本不会从服务器重新加载页面,而是从缓存中显示页面的先前状态。

【讨论】:

以上是关于用户注销时如何使PHP中的页面过期的主要内容,如果未能解决你的问题,请参考以下文章

其中 jsonwebtoken 存储在服务器 nodejs 中。用户注销后如何使 JWT 过期

注销 mvc 中打开的页面

如何在会话超时或结束时注销用户

仅在刷新页面时令牌过期时注销?为啥?

如何使用php制作涉及会话cookie的注销页面?

如何记录 tomcat 会话失效或用户注销