人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

[複数サイト間でのセッション管理]

ポータルサイトなんかは、いろんなサイトを次々と買収し融合しますね。

複数のWebサーバーで、セッション(ログイン情報)を持ちまわってますね。(ライブドアやyahoo全体がひとつのwebサーバーで動くなんてないですよね?)

Webサーバーが違えばセッション情報は持ちまわせないので、何か特別な方法を使っていると思います。

どういうやり方があるか、どうか助言お願いします。

●質問者: MASHMASH
●カテゴリ:ウェブ制作
✍キーワード:Web Yahoo ひとつ サイト サーバー
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● くいっぱ
●30ポイント

http://www.hatena.ne.jp/1097307546

初歩的な質問だと思うのですが、PHPのセッション機能についての質問です。 「セッションの有効期限」というのは、具体的に何の有効期限なのでしょうか。 サーバに保存され.. - 人力検索はてな

普通のポータルサイト(はてなやライブドア)は普通に時間制なしのログインクッキーを食わせているような気がします。

ブラウザを閉じられると消されるので、セッションのような使い方(セッションもクッキーの一種ですが。)ができます。

(サーバが移動したときにクッキーの読み込みを行っている?)

それ以外で、サーバ側のセッション変数を異なるサーバ間でやりとりさせる良い方法は思いつきませんが…、

・・・、

IIS鯖でなら、Response.Redirectで、クライアント側を経由しない

Server.Execute(strPath)

Server.Transfer(strPath)

なんてのが実装されたなんてニュースをかなーーり昔に見た記憶があります。

実際、つかったことはないので、なんともですが、

クライアント側を経由してRedirectでパラメータを渡すよりは、安全なのかなぁと…思ったんですが…。

…。

絶対パスの指定は無理とか書いてある文章を見つけてしまいました。

ん〜〜…。ごめんなさい。これは無理そうですね。

もし、ログインセッションをリアルタイムでバチッと管理したいのであれば…

ログインサーバのようなものをたてて集合管理されるのが一番かと思います。

http://windows.microsoft.com/windows2000/ja/server/iis/default.a...

http://labo.heisei-tech.co.jp/Www/Asp/9.htm

◎質問者からの返答

ありがとうございます。

確かにIISならserver.transferを使えばできますね。


2 ● ke_ishi
●30ポイント

バックエンドのデータベースにセッション情報をすべて格納しておきます。

クライアント側では、とにかくセッションIDだけを持ち回れば良いのでは?

◎質問者からの返答

あ、そういえばPHPでそういう専用の命令までありましたっけ・・・

やっぱDBなんですね。

なんとなくそうかなーとは思ってたんですが。


3 ● sweeper
●30ポイント

http://sourceforge.net/projects/phpform-ext/

SourceForge.net: PHP Form Extension Project

PHPだと自前でDBで格納するセッション管理のクラス

なんかを作るのも良いかと思いますが、

私的にお勧めなのが、session_pgsqlですね。

PHPで普通に使われているsession処理関数

(session_start()とか)を使うと指定したPostgreSQLに

セッション内容を保存してくれます。

PostgreSQLの設定以外まったく既存のPHPコードを

変更することなくsessionデータを複数のサーバーで

共有できます。

その他にも、

・DBの自動負荷分散

・DB障害時の自動切替え

・ガーベッジコレクション

・テーブルの自動作成

等の機能がついており非常に便利で重宝します。

以前構築したシステムでも5台セッションサーバーを

用意して負荷分散しましたがまったく問題なく動作

してました。

クラス版の方を使うのでは無く、PHPのモジュールの

方を使ったほうが高速です。

phpize => configure => make して、extensionと

してPHPに組み込むと良いと思います。

◎質問者からの返答

フーム、カンペキですね。

まさしくPHP+PostgreSQLなので、ぜひ使わせていただきたいと思います。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ