場景:
提交時遇到錯誤表格,特別用於用戶註冊。錯誤訊息顯示「由於不活動,頁面已過期。請刷新並重試。」
根本原因:
此錯誤通常在CSRF 令牌驗證時出現失敗。假設您已在表單中包含 {{ csrf_field() }}。問題可能出在其他地方。
故障排除:
檢查會話驅動程式:
在config/session.php文件,確保會話驅動程式設定為“file”而不是「大批。」陣列驅動程式僅用於測試目的,不會保留會話數據,其中包括 CSRF 令牌。
驗證檔案儲存權限:
如果您的會話驅動程式設定為「檔案」,請驗證config/session.php 中的storage_path 是否具有寫入權限。這是儲存會話檔案的位置,其中包含令牌資訊。
檢查會話 Cookie:
查看 config/session.php檔案並確保正確配置 cookie 參數,例如網域和安全設定。如果您的開發環境未使用 HTTPS,請將 secure 參數設為 false。
查看CSRF 令牌處理:
檢查您的應用程式HTTP 中間件(/app/Http/Middleware/VerifyCsrfToken.php)驗證CSRF 令牌中間件是否應用於路由。如果停用此中間件,CSRF 令牌驗證將會失敗。
附加說明:
以上是為什麼我的 Laravel 5.5 註冊表中出現「頁面因不活動而已過期」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!