CodeIgniter 3 und Sitzungen

Ich aktualisiert, um CodeIgniter 3 vor kurzem, nach dieser Anleitung:
CI3: upgrade von 3.0 auf 2.2.1.

Richte ich diese Konfiguration in application/config/config.php Datei:

$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session_my_site';
$config['sess_expiration'] = 604800; //1 week
$config['sess_save_path'] = NULL;
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;

Gibt es etwas falsch hier? Meine session zerstört wird, nach ein paar Stunden...

  • Sie verwenden Dateien, die für die Sitzung Treiber, aber Sie legen Sie den Pfad auf null? Auch, Sie sagen, ein paar Stunden, ist, dass 5 Stunden durch Zufall (5 Stunden in Minuten 300)?
  • Ich bin mir nicht sicher über die Zeit (gibt es eine Möglichkeit, genau zu wissen ?). Sollte ich einen Wert für den Pfad ? Ich dachte, es war nur für die sessions in der Datenbank gespeichert.
  • Schauen Sie auf Ihre Verknüpfung. Es sagt, dass, wenn Sie verwenden möchten "files" und setzen Sie sess_save_path, also kann es nicht null sein
  • Sie nicht geben Sie irgendein Beispiel, oder bin ich da falsch ? Es ist geschrieben : "Legen Sie einen $config['sess_save_path'] - Wert. Für die "Datenbank" - Treiber, ein fallback auf $config['sess_table_name'] ist vorhanden, sonst aber erfordert, dass Sie Lesen Sie das Handbuch für die spezifischen Treiber Ihrer Wahl." Ich verstehe einfach nicht, was ich schreiben sollte in dieser variable. Können Sie mir einige Beispiele nennen ?
  • Ich habe noch nie gespielt mit, dass die Treiber, aber laut dem doc, Sie müssen nur legen Sie den relativen Pfad zu einem Ordner, wo Sie Ihre Sitzungen-Dateien gespeichert werden. Schau mal hier : codeigniter.com/user_guide/installation/upgrading.html . Frage, brauchst du wirklich diese ? Ich habe ein CI3-Projekt, und ich wusste nicht, ging durch diese Erwägungen in Bezug auf die Sitzungen.
  • ok werde ich versuchen ! Aber verwenden Sie Sitzungen in Ihrem CI3-Projekt ? Wenn ja, haben Sie versucht, die Zeit zu ändern, bevor die session vorbei ist ?
  • Ja Mach ich und ja ich habe Zeit, Ablauf und es funktioniert einwandfrei. FWIW, ich 'cookie' als sess_driver.
  • ich habe versucht zu setzen "cookie" anstelle von "Dateien" und er druckt mir eine Fehlermeldung in den logs ...
  • hier ist meine aktuelle config Datei auf meiner CI3-Projekt : pastebin.com/kbFTMZgv . Es-Datenbank verwendet, aber Sie können setzen Sie ihn auf false. Wenn das immer noch nicht funktionieren, könnte es sein, dass Sie etwas verpassen, während Sie Ihre migration.
  • Oh, ich vergaß, in Ihrer Frage, die Sie sagte, dass Ihre Sitzung läuft nach drei Stunden. Aber sind Sie sich bewusst, dass verfällt nach xx Zeit der Inaktivität ?
  • sorry für die noob mit diesem problem, ich weiß wirklich nicht verstehen, was hier passiert ... ich bin zum CI und ich habe nie den Kampf für die **** wie vorher ! Trotzdem vielen Dank für Ihre Geduld und um Ihre Datei auf pastebin ! Ich habe versucht, die gleiche conf, wie Sie es scheint, dass cookie wird nicht mehr unterstützt in CI-3 als sess_driver ... habe ich nicht verstanden, dein Satz : "Aber sind Sie sich bewusst, dass verfällt nach xx Zeit der Inaktivität ?" was meinst du ?
  • Thx!!! Du hast Recht, cookie nicht mehr gültig, da ich Datenbank, codeigniter eingeschaltet, um Datenbank-Treiber als cookie nicht vorhanden ist. Das ist eine schreckliche copy/paste Fehler habe ich hier gemacht. Auch, was ich meinte ist, dass codeigniter session speichert den Zeitstempel Ihrer letzten Aktivität. Das framework verwenden diese Informationen, um jeden berechnen $config['sess_time_to_update'] die neue Ablaufzeit.

InformationsquelleAutor maxime1992 | 2015-02-07
Schreibe einen Kommentar