Panduan lengkap langkah demi langkah untuk menginstal Laravel 11 terbaru, mengkonfigurasi Vite, Breeze, Sanctum, serta best practice keamanan dan performa pada tahun 2026.
1. Persiapan Lingkungan
Pastikan server Anda telah terpasang:
- PHP >= 8.3
- Composer 2.7+
- Node.js >= 20 (npm atau yarn)
- Database MySQL 8 atau PostgreSQL 15
1.1 Verifikasi Versi
php -v
composer -V
node -v
npm -v
2. Instalasi Laravel 11
Gunakan Composer untuk membuat proyek baru dengan starter kit laravel/laravel versi stabil.
composer create-project laravel/laravel blog "11.*" --prefer-dist
Masuk ke direktori proyek:
cd blog
3. Mengaktifkan Vite (Frontend Build Tool)
Laravel 11 sudah menyertakan Vite secara default. Pastikan file vite.config.js ada di root.
3.1 Install dependencies
npm install
3.2 Jalankan dev server
npm run dev
Anda dapat melihat perubahan secara hot‑reload pada http://localhost:5173.
4. Menambahkan Breeze sebagai Authentication Scaffold
4.1 Install package
composer require laravel/breeze --dev
4.2 Generate scaffolding dengan Inertia + Vue 3 (pilihan populer 2026)
php artisan breeze:install vue
4.3 Build assets
npm run dev
4.4 Migrasi database
php artisan migrate
5. Konfigurasi Laravel Sanctum untuk API Token & SPA Authentication
5.1 Install Sanctum
composer require laravel/sanctum
5.2 Publish konfigurasi & migration
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
5.3 Update app/Http/Kernel.php
Tambahkan middleware EnsureFrontendRequestsAreStateful::class pada grup api:
'api' => [
\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
'throttle:api',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
5.4 Konfigurasi CORS (file config/cors.php)
return [
'paths' => ['api/*', 'sanctum/csrf-cookie'],
'allowed_methods' => ['*'],
'allowed_origins' => ['http://localhost:5173'],
'allowed_headers' => ['*'],
'exposed_headers' => [],
'max_age' => 0,
'supports_credentials' => true,
];
6. Best Practice Modern
6.1 Environment Variables
- Gunakan
.env.exampleyang lengkap. - Jangan pernah commit
.envke repo. - Set
APP_DEBUG=falsepada produksi.
6.2 Caching Config & Routes
php artisan config:cache
php artisan route:cache
php artisan view:cache
6.3 Optimized Autoload
composer install --optimize-autoloader --no-dev
6.4 Queue & Job
Aktifkan driver redis pada .env dan gunakan php artisan queue:work --daemon untuk proses background (email, notifications).
6.5 Testing
Laravel 11 mendukung Pest dan PHPUnit. Contoh test fitur auth:
php artisan test --filter AuthTest
7. Deploy ke Production (Contoh Laravel Forge atau Docker)
7.1 Deploy dengan Laravel Forge
- Buat site baru, pilih PHP 8.3, pilih database.
- Masukkan repository GitHub, aktifkan “Auto Deploy”.
- Set environment variables di Forge dashboard.
- Jalankan
php artisan migrate --forcepada post‑deploy script.
7.2 Deploy dengan Docker (multi‑stage build)
# Dockerfile
FROM php:8.3-fpm-alpine AS builder
WORKDIR /var/www
COPY . .
RUN apk add --no-cache npm git && \
composer install --no-dev --optimize-autoloader && \
npm ci && npm run build && \
php artisan event:cache && php artisan route:cache && php artisan config:cache
FROM php:8.3-fpm-alpine AS production
WORKDIR /var/www
COPY --from=builder /var/www .
EXPOSE 9000
CMD ["php-fpm"]
7.3 SSL & HTTP/2
Gunakan certbot untuk Let's Encrypt, pastikan server mendukung HTTP/2 untuk performa optimal.
8. Verifikasi Instalasi
Buka browser, akses https://your-domain.com. Anda harus melihat halaman welcome Laravel, bisa login/register via Breeze, dan token API dapat dibuat lewat route /api/user yang dilindungi Sanctum.
Dengan mengikuti langkah‑langkah di atas, Anda memiliki aplikasi Laravel 11 yang modern, aman, dan siap produksi. Kombinasi Vite, Breeze, dan Sanctum memberikan developer pengalaman full‑stack yang cepat, sementara praktik caching, queue, dan deployment container memastikan performa dan skalabilitas di era 2026.
Panduan step-by-step setup Laravel 11 terbaru dengan Vite, Breeze, Sanctum, serta best practice modern untuk produksi tahun 2026.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend
Tidak ada komentar:
Posting Komentar