注销浏览器后退按钮登陆安全页面后的 CodeIgniter 会话问题

CodeIgniter session issue after sign out browser back button landed to the secured page

我在我的应用程序中使用 codeIgniter 2.1.4。如果我在需要身份验证的页面中。然后我在注销后注销,如果我使用浏览器后退按钮,它会让我回到安全页面。我只能查看页面。如果我刷新或单击任何 link,它会将我重定向到登录页面。

我认为这是一个缓存问题?但我不确定。

在控制器的构造函数中包含这些headers以防止缓存上一页

如果您想要 Code Igniter 的实现方式,请包含以下代码

$this->output->set_header('Last-Modified:'.gmdate('D, d M Y H:i:s').'GMT');
$this->output->set_header('Cache-Control: no-store, no-cache, must-revalidate');
$this->output->set_header('Cache-Control: post-check=0, pre-check=0',false);
$this->output->set_header('Pragma: no-cache');

PHP的实现方式使用下面的代码行

header("cache-Control: no-store, no-cache, must-revalidate");
header("cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");

您可以通过添加

来阻止客户端的浏览器缓存站点
<meta Http-Equiv="Cache-Control" Content="no-cache">
<meta Http-Equiv="Pragma" Content="no-cache">
<meta Http-Equiv="Expires" Content="0"> 

进入你的 HTML header.

$this->output->nocache(); 粘贴到您的 __construct() 函数中 parent::__construct();

之后