[PHP-users 7101] セッションについて

Takeo Usui php-users@php.gr.jp
Tue, 23 Apr 2002 20:11:00 +0900


お世話になります。碓井と申します。

セッションについて質問があります。
下記のスクリプトで、ブラウザからtest1.phpを呼び、
nextをクリックするとカウントが表示され、
リロードするたびに、数値が増えていきます。
リセットをクリックするとセッションはdestroyされ、
カウントは1からになります。


----------------- test1.php -----------------------
<?php
session_start();
session_register("num");

echo"set<BR>
     <a href=\"next.php\">next</a><BR>
     <a href=\"reset.php\">reset</a>";
?>
---------------------------------------------------

----------------- next.php ------------------------
<?php

session_start();
if(!session_is_registered("num")){
    echo"NG";
    exit;
}
else{
    $num++;
    echo"$num<BR>
         <a href=\"reset.php\">reset</a>";
}

?>
---------------------------------------------------

----------------- reset.php -----------------------
<?php

session_start();
session_destroy();
echo"reset<BR>
     <a href='test1.php'>back</a>";

?>
---------------------------------------------------

resetをクリックしてから、next.phpを直接URL指定して呼び出すと
きちんと"NG"が表示されます。
ここまではこれで良いのですが、test1.phpを表示して、
nextをクリックし、next.phpを表示します。
10秒以上何もせずにブラウザのリロードなり、URLを打ち込むなりして
next.php表示した場合、「session.gc_maxlifetime   10」と指定しているので
"NG"という表示を期待しているのに、カウントの数値が表示されてしまいます。

何かヒントをご教授いただけませんでしょうか。
よろしくお願いします。



・環境
OS:Red Hat Linux 7.1
PHP:4.1.2
Apache:1.3.23

・phpのconfigure
'--enable-zend-multibyte'
'--enable-mbstring'
'--enable-mbstr-enc-trans'
'--with-sybase=/opt/sybase/'
'--with-apxs=/usr/local/apache/bin/apxs'

・phpのsessionの設定
session.auto_start            Off
session.cache_expire          180
session.cache_limiter         nocache
session.cookie_domain         no value
session.cookie_lifetime       0
session.cookie_path           /
session.cookie_secure         Off 
session.entropy_file          no value
session.entropy_length        0
session.gc_maxlifetime        10
session.gc_probability        5
session.name                  PHPSESSID
session.referer_check         no value
session.save_handler          files
session.save_path             /tmp
session.serialize_handler     php
session.use_cookies           On


Takeo Usui
takeo-u@pop07.odn.ne.jp