【发布时间】:2019-12-26 03:51:06
【问题描述】:
我正在运行 laravel 5.7,我将会话更改为数据库。我做了make:auth 并尝试注册并得到一个错误页面
“页面因不活动而过期。请刷新并重试”
我已经在这里待了几天了。我将 /register 添加到 except 数组以绕过验证令牌并能够注册。现在我正在尝试登录并遇到同样的问题。我已经**清除缓存,检查设置,切换回文件,尝试其他浏览器,验证令牌在表单中,确保它在标题中,确保它被通过但仍然没有。我将此添加到异常中的 Handler 类中:
if ($exception instanceof \Illuminate\Session\TokenMismatchException) {
return redirect()->back()->with('error_message',"Oops! Seems there was an error with login. Please try again or contact us.");
}
这让我相信令牌不匹配,因为它重定向而不是转到损坏的页面。我已经阅读了我认为互联网上的每一篇文章,但无法弄清楚这一点。我的下一个选择是从新安装开始,除非有人知道是什么原因造成的?
这是在我的本地。我还没有将任何东西投入生产。
编辑添加表单:
{!! Form::open(['route' => 'login', 'method' => 'post']) !!}
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<label for="email" class="col-md-4 control-label">E-Mail Address</label>
<div class="col-md-12">
<input id="email" type="email" class="form-control" name="email" value="{{ old('email') }}" required autofocus>
@if ($errors->has('email'))
<span class="help-block">
<strong>{{ $errors->first('email') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">
<label for="password" class="col-md-4 control-label">Password</label>
<div class="col-md-12">
<input id="password" type="password" class="form-control" name="password" required>
@if ($errors->has('password'))
<span class="help-block">
<strong>{{ $errors->first('password') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group">
<div class="col-md-6 offset-md-4">
<div class="checkbox">
<label>
<input type="checkbox" name="remember" {{ old('remember') ? 'checked' : '' }}> Remember Me
</label>
</div>
</div>
</div>
<div class="form-group">
<div class="col-md-8 offset-md-4">
<button type="submit" class="btn btn-primary">Login </button>
<a class="btn btn-link" href="{{ route('password.request') }}">
Forgot Your Password?
</a>
</div>
</div>
{!! Form::close() !!}
【问题讨论】:
-
您能否发布显示您尝试提交的表单的代码?以及你得到的确切错误?谢谢。
-
确保您的
storage/framework/sessions文件夹是可写的,并尝试清除您的浏览器 cookie 以获得您的本地 url。 -
@PA-GW 按要求添加了表单
-
@DevinNorgarb 是的,会话文件夹是可写的,我还在代码中检查了它并验证它是可写的。
-
你在哪里实现 csrf?
标签: laravel csrf laravel-5.7