ASP.Net MVCアプリケーションを開発中です。SqlServerモードを使用中にセッションタイムアウトが機能しない
私はsessionStateモードのSQLServerを使用していますが、20分のタイムアウトを設定しています。
<sessionState mode="SQLServer"
sqlConnectionString="data source=127.0.0.1;user id=sa;password=sa"
cookieless="false"
timeout="2" />
コードはWeb設定で次のようなものです。
ログインページも設定しました。
<authentication mode="Forms">
<forms loginUrl="~/Account/Login" timeout="2880" />
</authentication>
セッションが期限切れになると、ユーザーログインページに移動します。
私は多くのことを確認しましたが、正しく動作するかどうかわかりませんでしたか?セッションの期限切れでユーザーのログインページをナビゲートするにはどうすればよいですか?
InProcモードで動作しています。私は同じ方法でそれを使用し、ユーザーはセッションが終了したときにログインするようにリダイレクトされます。
しかし、私はSQLServerモードで同じことを達成することができません。
私は何が紛失しているのか理解できません。
私はSession StateをチェックしてもSession timeout handled in SQLServer Mode
編集ことがわかった: - 私は別のHTTP要求がそのセッションのために実行されるたびにログインページにユーザーをリダイレクトしたい 。
セッションは* sliding *タイムアウトを使用します。 Webサイトに再びアクセスするたびに、セッションタイムアウトがリセットされます。 –
@ChrisPrattどのようにこのシナリオに対処する必要がありますか?それはSQLServerモードのためですか? –
それは私が言っていることです。できません。 20分か2時間かに関係なく、ユーザーがアクティブな間、セッションは決してタイムアウトしません。ユーザーがアイドル状態でセッションがタイムアウトした場合、次の要求は単に新しいセッションを開始します。ほとんどの場合、認証は20分後に期限切れになるように設定するだけです。それは必然的にユーザーが20分後に再ログインするように強制します。 –