News

Loading...

Community Links

Laravel Jobs

Latest News

Loading...

Latest Partners

Loading...

Partners

Loading...

Panduan Lengkap Setup Laravel 11 dengan Best Practice Modern (Vite, Breeze, Sanctum, dan lainnya)


Ikuti langkah demi langkah tutorial ini untuk menginstal Laravel 11 terbaru, mengkonfigurasi Vite, Breeze, Sanctum, serta praktik terbaik yang memaksimalkan performa dan keamanan aplikasi PHP Framework modern.

1. Persiapan Lingkungan

Pastikan server memiliki PHP 8.3+, Composer, Node.js 20+ dan Git. Cek versi dengan:

php -v
composer -V
node -v
git --version

2. Instalasi Laravel 11

Gunakan Composer untuk membuat project baru:

composer create-project laravel/laravel blog "11.*" --prefer-dist

Masuk ke direktori project:

cd blog

3. Konfigurasi Vite (Asset Bundler Modern)

Laravel 11 sudah menyertakan Vite secara default. Pastikan file vite.config.js ada. Jika belum, install:

npm install --save-dev vite laravel-vite-plugin

Tambahkan skrip npm:

npm install
npm run dev

Untuk produksi:

npm run build

4. Install Laravel Breeze (Starter Kit dengan Inertia atau Blade)

Pilih Blade untuk kemudahan:

composer require laravel/breeze --dev
php artisan breeze:install blade

Jika ingin React atau Vue, gunakan --react atau --vue. Jalankan migrasi dan npm:

php artisan migrate
npm install && npm run dev

5. Mengintegrasikan Laravel Sanctum (API Token & SPA Authentication)

Instal Sanctum:

composer require laravel/sanctum

Publish konfigurasi dan migrasi:

php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate

Tambahkan middleware EnsureFrontendRequestsAreStateful::class pada api middleware group di app/Http/Kernel.php untuk SPA:

\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,

Gunakan token di controller:

use Laravel\Sanctum\HasApiTokens;

public function login(Request $request) {
    $user = Auth::attempt($request->only('email','password'));
    if ($user) {
        return $request->user()->createToken('api-token')->plainTextToken;
    }
    return response()->json(['message'=>'Unauthorised'],401);
}

6. Setup Database & Environment

Copy file .env.example ke .env dan atur koneksi database:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_blog
DB_USERNAME=root
DB_PASSWORD=

Generate key aplikasi:

php artisan key:generate

7. Konfigurasi Cache, Queue, & Optimasi

  • Cache: gunakan driver redis untuk produksi. Tambahkan CACHE_DRIVER=redis di .env.
  • Queue: pilih redis atau database. Jalankan php artisan queue:work di supervisor.
  • Optimasi konfigurasi: php artisan config:cache, php artisan route:cache, php artisan view:cache.

8. Implementasi Best Practice

  • Environment Segregation: gunakan file .env.production dan .env.testing dengan dotenv loader.
  • Version Control: commit composer.lock dan package-lock.json. Tambahkan vendor/ dan node_modules/ ke .gitignore.
  • Code Style: install phpstan dan larastan untuk static analysis, serta eslint untuk JavaScript.
  • Testing: gunakan php artisan test dengan PHPUnit dan Pest. Contoh test authentication:
/** @test */
public function user_can_login()
{
    $user = User::factory()->create(['password'=>bcrypt('secret')]);
    $response = $this->postJson('/api/login', ['email'=>$user->email,'password'=>'secret']);
    $response->assertOk()->assertJsonStructure(['token']);
}

9. Deploy ke Production (Laravel Octane + Docker)

Untuk performa tinggi, gunakan Laravel Octane dengan Swoole atau RoadRunner:

composer require laravel/octane
php artisan octane:install --server=swoole
php artisan octane:start --workers=8

Contoh Dockerfile:

FROM php:8.3-fpm
WORKDIR /var/www
RUN apt-get update && apt-get install -y libzip-dev zip unzip git && \
    docker-php-ext-install pdo_mysql zip && \
    pecl install swoole && docker-php-ext-enable swoole
COPY . .
RUN composer install --optimize-autoloader --no-dev
RUN npm ci && npm run build
EXPOSE 8000
CMD ["php","artisan","octane:start","--host=0.0.0.0","--port=8000"]

10. Verifikasi & Monitoring

Gunakan Laravel Telescope untuk debugging dan Laravel Horizon untuk queue monitoring:

composer require laravel/telescope --dev
php artisan telescope:install
php artisan migrate

composer require laravel/horizon
php artisan horizon

Setelah semua langkah selesai, aplikasi siap diakses di http://localhost:8000 (atau domain produksi).


Dengan mengikuti tutorial ini Anda kini memiliki proyek Laravel 11 yang terstruktur, aman, dan optimal menggunakan Vite, Breeze, Sanctum, serta praktik terbaik modern. Kombinasi Laravel Octane, Docker, dan tool monitoring seperti Telescope menjadikan aplikasi siap untuk skala produksi di dunia Web Development berbasis PHP Framework terkini.
Panduan step-by-step setup Laravel 11 terbaru dengan Vite, Breeze, Sanctum, Docker, dan best practice modern untuk pengembangan aplikasi web PHP Framework yang cepat dan aman.

Laravel,PHP Framework,Web Development

#Laravel #LaravelIndonesia #PHP #WebDev #Backend

Tidak ada komentar:

Posting Komentar

Most Read

Loading...

Tutorial

Loading...

Packages

Loading...