Mr.Tの場所

特攻野郎Aチームじゃないよー

ホーム 連絡をする 同期する ( RSS 2.0 ) Login
投稿数  201  : 記事  0  : コメント  822  : トラックバック  43

ニュース

  • 性別:男
  • 猫1:まる
  • 猫2:もろ
  • 猫3:にゃん左部郎
  • タバコ:男は黙ってJPS
[わんくま同盟] C#, VB.NET 掲示板
フィードメーター - Mr.Tの場所

書庫

日記カテゴリ

Mr.Tです、こんにちは。

実は、こっそり、インスパイア。

http://d.hatena.ne.jp/NAL-6295/20071030/p1

StateServerは、ASP.NETを利用する上でSession情報を保持する際に、ASP.NET State Serviceというものを
利用します。

[サーバ側設定]

IISをインストールしていないとサービス自体が、出てこないので注意すること。

  1. まずは、これを読むこと。けんけんふくよー。
    http://msdn2.microsoft.com/ja-jp/library/ms178586(VS.80).aspx
  2. サービスを起動させる。
    サービス名は「ASP.NET State Service」
    初期状態で起動は、手動であるため、「手動」→「自動」に挙げておくこと。

  3. Firewallの設定を行う。
    基本は、tcp 42424を使うので、それを通過するように指定。

  4. このままクライアント側からのアクセスを受け付けると、実は次のようなエラーになる。

    セッション状態要求をセッション状態サーバーに対して作成できませんでした。ASP.NET 状態サービスが開始されていて、クライアントとサーバーのポートが同じであることを確認してください。サーバーがリモート コンピュータ上にある場合、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection の値を調べて、このコンピュータがリモート要求を受け付けることを確認してください。サーバーがローカル コンピュータ上にあり、上記のレジストリ値が存在していないか 0 に設定されている場合、状態サーバー接続文字列ではサーバー名に 'localhost' または '127.0.0.1' を指定しなければなりません。

    なので、指定している通り、
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection
    を調べて、なければつくる。値を0→1に変更


[クライアント側設定]

VS2005やWVDなら、既定のWebConfig内容では、sessionStateに関する表記がない。自前で、<sessionState>タグを書くこと。
表記の、大文字小文字には、注意すること、でないと、次のようなエラーになる。

説明: この要求を処理するために必要な構成ファイルの処理中にエラーが発生しました。以下のエラーの詳細を確認し、構成ファイルに変更を加えてください。
パーサー エラー メッセージ: 認識されない属性 'Mode' です。この属性は、大文字小文字を区別します。

この時点で最低限な設定は、
<sessionState mode="StateServer"
        stateConnectionString="tcpip=****:42424"
              cookieless="false"
              timeout="20"/>

くらいで接続できる。

あとは、特に設定なしでSession変数を利用することになる。


もし、SateServerを複数台にしてみたい場合は、こちらを参考に。→

State Serverはシングルポイントじゃないよ

関連リンク:ASP.NETでInProcを使ってはいけない

投稿日時 : 2007年10月31日 12:06

コメント

# re: StateServerについてのメモ 2007/10/31 16:16 NAL-6295
ASP.NET State Serviceを自動にした後に、
IISでASP.NETを動作させるために、
aspnet_regiis.exe -i
を実行すると、手動に戻っちゃうんですよね。

通常は、この順番で設定することは無いと思うけれど・・・。



# re: StateServerについてのメモ 2007/10/31 17:19 Mr.T
>手動に戻っちゃうんですよね。
Mooさんのとこにありましたw
http://d.hatena.ne.jp/aspx/20050405/p9
こんなやつですね。

もうちょっと調べてみると、本家にこんな文章がありました。
--引用
This version is registered with a service name of aspnet_state. Therefore, when this version of ASP.NET is uninstalled, the latest remaining version of the service on the computer is then registered and used in its place. For more information on the ASP.NET state service, see Session-State Modes.
--ここまで
http://msdn2.microsoft.com/en-us/library/a99txfy5.aspx

英語は多分にあやしいですが、Thereforeあたりで、
いったんサービスの再登録ってことになるという話だと思います。


Post Feedback

タイトル
名前
Url:
コメント