セッションが期限切れになり、ユーザーが自動的にログアウトしたときに、自分のWebサイトをホームページにリダイレクトしようとしています(現在、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()メソッドに代わるものはありますか?