我正在尝试在会话过期时将网站重定向到主页,并且用户自动注销(现在,它被重定向到joomla核心注册页面,我不想让用户看到,因为我已经创建了自己的页面自定义组件中的注册页面)。
在模板的index.php文件中,我检查会话是否处于活动状态,如果会话已过期,则执行重定向:
$session = JFactory::getSession();
if (!$session->isActive()) {
echo "session is expired";
header('Location: http://www.example.com/');
exit;
}else{
echo "session is active";
}
在我更新到Joomla 3.4.5之前,此解决方案一直有效。更新后,即使用户自动注销,它的行为也好像会话仍处于活动状态(如上所示,我通过回显“会话处于活动状态”行进行了检查)。
为什么即使用户已注销会话也仍然处于活动状态?$ session-> isActive()方法有替代方法吗?