Php #laravel 419错误出现任何形式的提交此问题仅在GoDaddy主机上其他主机应用程序工作正常 这是我所面临的419错误模式 登录应用程序 注销 再次登录 再次注销时出现419错误

Php #laravel 419错误出现任何形式的提交此问题仅在GoDaddy主机上其他主机应用程序工作正常 这是我所面临的419错误模式 登录应用程序 注销 再次登录 再次注销时出现419错误,php,laravel,security,web,web-hosting,Php,Laravel,Security,Web,Web Hosting,登录后,当我点击任何链接(即呼叫路线)419时,尤其是当我试图删除任何记录时,出现此错误,根据我在此错误期间的发现,我意识到在会话中的每个表单提交令牌存储都已更新,但在表单提交请求中作为隐藏字段传递的令牌不是更新,这是令牌不匹配的原因 我是怎么解决这个问题的? 当前我使用的是laravel 5.7.28版本,我在其他共享主机应用程序上尝试了相同的应用程序,效果很好。我只在GoDaddy主机上遇到了419 以下是我为解决问题而采取的步骤,但并未取得丰硕成果 1. 我评论说 //

登录后,当我点击任何链接(即呼叫路线)419时,尤其是当我试图删除任何记录时,出现此错误,根据我在此错误期间的发现,我意识到在会话中的每个表单提交令牌存储都已更新,但在表单提交请求中作为隐藏字段传递的令牌不是更新,这是令牌不匹配的原因

我是怎么解决这个问题的?

当前我使用的是laravel 5.7.28版本,我在其他共享主机应用程序上尝试了相同的应用程序,效果很好。
我只在GoDaddy主机上遇到了419 以下是我为解决问题而采取的步骤,但并未取得丰硕成果

1. 我评论说

    //      \App\Http\Middleware\VerifyCsrfToken::class,

\app\Http\Kernel.php

    APP_NAME=Laravel
    APP_ENV=local
    APP_KEY=base64:8NYbcWPkEaj5oVHEGBWxCaFVsQhkgA/OOZyFPBiDMYQ=
    APP_DEBUG=true
    APP_URL=http://localhost
    
    LOG_CHANNEL=stack
    
    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=ltcsar
    DB_USERNAME=root
    DB_PASSWORD=
    
    BROADCAST_DRIVER=log
    CACHE_DRIVER=file
    QUEUE_CONNECTION=sync
    SESSION_DRIVER=file
    SESSION_LIFETIME=120
    
    REDIS_HOST=127.0.0.1
    REDIS_PASSWORD=null
    REDIS_PORT=6379+
    
    MAIL_DRIVER=smtp
    MAIL_HOST=smtp.mailtrap.io
    MAIL_PORT=2525
    MAIL_USERNAME=null
    MAIL_PASSWORD=null
    MAIL_ENCRYPTION=null
    
    PUSHER_APP_ID=
    PUSHER_APP_KEY=
    PUSHER_APP_SECRET=
    PUSHER_APP_CLUSTER=mt1
    
    MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
    MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

从kernel.php 419错误消失,但在登录后,当我点击登录屏幕上重定向的任何链接时,这样做意味着会话被破坏

2. 我还重新生成应用程序密钥

    APP_KEY=base64:8NYbcWPkEaj5oVHEGBWxCaFVHQhkgA/OOZyFPBiDMYQ=

3. 在session.php文件中

    'http_only' => false,

4. 会话在storage/framework/session.php中正确地编写了故事,我分配了权限777

5. 在这里输入代码

然后我尝试手动调试会话

    vendor/laravel/framework/src/Illuminate\Foundation\Http\Middleware


但表单submission$request中的令牌存储保持不变/静态不更改/更新


这实际上是令牌不匹配的原因,它以错误419的形式引发异常

6.
在每个表单上正确使用@scrf令牌,我还替换了{{csrf_field()}}


7. 同时运行composer update命令

8. 在其他浏览器上运行应用程序

9 点评

    //      \App\Http\Middleware\VerifyCsrfToken::class,

\app\Http\Kernel.php

    APP_NAME=Laravel
    APP_ENV=local
    APP_KEY=base64:8NYbcWPkEaj5oVHEGBWxCaFVsQhkgA/OOZyFPBiDMYQ=
    APP_DEBUG=true
    APP_URL=http://localhost
    
    LOG_CHANNEL=stack
    
    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=ltcsar
    DB_USERNAME=root
    DB_PASSWORD=
    
    BROADCAST_DRIVER=log
    CACHE_DRIVER=file
    QUEUE_CONNECTION=sync
    SESSION_DRIVER=file
    SESSION_LIFETIME=120
    
    REDIS_HOST=127.0.0.1
    REDIS_PASSWORD=null
    REDIS_PORT=6379+
    
    MAIL_DRIVER=smtp
    MAIL_HOST=smtp.mailtrap.io
    MAIL_PORT=2525
    MAIL_USERNAME=null
    MAIL_PASSWORD=null
    MAIL_ENCRYPTION=null
    
    PUSHER_APP_ID=
    PUSHER_APP_KEY=
    PUSHER_APP_SECRET=
    PUSHER_APP_CLUSTER=mt1
    
    MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
    MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

当我提交上述文件时,419消失了,但当我点击任何被破坏的链接会话时,注销并返回登录页面 点评

    //      \App\Http\Middleware\VerifyCsrfToken::class,

\app\Http\Kernel.php

    APP_NAME=Laravel
    APP_ENV=local
    APP_KEY=base64:8NYbcWPkEaj5oVHEGBWxCaFVsQhkgA/OOZyFPBiDMYQ=
    APP_DEBUG=true
    APP_URL=http://localhost
    
    LOG_CHANNEL=stack
    
    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=ltcsar
    DB_USERNAME=root
    DB_PASSWORD=
    
    BROADCAST_DRIVER=log
    CACHE_DRIVER=file
    QUEUE_CONNECTION=sync
    SESSION_DRIVER=file
    SESSION_LIFETIME=120
    
    REDIS_HOST=127.0.0.1
    REDIS_PASSWORD=null
    REDIS_PORT=6379+
    
    MAIL_DRIVER=smtp
    MAIL_HOST=smtp.mailtrap.io
    MAIL_PORT=2525
    MAIL_USERNAME=null
    MAIL_PASSWORD=null
    MAIL_ENCRYPTION=null
    
    PUSHER_APP_ID=
    PUSHER_APP_KEY=
    PUSHER_APP_SECRET=
    PUSHER_APP_CLUSTER=mt1
    
    MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
    MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"



.env文件代码
我也遇到过同样的问题,这是Laravel5.7.2的问题,我已经安装了FrameworkV5.7.9,问题将消失