php - 启用 HTTPS 后 Laravel 5.7 @csrf 无法正常工作

标签 php laravel

最初我的 laravel 应用程序使用 HTTP 协议(protocol),然后我将协议(protocol)更改为 HTTPS。
不幸的是,现在我的应用程序登录不工作了。它显示我 419 错误,对不起,您的 session 已过期 .我尝试了几个建议的解决方案。
https://laracasts.com/discuss/channels/laravel/post-request-in-laravel-57-error-419-sorry-your-session-has-expired .

Laravel 419 Error - VerifyCsrfToken issue

Post request in Laravel 5.7 --- Error - 419 Sorry, your session has expired .

但这些都没有解决我的问题。

我正在使用 CRUDBooster 管理登录的插件。

路由.php。

/* ROUTER FOR WEB */
Route::group(['middleware' => ['web'], 'prefix' => config('crudbooster.ADMIN_PATH'), 'namespace' => $namespace], function () {

    Route::post('unlock-screen', ['uses' => 'AdminController@postUnlockScreen', 'as' => 'postUnlockScreen']);
    Route::get('lock-screen', ['uses' => 'AdminController@getLockscreen', 'as' => 'getLockScreen']);
    Route::post('forgot', ['uses' => 'AdminController@postForgot', 'as' => 'postForgot']);
    Route::get('forgot', ['uses' => 'AdminController@getForgot', 'as' => 'getForgot']);
    Route::post('register', ['uses' => 'AdminController@postRegister', 'as' => 'postRegister']);
    Route::get('register', ['uses' => 'AdminController@getRegister', 'as' => 'getRegister']);
    Route::get('logout', ['uses' => 'AdminController@getLogout', 'as' => 'getLogout']);
    Route::post('login', ['uses' => 'AdminController@postLogin', 'as' => 'postLogin']);
    Route::get('login', ['uses' => 'AdminController@getLogin', 'as' => 'getLogin']);
});  

我的表格
 <form autocomplete='off' action="{{ route('postLogin') }}" method="post">
    @csrf
        <!-- <input type="hidden" name="_token" value="{{ csrf_token() }}"/> -->
        <div class="form-group has-feedback">
            <input autocomplete='off' type="text" class="form-control" name='email' required placeholder="Email"/>
            <span class="glyphicon glyphicon-user form-control-feedback"></span>
        </div>
        <div class="form-group has-feedback">
            <input autocomplete='off' type="password" class="form-control" name='password' required placeholder="Password"/>
            <span class="glyphicon glyphicon-lock form-control-feedback"></span>
        </div>
        <div style="margin-bottom:10px" class='row'>
            <div class='col-xs-12'>
                <button type="submit" class="btn btn-primary btn-block btn-flat"><i class='fa fa-lock'></i> {{trans("crudbooster.button_sign_in")}}</button>
            </div>
        </div>

        <div class='row'>
            <div class='col-xs-12' align="center"><p style="padding:10px 0px 10px 0px">{{trans("crudbooster.text_forgot_password")}} <a
                            href='{{route("getForgot")}}'>{{trans("crudbooster.click_here")}}</a></p></div>
        </div>
    </form>. 

我附上了我的错误屏幕。
Error Screen

谁能帮我解决这个问题。

最佳答案

如果可以看到隐藏的 CSRF HTML 输入字段,请清除缓存数据:

php artisan cache:clear
php artisan view:clear
并重新生成一个新 key :
php artisan key:generate

关于php - 启用 HTTPS 后 Laravel 5.7 @csrf 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55007603/

相关文章:

php - php/mysql/wamp 中的 Cookie 和 session 问题

要包含的 PHP 传递变量

laravel - 为什么第一方客户端无法处理 Laravel Passport 上的 'authorization_code' 授权类型

javascript - jQuery TypeError : $(. ..).val(...) 为空

php - 第一方应用程序的 Laravel Passport 密码授予流程

php - Guzzle HTTP 请求从 POST 转换为 GET

javascript - 如何在没有提交按钮的情况下提交 “file” 输入,然后在同一脚本中执行 mysql 更新

php - 什么时候在 Laravel 中使用 Repository vs Service vs Trait?

php - Laravel 5.1 数据库按几列排序

laravel - 在 Laravel 5.4 中保存模型后出现 cURL 错误 3 : <url> malformed (see http://curl. haxx.se/libcurl/c/libcurl-errors.html) 错误