Cara Mengatasi Error 419 Page Expired di Laravel

Cara mengatasi error 419 Page Expired di Laravel saat submit form. Pelajari penyebab dan solusi lengkapnya agar form Laravel berjalan normal.

laravel 419 page expired csrf token laravel error cara mengatasi 419 laravel form laravel tidak bisa submit

📂 Laravel | ✍ Kurnia Andi Nugroho | 🎯 Beginner ✅ Telah dilihat 35 kali

Cara Mengatasi Error 419 Page Expired di Laravel

Problem

Saat mengirim form di Laravel, terkadang muncul error berikut:

419 Page Expired

Error ini biasanya terjadi ketika CSRF token tidak valid atau tidak dikirimkan bersama request.

Contoh kasus:

  • Form POST tidak memiliki @csrf
  • Session Laravel expired
  • Request AJAX tidak menyertakan token
  • Form dikirim setelah lama tidak aktif

Akibatnya Laravel menolak request tersebut demi alasan keamanan.

Solution

1. Tambahkan CSRF Token di Form

Pastikan setiap form POST memiliki CSRF token.

<form method="POST" action="/login">
    @csrf

    <input type="text" name="email">
    <input type="password" name="password">

    <button type="submit">Login</button>
</form>

2. Jika Menggunakan AJAX

Tambahkan CSRF token di header.

$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    }
});

Tambahkan juga di layout:

<meta name="csrf-token" content="{{ csrf_token() }}">

3. Periksa Session Laravel

Pastikan session berjalan dengan baik.

File .env

SESSION_DRIVER=file

Kemudian clear cache:

php artisan config:clear
php artisan cache:clear
php artisan route:clear