2006年4月28日金曜日

クッキーをサブドメイン間で共有する

以前から「クッキーはサブドメイン間で共有して使える」というのは聞いてたんですが、今回仕事で使うことになりそうなのでちょっと調べてみました。
以下、 set.example.com で発行したクッキーを get.example.com で呼び出す。というテストです。

http://set.example.com/cookie_set.php
<?php
setcookie("TestCookie", "Test", time() + 3600, "/", ".example.com");
echo "set!";
?>

↑このスクリプトにアクセスするとクッキーが発行される。

http://get.example.com/cookie_get.php
<?php
echo "<hr>";
echo $_COOKIE["TestCookie"];
echo "<hr>";
?>

↑このスクリプトにアクセスすると、クッキーが呼び出される。

実際やってみて、ちゃんと動きました。
「.example.com」としてクッキーを発行しておけば、サブドメイン以下どこからでも参照できます。たとえばhttp://www.example.comhttps://ssl.example.com みたいな感じでサブドメインで分けてサーバーを管理してるような場合でも使えるので、便利だと思います。

なお、クッキーの動きを見るにはFireFoxが便利。ツール→オプション→プライバシー→Cookieでクッキーの状態を確認できます。

1 件のコメント:

  1. [...] kawama.jp: クッキーをサブドメイン間で共有する : http://kawama.jp/archives/2006/04/post_11.html [...]

    返信削除