it-swarm.com.de

Joomla vergisst die Sitzung (Cookie) direkt nach dem Login

Ich versuche derzeit, eine Joomla-Site auf einen anderen Host zu verschieben. Zum Testen habe ich ein Duplikat der Site mit einer anderen Domain erstellt (ich weiß nicht, ob dies etwas mit meinem Problem zu tun hat).

Das Problem ist, dass ich mich nicht mehr anmelden kann. Das Administrator-Login (/ Administrator) funktioniert einwandfrei, aber ich kann mich nicht mit dem Login-Formular auf der Joomla-Site selbst anmelden. Ich gebe meine Anmeldeinformationen korrekt ein, aber dann leitet Joomla mich zurück zur Anmeldeseite.

Ich habe in der Datenbank in die Sitzungstabelle geschaut und es gibt einen Eintrag mit meinem Benutzernamen. Aber auch jetzt gibt es einen weiteren Gasteintrag mit dem gleichen sessionId wie das Cookie in meinem Browser.

Wenn ich im Anmeldeformular "Anmelden merken" aktiviere, kann ich mich anmelden. Aber jedes Mal, wenn ich eine Seite meiner Joomla-Site lade, wird eine neue Sitzung in der Datenbank erstellt (weil Joomla meine Sitzung jedes Mal "vergisst" und das "Erinnere mich" jedes Mal eine neue Sitzung für mich erstellt, denke ich). Und ich kann mich dann nicht mehr abmelden.

Hat jemand eine Idee, wo das Problem liegt und was ich tun kann? Übrigens bin ich sehr neu in Joomla (ich muss eine bestehende Seite pflegen). Wir verwenden Joomla 3.7.3 und PHP 5.6.40 (Ich kann nicht aktualisieren, da mein Vorgänger zu viele Anpassungen vorgenommen hat. Derzeit erstelle ich eine komplett neue Website).

1
Sumafu

Ich habe das Problem selbst behoben. Leider war es sogar mein eigener Fehler, Sie hätten keine Lösung finden können. Ich greife nicht direkt auf die Joomla-Site zu, aber davor befindet sich ein HTTP-Gateway. Das Problem war, dass Joomla zwei "Set-Cookie" -Header in der Login-Antwort sendet, aber mein Gateway sie zusammenführt und nur den zweiten an den Browser zurücksendet. Nachdem ich den Code so geändert habe, dass er mehrere http-Header mit demselben Schlüssel verarbeiten kann, funktioniert die Anmeldung einwandfrei.

2
Sumafu

Zwei Vorschläge.

1 - Verschieben Sie die Site mithilfe von Akeeba Backup auf den anderen Host. Dies ist einfacher und es ist weniger wahrscheinlich, dass Sie während des Vorgangs Fehler machen. https://www.akeebabackup.com/

2- Verwenden Sie PHP 7.2.x. Auch diese Joomla-Erwähnung PHP 5 als Minimum, PHP 7 wird empfohlen und ja Sie müssen Ihre Site auf die neueste Joomla 3-Version aktualisieren. Normalerweise sollten die von Ihnen erwähnten Anpassungen kein Problem darstellen, sobald er/sie die Joomla-Kerndateien nicht berührt hat.

Viel Glück!

0
Alvin Konda

Unter dem Menüpunkt "Globale Konfigurationseinstellungen" und der Registerkarte "Site" befindet sich in den "Cookie-Einstellungen" oder "Cookie-Pfad" ein Wert, der in diesem Fall die Domäne widerspiegelt, in die Sie die Joomla-Site kopiert haben.

Beide Felder können leer sein und ich denke, dies ist heutzutage die Empfehlung.

0
Irata