【发布时间】:2011-07-12 04:31:09
【问题描述】:
我创建了一个页面登录,注销以访问控制面板 场景是这样的:用户登录并访问 cpanel 页面,然后他们注销 问题:登录完成后,如果用户单击浏览器后退按钮,即使身份验证完成并设置了会话,用户也会返回登录页面,同时如果用户注销,然后单击后退按钮,它将返回到控制面板页面(如果用户刷新页面,那么一切似乎都很好,并且 usr 将被重定向到登录,并且后退按钮不会将她重定向到 cpanel)。
问题是浏览器缓存,我尝试使用 php header 和 html meta 来防止页面缓存,但我无法成功。有什么解决办法吗?
我的注销操作代码如下
public function logoutAction()
{
$auth=Zend_Auth::getInstance();
//If logged in then move to index
if(!$auth->hasIdentity()){
$this->_redirect('admin/account/redirect');
}
$auth->clearIdentity();
$this->_redirect('admin/account/redirect');
}
【问题讨论】:
-
在我看来你是对的,专注于浏览器缓存。正如您所注意到的,如果他重新加载其中一个页面,您的身份验证检查就会启动并将他重定向到登录。我会专注于修复您为不希望缓存的页面发送的标头无缓存。
标签: php zend-framework zend-auth