IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

Session perdue avant le temps max


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #21
    Invité
    Invité(e)
    Par défaut
    Donc session_cache_expire() me retourne 180 (donc c'est bien ce qui a dans le php.ini).

    J'ai lu et relu la doc oui, et j'ai fais plein de tests pour les différents temps de session.gc_maxlifetime et session.cache_expire, et je ne tombe jamais sur les bons résultats à priori. Je ne comprends pas, c'est pour ça que j'ai demandé ici.

    Sinon mon wamp a la configuration par défaut, et sur mon poste à moi (donc en local), j'ai pas le problème, mais sur le serveur si (le serveur a la même version de wamp que mon poste local, et le même php.ini).
    On ne pense pas qu'il y a quelque chose qui "épurerait" les sessions du dossier tmp de wamp (et puis si c'était le cas, pourquoi il irait chercher directement là-bas ?).
    Est-ce que des fois, le nombre d'utilisateurs connectés peut affecter les choses ?
    Roo je sais pas moi, c'est assez bizarre. Ce matin j'ai tenu 2h30, hier j'ai tenu 1h10 ... L'autre jour c'était 1h30.

    EDIT : Peut-être qu'en changeant la probabilité que le garbage collector soit appelé, j'aurais plus le problème. Par exemple si je met 0%, normalement il sera plus appelé non? Et donc, j'aurais peut-être plus de raison de perdre mes sessions !

    J'ai refais un p'tit test, là j'ai tenu 30 min. Hmmmm


    J'ai trouvé ça sur la page du manuel que tu m'a demandé de lire (plusieurs personnes en parlent) :
    If you use /tmp as php sessions file dir, on a procuction server, system garbage will delete randomly files when a certain number os files are stored at tmp, so some sessions are deleted within 1 seconds, like my case.
    Peut-être que c'est une piste à utiliser.


    EDIT : J'ai essayé la solution précédente, sans succès Je suis restée connectée 1h. Je vais peut-être tester la proba du garbage collector, quoi que je sais même pas si c'est bien ou mal et si ça changera quelque chose
    Dernière modification par Invité ; 07/09/2006 à 15h32.

  2. #22
    Invité
    Invité(e)
    Par défaut
    Il y a un solution...

    Utiliser une base de données pour stocker les sessions. En plus d'être plus sécurisé (suivant le contexte), tu peux définir toi-même un "garbage collector", je pense que le problème sera résolu.

  3. #23
    Invité
    Invité(e)
    Par défaut
    Comment ça utiliser une base de données ??
    Je vais stocker quoi au juste ?

  4. #24
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par poopsinou
    Comment ça utiliser une base de données ??
    Je vais stocker quoi au juste ?
    Le contenu de la session (l'équivalent du fichier temporaire que crée PHP).

    Le manuel PHP en dit plus.

    Enfaite, tu as la possibilité de redefinir entièrement la manière dont les sessions sont gérées, ce n'est pas particulièrement lourd à mettre en place.

  5. #25
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    ou alors tu ne stockes pas tes sessions dans /tmp mais dans un répertoire chez toi, auquel peut accéder ton compte apache...

  6. #26
    Invité
    Invité(e)
    Par défaut
    Je vais regarder pour la base de données, ça m'embête un peu, mais si c'est la dernière solution, faut que je l'étudie !

    Sinon pour gerald2545, j'ai créé un autre dossier (sur le serveur), mais ça n'a rien changé. Je sais pas si sur mon poste ça changerait grand chose, et je pense pas que wamp pourrait y accéder, donc ça va pas aller.

  7. #27
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    Je sais pas si sur mon poste ça changerait grand chose, et je pense pas que wamp pourrait y accéder, donc ça va pas aller.
    qu'entends-tu par là? tu peux expliquer plus clairement STP

  8. #28
    Invité
    Invité(e)
    Par défaut
    Oups pardon, j'ai oublié un mot dans ma phrase !!

    Je ne pense PAS que wamp pourrait accéder à mon poste pour stocker les sessions (je suis en réseau, et wamp est sur un des serveurs).
    Et je ne sais pas si ça changerait quelque chose que le dossier soit chez moi. J'ai essayé de créer un autre dossier comme certains disaient au lieu du /tmp de d'habitude, mais ça n'a rien changé. Mais peut-être que tu as une bonne idée, car peut-être que c'est un problème sur le serveur !

    Mais vu que je pense que wamp ne voudrait pas accéder à mon dossier, et que l'admin ne voudrait pas que je fasse ça, faut que je trouve autre chose !

    EDIT : finalement j'avais pas oublié de mot ! Je suis déjà bien réveillée hihi

  9. #29
    Membre éclairé
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Points : 773
    Points
    773
    Par défaut
    je pense qu'il faut que tu revoies les bases des sessions et des cookies...sérieusement :
    la session est stockée sur le serveur
    le cookie est stocké dans ton PC

    Le serveur ne peut à aucun moment accéder directement à tes propres répertoires!!!
    Pour ton problème, la seule info que peut avoir ton serveur et qui t'intéresse, c'est l'info du cookie (existence de ce cookie et contenu du cookie qui correspond à ton id de session).

    La session est par défaut créée sur le répertoire /tmp du serveur, mais ça doit être modifiable dans ton script php. Crée un nouveau répertoire sur ton serveur web avec les bons droits pour qu'Apache puisse écrire dedans, vérifie que tu peux y accéder via le web (tu seras sûr qu'apache peut donc y accéder...au moins en lecture). Configure tes scripts pour que les sessions soient créées dans le répertoire que tu viens de créer.

  10. #30
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par gerald2545
    ou alors tu ne stockes pas tes sessions dans /tmp mais dans un répertoire chez toi, auquel peut accéder ton compte apache...
    J'avais compris où est une session et où est un cookie !! Je pensais que tu voulais que je crée un répertoire sur mon poste !! On s'est mal compris
    D'où ma réponse pour dire que wamp n'accèderait pas à mon poste !

    Et ensuite je l'ai dis : j'ai fais un nouveau répertoire sur le serveur pour les sessions, et wamp y accèdait bien, et les sessions étaient enregistrées dedans, mais ça n'a pas résolu le problème, aléatoirement, les sessions étaient supprimées !!

  11. #31
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par poopsinou
    J'avais compris où est une session et où est un cookie !! Je pensais que tu voulais que je crée un répertoire sur mon poste !! On s'est mal compris
    D'où ma réponse pour dire que wamp n'accèderait pas à mon poste !

    Et ensuite je l'ai dis : j'ai fais un nouveau répertoire sur le serveur pour les sessions, et wamp y accèdait bien, et les sessions étaient enregistrées dedans, mais ça n'a pas résolu le problème, aléatoirement, les sessions étaient supprimées !!
    Le repertoire, c'était de toute façon pas le problème . Quand on parle de "aléatoire" le problème se situe plutôt au niveau du Garbage Collector, ou alors de l'implémentation..

    Autre chose, WAMP n'est pas fait pour faire de la production. Et la plate-forme Windows (autre que Server) nonplus.


    Essaie avec une base de données pour voir... Ou alors sur un vrai serveur... LAMP .

  12. #32
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Guardian_7
    Autre chose, WAMP n'est pas fait pour faire de la production. Et la plate-forme Windows (autre que Server) nonplus.


    Essaie avec une base de données pour voir... Ou alors sur un vrai serveur... LAMP .
    Ce n'est pas moi qui est choisie le serveur ou wamp ou autre ... Je vais pas venir et demander de tout changer pour mes beaux yeaux

    Mais je crois que je vais regarder la base de données dès que j'aurais un peu plus de temps !

  13. #33
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par poopsinou
    Ce n'est pas moi qui est choisie le serveur ou wamp ou autre ... Je vais pas venir et demander de tout changer pour mes beaux yeaux

    Mais je crois que je vais regarder la base de données dès que j'aurais un peu plus de temps !
    C'est plutôt pour tous les yeux en général .

    Bonne continuation !

  14. #34
    Invité
    Invité(e)
    Par défaut
    N'empêche, je me demandes un truc : si jamais je laisse la probabilité de déclencher le garbage collector à 0, et que je fais en sorte que les sessions soit supprimées tout les x temps, ça règlerait mon problème non ? (enfin c'est pas régler, c'est tricher, m'enfin lol)
    Parce que je suis pas sure que l'admin va vouloir que j'utilise la base de données, m'enfin vais en discuter

  15. #35
    Membre du Club Avatar de AzertyH
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2006
    Messages : 90
    Points : 67
    Points
    67
    Par défaut
    Salut,
    A la limite, ce que tu peux faire, c'est te fabriquer un autre programme le plus simple possible et en le structurant de la même manière (avec ta technique de programmation). Ensuite tu vois si tu as le même problème.

Discussions similaires

  1. HTTPS variables de session perdues
    Par schant dans le forum Apache
    Réponses: 1
    Dernier message: 29/06/2007, 16h27
  2. session perdue après rafraichissement ou suivant
    Par platonus2002 dans le forum Langage
    Réponses: 8
    Dernier message: 04/06/2007, 10h10
  3. Session perdue à cause d'ajax ?
    Par d-Rek dans le forum Langage
    Réponses: 2
    Dernier message: 24/04/2007, 11h32
  4. Rafraîchir une jsp avec bean session perdu ; )
    Par stongolm dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 07/02/2007, 13h44
  5. [Thread] Limiter le temps max d'une tâche
    Par be_tnt dans le forum Concurrence et multi-thread
    Réponses: 2
    Dernier message: 27/03/2006, 11h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo