web-dev-qa-db-ja.com

セッション状態サーバーにセッション状態要求を行うことができません

私たちのサイトは現在この問題を抱えています。基本的に、特定のリンクをクリックして新しいウィンドウがポップアップする場合にのみ発生します。
これは、表示されるエラーメッセージです。

セッション状態サーバーにセッション状態要求を行うことができません。
ASP.NET Stateサービスが開始されていること、およびクライアントとサーバーのポートが同じであることを確認してください。
サーバーがリモートマシン上にある場合、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnectionの値を確認して、サーバーがリモートリクエストを受け入れることを確認してください。
サーバーがローカルマシン上にあり、前述のレジストリ値が存在しないか、0に設定されている場合、状態サーバー接続文字列は、「localhost」または「127.0.0.1」のいずれかを使用する必要がありますサーバー名。

ターゲットサイト:
Void MakeRequest(StateProtocolVerb、System.String、StateProtocolExclusive、Int32、Int32、Int32、Byte []、Int32、Int32、SessionNDMakeRequestResults ByRef)

これは、sessionstateタグを含むwebconfigです:

<sessionState mode="StateServer" timeout="45" />

ASP.NET State Serviceを確認しましたが、現在開始されており、自動に設定されています

エラーメッセージに記載されているレジストリを1に設定しましたが、まだ機能していません。

103
Adi
  1. スタート–>管理ツール–>サービス
  2. ASP.NET State Serviceを右クリックし、「開始」をクリックします

さらに、再起動後に機能するようにサービスを自動に設定できます

273
Jamshid Hashimi

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnectionを1に変更する必要がある場合は、パラメーターを変更した後にrestartASP.net stateサービスを忘れないでください。

24
hikkemikke

それを確認します:

stateConnectionString="tcpip=server:port"

正しい。また、デフォルトのポート(42424)が使用可能であり、システムのポートをブロックしているfirewallがないことを確認してください

8
mas_oz2k1

ウィンドウの実行パネルの実行パネルにServices.mscと入力します。システム内のすべてのWindowsサービスがリストされます。次に、画像に示されているようにAsp .net状態サービスを開始する必要があります。 enter image description here

問題は解決されます。

3
Rinoy Ashokan

一部の開発者は、何らかの理由で、非標準の構成ファイル(つまり、web.configではない)やテキストファイルなどのIISの外側の予期しない場所でサーバーのプライベートIPを定義することがわかりました。これにより、サービスの開始時、ポートがブロックされていない場合、regキーが正しい場合など、内部操作が失敗する可能性があります。

特に、Kaseyaは、serveripinternal.txtというファイルをVSAサーバーのルートIISディレクトリに配置します。自分のKaseyaインスタンスを実行している誰かがサーバーの内部IPを変更したときに、エラーのテキストを見ました。サーバーに到達でき、IISが応答し、ログインページが表示されますが、ログインは引用されたメッセージで失敗します。

2
One-Note Pony

もう1つ確認すべきことは、ポート42424をブロックしている可能性があるため、Windowsファイアウォールが有効になっているかどうかです。

2
jwanagel

一部のASP.NETインストールが破損した場合、同じ問題が発生しました。その場合、彼らは aspnet_regiis -i -enableの実行 を提案します

1
Matthew Lock

私は最近この問題に遭遇しましたが、提案された解決策のどれもそれを修正しませんでした。この問題は、セッションに保存されたデータセットの過剰な使用であることが判明しました。セッションサイズが10倍になるコードに欠陥がありました。

これについてはmsdnブログにも記事があります。 http://blogs.msdn.com/b/johan/archive/2006/11/20/sessionstate-performance.aspx

関数を使用してカスタムトレースメッセージを記述し、ライブサイトのセッションデータのサイズを測定しました。

0
Ahmed Mansour