2 つのプロジェクト (それぞれ 2 つのサーバー下) に同じログイン機能を提供するにはどうすればよいですか?アイデアを探しています

WBOY
リリース: 2016-06-13 13:18:36
オリジナル
1301 人が閲覧しました

2 つのプロジェクト (それぞれ 2 つのサーバー上) に同じログイン機能を提供するにはどうすればよいですか?アイデアを募集しています
プロジェクト a: 192.168.0.1 にデプロイ
プロジェクト b: 192.168.0.2 にデプロイ

今度はプロジェクト c を実装したいと思います。 a、b プロジェクトには、c でログインした後にのみアクセスできます。

ログイン状況を Cookie に保存する予定ですが、a と b は 2 つの異なるサーバー上にあります。このセッション (Cookie) を渡すにはどうすればよいですか?
いくつかアイデアをください、ありがとう!

-----解決策--------------------------------
1日経ってもまだ満足できない場合は、私が答えます
------解決策----------------------
セッションはテーブルまたはメモリに書き込まれますキャッシュ ユーザーのステータスを 1 か所だけで管理する
------解決策------------------
初めての場合の Cookie の設定の役割-および第 2 レベルのドメイン名 ドメインはルート ドメイン名です
異なるドメイン名の場合、検証用にセッション ID の後に URL を続けることができます
セッションがテーブルに書き込まれると、ヘッダー情報が暗号化用の IP 。ドメイン名を直接入力すると、この情報が検証に使用されます。
この sprintf('%08x', crc32(!empty($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT] と同様です。 '] . $ip . $session_id : $ip . $session_id)) ;

より良い解決策があるかもしれません
------解決策---------
シングルサインオンについて学習できます
私たちのアイデアは、PHP のセッション データを一元的に保存することで、異なるサーバーで実行されている PHP に対して共通のセッション データベースが 1 つだけ存在し、サーバー A にログインするユーザーによって生成されたセッション データがサーバー B、C、D に保存されるようにすることです。など。サーバーを共有できるため、複数のログインが不要になります。ただし、PHP のセッションには Cookie が必要であり、Cookie はドメイン名に関連しているため、このソリューションを使用する各サーバーは、次のような同じドメイン名 (少なくとも同じ第 2 レベルのドメイン名) を持つ必要があります。
1. すべてサーバー ドメイン名はすべて www.whybsd.com です。これは、現時点では、PHP で Cookie ドメイン名を www.whybsd.com に設定します。
2. すべてのサーバーのドメイン名。 a.whybsd.com、b.whybsd.com など、.whybsd.com で終わるサードレベル ドメイン名です。このとき、Cookie を共有するには、PHP で Cookie ドメイン名を .whybsd.com に設定します。
------解決策------------------
CAS を使用する
------解決策---------
http://www.phpweblog.net/linxiaobo /archive/2009/04/15/6419.html
これは、P3P 以降の文字列を思い出せない、よくあるものです。しばらく様子を見てみると、P3P が正しく設定されていれば間違いなく可能です。このソリューションにより、クロスドメイン Cookie の問題が個人的に解決されました。

2 つのドメイン名の対応に注意する必要があります。 。 P3P、IE、Safari を追加しないと通過しません。これはおそらくサードパーティ Cookie と呼ばれるものでしょうか。


さらに、iframe を使用することもできます (これにはクロスドメインの概念がありません)。URL アンカーを介して、異なるドメインの親子フレーム間で値を渡すことができます。アイデアは自分で拡張できます

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート