ここに問題があります。ユーザーが私のウェブサイトからログアウトしても、戻るボタンを押してサイトを使い続けることができます。ユーザーがログインしているかどうかを追跡するために、セッション属性「isActive」を作成しました。この属性は、ユーザーのログイン時に true に設定され、ログアウト時にセッションが無効になる直前に (冗長的に) 削除されます。また、すべてのページで、属性が存在するかどうかを確認します。
また、head タグでページをキャッシュしないように指定します。
それにもかかわらず、ユーザーはブラウザーにアクセスして、ログオフしたことがないかのようにサイトを使い続けることができます。
これを修正する方法について何か考えはありますか?
コードは次のとおりです。
ログインサーブレット:
...
session.setAttribute("isActive", true);
//Redirect to home page.
ログインした JSP を確認します。
<c:if test='${empty sessionScope.isActive || sessionScope.isActive != true}'>
<c:redirect url="/index.jsp?message=Session Timed Out."/>
</c:if>
ログアウトサーブレット:
request.getSession().removeAttribute("isActive");
request.getSession().invalidate();
response.sendRedirect("index.jsp");
ヘッドタグの内側:
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Expires" content="Sat, 01 Dec 2001 00:00:00 GMT">
ありがとう