Unbekannter CSRF Token Error

Hallo zusammen, 

seit einigen Tagen haben wir vermehrt den Fehler “Ups, ein Fehler ist aufgetreten …”. Aus unserem Error Log konnte ich folgende Fehlermeldung abfangen. Leider kann ich daraus nicht schließen, wieso dieser Fehler immerzu auftritt. Hat jemand eine Idee? Den Cache habe ich komplett über Einstellungen / Cache-Performance / Alle felder angehakt / geleert.

Der Fehler tritt beim Bestellvorgang auf, manchmal auch wenn ich ein Artikel in den Warenkorb lege, machmal auf dem Weg zur Kasse. Wenn man die Seite zurück geht und es erneut versucht, klappt es. Der Token kann aber zeittechnisch nicht abgelaufen sein, da die Bestellung in einem Rutsch getätigt wird. Was könnte es noch sein?

–––

 

Das war eine Fehlermeldung kurz zuvor:

–––

 

 

PS: wir haben Shopware 5.2.18 laufen und alle Plugins auf dem neuesten Stand.

Guckst du:

 

ÖHM, das beschreibt doch aber garnicht mein Problem oder hängt das alles damit zusammen?
GitHub ist mir nicht geläufig. Soll ich diese Anpassungen nun in den Dateien vornehmen oder besser nicht? 

Das ist das aktuelle Problem, dass die Sessions ablaufen und dann gibt es diese häßliche Fehlermeldung. Wie häufig kommt dieser Fehler bei Dir vor?

In jeder Bestellung mindestens an einer Stelle.
Es gelingt nur selten, eine Bestellung ohne diese Fehlermeldung bis zum Ende zu führen. 

@ELL schrieb:

In jeder Bestellung mindestens an einer Stelle.
Es gelingt nur selten, eine Bestellung ohne diese Fehlermeldung bis zum Ende zu führen. 

CSFR über die config.php deaktivieren ist der einzige Weg, dies zuverlässig zu verhindern. Es ist auch nicht richtig, dass ein Ablauf der Session aufgrund zu langer Inaktivität im Frontend dies in allen Fällen verursacht. Das kann natürlich ein Grund sein. 

Der Fehler tritt oft auf, wenn es zu state changes kommt und der dann von Shopware erwartete Token nicht in deinem Frontend steht - im Checkout-Verlauf. Ich sehe es leider öfters und kann keine Korrelation zwischen Server-OS, Server-Leistung, Sitzungsdauer feststellen. Der ganze Checkout funktioniert im Test und testet man später noch einmal, tritt der Token Fehler auf. 

 

1 Like

Für alle die auch von diesem Fehler betroffen sind und bis zum nächsten Update eine schnelle Lösung brauchen. So kann man vorübergehend die CSFR Prüfung deaktivieren:

01. config.php von Shopware bearbeiten (liegt im Stammverzeichnis eures FTP). 
Wenn ihr daran keine Veränderungen vorgenommen habt, sollte diese so aussehen:

  array (
    'host' => 'XXXXXX',
    'port' => 'XXXXXX',
    'username' => 'XXXXXX',
    'password' => 'XXXXXX',
    'dbname' => 'XXXXXX',
  ),
);

02. Um die Prüfung zu deaktivieren müsst ihr folgende Zeile hinzufügen: ‘csrfProtection’ => [‘frontend’ => false, ‘backend’ => false],

  array (
    'host' => 'XXXXXX',
    'port' => 'XXXXXX',
    'username' => 'XXXXXX',
    'password' => 'XXXXXX',
    'dbname' => 'XXXXXX',
  ),
'csrfProtection' => ['frontend' => false, 'backend' => false],
);

Die “XXXXXX” stehen natürlich für eure individuellen Zugangsdaten.