21. Panduan Troubleshooting & Perbaikan Eror
Ringkasan
Panduan ini berisi solusi langkah-demi-langkah untuk mengatasi masalah umum seputar setup, otentikasi, koneksi database, dan penyebaran server.
Masalah Umum & Solusi
1. Eror Koneksi Prisma (PrismaClientInitializationError)
Gejala: Can't reach database server at localhost:3306 atau Access Denied.
Penyebab: Kredensial database pada .env salah atau server MySQL belum dinyalakan.
Solusi:
DATABASE_URL pada .env.mysql -u root -p.2. Eror Rahasia NextAuth (NO_SECRET)
Gejala: [next-auth][error][NO_SECRET] Please define a secret in NextAuth options.
Penyebab: Variabel lingkungan NEXTAUTH_SECRET belum diisi.
Solusi:
Tambahkan string rahasia minimal 32 karakter pada .env:
NEXTAUTH_SECRET="string-rahasia-random-minimal-32-karakter"
3. Peringatan Fallback Memori Rate Limiter
Gejala: Log menunjukkan Upstash Redis credentials missing. Falling back to in-memory rate limiting.
Penyebab: UPSTASH_REDIS_REST_URL tidak diisi.
Solusi: Ini adalah peringatan normal. Sistem secara otomatis beralih ke rate limiter memori lokal secara gratis. Untuk menggunakan Redis di produksi, masukkan kredensial Upstash pada .env.
Berkas Terkait
.env.example — Template environmentsrc/lib/rate-limit.ts — Helper fallback rate limitersrc/server/auth/config.ts — Konfigurasi NextAuth