ASP.NETで業務向けのwebサイト保守をしています。
Form認証を使用しており、セッションが切れた際にログイン画面に戻りたいがアプリケーションエラーになるとのことで調査していました。
まず、セッションタイムアウトとForm認証のタイムアウトが同じ60分に設定されていたのでセッションタイムアウトの時間を60分より長く設定し、必ずForm認証が先にタイムアウトするようにしました。
でも何故か20分でセッションタイムアウトになりアプリケーションエラーしてしまいます。
configの設定だけでは駄目らしい。
どうやらデフォルトでワーカプロセスが20分で切れる為、それに伴ってセッションタイムアウトするらしい。
方法としてはコネクションプールのアイドル状態をデフォルトの20分から変更するか、セッションステートをステートサービスにするか検討中です。ステートサービスにするにはサービスで起動する必要があります。