Emplacement de stockage de la session
Cette rubrique explique comment localiser l’emplacement de stockage de vos fichiers de session. Le système utilise la logique suivante pour stocker les fichiers de session :
-
Si vous avez configuré memcached, les sessions sont stockées dans la RAM ; voir Utiliser memcached pour le stockage des sessions.
-
Si vous avez configuré Redis, les sessions sont stockées sur le serveur Redis ; voir Utiliser Redis pour le stockage de session.
-
Si vous utilisez l’espace de stockage de session basé sur des fichiers par défaut, les sessions sont stockées aux emplacements suivants dans l’ordre indiqué :
Exemple dans env.php
Voici un exemple de fragment de code provenant de <magento_root>/app/etc/env.php
:
'session' => [
'save' => 'files',
'save_path' => '/var/www/session'
],
L’exemple précédent stocke les fichiers de session dans /var/www/session
Exemple dans php.ini
En tant qu’utilisateur disposant de droits d’root
, ouvrez votre fichier php.ini
et recherchez la valeur de session.save_path
. Cela identifie l’emplacement de stockage des sessions.
Gérer la taille de session
Voir la Gestion des sessions dans le Guide de l’utilisateur.
Configuration du nettoyage de la mémoire
Pour nettoyer les sessions expirées, le système appelle le gestionnaire gc
(nettoyage de la mémoire) de manière aléatoire en fonction d’une probabilité calculée par la directive gc_probability / gc_divisor
. Par exemple, si vous définissez ces directives sur 1/100
respectivement, cela signifie une probabilité de 1%
(probabilité d’un appel de nettoyage pour 100 requêtes).
Le gestionnaire de récupération de l’espace mémoire utilise la directive gc_maxlifetime
, à savoir le nombre de secondes après lesquelles les sessions sont vues comme espace mémoire et potentiellement nettoyées.
Sur certains systèmes d’exploitation (Debian/Ubuntu), la directive session.gc_probability
par défaut est 0
, ce qui empêche le gestionnaire de récupération de l’espace mémoire de s’exécuter.
Vous pouvez remplacer les directives session.gc_
à partir du fichier php.ini
dans le fichier <magento_root>/app/etc/env.php
:
'session' => [
'save' => 'db',
'gc_probability' => 1,
'gc_divisor' => 1000,
'gc_maxlifetime' => 1440
],
La configuration varie en fonction du trafic et des besoins spécifiques du site web du commerçant.