Cara Install Laravel 12 Di VPS Debian 12 Lengkap + Nginx & SSL
Laravel adalah salah satu framework PHP paling populer yang digunakan untuk membangun aplikasi web modern, cepat, dan aman. Versi terbaru, Laravel 12, hadir dengan berbagai peningkatan performa dan fitur baru yang memudahkan pengembangan aplikasi. Bagi kamu yang ingin menjalankan Laravel di server sendiri, VPS dengan Debian 12 adalah pilihan tepat karena stabil, ringan, dan banyak digunakan di lingkungan produksi.
Pada panduan ini, kita akan membahas cara install Laravel 12 di VPS Debian 12 secara lengkap, mulai dari instalasi PHP dan Composer, konfigurasi Nginx, setup database MySQL, hingga pengaturan SSL agar website dapat diakses secara aman. Dengan mengikuti langkah-langkah ini, kamu bisa memiliki lingkungan Laravel yang siap digunakan untuk pengembangan maupun produksi.
1️⃣ Update & Upgrade Server
sudo apt update && sudo apt upgrade -y
2️⃣ Install PHP dan Ekstensi Laravel
Laravel 12 (Laravel 10+) minimal butuh PHP 8.1. Debian 12 biasanya sudah ada PHP 8.2 di repositori.
sudo apt install php php-cli php-mbstring php-xml php-bcmath php-curl php-zip unzip git -y
Cek versi PHP :
php -v
Harus minimal 8.1.
3️⃣ Install Composer
Composer adalah dependency manager PHP.
cd /tmp
curl -sS https://getcomposer.org/installer -o composer-setup.php
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Cek versi Composer :
composer -V
4️⃣ Install Laravel 12
sudo composer create-project laravel/laravel:^12.0 proyekku
Ganti `proyekku` dengan nama folder project kamu.
5️⃣ Set Izin Folder
sudo chown -R www-data:www-data /var/www/proyekku
sudo chmod -R 775 /var/www/proyekku/storage /var/www/proyekku/bootstrap/cache
6️⃣ Konfigurasi Environment
Masuk ke folder project :
cd /var/www/proyekku
cp .env.example .env
php artisan key:generate
Edit `.env` untuk koneksi database:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=namadb
DB_USERNAME=userdb
DB_PASSWORD=passdb
7️⃣ Install & Konfigurasi MySQL (opsional jika belum ada)
sudo apt install mariadb-server -y
sudo mysql_secure_installation
Buat database :
sudo mysql -u root -p
CREATE DATABASE namadb;
CREATE USER 'userdb'@'localhost' IDENTIFIED BY 'passdb';
GRANT ALL PRIVILEGES ON namadb.* TO 'userdb'@'localhost';
FLUSH PRIVILEGES;
EXIT;
8️⃣ Konfigurasi Nginx
Install Nginx :
sudo apt install nginx -y
Buat konfigurasi Laravel :
sudo nano /etc/nginx/sites-available/laravel
Isi dengan :
server {
listen 80;
server_name domainkamu.com;
root /var/www/proyekku/public;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
Aktifkan konfigurasi :
sudo ln -s /etc/nginx/sites-available/laravel /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
9️⃣ Jalankan Laravel
Jika ingin testing langsung tanpa domain :
php artisan serve --host=0.0.0.0 --port=8000
Akses di browser :
http://IP-VPS:8000
Kalau ingin via domain, pastikan DNS sudah diarahkan dan Nginx berjalan.
🔟 Opsional : Install SSL Let's Encrypt
Jika sudah punya domain :
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d domainkamu.com -d www.domainkamu.com
Tags :