2009-10-09 39 views
35

IIS 6(および他のバージョンもあります)では、プロパティ - >ホームディレクトリタブ - >構成ボタン - >オプションタブにセッションタイムアウト設定があります。次のようになります。IISセッションタイムアウトとASP.NETセッションタイムアウト

picture of IIS dialog

そして、ASP.NETのweb.configファイルでのSessionStateの設定があり、次のようになります。

<system.web> 
    <sessionState timeout="120" /> 
    <!-- etc .. --> 
</system.web> 

彼らが万が一、関連によって、ありますか?彼らは同じことをしたり、別のものを設定したりしますか?

答えて

43

これらは同じではありません。 IISセッションのタイムアウトは、明確なASPページ用です。 web.configはasp.net用です。

11

IIS設定はASP.NETセッションには影響しません。これはweb.configで設定する必要があります。

3

また、アプリケーションプールのアイドルタイムアウトも考慮する必要があります。アプリケーションプールの設定は、アプリケーションが割り当てられているアプリケーションプールで[プロパティ](IIS 6)または[詳細設定](IIS 7.5)をクリックすると表示されます。

すべてのセッションがセッションタイムアウト期間全体にわたって持続するように、この値がセッションのタイムアウトに設定されていることを確認してください。

これらの2つの値が互いに依存する理由は、セッション情報が実際にアプリケーションプールのワーカープロセス内に格納されているためです。つまり、何らかの理由でワーカープロセスがシャットダウンまたは強制終了した場合、セッション情報は失われます。

関連する問題