2011-06-29 11 views
2

セッションタイムアウトが20分間設定されているVS2010で実行しているASP.NET Webアプリケーションがあります。
2分ごとにajax呼び出しを行い、defibrillatorが実装されたページを実行します。この設定では、セッションは期限切れにならないはずです。まだ20分後にセッションが終了していることがわかります。セッションが終了するのはなぜですか?

誰もがなぜそれが起こるか知っていますか?さらに重要なのは、誰かが、そのページにユーザーがいるときにセッションが期限切れにならないようにする方法を教えてもらえますか?


EDIT:それでも同じ setTimeout("location.href = '/Defibrillator.aspx?nocache=" + Math.floor(Math.random()*100000000001) + "';",60000);
ので、キャッシュの問題ではない:それは今、JavaScriptでこのコードを実行ので、私は、除細動器を変えました。
私はVSから直接(デバッグの「再生」ボタンを介して)サイトを実行しているので、アプリケーションプールを共有するべきではありませんか?

+1

あなたのアプリケーションが同じアプリケーションプールを別のWebアプリケーションと共有しているかどうかを確認してください(参照してください)。 IIS管理コンソール) – sll

+1

キャッシングが原因である可能性がありますか? –

答えて

-1

最後に、私はajaxを使ってオートセーブ機能を追加する必要がありました。
それはStackOverflowのは私に答えを与えることができない悲しい日だ:(


編集:私は最終的に問題を引き起こしていたものを発見...それはマスターページでは、いくつかの場所でコードがあることを判明

1

JavaScriptが実行されていることを確認しましたか?アクセスログを調べて、リクエストがそこにあるかどうかを確認してください。

また、セッションCookieが更新されていない可能性がありますので、ページを再読み込みする必要がある場合があります。

更新:コメントから、ブラウザによって保存されたセッションクッキーがリフレッシュされていないように見えます。私は、定期的にページをリロードして、おそらくセッションタイムアウトを変更することをお勧めします。アプリの使用パターンに応じて2つのバランスをとる必要があります。

+0

FirefoxをFirebugで使用していて、http:// localhost:60743/Defibrillator.as px?nocache = 85211572623などが毎分Netタブに追加されます。私はセッションのクッキーをチェックする方法がわかりませんが、このページが生きている必要がある理由は、それは長い時間がかかるかもしれないし、その間に保存すべきでない大きなフォームなので、ページは大きなノーノです。 – Yandros

+0

ウェブデベロッパープラグインにはクッキーを表示する方法があります。同じことをするいくつかのプラグインがあると思います。 – chris

+0

さて、私はそれを試みました。 Global.asaxのSession_Endイベントにログを追加し、一晩中実行していました。私は何度もイベントにヒットしましたが、セッションCookieは同じ値を読み取っています。 – Yandros

関連する問題