Temukan langkah demi langkah instalasi Laravel 11 terbaru, konfigurasi Vite, otentikasi Breeze, API token dengan Sanctum, serta tips best practice untuk proyek produksi.
1. Persiapan Lingkungan
Pastikan sistem Anda memiliki:
- PHP >= 8.2
- Composer 2.x
- Node.js >= 20 (untuk Vite)
- Database MySQL/PostgreSQL
1.1 Instalasi Composer dan Node
curl -sS https://getcomposer.org/installer | php
npm install -g npm@latest
2. Membuat Project Laravel 11
composer create-project laravel/laravel myapp "11.*" --prefer-dist
Masuk ke folder projek:
cd myapp
3. Mengonfigurasi Vite (Pengganti Laravel Mix)
Laravel 11 sudah menyertakan Vite secara default. Pastikan file vite.config.js ada di root.
3.1 Install dependencies
npm install
# Tambahkan Vue atau React bila diperlukan
npm install vue@next # contoh untuk Vue 3
npm install @vitejs/plugin-vue --save-dev
3.2 Update vite.config.js
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';
import vue from '@vitejs/plugin-vue';
export default defineConfig({
plugins: [
laravel({
input: ['resources/js/app.js', 'resources/css/app.css'],
refresh: true,
}),
vue(),
],
});
3.3 Build & Dev Server
# Development
npm run dev
# Production build
npm run build
4. Menambahkan Scaffold Otentikasi dengan Breeze
Breeze menyediakan starter kit ringan dengan Blade atau Inertia (React/Vue). Contoh menggunakan Blade:
composer require laravel/breeze --dev
php artisan breeze:install blade
npm run dev
php artisan migrate
Setelah itu, jalankan php artisan serve dan buka http://localhost:8000/register untuk verifikasi.
5. Mengamankan API dengan Laravel Sanctum
Sanctum memungkinkan SPA atau mobile app mengakses API menggunakan token.
5.1 Instalasi
composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
5.2 Konfigurasi Middleware
Tambahkan EnsureFrontendRequestsAreStateful::class ke grup api di app/Http/Kernel.php:
'api' => [
\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
'throttle:api',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
5.3 Membuat Route API
// routes/api.php
use App\Http\Controllers\API\UserController;
Route::middleware('auth:sanctum')->get('/user', [UserController::class, 'profile']);
5.4 Generating Token
// contoh di LoginController
$token = $user->createToken('spa-token')->plainTextToken;
return response()->json(['token' => $token]);
6. Best Practice untuk Produksi
- Environment Variables: Simpan rahasia di
.envdan gunakanphp artisan config:cache. - Cache Config & Routes:
php artisan route:cachedanphp artisan view:cache. - Queue & Jobs: Konfigurasi driver Redis untuk queue, gunakan
php artisan queue:work --daemon. - Logging: Set level
warningatauerrordi production, gunakan Laravel Telescope hanya di local. - Security: Aktifkan
APP_DEBUG=false, gunakanHTTPSdan headerContent‑Security‑Policy.
7. Deploy ke Server
# 1. Upload code (Git, FTP, atau deployer)
# 2. Install dependencies
composer install --optimize-autoloader --no-dev
npm ci --production
npm run build
# 3. Set permission
chown -R www-data:www-data storage bootstrap/cache
# 4. Optimasi Laravel
php artisan migrate --force
php artisan config:cache
php artisan route:cache
php artisan view:cache
# 5. Restart queue worker & PHP‑FPM
supervisorctl restart laravel-queue:*
systemctl reload php8.2-fpm
Project siap diakses via domain yang telah mengarahkan ke public/ folder.
Dengan mengikuti langkah-langkah di atas, Anda memiliki aplikasi Laravel 11 yang modern, cepat berkat Vite, dilengkapi otentikasi Breeze, serta API yang aman menggunakan Sanctum. Terapkan best practice produksi untuk menjaga performa dan keamanan, sehingga siap melayani traffic nyata.
Tutorial lengkap setup Laravel 11 terbaru dengan Vite, Breeze, Sanctum, dan best practice modern untuk produksi.
Laravel,PHP Framework,Web Development
#Laravel #LaravelIndonesia #PHP #WebDev #Backend
Tidak ada komentar:
Posting Komentar