“页面因不活动而过期” \- Laravel 5.5

新手上路,请多包涵

我的注册页面正确显示了表单,表单中存在 CsrfToken ( {{ csrf_field() }} )。

表单 HTML

 <form class="form-horizontal registration-form" novalidate method="POST" action="{{ route('register') }}">
        {{ csrf_field() }}
        ....
</form>

我正在为用户使用内置身份验证。除了路由和重定向之外,没有改变任何东西。

当我提交表单时(也只是在重新加载之后),它给出了 该页面由于不活动而过期。请刷新并重试。 错误。

我是我错过了一件非常小的事情。但不确定它是什么。有什么帮助吗?

更新

发现问题。会话驱动程序设置为数组。将其更改为文件,现在错误消失了。但是如果我使用数组有什么问题?

原文由 Sougata Bose 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 376
2 个回答

如果您直接从搜索中得到这个答案,请确保您已经使用 {{ csrf_field() }} 将 csrf 令牌添加到您的表单中,就像 OP 一样。


如果您将会话驱动程序设置为文件:

可能与 storage_path 不可写有关。如果您使用基于文件的会话,它会在此处存储有关令牌的会话数据。可以通过 is_writable(config('session.files')) 进行验证


对于 OP,会话驱动程序设置为数组。 数组仅用于测试。由于数据没有被持久化,它将无法在下一次请求时比较令牌。

阵列驱动程序在测试期间使用,并防止存储在会话中的数据被持久化。

https://laravel.com/docs/5.5/session#configuration


检查 config/session.php

最后,我刚刚遇到的一个问题是,我们有一个项目,它在 config/session.php 中有会话域和安全设置,但开发站点没有使用 HTTPS (SSL/TLS)。这导致了这个一般错误,因为 session.secure 默认设置为 true。

原文由 Devon 发布,翻译遵循 CC BY-SA 4.0 许可协议

登录以连接到服务器。

搜索错误

发生错误:search false 你没有豌豆。

搜索请求更长。

原文由 benjamin miller 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题