Session

Résolu
aaaaammounti Messages postés 33 Date d'inscription lundi 17 avril 2006 Statut Membre Dernière intervention 24 juin 2008 - 29 nov. 2007 à 10:31
aaaaammounti Messages postés 33 Date d'inscription lundi 17 avril 2006 Statut Membre Dernière intervention 24 juin 2008 - 30 nov. 2007 à 08:25
salut
comment préciser la durée de vie de session?
merci

3 réponses

neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
29 nov. 2007 à 12:27
Salut,

ini_set('session.cookie_lifetime', XX);
ini_set('session.gc_maxlifetime', XX);

http://fr.php.net/manual/fr/ref.session.php
3
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
29 nov. 2007 à 22:11
Hello,

petit bemol quand même...
SI on est sur un serveur hébergeant plusieurs sites (en dédié, voire en mutualisé si l'hébergeur n'est pas très futé...), il est possible que le paramètrage du vhost ou/et la configuration php désignent le même répertoire de sauvegarde des sessions pour tous les sites.
Or, les sessions sont nettoyées par un garbage collector propre au module php. Ce dernier est appelé par exemple ttes les 30mn pour un site donné, et si un autre a indiqué une durée de vie des dessions d'1h, toutes les heures pour ce dernier.
Sauf que si les 2 sites partagent le même répertoire de sessions...le garbage collector n'a, lui, aucun moyen de savoir à quel site appartient tel ou tel fichier de session. Et il effacera TOUS les fichiers de session dont la durée de vie a été supérieure à la moins grande des durées de vie initialisées sur les 2 sites. Bref, même pour le site dont les sessions doivent durer 1h...elles ne dureront que 30mn, dans cet exemple.

La solution : assigner à un site son propre répertoire de sessions, soit dans le vhost, soit dans la config php pour ce site :
http://www.php.net/manual/fr/function.session-save-path.php
3
aaaaammounti Messages postés 33 Date d'inscription lundi 17 avril 2006 Statut Membre Dernière intervention 24 juin 2008
30 nov. 2007 à 08:25
merci beaucoup
0
Rejoignez-nous