Bonjour à tous.
Je me casse la tête sur un problème concernant la durée de vie de mes sessions. Mon but est de passer des 24 minutes fixées par défaut par session.gc_maxlifetime à 4 heures.
Le site étant hébergé en mutualisé, je n'ai pas la possibilité de changer php.ini.
1ère tentative :
Alors c'est super, les paramètres sont à priori pris en compte (test avec ini_get) MAIS quand, en local, je vois effectivement apparaître mes jolis fichiers de sessions dans le rep choisi, sur le serveur mutualisé le répertoire reste vide, que ce répertoire soit placé dans le rep public du site ou dans un niveau inférieur (avec 777 comme droits sur le rep). Et, évidemment, mes variables de sessions sont écrasées au bout de 24 minutes...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 ini_set('session.save_path',$_SERVER['DOCUMENT_ROOT'] . '/../repdestockage'); ini_set('session.cache_expire',4 * 60); ini_set('session.cache_limiter','none'); ini_set('session.cookie_lifetime',4 * 3600); ini_set('session.gc_maxlifetime',4 * 3600); session_start();
2ème tentative :
La voici, la voilà, la gestion personnalisée des sessions (j'ai essayé avec ou sans une classe) qui se sert d'une base mysql.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 // inclusion des fonctions perso de gestion des sessions ini_set('session.save_handler','user'); session_set_save_handler('_open','_close','_read','_write','_destroy','_gc'); session_start();
En local, aucun problème, sur le serveur mutualisé, la directive session_set_save_handler me renvoit false...
Je pense que j'ai essayé les deux alternatives possibles pour contourner le fait de ne pas pouvoir toucher à php.ini... Le plus énervant est que cela marche en local et pas sur le serveur mutualisé. Il pourrait sans doute s'agir de sa version de PHP... Je vous donne les infos de ce serveur, si quelqu'un a une suggestion, je suis preneur !
Merci à tous,
dbass.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 PHP Version 4.2.2 System Linux sylvester.devel.redhat.com 2.4.20-2.41smp #1 SMP Sun Feb 9 09:29:47 EST 2003 i686 athlon i386 GNU/Linux Session Support enabled Directive Local Value Master Value session.auto_start On On session.cache_expire 240 180 session.cache_limiter none nocache session.cookie_domain no value no value session.cookie_lifetime 14400 0 session.cookie_path / / session.cookie_secure Off Off session.entropy_file no value no value session.entropy_length 0 0 session.gc_maxlifetime 14400 1440 session.gc_probability 1 1 session.name PHPSESSID PHPSESSID session.referer_check no value no value session.save_handler files files session.save_path /var/www/html/web/rep/www/toto/../toto_data/tmp /tmp session.serialize_handler php php session.use_cookies On On session.use_trans_sid 1 1
Partager