2つのサーバ間でクッキーを共通参照するには?

[上に] [前に] [次に]
nao [E-Mail] 1999/07/30(金) 19:10:19
関連する画面の CGI が2つのサーバに存在し、片方のサーバで
設定された認証IDを別サーバのCGIに COOKIE で渡したいのです
が、このようなことはできるのでしょうか?

B-Cus 1999/07/30(金) 19:53:28
ん〜無理じゃないかなぁ。ブラウザはそれを発行したサーバにしか
Cookieを送らないし。

試してないけど、片方でcookieを発行するときに、Locationヘッダで
もう一方のサーバに飛んで、そこで同じ内容のcookieを発行する
というのは?

 [host1/put-cookie.cgi]
$cookie = "hoge=fuga; expires=...";
$encoded_cookie = $cookie;
$encoded_cookie =~ s/(\W)/sprintf("%%%02X", unpack("C", $1))/eg;
print <<END;
Location: http://host2/put-cookie.cgi?$encoded_cookie;
Set-Cookie: $cookie

飛びます飛びます
END

 [host2/put-cookie.cgi]
$cookie = $ENV{QUERY_STRING};
$cookie =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack("C", hex($1))/eg;
print <<END;
Set-Cookie: $cookie

cookieの発行終了。
END

nao [E-Mail] 1999/07/30(金) 21:19:42
[[解決]]
お返事ありがとうございます。
cookie で指定できる domain 名を使用してできるか、いろいろ試して
見ましたが、うまくいきませんでした。
このような事ができると、セキュリティ上問題ありますし、仕様的に
無理があるかもしれません。
B-cus さんのおっしゃるように、host1で入力された、値を
host2で参照できるような cookie 設定 CGI を作成して対処します。

ということで、早々と「解決」します。

[上に] [前に] [次に]