Szenario:
Beim Absenden tritt ein Fehler auf ein Formular, insbesondere zur Benutzerregistrierung. Die Fehlermeldung lautet „Die Seite ist aufgrund von Inaktivität abgelaufen. Bitte aktualisieren Sie sie und versuchen Sie es erneut.“
Ursache:
Dieser Fehler tritt normalerweise bei der CSRF-Token-Validierung auf scheitert. Nehmen wir an, Sie haben {{ csrf_field() }} bereits in Ihr Formular eingefügt. Das Problem könnte woanders liegen.
Fehlerbehebung:
Überprüfen Sie den Sitzungstreiber:
In Stellen Sie in der Datei config/session.php sicher, dass der Sitzungstreiber auf „Datei“ und nicht auf „Array“ eingestellt ist. Der Array-Treiber dient nur zu Testzwecken und speichert keine Sitzungsdaten, einschließlich des CSRF-Tokens.
Dateispeicherberechtigungen überprüfen:
Wenn Ihr Sitzungstreiber auf „Datei“ eingestellt ist, überprüfen Sie, ob der Speicherpfad in config/session.php über Schreibberechtigungen verfügt. Hier werden die Sitzungsdateien gespeichert, die die Token-Informationen enthalten.
Sitzungscookies prüfen:
Überprüfen Sie die config/session.php Datei und stellen Sie sicher, dass die Cookie-Parameter ordnungsgemäß konfiguriert sind, wie z. B. die Domäne und sichere Einstellungen. Wenn Ihre Entwicklungsumgebung kein HTTPS verwendet, setzen Sie den sicheren Parameter auf „false“.
Überprüfen Sie die Handhabung von CSRF-Token:
Überprüfen Sie die HTTP-Middleware Ihrer Anwendung (/app/Http/Middleware/VerifyCsrfToken.php), um zu überprüfen, ob die CSRF-Token-Middleware auf die Route angewendet wird. Wenn diese Middleware deaktiviert ist, schlägt die CSRF-Token-Validierung fehl.
Zusätzliche Hinweise:
Das obige ist der detaillierte Inhalt vonWarum erhalte ich in meinem Laravel 5.5-Registrierungsformular die Fehlermeldung „Die Seite ist aufgrund von Inaktivität abgelaufen'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!