====== Sessions ====== ===== Augmenter la durée de la session ===== Spécifier le temps d'expiration des données de la session juste avant d'appeler la commande **session_start()**. // Démarrer une session de 2h ( = 120 minutes = 7200 secondes) $nbMinutes=120; ini_set('session.gc_maxlifetime',$nbMinutes*60); ini_set('session.cache_expire',$nbMinutes); session_start(); ===== Changer le chemin de sauvegarde des sessions ===== ^LA solution à tous mes problèmes d'expiration de session^ Malgré les temps d'expiration spécifiés ci-dessus, mes sessions continuaient à être expirées prématurément. Il semble que si d'autres scripts PHP tournent sur le même serveur avec d'autres spécifications, c'est la durée la plus petite qui est utilisée pour effacer les sessions considérées comme trop vieilles. Pour éviter cela, il faudrait que les sessions d'un script soient stockées séparément, comme le conseille [[http://stackoverflow.com/a/3555570|ce commentaire sur StackOverflow.]] Par exemple, sur mon serveur les sessions sont stockées dans **/var/lib/php5**. Pour ajouter un sous-dossier **marc** je fais ceci avant l'appel de **session_start()** : $sessionSavePath = ini_get('session.save_path') . '/marc'; if(!is_dir($sessionSavePath)){ mkdir($sessionSavePath); } ini_set('session.save_path', $sessionSavePath);