- Deploy Laravel ke VPS dimulai dengan menyiapkan server, PHP, database, Composer, lalu mengunggah project Laravel ke directory yang tepat.
- Konfigurasi .env, permission folder storage, database, serta Nginx harus diatur dengan benar agar aplikasi bisa berjalan aman di environment production.
- Setelah deployment selesai, jalankan migration, aktifkan HTTPS, dan gunakan php artisan optimize supaya performa Laravel lebih optimal.
- Jika aplikasi mengalami error setelah deploy Laravel VPS, cek versi PHP, ekstensi, permission, cache, konfigurasi PHP-FPM. Serta log Laravel untuk menemukan penyebabnya.
Cara deploy Laravel ke VPS bisa dilakukan dengan menyiapkan web server, PHP, database, Composer, mengunggah project, mengatur .env. Lalu mengarahkan domain ke folder public.
Setelah itu, jalankan migrasi, atur permission, aktifkan HTTPS, dan optimalkan Laravel agar aplikasi siap dipakai di production.
Website Anda Lemot? Saatnya Pindah ke VPS Powerful!
Nikmati performa optimal dengan CPU & RAM Dedicated, Gratis SSL, dan Backup Harian Otomatis. Semua ini bisa Anda dapatkan dengan harga terjangkau!
Persiapan Sebelum Tahu Cara Deploy Laravel ke VPS
Sob, jangan langsung git clone lalu berharap aplikasi otomatis hidup. Cara deploy Laravel ke VPS melibatkan beberapa komponen yang harus saling cocok.
Panduan ini memakai contoh stack Ubuntu, Nginx, PHP-FPM, database MySQL atau MariaDB, Git, dan Composer. Versi PHP harus mengikuti versi Laravel pada project.
Sebagai gambaran, dokumentasi Laravel 13.x mensyaratkan PHP 8.3 atau lebih baru serta ekstensi seperti cURL, Mbstring, OpenSSL, PDO, Tokenizer, dan XML.
Sebelum mulai, siapkan:
- VPS dengan akses SSH
- domain yang sudah diarahkan ke IP VPS
- repository atau source code Laravel
- database dan kredensialnya
- Composer dan PHP yang sesuai
Cek versi PHP:
php -v
Kalau versi server tidak cocok dengan project, bereskan dulu. Memaksa deployment hanya akan memindahkan error ke langkah berikutnya.
1. Masuk ke VPS dan Ambil Project Laravel
Akses server melalui SSH:
| ssh username@IP_VPS Lalu tempatkan aplikasi pada directory yang rapi: cd /var/www sudo git clone https://github.com/username/nama-project.git laravel-app cd laravel-app |
Untuk repository private, gunakan autentikasi yang aman seperti SSH key.
Pada proses cara deploy laravel ke vps, directory project yang rapi juga memudahkan update dan troubleshooting.
2. Install Dependency dengan Composer
Setelah source code tersedia, jalankan:
composer install –no-dev –optimize-autoloader
Opsi –no-dev melewati package yang hanya diperlukan saat development. Composer juga merekomendasikan optimasi autoloader untuk production agar pemuatan class lebih efisien.
Hindari composer update sembarangan di server production. composer install mengikuti versi dependency yang sudah dikunci pada composer.lock, sehingga hasil deployment lebih konsisten.
Kalau kamu mencari tutorial dengan frasa install laravel on vps. Langkah Composer ini wajib diperhatikan karena ketidakcocokan PHP, ekstensi, atau package sering membuat proses berhenti.
3. Atur File .env untuk Production
Kalau .env belum tersedia, buat dari contoh:
| cp .env.example .env php artisan key:generate |
Lalu sesuaikan konfigurasi penting:
| APP_ENV=production APP_DEBUG=false APP_URL=https://domainkamu.com DB_DATABASE=nama_database DB_USERNAME=user_database DB_PASSWORD=password_database |
APP_DEBUG harus dimatikan di production. Debug mode yang aktif dapat mengekspos nilai konfigurasi sensitif kepada pengguna.
Jika aplikasi production sebelumnya sudah memiliki APP_KEY. Jangan asal membuat key baru setiap deploy Laravel VPS, karena key tersebut digunakan oleh mekanisme enkripsi Laravel.
4. Atur Permission Laravel
Laravel membutuhkan akses tulis ke storage dan bootstrap/cache. Kedua directory tersebut harus bisa ditulis oleh proses web server.
Contoh pada Ubuntu dengan user www-data:
| sudo chown -R www-data:www-data storage bootstrap/cache sudo chmod -R 775 storage bootstrap/cache |
Hindari langsung memakai permission 777 hanya untuk menghilangkan error.
Jika aplikasi menyimpan file publik melalui Laravel Storage, jalankan:
| php artisan storage:link Perintah itu membuat symbolic link dari storage publik aplikasi ke public/storage. |
5. Arahkan Nginx ke Folder Public
Ini bagian yang tidak boleh salah. Document root Nginx harus mengarah ke folder public, bukan root project.
Laravel menyarankan request masuk melalui public/index.php agar file sensitif pada root aplikasi tidak terekspos.
Contoh konfigurasi dasarnya:
| server { listen 80; server_name domainkamu.com www.domainkamu.com; root /var/www/laravel-app/public; index index.php; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ ^/index\.php(/|$) { fastcgi_pass unix:/run/php/php8.3-fpm.sock; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; include fastcgi_params; } } |
Sesuaikan socket PHP-FPM dengan versi PHP di VPS. Kemudian tes dan reload Nginx:
| sudo nginx -t sudo systemctl reload nginx |
Kalau nginx -t gagal, perbaiki error konfigurasi sebelum melakukan reload.
6. Jalankan Migrasi Database
Kalau dengan cara deploy Laravel ke VPS ini membawa migration baru, jalankan:
| php artisan migrate –force |
Laravel menyediakan –force agar migration bisa dijalankan di environment production tanpa prompt interaktif.
Karena migration dapat mengubah struktur atau data, backup database layak dilakukan sebelum perubahan besar.
7. Optimalkan Laravel untuk Production
Setelah aplikasi berjalan, jalankan:
| php artisan optimize |
Laravel memakai perintah ini untuk membuat cache konfigurasi, event, route, dan view yang relevan bagi production.
Perlu dicatat, setelah konfigurasi di-cache, pemanggilan env() sebaiknya berada di file konfigurasi. Bagian aplikasi lain seharusnya membaca nilai melalui config().
Jika konfigurasi baru belum terbaca:
| php artisan optimize:clear php artisan optimize |
8. Aktifkan HTTPS
Setelah domain dan Nginx berfungsi, kamu bisa memasang sertifikat HTTPS menggunakan Certbot:
| sudo certbot –nginx |
Panduan resmi Certbot menjelaskan bahwa perintah tersebut dapat memperoleh sertifikat sekaligus menyesuaikan konfigurasi Nginx.
Renewal juga dapat diuji menggunakan certbot renew –dry-run.
Setelah aktif, pastikan APP_URL menggunakan https://.
9. Cek Aplikasi Setelah Melakukan Cara Deploy Laravel ke VPS
Jangan berhenti setelah homepage muncul, Sob. Tes fitur yang menyentuh komponen penting:
- login dan autentikasi
- operasi database
- upload file
- cache dan session
- queue worker
- log pada storage/logs
Laravel juga menyediakan health route yang secara default dapat diakses melalui /up untuk memeriksa apakah aplikasi berhasil boot tanpa exception.
Jika project memakai queue worker atau service yang berjalan lama. Jadi, pastikan proses tersebut memuat kode terbaru setelah melakukan semua cara deploy Laravel ke VPS ini.
Laravel menyediakan mekanisme reload untuk layanan jangka panjang pada versi yang mendukungnya.
Kesalahan yang Sering Bikin Cara Deploy Laravel ke VPS Gagal
Kalau aplikasi belum jalan, cek penyebab yang paling umum dulu:
- versi PHP tidak sesuai
- ekstensi PHP belum lengkap
- .env masih memakai konfigurasi lokal
- APP_DEBUG=true
- Nginx diarahkan ke root project
- permission storage salah
- migration belum dijalankan
- cache lama masih tersimpan
- socket PHP-FPM keliru
- DNS belum mengarah ke VPS
Jangan mengubah banyak konfigurasi sekaligus. Periksa log dan benahi satu sumber error pada satu waktu.
Cara deploy Laravel ke VPS bukan cuma memindahkan source code.
Kamu perlu memastikan dependency cocok, .env aman. Nginx mengarah ke folder public, database siap, permission benar, HTTPS aktif, dan Laravel sudah dioptimalkan.
Kalau kamu butuh kontrol server yang lebih bebas untuk aplikasi Laravel, VPS memberi ruang lebih luas untuk mengatur stack sesuai kebutuhan project.
Sob, VPS Jagoan Hosting juga bisa dipertimbangkan sebagai infrastruktur dalam cara deploy Laravel ke VPS. Lalu resource server dapat disesuaikan dengan traffic dan beban aplikasi kamu.
FAQ
1. Apakah Laravel bisa dijalankan di VPS?
Bisa. Selama environment server memenuhi kebutuhan Laravel dan dependency project.
2. Apakah harus memakai Nginx?
Tidak. Artikel ini menggunakan Nginx karena dokumentasi deployment resmi Laravel menyediakan contoh konfigurasi untuk Nginx dan opsi server lainnya.
3. Kenapa Laravel error 500 setelah dipindah ke VPS?
Penyebabnya dapat berupa .env salah, permission bermasalah, dependency belum lengkap, PHP tidak kompatibel, atau konfigurasi web server keliru. Cek log Laravel dan log web server untuk mengetahui error spesifik.
4. Apakah composer install perlu dijalankan saat deploy?
Ya, ketika dependency perlu dipasang sesuai composer.lock. Untuk production, –no-dev dan optimasi autoloader dapat digunakan sesuai kebutuhan.
5. Apakah php artisan serve cocok untuk production?
Untuk VPS production, gunakan web server atau application server yang memang dikonfigurasi menerima traffic aplikasi.
Ketahui Cara Deploy Laravel ke VPS Lebih Nyaman dengan VPS Jagoan Hosting
Kalau kamu ingin aplikasi Laravel punya resource yang lebih fleksibel dan kontrol server yang lebih luas.
Sob, kamu bisa menggunakan VPS Murah Jagoan Hosting.
Pilihan VPS-nya tersedia untuk berbagai kebutuhan, mulai dari project pengembangan sampai workload production.
Dengan dukungan processor AMD EPYC, storage NVMe pada paket tertentu, serta opsi resource yang dapat disesuaikan.
Jagoan Hosting juga menyediakan layanan support 24/7 melalui WhatsApp dengan CS bersertifikasi yang siap diajak diskusi saat kamu menemukan kendala.
Bantuan CS yang proaktif juga bikin pengelolaan layanan terasa lebih praktis, terutama ketika kamu butuh informasi terkait server atau maintenance.
Kalau ingin pendampingan yang lebih intens untuk kebutuhan teknis. Kamu juga bisa menggunakan VIP Support Jagoan Hosting agar pengelolaan layanan jadi lebih tenang.


