Avatar billede riversen Nybegynder
30. juni 2003 - 20:15 Der er 10 kommentarer og
1 løsning

session timeout

leger lidt med sessions og har i den forbindelse lavet noget login. Har en session ikke en time out periode af en eller anden art? har ventet et stykke tid uden at lukke browseren og der er stadig adgang til sider som kræver login.
Hvis man kan sætte en timeout, hvordan gør man så det? og hvis det er muligt, er der så risici forbundet med ikke at sætte timeouts?
Avatar billede ahv Nybegynder
30. juni 2003 - 20:16 #1
Den er normalt 20 min. Eller til browseren lukkes.
Avatar billede ahv Nybegynder
30. juni 2003 - 20:18 #2
Du kan ændre levetiden i php.ini
Avatar billede riversen Nybegynder
30. juni 2003 - 20:19 #3
ahv: kan man ændre det? evt. på script niveau?

jeg tør ikke sige om der er gået 20 min, men det er ikke langt fra nu
Avatar billede riversen Nybegynder
30. juni 2003 - 20:22 #4
kan du fortælle hvor i php.ini

er der nogen risici forbundet med timeout på en session i forbindelse med login? bør man lave logout med session_unregister?
Avatar billede ahv Nybegynder
30. juni 2003 - 20:23 #5
Det er altid en god ide at dræbe sessions når brugeren forlader siden, hvis det nu var en offentlig computer kunne en anden jo komme og gå ind hvis ikke d var døde :o)

Kan ikke lige hukse hvor det står, men hvis du prøver af søge i php.ini  efter lifetime mon du så ikke finder noget?
Avatar billede riversen Nybegynder
30. juni 2003 - 20:26 #6
den her måske?
session.cookie_lifetime = 0

hvordan dræber jeg så sessions når en side forlades?
Avatar billede ahv Nybegynder
30. juni 2003 - 20:31 #7
Det ser rigtigt ud, Ved at bede folk logge ud ;o) Så kan du jo dræbe dem som du selv siger ved unregistrer eller session_destroy();

Hvis folk ikke logger ud, må det være deres problem, så dør deres login først bare efter 20 min. med chance for at en hat udnytter det, hvis det er en offentlig computer.
Avatar billede tipsen Nybegynder
30. juni 2003 - 20:41 #8
Fra: http://dk.php.net/manual/en/function.ini-set.php

Dette er de variable der har indflydelse på sessions:

session.save_path "/tmp" PHP_INI_ALL
session.name "PHPSESSID" PHP_INI_ALL
session.save_handler "files" PHP_INI_ALL
session.auto_start "0" PHP_INI_ALL
session.gc_probability "1" PHP_INI_ALL
session.gc_maxlifetime "1440" PHP_INI_ALL
session.serialize_handler "php" PHP_INI_ALL
session.cookie_lifetime "0" PHP_INI_ALL
session.cookie_path "/" PHP_INI_ALL
session.cookie_domain "" PHP_INI_ALL
session.cookie_secure "" PHP_INI_ALL
session.use_cookies "1" PHP_INI_ALL
session.use_only_cookies "0" PHP_INI_ALL
session.referer_check "" PHP_INI_ALL
session.entropy_file "" PHP_INI_ALL
session.entropy_length "0" PHP_INI_ALL
session.cache_limiter "nocache" PHP_INI_ALL
session.cache_expire "180" PHP_INI_ALL
session.use_trans_sid "1" PHP_INI_SYSTEM|PHP_INI_PERDIR
session.encode_sources "globals,track" PHP_INI_ALL

Her er betydning af PHP_* konstanten:
PHP_INI_USER 1 Entry can be set in user scripts
PHP_INI_PERDIR 2 Entry can be set in php.ini, .htaccess or httpd.conf 
PHP_INI_SYSTEM 4 Entry can be set in php.ini or httpd.conf 
PHP_INI_ALL 7 Entry can be set anywhere
Avatar billede tipsen Nybegynder
30. juni 2003 - 20:42 #9
Dvs:

session.cookie_lifetime "0" PHP_INI_ALL

kan du ændre ved brug af

ini_set('session.cookie_lifetime', 1200);

for eksemepelvis 20 min.
Avatar billede riversen Nybegynder
30. juni 2003 - 21:00 #10
tak for det
Avatar billede riversen Nybegynder
30. juni 2003 - 21:00 #11
ahv: har du set mit nye problem vedr. php kode i mysql db?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester