【发布时间】:2017-06-12 23:21:11
【问题描述】:
我在 Laravel 中的登录页面有问题。当我运行我的项目php artisan serve 时,我已经成功登录localhost:8000/login。
但是,如果我调用 localhost/project/login,我会在 VerifyCsrfToken.php 中得到一个 TokenMismatchException。
我的登录表单如下所示。
<head>
<meta name="csrf-token" content="{{ csrf_token() }}">
...
</head>
<body>
<form method="post" action="{{ url('/login') }}">
{!! csrf_field() !!}
...
</form>
</body>
我该如何解决这个问题?谢谢。
【问题讨论】:
-
你能分享你文件的sn-ps吗?而且,您是从 JS 发出登录请求吗?如果没有,则不需要 meta csrf-token
-
我添加了sn-p。我在表格上发布请求。
-
运行
php artisan config:cache。或检查您的 php 版本。如果你运行php artisan serve,它将运行 php-cli 版本。如果您从 apache 运行,请创建一个文件info.php并添加此行,请检查phpinfo();。 -
@vũ-tuấn-anh 谢谢,但它不起作用。
-
其实
php artisan serve命令和你的apache没什么区别。只检查 php 版本并确保YOU NOT INSTALL MULTI PHP VERSIONS。正如我所说,php artisan将从路径环境获取的 php 二进制文件中运行。但 apache 可能不同。
标签: php laravel csrf laravel-5.3