我正在使用laravel 5创建Web应用程序。 完成应用程序后,我上传了应用程序,但我收到此错误(它在localhost中工作) VerifyCsrfToken.php第67行中的TokenMismatchException
我在网上搜索并找到了很多答案 着名的
我的文件已经有了。 它在localhost中工作100%正常,并且在我上传它之后无法工作,因此建议的解决方案无效。
我已经检查了env文件,会话文件,但一切似乎都没问题但是没有一个表单似乎正在工作或给出相同的错误 即使缓存,会话文件夹也有正确的权限。
所以,我不知道该怎么做。
我应该在哪里提出建议?
编辑: 我禁用CSRF作为临时措施,但我被重定向到登录页面(没有重定向到正确的页面)
答案 0 :(得分:0)
在{{ csrf_field() }}
<form>
有关详细信息,请访问here
开,服务器:
将session.php中的键值编辑为secure => false
&amp; 'http_only' => true
。另外,检查会话驱动程序是否为“file”,如果是cookie,则更改为“file”,反之亦然。
另外,使用以下内容重新生成您的应用密钥:php artisan key:generate
看,如果有效。
答案 1 :(得分:0)
在2天的无知之后,我已经能够解决它了。 问题是: cookie没有被写入,因为每个查询都创建了新的会话ID。
为什么没有编写cookie
在关闭其中一个配置文件的标签后,有一些愚蠢的空白区域。(不是之前但之后?&gt;) 可能是因为那已经发送了#34;标题已经发送了#34;错误(但显示在错误日志中)
无论如何都删除了那些空白区域,它们都在工作但是看着每个搜索空格的文件都很乏味......
答案 2 :(得分:0)
如果您使用https,请确保启用了安全会话cookie。否则,您的浏览器将不会读取Cookie。它在本地有效,因为您使用的是http环境。
答案 3 :(得分:0)
我能够通过生成一个新的应用程序密钥并运行Sandeesh注释中列出的缓存清除命令来解决此问题。
php artisan key:generate
php artisan config:clear
php artisan route:clear
php artisan view:clear
php artisan clear-compiled