Autour de Laravel

Session Lifetime

Avatar de elhadjdioumabarry
elhadjdioumabarry

Bonjour la famille j'ai un probleme avec la session.je voudrais deconnecter les utilisateurs aprés 2 minutes innactivités sur le site. j'ai essayer sa dans le fichier session.php 'lifetime' => env('SESSION_LIFETIME',2), 'expire_on_close' => true, et j'ai modifier le fichier .env en faisant sa SESSION_LIFETIME=2 mais sa ne fonctionne pas svp aidez moi

Posté il y a 1 mois
Avatar de CinquièmeDimension
CinquièmeDimension

Salut,

Avec SESSION_LIFETIME c'est ta session en général qui sera affectée, active ou pas. Tout dépends ce que tu veux dire comme inactivité...

Tu peux très bien faire ça en js, genre au bout de 2 min tu redirige vers l'action logout. Un truc comme:

let pageTimeOut = 2; //minutes
let idleTime = 0;
$(document).ready(function () {
    //Increment the idle time counter every minute.
    let idleInterval = setInterval(timerIncrement, 60000); // 1 minute

    //Zero the idle timer on mouse movement.
    $(this).mousemove(function (e) {
        idleTime = 0;
    });
    $(this).keypress(function (e) {
        idleTime = 0;
    });
});

function timerIncrement() {
    idleTime = idleTime + 1;
    if (idleTime >= pageTimeOut) {
        window.location.href = '{{ route('logout') }}';
    }
}
Posté il y a 1 mois
Avatar de elhadjdioumabarry
elhadjdioumabarry

je voudrais aussi envoye l'utilisateur sur une page ou il ne fera que taper son password pour se reconnecter et revenir à la page ou il était(page précedente) merci de m'avoir repondu c'est gentil

Avatar de BalamWeb
BalamWeb

Bonjour

Ta configuration est correcte pense a supprimer les caches pour que ce soit bien pris en compte..

quel driver de session utilises tu?

après peut etre voir event subscribers

Vous ne pouvez pas répondre à ce sujet.