laravel 5.7.15 419 抱歉,您的会话已过期。请刷新并重试
Posted
技术标签:
【中文标题】laravel 5.7.15 419 抱歉,您的会话已过期。请刷新并重试【英文标题】:laravel 5.7.15 419 Sorry, your session has expired. Please refresh and try again 【发布时间】:2019-05-05 15:50:40 【问题描述】:您好,我正在使用 laravel 5.7.15 我面临问题
<form method="post" action="my_post_Action" class="login100-form validate-form">
<input type="hidden" name="_token" value="B6et9cJOP5wNKodCPgCbAafDjpA5EMcRaaJhEJ9F">
<span class="login100-form-title">
Admin Login
</span>
<div class="wrap-input100 validate-input" data-validate="Valid email is required: ex@abc.xyz">
<input class="input100" type="text" name="email" placeholder="Email">
<span class="focus-input100"></span>
<span class="symbol-input100">
<i class="fa fa-envelope" aria-hidden="true"></i>
</span>
</div>
<div class="wrap-input100 validate-input" data-validate="Password is required">
<input class="input100" type="password" name="password" placeholder="Password">
<span class="focus-input100"></span>
<span class="symbol-input100">
<i class="fa fa-lock" aria-hidden="true"></i>
</span>
</div>
<div class="container-login100-form-btn">
<button class="login100-form-btn">
Login
</button>
</div>
</form>
这是我的代码
我不知道是什么错误
如果我评论 csrf
验证表 kernal.php
则这是我的登录路径
任何帮助提前谢谢..
【问题讨论】:
清除您的 composer catch 和 php artisan config:clear 和 php artisan config:catch 然后再次登录并尝试 实际上我在 cpanel 服务器上,我必须手动上传文件,我已经在本地完成并再次上传所有文件并遇到同样的问题。 Route::get('/clear-cache', function() $exitCode = Artisan::call('cache:clear'); // 返回你想要的 );跨度> 感谢这段有用的代码,但不幸的是它不起作用:( 你的php版本是什么 【参考方案1】:我遇到了同样的问题,我通过在表单中添加 @csrf 解决了我的问题
点赞:
<form method="post" action=".....">
@csrf
.....
</form>
【讨论】:
【参考方案2】:确保您在表单中添加了 @csrf 或 csrf_field() 。
<form method="post" action=" url('your route here') ">
@csrf
</form>
【讨论】:
【参考方案3】:以防万一,当没有其他解决方案有效时,您可以在此处将您的页面名称添加到页面的白名单中不会通过 CSRF 进行检查的页面。
不用说,必须记住,您将删除此安全检查,请根据您自己的标准明智地使用它
你可以在这里找到它:app/Http/Middleware/VerifyCsrfToken.php
/**
* The URIs that should be excluded from CSRF verification.
*
* @var array
*/
protected $except = [
'/nameofpagetobeexcluded','/anotherpagetobeexcludedfromthischeck'
];
【讨论】:
【参考方案4】:每当您在应用程序中定义 html 表单时,您应该在表单中包含一个隐藏的 CSRF 令牌字段,以便 CSRF 保护中间件可以验证请求。
在标记后尝试@csrf
。
【讨论】:
【参考方案5】:对于./storage/framework/sessions
,您还必须将chmod
设置为757
。
它对我有帮助,现在工作正常,没有错误419
。
【讨论】:
【参考方案6】:我没有真正得到我尝试过所有解决方案的问题 但我必须安装新的 Laravel 并且必须手动移动我所有的控制器、路由和视图以解决这个问题 真的感谢你们所有人 :)
【讨论】:
有史以来最糟糕的解决方案 根本没有解决办法?! 其实需要重新安装laravel然后我替换app路由并查看文件夹【参考方案7】:确保您用力刷新页面;同时清除缓存:
php 工匠缓存:清除
确保您对日志文件夹具有正确的权限:
chmod -R 755 存储/日志
确保为您的应用程序生成密钥:
php 工匠密钥:生成
检查在使用 post 和 CSRF 时,您是否有 web
中间件组包裹您的路由;
我用那个解决了我的问题!希望能帮助到你! :D
【讨论】:
【参考方案8】:只有一次?只需删除文件夹 storage/framework/cache/data
【讨论】:
你能确认你在你的路线上使用post吗【参考方案9】:尝试将@csrf
放在<form>
标签的底部
【讨论】:
它在两天前工作正常我只是更新作曲家然后发生这种情况:( 你找到答案了吗:我觉得你的问题看起来一样:***.com/questions/52583886/… 是的,我已经看到并实施所有仍然存在问题的答案 先尝试composer dump-autoload
其实我在cpanel服务器上:(以上是关于laravel 5.7.15 419 抱歉,您的会话已过期。请刷新并重试的主要内容,如果未能解决你的问题,请参考以下文章
“抱歉,我们目前无法完成您的购买” - PayPal Laravel 集成