CodeIgniter Session Expire in der Config-Datei
Arbeite ich auf CodeIgniter-framework.
Was ich will, ist, um die Sitzung ablaufende Zeit von der Website bis 3 Stunden dh (3600*3=10800 Sekunden).
Aber wenn ich die $config['sess_expiration'] = 10800;
im config.php, dass die session immer abgelaufen innerhalb von rund 30 Minuten und wird weitergeleitet auf die login-Seite.
Warum ist das passiert?
Diese sind einige meiner session-Einstellungen in config
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 10800;
$config['sess_encrypt_cookie'] = FALSE;
$config['sess_use_database'] = TRUE;
$config['sess_table_name'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update'] = 300;
- Dank Colin für die Bearbeitung von Frage richtig.
- Ist jemand an diesem Thema interessiert?
- sind Sie mit Datenbank für die session?
- ja, ich bin mit Datenbank auch
- ich habe versucht mit der Einstellung "session ablaufen schließen" auf "TRUE" und gab $config['sess_expiration'] = 10; und itwas dann für 10 Sekunden, aber wenn ich 10800 Sekunden itgetsexpired innerhalb von 30 Minuten
- TRUE;
- Kannst du mehr Variablen? alle sess_ lieben.
- ja bearbeitet die Frage @tpae
- haben Sie die Datenbank für ci_sessions auch?
- Ich bin da nicht so sicher.
- Was könnte hier das Problem?
- siehe unten meine Antwort
- Ich machte ein paar änderungen an meiner Antwort. bitte überprüfen Sie es. danke!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Stellen Sie sicher, dass die ci_sessions Tabelle in Ihrer Datenbank.
EDIT: auch, stellen Sie sicher, dass Sie keinen $_SESSION versus $this->session->set_userdata($array);
Link: http://codeigniter.com/user_guide/libraries/sessions.html
Überprüfen Sie den code wie folgt:
Überprüfen Sie Ihre Konfiguration
session.gc_lifetime
imphp.ini
.Per default ist 1440 oder 24 Minuten. Dies bedeutet, dass wenn der PHP-garbage-collector läuft (es tut dies mit einem konfigurierten Wahrscheinlichkeit auf jedem pageload), alle Sitzungen, die älter als 24 Minuten geräumt werden, über die
gc()
Funktion in Ihre CodeIgniter session-Treiber.