Si les sessions sont activées, le serveur tente de lire la cookie « PHPSESSID » sur la requête
Si ce cookie n’existe pas, un nouvel identifiant est créé (aléatoirement) et est envoyé comme cookie au navigateur (sans date d’expiration)
Si ce cookie existe, le serveur lit l’identifiant et l’associe à un fichier correspondant à cet identifiant, où se trouvent des infos spécifiques à cet utilisateur
Si son âge en seconde est plus important que la directive session.gc_maxlifetime (par défaut = 1440, soit 24 minutes), le « garbage collector » risque de la supprimer
L’identifiant de session peut être placé automatiquement dans les URL (?PHPSESSID=xxxxxx)
Cette méthode est automatiquement utilisée si PHP détecte que les cookies ne fonctionnent pas (sauf si session.use_only_cookie=1)
Cela implique que tous les liens de l’application doivent être réécrits pour incorporer ce sessionid. Cette réécriture peut être réalisée automatiquement par PHP (session.use_trans_sid=1 et url_rewriter_tags)