Home Blog Script Nginx Optimal untuk Laravel: Panduan Lengkap
Web Dev 12 April 2026

Script Nginx Optimal untuk Laravel: Panduan Lengkap

ZA

Zachran Razendra

Author

Script Nginx Optimal untuk Laravel

Pendahuluan Laravel memerlukan konfigurasi server yang tepat agar performa optimal dan keamanan terjaga. Berikut ini contoh konfigurasi Nginx yang disesuaikan untuk aplikasi Laravel versi terbaru.

1. Persyaratan Awal

  • Nginx >= 1.14
  • PHP-FPM (versi 8.x direkomendasikan)
  • Direktori proyek Laravel berada di /var/www/html/laravel
  • Hak akses folder storage dan bootstrap/cache sudah diset dengan benar.

2. Contoh File Konfigurasi Nginx

Buat atau edit file virtual host di /etc/nginx/sites-available/laravel.conf:

server {
    listen 80;
    server_name example.com www.example.com; # Ganti dengan domain Anda
    root /var/www/html/laravel/public;    # Path ke folder public Laravel

    index index.php index.html;
    charset utf-8;
    gzip on;
    gzip_types text/css application/javascript image/svg+xml;

    # Mengatur log
    access_log /var/log/nginx/laravel-access.log;
    error_log  /var/log/nginx/laravel-error.log;

    # Membatasi akses ke file .env dan folder storage yang tidak perlu diakses publik
    location ~ /\.(?!well-known).* {
        deny all;
    }

    # Mengarahkan semua request ke index.php kecuali file atau folder yang ada
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    # PHP-FPM configuration
    location ~ \\.php$ {
        fastcgi_pass unix:/var/run/php/php8.2-fpm.sock; # Sesuaikan versi PHP
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_buffer_size 16k;
        fastcgi_buffers 4 16k;
        fastcgi_busy_buffers_size 32k;
        fastcgi_temp_file_write_size 32k;
    }

    # Cache static assets for 30 days
    location ~* \.(js|css|png|jpg|jpeg|gif|svg|ico|webp)$ {
        expires 30d;
        add_header Cache-Control "public, max-age=2592000";
    }

    # Deny access to storage symlink if you expose it
    location ^~ /storage/ {
        internal;
        alias /var/www/html/laravel/storage/app/public/;
    }
}

3. Langkah Aktivasi

  1. Simpan file di atas sebagai laravel.conf.
  2. Aktifkan situs dengan membuat symlink:
    sudo ln -s /etc/nginx/sites-available/laravel.conf /etc/nginx/sites-enabled/
    
  3. Uji konfigurasi Nginx:
    sudo nginx -t
    
  4. Reload Nginx:
    sudo systemctl reload nginx
    

4. Tips Tambahan

  • SSL: Pasang sertifikat SSL (Let’s Encrypt) dan ubah listen 80; menjadi listen 443 ssl; serta tambahkan ssl_certificate dan ssl_certificate_key.
  • Optimasi PHP-FPM: Sesuaikan pm.max_children, pm.start_servers, dan pm.max_requests di file www.conf sesuai beban.
  • Cache: Pertimbangkan menggunakan fastcgi_cache atau layanan cache terpisah seperti Redis untuk meningkatkan kecepatan.

5. Kesimpulan

Dengan konfigurasi di atas, aplikasi Laravel Anda akan berjalan secara stabil di Nginx, memanfaatkan caching statis, keamanan dasar, dan performa PHP‑FPM yang optimal. Selalu lakukan testing setelah perubahan dan monitor log untuk mendeteksi masalah potensial.

Share this post:
Back to Blog

Related Articles

Kecocokan Pria INTJ dengan Wanita ENFP: Panduan Lengkap

Kecocokan Pria INTJ dengan Wanita ENFP: Panduan Lengkap

Kecocokan Pria INTJ dengan Wanita ENFP: Panduan Lengkap INTJ dan ENFP adalah dua tipe kepribadian ya...

Read More

Cara Memulai Usaha Receipt Photobooth yang Menguntungkan

Cara Memulai Usaha Receipt Photobooth yang Menguntungkan Receipt photobooth menjadi tren baru di dun...

Read More
Unlocking AI-Powered Development: How to Write Better Code with Claude

Unlocking AI-Powered Development: How to Write Better Code with Claude

Introduction Artificial intelligence has moved from being a futuristic concept to an everyday tool f...

Read More