[PHP-users 17600]session_regenerate_id()の挙動について

Y.Watanabe yuw @ msj.biglobe.ne.jp
2003年 8月 30日 (土) 20:43:55 JST


渡辺です。

session_regenerate_id()使うといいんじゃない?
などと方々で言っていたくせに自分では本気では試していなかった(苦笑)
ので、試しました。

ら、

あららなんか期待した挙動じゃないぞ?!ということが発覚。
環境依存があるかもしれませんので、どなたか追試求む!です。

環境: 
php4.3.3
apahce1.3.27
red hat linux 6.2

<?php
session_start();
echo session_id();
$_SESSION["hoge"] = "aaa";
session_regenerate_id();
?>

上記のスクリプトに対して何度かアクセスすると、
  (1) アクセスした回数ぶんだけセッション情報保存ファイルが
      /tmpに新規に生成されてます。
  (2) しかし、セッション変数の値が古いファイル内に残ったままです。

(1)はともかく、(2)のようなことだと、
ちっともセッションハイジャック対策にならないと思うのは僕だけ?

#session_regenerate_id()ってそもそも何の目的で作られたんだろうか。。?


ちなみにsession_regenerate_id()のマニュアルはここ。
http://jp.php.net/manual/en/function.session-regenerate-id.php
(日本語版はまだCVS段階なのでサイト上には無い)



PHP-users メーリングリストの案内