Menggunakan Caddy sebagai Reverse Proxy untuk Aplikasi Node.js di Debian 13

Pendahuluan

Reverse proxy menjembatani permintaan internet ke aplikasi yang berjalan di port lokal, sambil menangani HTTPS secara otomatis. Artikel ini membahas menggunakan Caddy sebagai reverse proxy untuk aplikasi Node.js di Debian 13, lengkap dengan sertifikat otomatis dari Let's Encrypt.

Prasyarat

Step 1: Jalankan Aplikasi di Port Lokal

Pastikan aplikasi Node.js berjalan di 127.0.0.1:3000. Contoh menjalankannya:

bash
node app.js

Step 2: Konfigurasi Caddyfile

Sunting Caddyfile:

bash
sudo nano /etc/caddy/Caddyfile

Isi dengan:

kode
example.com {
    reverse_proxy 127.0.0.1:3000
}

Step 3: HTTPS Otomatis

Caddy otomatis meminta dan memperbarui sertifikat HTTPS untuk example.com selama domain menunjuk ke IP server dan port 80/443 terbuka (lihat panduan VPS untuk firewall). Terapkan perubahan:

bash
sudo systemctl reload caddy

Step 4: Beberapa Aplikasi

Caddy bisa memproksi beberapa layanan dalam satu domain:

kode
example.com {
    reverse_proxy /api/* 127.0.0.1:3000
    reverse_proxy /app/* 127.0.0.1:4000
}

Kesimpulan

Caddy sebagai reverse proxy memudahkan menerbitkan aplikasi Node.js dengan HTTPS otomatis dan tanpa konfigurasi sertifikat manual.

Artikel Terkait