session geht verloren ??

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • session geht verloren ??

    Hallo zusammen !

    ich habe eine Problem mit meinen sessions.
    Ich habe einen Shop, und habe dort per
    PHP-Code:
    ini_set("session.gc_maxlifetime","36000"
    die Laufzeit hochgesetzt.

    Das musste ich machen, da meine User sich morgens einloggen, und abends wieder ausloggen.

    Das funktionierte die ganze Zeit auch ohne Probleme.
    Seit einer Woche melden sich nun einige Benutzer, und sagen, sie würden einer gewissen Zeit rausfliegen.

    Ich habe mal die Werte der php.ini überprüft, und der local value bei der session steht auch auf 36000.
    Wenn ich nun aber exakt nach 24 Minuten "Nichtstun" wieder eine Suchanfrage starte, dann flieg ich raus.

    24 Minuten ist doch der Standardwert für session.gc_maxlifetime ,oder ?

    Laut meinem Provider wäre an dem Server nicht verändert worden.

    Wäre um jeden Tip dankbar !!

    Gruss jogi



    Hat jemand ne Idee, was das sein kann.

  • #2
    Re: session geht verloren ??

    Hast du im Manual bzgl. session.gc_maxlifetime nachgelesen?

    Ich vermute nein.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      doch, aber wohl mal wieder nicht richtig !!!!

      Bedeutet das, dass Wert nach Ablauf des Scriptes wieder auf "1440" gesetzt wird ?

      Dann frage ich mich, warum das die ganze Zeit ging ?

      Kommentar


      • #4
        Original geschrieben von jogisarge
        Bedeutet das, dass Wert nach Ablauf des Scriptes wieder auf "1440" gesetzt wird ?
        Jein.

        Das vielleicht auch - aber vor allem bedeutet es, dass den garbage collector diese Einstellung eines einzelnen Scriptes vermutlich recht wenig interessiert.
        Der garbage collector könnte ja auch noch on anderer Stelle aus gestartet werden - wie soll er da "wissen", das irgendein einzelnes Script gerne wollte, dass seine Sessions länger leben?
        Dann frage ich mich, warum das die ganze Zeit ging ?
        Reiner Zufall vermutlich.

        Der garbage collector muss ja nicht innerhalb eines bestimmten Zeitraums aktiv werden.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Danke mal !!

          Gibt es eine andere Möglichkeit die Gültigkeit der session zu verlängern,
          ausser mit ini_set()?

          Ich habe aber keinen Zugriff auf die php.ini-Datei vom Webserver.

          Ich möchte die Gültigkeit der sessions in einem bestimmten Ordner für alle Skripte erhöhen.


          mfg jogi

          Kommentar


          • #6
            Hallo nochmal !

            Ich habe es mal mit einer eigenen php.ini in dem Verzeichnis auf dem Webserver probiert.

            Wenn ich mir mit phpinfo() die Sessionwerte anschaue, dann steht bei session.gc_maxlifetime im local und im master value 36000.

            Trotzdem fliege ich nach 24 Minuten raus.
            wenn ich mir nach dem rausfliegen mal das $_SESSION array anschaue, dann ist das leer.
            session_id() liefert aber die korrekte session_id der Sitzung zurück.
            d.h .Die session_id hat sich nach 24 Minuten nicht geändert, das $_SESSION array ist aber leer!!???

            Hat jemand noch ein paar Tipps für mich ?

            Gruss jogi

            Kommentar


            • #7
              Original geschrieben von jogisarge
              d.h .Die session_id hat sich nach 24 Minuten nicht geändert, das $_SESSION array ist aber leer!!???
              Was ist daran verwunderlich?

              Wenn der garbage collector deine Sessiondatei weggeputzt hat, dann existiert zur vom Client übergebenen Session-ID keine Sessiondatei mehr - also ist das exakt die gleiche Situation, als ob du die Session gerade eben erst gestartet hättest.
              Hat jemand noch ein paar Tipps für mich ?
              Ja, das f/king Manual hat.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                Ok danke für deine Antwort.

                Kannst du mir nicht sagen, wie ich verhindere, dass der Garbage Collector meine Sitzungsdaten löscht.
                Ich dachte, wenn ich die sitzungslaufzeit auf 36000 Sekunden erhöhe, dann sind die Sitzungsdaten auch so lange verfügbar.

                Per ini_set() war das wohl falsch, da das nur für die LAufzeit des Scriptes galt.

                Ich versteh halt nicht, dass das monatelang funktioniert, und auf einmal nicht mehr ??

                Gruss jogi

                Kommentar


                • #9
                  Original geschrieben von jogisarge
                  Kannst du mir nicht sagen, wie ich verhindere, dass der Garbage Collector meine Sitzungsdaten löscht.
                  Doch, kann ich.

                  Aber du kannst genauso gut das Manual lesen ...
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar


                  • #10
                    Mir ist schon klar was du meinst, aber manchmal steht man unter Zeitdruck, oder liest und liest und findet es trotzdem nicht.

                    In so einer Situation hoffe ich immer, dass ich in einem Forum schneller an die Infos komme, da ich momentan wirklich keine Ahnung habe, was bei mir schief geht.

                    Aber, lass gut sein, auf die RTFM - Tipps kann ich verzichten.

                    Kommentar

                    Lädt...
                    X