leider habe ich zu folgendem Verhalten nichts gefunden.
Ich melde mich an (Login Box oder normaler Login), klicke auf einen beliebigen Link und klicke dann im Browser zurück. Im Firefox kommt “Dokument erloschen” und im IE “Die Webseite ist abgelaufen”. Das passiert auch, wenn ich im Warenkorb einen Artikel entferne, weiter klicke und dann zurück gehe.
Mir ist klar, daß das an den abgesendeten Formulardaten liegt, aber für einen Benutzer des Shops finde ich dieses Verhalten nicht besonders gut.
Bei xt:commerce konnte man das abstellen, indem man in application_top.php folgendes hinzugefügt hat:
if(isset($_GET[‘action’]) || isset($_POST[‘action’])) {
header(“Expires: " . gmdate(“D, d M Y H:i:s”, time() + 900) .” GMT");
header(“Last-Modified: " . gmdate(“D, d M Y H:i:s”, getlastmod()) .” GMT");
header(“Cache-Control: public, max-age=900”);
}
Wo füge ich das bei Oxid am besten hinzu? Gibt es bei allen Formularen einen gemeinsamen Post Parameter über den man die oberen header Informationen ausgeben kann?
Ganz ehrlich: Ich halte die von Dir gepostete Lösung im XTC für äußerst problematisch und sichheitsbedenklich. Wenn jemand herausbekommt, dass das mit einem OXID funktioniert, bin ich ein Bier auf dem nächsten Treffen schuldig.
Ich hab die Stelle gefunden und es probiert. Die Meldung kommt dann nicht mehr.
Kannst Du nur kurz beschreiben warum das sicherheitstechnisch ein Problem ist?
Die bessere Lösung wäre wohl ein redirect!?
Und auch bitte nicht falsch verstehen. Was ich bisher von Oxid gesehen habe gefällt mir prima und ist in keinster Weise mit dem alten xtc vergleichbar. Nur bei Magento konnte ich das Verhalten bei Zurück im Browser und “Dokument erloschen” auch nicht beobachten. Ich würde mir wünschen, daß das bei Oxid auch umgangen wird, wenn möglich :).
weiter oben steht, wie sich das beheben lässt. Im Prinzip wird die Session nur um ein paar Minuten verlängert aber ich denke, das ist ein ganz dreckiger Hack. Staune eigentlich, dass so etwas im Shop überhaupt möglich ist. Wir sind noch dran.