Server

Cara Deploy Website ke VPS Linux dari Nol Lengkap 2025

Deploy website ke VPS (Virtual Private Server) adalah skill penting yang harus dimiliki setiap web developer. Tutorial ini akan membahas langkah demi langkah cara deploy website ke VPS Ubuntu dari nol hingga online.

Prasyarat

  • VPS dengan Ubuntu 22.04 atau 24.04 (bisa dari DigitalOcean, Vultr, Hetzner, atau penyedia lokal)
  • Domain name (bisa beli di Namecheap, Niagahoster, dll)
  • Akses SSH ke VPS
  • File website yang sudah siap

Step 1: Koneksi ke VPS via SSH

Buka terminal di komputer Anda dan jalankan perintah: ssh root@your-vps-ip. Masukkan password yang diberikan oleh penyedia VPS Anda.

Step 2: Update System

Jalankan perintah apt update dan apt upgrade untuk memastikan semua package terbaru dan aman.

Step 3: Install Nginx Web Server

Nginx adalah web server yang ringan dan cepat. Install dengan apt install nginx, lalu jalankan systemctl start nginx dan systemctl enable nginx agar Nginx otomatis start saat VPS reboot.

Step 4: Install PHP dan Extensions

Install PHP-FPM dan extensions yang dibutuhkan: php-fpm, php-mysql, php-curl, php-gd, php-mbstring, php-xml, php-zip. Restart Nginx setelah install selesai.

Step 5: Install MariaDB Database

Install MariaDB server dan jalankan mysql_secure_installation untuk mengamankan database. Buat database dan user baru untuk website Anda.

Step 6: Upload Website ke VPS

Ada beberapa cara untuk upload website: menggunakan SCP (scp -r ./website/* root@ip:/var/www/mywebsite/), Git clone dari repository, atau FTP/SFTP menggunakan FileZilla.

Step 7: Konfigurasi Nginx untuk Website

Buat file konfigurasi di /etc/nginx/sites-available/mywebsite dengan konfigurasi server block. Set root directory, index file, dan PHP-FPM socket. Aktifkan site dengan symbolic link ke sites-enabled dan reload Nginx.

Step 8: Point Domain ke VPS

Di panel DNS domain Anda, tambahkan A Record untuk @ dan www yang mengarah ke IP VPS. Tunggu propagasi DNS (biasanya 5-30 menit, maksimal 48 jam).

Step 9: Install SSL Certificate (HTTPS)

Gunakan Let's Encrypt dengan Certbot untuk install SSL gratis. Jalankan certbot --nginx -d yourdomain.com -d www.yourdomain.com. Certbot akan otomatis konfigurasi HTTPS dan auto-renew setiap 90 hari.

Step 10: Set Permissions yang Benar

Set ownership direktori website ke www-data:www-data dan permission ke 755. Ini memastikan Nginx bisa membaca file website dengan benar.

Keamanan Dasar VPS

  • Ganti SSH port default dari 22 ke port lain
  • Disable root login via SSH
  • Gunakan SSH key authentication
  • Install firewall UFW dan buka hanya port yang diperlukan (22, 80, 443)
  • Install fail2ban untuk mencegah brute force attack
  • Update system secara berkala

Troubleshooting Umum

  • 502 Bad Gateway: Cek PHP-FPM sudah jalan dan socket path benar
  • 403 Forbidden: Cek permission file dan ownership direktori
  • 404 Not Found: Cek root path di konfigurasi Nginx
  • Website lambat: Cek resource VPS dan optimasi database

Kesimpulan

Deploy website ke VPS memang terlihat rumit, tapi dengan mengikuti langkah-langkah di atas secara berurutan, Anda bisa membuat website online dalam waktu kurang dari 30 menit. Skill ini sangat berharga untuk karir web developer dan membuka peluang freelance yang menguntungkan.


You may also like


0 Comments


Leave a Reply

Scroll to Top