永続化しないcookieの振る舞い

最初に断っておきますが、永続化しないcookie(Set-Cookieヘッダにexpiresを省略したとき)のIEFirefoxの振る舞いを話題にしてます。

IEではCtrl+Nで同じセッションを利用して、Ctrl+N以外で新しいウィンドウを立ち上げると別のセッションになる。これって、今まであまり考えずにそういうものだと思っていたけれど、そもそも、cookieってurlのホスト名やパスによってスコープが決まるものなので、そこに更に独自のウィンドウセッション(というのかわからないけど、ここではそう呼ぼう)みたな概念を勝手に導入しているのがやっぱり変だと思った。

FirefoxではIEのウィンドウセッションのような概念はない。あえて、むりやり対応させるとしたらプロファイルという概念になるかもしれない。何も設定せずに利用しているとデフォルト(default)のプロファイルを共有していることになるので、そのプロファイルに紐付くcookieを共有することになる。これで、IEのようにCtrl+Nで開かれたのかどうかという無駄な心配をしなくても、プロファイルが同じであれば、常に同じ状態を保持できるということです。