[PHP-DEV] PHP 4.0 Bug #3793 Updated: session.gc_maxlifetime does not work From: Bug Database (php-dev <email protected>)
Date: 09/18/00

ID: 3793
Updated by: sniper
Reported By: kori_mail <email protected>
Status: Feedback
Bug Type: *Session related
Assigned To:
Comments:

Please try php4.0.2 or preferrably latest CVS or snapshot.

--Jani

Previous Comments:
---------------------------------------------------------------------------

[2000-09-12 21:58:56] kori_mail <email protected>

To Jani: OK, there are my sample scripts :-)

----- index.php ----

<?php

        
        session_name("uid");
        session_start();

        session_register("param1");
        
        $param1 = "registered";

        $t = "Value of param1 is <b>" . $param1 . "</b></br>";

        $t .= "Session ID is: <b>" . session_id() . "</b><br><br>";

        $t .= "SID is: <b>" . SID . "</b><br><br>";

        $t .= "<a href="test.php?" . SID . "">Click here</a>";

        print($t);

?>

------ test.php -----

<?php

        
        session_name("uid");
        session_start();

        $t = "Value of param1 is <b>" . $param1 . "</b></br>";

        $t .= "Session ID is: <b>" . session_id() . "</b><br><br>";

        $t .= "SID is: <b>" . SID . "</b><br><br>";

        $t .= "<a href="test.php?" . SID . "">Click here after 60 seconds</a><br>";

        $t .= "<a href="destroy.php?" . SID . "">Click here to destroy session</a>";

        print($t);

?>

------ destroy.php ------

<?php

        
        session_name("uid");
        session_start();

        session_destroy();

        $t = "Value of param1 is <b>" . $param1 . "</b></br>";

        $t .= "Session ID is: <b>" . session_id() . "</b><br><br>";

        $t .= "SID is: <b>" . SID . "</b><br><br>";

        $t .= "<a href="test.php?" . SID . "">Click here</a><br>";

        print($t);

?>

----- PHP.INI (session section) -----

[Session]
session.save_handler = files ; handler used to store/retrieve data
session.save_path = C:/WINNT/Temp ; argument passed to save_handler
                                    ; in the case of files, this is the
                                    ; path where data files are stored
session.use_cookies = 0 ; whether to use cookies
session.name = PHPSESSID
                                    ; name of the session
                                    ; is used as cookie name
session.auto_start = 0 ; initialize session on request startup
session.cookie_lifetime = 0 ; lifetime in seconds of cookie
                                    ; or if 0, until browser is restarted
session.cookie_path = / ; the path the cookie is valid for
session.cookie_domain = ; the domain the cookie is valid for
session.serialize_handler = php ; handler used to serialize data
                                    ; php is the standard serializer of PHP
session.gc_probability = 1 ; percentual probability that the
                                    ; 'garbage collection' process is started
                                    ; on every session initialization
session.gc_maxlifetime = 60 ; after this number of seconds, stored
                                    ; data will be seen as 'garbage' and
                                    ; cleaned up by the gc process
session.referer_check = ; check HTTP Referer to invalidate
                                    ; externally stored URLs containing ids
session.entropy_length = 0 ; how many bytes to read from the file
session.entropy_file = ; specified here to create the session id
; session.entropy_length = 16
; session.entropy_file = /dev/urandom
session.cache_limiter = nocache ; set to {nocache,private,public} to
                                    ; determine HTTP caching aspects
session.cache_expire = 180 ; document expires after n minutes

-----------------------------

Other options in PHP.INI are default.

Please, try also set "session.gc_probability = 100" in PHP.INI and run these scripts from two browser windows (it simulates 2 connected users) and you will see how second user with other UID ovewrites session od the first user.

PHP: 4.0.1pl2
Tested OS: W2K PRO & SERVER
WWW: Apache 1.3.12 & IIS 5.0

Jiri Kori

---------------------------------------------------------------------------

[2000-08-28 14:04:15] sniper <email protected>
Please attach your test scripts into this report directly.

(We are so lazy that we don't want to go and download
something from some url and then unzip it and then attach
it here by ourselves..=)

And by attaching those scripts here, they will be available
all time even if your site is down or you decide to delete
that zip-file.

--Jani

---------------------------------------------------------------------------

[2000-08-08 18:18:13] kori_mail <email protected>
Please, download and try my sample scipts from

http://www.webace.cz/session.zip

There is my PHP.INI for testing use also...

---------------------------------------------------------------------------

[2000-08-08 17:19:05] kori_mail <email protected>
I use FAT32. I will try NTSF tomorow...

---------------------------------------------------------------------------

[2000-08-08 10:10:19] stas <email protected>
Do you use NTFS or FAT on partition where session files are stored?

---------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online.

Full Bug description available at: http://bugs.php.net/?id=3793

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: php-dev-unsubscribe <email protected>
For additional commands, e-mail: php-dev-help <email protected>
To contact the list administrators, e-mail: php-list-admin <email protected>