注销浏览器后退按钮登陆安全页面后的 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();
之后
我在我的应用程序中使用 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();