Zend Framework rememberMe() scheint nicht daran zu erinnern, mich
Meine session scheint nur gültig im aktuellen Fenster/tab. Auch scheint es zu timeout-schnell. Heres, wie ich bin derzeit versuchen, es zu tun:
Dies ist in meinem login-controller:
$adapter = $this->getAuthAdapter($data);
$auth = Zend_Auth::getInstance();
$result = $auth->authenticate($adapter);
if (!$result->isValid()) {
$this->view->err = "Invalid username or password.<br/>Please try again.";
return $this->render('index'); //re-render the login form
}
Zend_Session::rememberMe(60*60*24*7*4);
- Und dies ist in meiner bootstrap:
Zend_Session::start();
Ich bin relativ neu auf einige dieser Sachen, so mit mir tragen! Jegliche Hilfe würde sehr geschätzt werden.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier ist das, was passiert war. Diese Webseite wurde auf einem server teilen sich eine sessions-Ordner mit einer anderen website auf dem server. Obwohl ich erhöhte die Lebensdauer der Sitzung mit ini_set, meine Sitzungen waren immer noch gelöscht werden, indem Sie die andere Anwendung.
Um dieses Problem zu lösen habe ich einfach die Sitzung.save_path in einen neuen Ordner. Problem gelöst!
Ich möchte nur hinzufügen, dass Sie der Sitzung ändern.save_path in der .htaccess mit der Zeile Folgen, damit es funktioniert. Ich sah die Antwort dachte, ich änderte es in der .ini, aber es ist in der .htaccess.
Beispiel:
Suche durch die Quelle für zend_session, die rememberMe () - Methode ruft rememberUntil() die Aufrufe der eingebauten php-Methode session_set_cookie_params()
So möchten Sie vielleicht überprüfen Sie Ihre php.ini-Werte für Sitzung.cookie_lifetime. Wenn es nicht 0, dann Zend_Session::rememberMe() wäre nutzlos, es sei denn, der Wert ist weniger als Sitzung.cookie_lifetime. In dem Fall würden Sie wollen, um es zu 0 in beiden php.ini oder in Ihrer Anwendung mit ini_set (), wie dies in dem ersten Kommentar auf der Sitzung.cookie_lifetime Mann Seite.