Vor einigen Tagen konnte ich auf meiner Prestashop-Plattform nicht auf das Admin-Panel meiner Website zugreifen. Nach Eingabe von Login und Passwort wurde ich erneut zur Login-Seite weitergeleitet und alles wiederholt.
Die Seite wird auf einem dedizierten Server gehostet, wo auch einige andere Prestashop-Seiten gehostet werden. Nach dem Versuch, auf diesen Sites auf das Admin-Panel zuzugreifen, bekomme ich den gleichen "Fehler".
Was denkst du, was ist das Problem?
Prestashop ver .: 1.4.7.3 und 1.4.8.2
Server: CentOs, PHP
Hier sind einige Dinge, die Sie ausprobieren können:
1 / Löschen Sie Ihren Browser-Cache und Ihre Cookies
2 / Verwenden Sie Firefox anstelle von Chrome (scheint einige unerwartete Probleme zu haben)
3 / Überprüfen Sie PS_SHOP_DOMAIN
und PS_SHOP_DOMAIN_SSL
in ps_configuration
table
4 / Smarty Cache manuell löschen : Entferne alle Dateien von tools/smarty/compile
und tools/smarty/cache
5 / Deaktiviere die IP-Prüfung in classes/Cookie.php
(dies kann viele Probleme mit der Dynamics IP verursachen):
in isLoggedBack()
, entferne oder kommentiere die vierte Bedingung:
AND (!isset($this->_content['remote_addr']) OR $this->_content['remote_addr'] == ip2long(Tools::getRemoteAddr()) OR !Configuration::get('PS_COOKIE_CHECKIP'))
6 / Verringern Sie die Ablaufzeit für Cookies (IE kann Probleme mit den längsten Cookies haben): in classes/Cookie.php
constructor,
set: $this->_expire = isset($expire) ? (int)($expire) : (time() + 3600);
anstelle von $this->_expire = isset($expire) ? (int)($expire) : (time() + 1728000);
Ich habe viel Zeit damit verbracht, das zu debuggen. Prestashop lokal auf meinem Computer installiert. Im folgenden Fall sollten Sie manuell zu folgendem navigieren:
%Vor%Ich hatte das gleiche Problem wie alle anderen.
Ich konnte mich über IE aber nicht über Firefox einloggen.
Um das Problem zu beheben, habe ich den Cookie-Manager aufgerufen und alle Cookies gelöscht.
Ich weiß, es klingt Klischee, aber nichts anderes hat funktioniert.
Ich suchte nach meinem Site-Namen und schaute auf den Cookie, der schon lange datiert war, aber nicht mehr aktiv war. Meine Vermutung war, dass ich den Cookie korrumpiert habe, oder vielleicht machen sie IP-Abgleich, weil ich mitten in der Verwendung des Admin-Panels zu meinem Handy-Browser wechselte, um etwas zu überprüfen. Bei der Rückkehr würde es nur die Anmeldeseite durchlaufen, kein Fehler.
Ich denke, sie müssen das Problem vom Standpunkt der Software aus beheben.
Unabhängig davon, nachdem ich alle Cookies gelöscht habe, die mit meiner Seite verbunden sind, habe ich kein Problem. Es behebt auch ein Problem, das ich mit www.mysite.com und mysite.com hatte. Ich habe mit dem technischen Support gesprochen, weil es manchmal funktioniert und manchmal nicht. Vielleicht speichert der Cookie auch, welche Variante von www / non für die dynamische Verknüpfung verwendet wurde. Mein DNS hatte Zeit zu lösen und der technische Support machte das verantwortlich, aber das war es nicht.
Löschen Sie nicht nur Cookies, sondern löschen Sie die Cookies für Ihre Website manuell. Wenn ich die klaren Cookies verwendete, löschte es nicht viele Cookies. Ich habe festgestellt, dass meine Seite nach den Cookies noch 9 Cookies gesetzt hat. Ob das mein Fehler oder etwas anderes war, werde ich nicht wissen.
Viel Glück an alle und danke für die anderen Vorschläge. Wenn es zurückkommt, gehe ich in die anderen Vorschläge und berichte zurück.
Das hat bei mir funktioniert: Setzen Sie im Kontrollfeld "Administration & gt; Einstellungen" die Option "Überprüfen Sie die IP-Adresse des Cookies" auf "Nein".
Ich benutze Prestashop 1.4.8.2 Ich habe gerade meine Login-Schleife im Backoffice debugged, indem ich admin / login.php ändere Entfernen Sie einfach scheinbar nutzlose Bedingungen im folgenden Code.
%Vor%Ändern Sie mit
%Vor%Ich habe auch den Cookie gelöscht und es hat funktioniert. Ich weiß nicht, ob es andere Sachen durcheinander bringt, aber ich kann endlich in mein Backoffice kommen. Frieden !!
Ich hatte das gleiche Problem nach dem Hinzufügen eines NGINX als Reverse-Proxy vor meinem Apache-Webserver.
Das Problem war vom Parameter « Überprüfen Sie die IP-Adresse des Cookies », der auf « ja » gesetzt ist. Da ich vom Admin gesperrt war und es nicht ändern konnte, habe ich es direkt in der Datenbank mit dieser SQL-Anfrage gemacht:
%Vor% PS: ps_
ist mein Tabellenpräfix, Sie können es an Ihre Einstellungen anpassen.
Es gibt einige mögliche Dinge, die passieren könnten, um zu verhindern, dass Ihre alten Passwörter funktionieren. Einer könnte sein, dass sich dein _COOKIE_KEY_ geändert hat.
Sie können versuchen, das folgende Skript zu verwenden, um einen neuen Passwort-Hash zu generieren. Sie können es dann in der Datenbank in der Tabelle xxxx_employee ersetzen (wobei xxxx_ Ihr Tabellenpräfix ist). Ich hoffe, das funktioniert für dich. In jedem Fall: eine Sicherungskopie Ihrer alten Hashes erstellen.
Hier ist das kleine Skript:
%Vor%Vergessen Sie nicht, das Skript von Ihrem Server zu entfernen, sobald Sie fertig sind!
Wenn Sie eine Arbeitswebsite haben, auf der Sie sich anmelden können. Vielleicht können Sie den Benutzer von der Arbeit in die Nicht-Arbeit kopieren und sehen, ob das funktioniert.
Ich weiß, dass das alt ist, aber es kann jemandem helfen, Fehler durch Öffnen von /config/config.inc.php zu aktivieren.
Suchen Sie nach der Zeile:
%Vor%ändere es zu:
%Vor%BEARBEITEN: einen scheinbaren Tippfehler geändert
Tags und Links redirect login prestashop admin