私はIIS 6.0でASP.NET 2.0アプリケーションを実行しています。セッションタイムアウトをデフォルトの20分ではなく60分にしたいのですが、次の操作を実行しました。
- 始まる。
<sessionState timeout="60"></sessionState>
web.config
- IIS マネージャー/Web サイトのプロパティ/ASP.NET 構成設定でセッション タイムアウトを 60 分に設定します。
- アプリケーション プールのプロパティ/パフォーマンスでアイドル タイムアウトを 60 分に設定します。
まだ 20 分でセッション タイムアウトが発生します。他に何かする必要があるでしょうか?
ベストアンサー1
フォーム認証を使用していますか?
フォーム認証では、タイムアウトに独自の値が使用されます (既定では 30 分)。フォーム認証のタイムアウトにより、セッションがまだアクティブな状態で、ユーザーはログイン ページに移動します。これは、セッションがタイムアウトしたときにアプリが示す動作と似ているため、両者を混同しやすくなります。
<system.web>
<authentication mode="Forms">
<forms timeout="50"/>
</authentication>
<sessionState timeout="60" />
</system.web>
フォームのタイムアウトをセッション タイムアウトよりも短い値に設定すると、セッション データを失うことなく、ユーザーが再度ログインできる時間を与えることができます。