Does your database have the session table?
Aug 23, 2024
5
Level 14
CSRF token mismatch/419 errors when session set to database
Hi all,
I have this view:
<form method="post" action="{{ route('test.update') }}">
@csrf()
<button>test</button>
</form>
and these routes with a controller:
<?php
use Illuminate\Support\Facades\Route;
Route::group(['namespace' => 'App\Http\Controllers'], function () {
Route::get('test', ['uses' => 'TestController@index', 'as' => 'test']);
Route::post('test', ['uses' => 'TestController@update', 'as' => 'test.update']);
});
<?php
namespace App\Http\Controllers;
class TestController extends Controller
{
public function index(){
return view('test');
}
public function update(){
return 'success';
}
}
Here is my .env:
APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:2ugfy4CpKmGxRKufFas7rmWpMIpnxV0s+hDitdNdGI8=
APP_DEBUG=true
APP_TIMEZONE=UTC
APP_URL=http://localhost
APP_LOCALE=en
APP_FALLBACK_LOCALE=en
APP_FAKER_LOCALE=en_GB
APP_MAINTENANCE_DRIVER=file
APP_MAINTENANCE_STORE=database
BCRYPT_ROUNDS=12
LOG_CHANNEL=stack
LOG_STACK=single
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
SESSION_DRIVER=file
SESSION_LIFETIME=120
SESSION_ENCRYPT=false
SESSION_PATH=/
SESSION_DOMAIN=null
BROADCAST_CONNECTION=log
FILESYSTEM_DISK=local
QUEUE_CONNECTION=database
CACHE_STORE=database
CACHE_PREFIX=
MEMCACHED_HOST=127.0.0.1
REDIS_CLIENT=phpredis
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_MAILER=log
MAIL_HOST=127.0.0.1
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="[email protected]"
MAIL_FROM_NAME="${APP_NAME}"
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
AWS_USE_PATH_STYLE_ENDPOINT=false
VITE_APP_NAME="${APP_NAME}"
If I set my SESSION_DRIVER=file then everything works as expected, but if I set it to SESSION_DRIVER=database then I get a 419 error
What could be causing the issue?
Please or to participate in this conversation.