419 - 会话在部署后没有事件验证的情况下过期 | Laravel 5.7

419 - Session Expired without event authentication after deployment | Laravel 5.7

我的 Laravel 应用程序在我的本地计算机和临时服务器上运行良好。但是当我部署到我的生产服务器时,登录表单不起作用。每次我尝试登录管理面板时,它都会显示我的

419

Sorry, your session has expired. Please refresh and try again.

我的头像标签包含 <meta name="csrf-token" content="XXX">

我的登录表单包含 <input type="hidden" name="_token" value="XXX">

到目前为止我尝试了什么:

唯一能用但不安全且用于调试目的的东西

VerifyCsrfToken class 中,我在 protected $except 中添加了 "api/login" & "api/register" 并且表单有效。像这样


namespace FleetCart\Http\Middleware;

use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as BaseVerifier;

class VerifyCsrfToken extends BaseVerifier
{
    /**
     * The URIs that should be excluded from CSRF verification.
     *
     * @var array
     */
    protected $except = [
        "api/login",
        "api/register"
    ];
}

请帮助我了解如何解决此问题。

提前致谢。

终于在花了 3 天后找到了解决方案。

@Snapey 帮我解决了这个问题。

你可以在这里看到答案:https://laracasts.com/discuss/channels/laravel/419-session-expired-without-event-authentication-after-deployment-laravel-57

在我的例子中,在开始 <?php 标签之前有一个额外的 space。