Ankündigung

Einklappen
Keine Ankündigung bisher.

Session Problem

Einklappen

Neue Werbung 2019

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

  • Session Problem

    Hallo,
    ich betreibe auf meinen Webserver 2 selbst programmierte Internetseiten. Beide Internetseiten nutzen Sessions. Leider kann nur auf der Internetseite die als erste aufgerufen wird Sessions erzeugt werden. Wenn ich im gleichen Browser erst Internetseite A aufrufe dann kann auf Internetseite B keine Session erzeugt werden. Dieser Fehler bleibt solange bestehen bis ich meine Cookies lösche. Wenn ich nun die Internetseite B als erstes aufrufe, dann funkionieren dort die Sessions, doch jetzt funktionieren die Sessions auf der Internetseite A nicht mehr.

    Ich vermute der Fehler liegt daran das beide Internetseite den gleichen Session-Cookiename (PHPSESSID) verwenden. Ist das möglich?

    Die Sessions werden normalerweise mit

    session_start();

    gestartet. Ich habe jetzt testweise meinen Code angepasst:

    session_name("test");
    session_start();

    Der Cookiename lautet aber immer noch PHPSESSID.

    Wer kann mir helfen?

    Danke

  • #2
    Du könntest das Problem ohne Änderungen umgehen, in dem du für deine Seiten Subdomains anlegst.

    Oder du verwendest andere Bereiche des $_SESSION Arrays. So pauschal fällt mir kein Grund ein, warum sonst die Session auf der anderen Seite komplett nicht funktionieren sollte.

    Kommentar


    • #3
      kann es eher sein, dfaß sich die sitez einen pfad für die sessions teilen und der browser versucht imme die gleiche sessionID zu verwenden. wie wärs mit session_path()?

      Kommentar


      • #4
        Ich habe da noch ein paar Verständnisschwierigkeiten.

        Wenn ich eine Session starte dann wird doch auf dem Webserver (im Sessionpfad) eine Datei abgelegt in der alle meine Variablen gespeichert werden. Die Datei auf dem Server trägt den selben Namen wie der Wert im Cookie PHPSESSID, richtig? Wird/sollte für jede Internetseite eine eigene Session-Datei abgelegt werden oder wird nur für jeden geöffneten Browser eine Session-Datei auf dem Webserver erzeugt?
        Ich blick da noch nocht ganz durch ...

        Kommentar


        • #5
          Wenn wir davon ausgehen, dass die Speicherung der Sessions per Datei erfolgt (Default), wird pro Session (also pro erzeugter Session-ID) eine Datei angelegt, in die die serialisierten Daten von $_SESSION gespeichert werden.

          Schau dir einfach mal die Ausgabe von phpinfo() zum Thema Sessions an.

          Der Session-Name (PHPSESSID) ist für dein Problem nach, wenn ich es richtig verstanden habe übrigens nicht relevant, aber schau ruhig mal in den Ordner, der als session.save_path eingetragen wurde.

          Kommentar

          Lädt...
          X