Versio

Session lifetime

Overzicht Reageren

Michael -

Michael -

26/10/2009 11:32:00
Quote Anchor link
Hey,

Als ik in phpinfo() kijk op m'n localhost en op m'n server, lijken ze gelijk wat betreft sessions, maar op m'n localhost blijft ie veel langer ingelogd als op de server. Ik heb een nieuwsscript met inlog, en nou was iemand een nieuwsscript aan 't typen en bij 't toevoegen ineens uitgelogd.
Dit staat in beide phpinfo's :
session.gc_maxlifetime 1440 1440

Nou probeer ik dit:
ini_set('session.gc_maxlifetime',(1));
Dit zorg ervoor dat de session dan 1sec blijft bestaan? Dan werkt niet. Dit wil ik dan gebruiken om de session lifetime juist langer te maken.

Edit: Enige wat verschillend is is "session.gc_probability" op localhost staat ie op 1 en op server op 0, maar ook dan lijkt ie nog steeds niet zo te reageren als op de server. Localhost blijft gewoon ingelogd tot ik de browser sluit (zolang ik nu heb gewacht) en op de server stopt ie al met een half uur. Als ik lifetime moet geloven 24 minuten maar waarom dan op localhost niet.
Heb nu dit boven de admin:
ini_set('session.gc_probability',0);
ini_set('session.gc_maxlifetime',1);
En blijft nog steeds altijd ingelogd.
Gewijzigd op 01/01/1970 01:00:00 door Michael -
 
PHP hulp

PHP hulp

25/05/2012 15:37:49
Gesponsorde koppelingen:
BHosted Hosting al vanaf € 1,- per maand

Controleer nu gratis jouw domeinnaam:

  
 
Michel de Groot

Michel de Groot

26/10/2009 14:18:00
Quote Anchor link
Hey,

Volgens php.net (om precies te zijn in de comments bij: http://nl2.php.net/manual/en/function.session-cache-expire.php), kun je die setting veranderen door dit te doen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
ini_set("session.gc_maxlifetime", "18000");
?>


Die 18000 zou dan gelijk staan aan 5 uur volgens dat bericht.
Gewijzigd op 01/01/1970 01:00:00 door Michel de Groot
 
Michael -

Michael -

26/10/2009 15:35:00
Quote Anchor link
Bedankt voor je reactie, heb 't nu zo: ini_set("session.gc_maxlifetime","10");
Dan zou je dus denken dat je er na 10sec uit wordt gegooid, maar dat gebeurt niet. Naar 10minuten inactief, ben ik nog steeds ingelogd.
 
Michel de Groot

Michel de Groot

26/10/2009 16:26:00
Quote Anchor link
Het schijnt dat je het op elke pagina terug moet laten komen, anders hersteld hij de originele lifetime weer.

Je kun bekijken op wat hij stat ingesteld met:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo ini_get("session.gc_maxlifetime");
?>


Misschien dat je dan te zien krijgt of hij wel veranderd is, of dat hij misschien wel weer terug veranderd.
 
Michael -

Michael -

26/10/2009 16:33:00
Quote Anchor link
Weet ik. En hij verandert 't ook wel.
Probleem op server is dat als je een nieuwsbericht typt, en als dat langer dan langer dan 24minuten duurt en je klikt op "Toevoegen" moet je opnieuw inloggen en is het bericht weg. Om dit te voorkomen wil ik die tijd dus verlengen.
Maar op m'n localhost blijft ie altijd of in ieder geval uren ingelogd. Dus wat ik nu ook probeer is gewoon de admin pagina openen op m'n localhost. En dan wacht ik een halfuur o.i.d. en dan op toevoegen, en ik blijf ingelogd. Terwijl ie session naar 10sec zou moeten zijn afgelopen.
Dit zooitje staat nou bovenaan de pagina:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
ini_set("session.gc_probability","0");
ini_set("session.gc_maxlifetime","10"); //3600*24*365
session_start();
set_time_limit(10);


$lifetime = ini_get('session.gc_maxlifetime');
$prob = ini_get('session.gc_probability');

echo 'LT:'.$lifetime.' PROB:'.$prob;
?>

Output: LT:10 PROB:0
Iemand die weet wat ie laatste betekent? Op de server staat ie n.l. op 0 en op localhost op 1, vandaar dat ik nu even zo probeer.
Edit:typo's
Gewijzigd op 01/01/1970 01:00:00 door Michael -
 
Michael -

Michael -

27/10/2009 18:50:00
Quote Anchor link
En weer niemand een antwoord?
 
Jeffrey Santy

Jeffrey Santy

27/10/2009 19:06:00
Quote Anchor link
gebruik een optie "inglogt blijven" en doe dat met cookies...
 
Michael -

Michael -

27/10/2009 19:08:00
Quote Anchor link
Dat is mijn vraag niet. Ik wil geen cookies en het moet gewoon mogelijk zijn maxlifetime aan te passen.
 
Mr.Ark

Mr.Ark

27/10/2009 19:21:00
 
Jeffrey Santy

Jeffrey Santy

27/10/2009 19:37:00
Quote Anchor link
ini_set("session.gc_maxlifetime", "18000");
zou moeten werken... om te zien als het werkt:
echo ini_get("session.gc_maxlifetime");

anders zo mss:
session_cache_limiter('private');
$cache_limiter = session_cache_limiter();
session_cache_expire(30); //30 minuten
$cache_expire = session_cache_expire();
session_start();

echo...
Gewijzigd op 01/01/1970 01:00:00 door Jeffrey Santy
 



Overzicht Reageren

Get Adobe Flash player