Konfigurasi Nginx sebagai Reverse Proxy
Panduan ini akan membantu Anda mengatur Nginx sebagai reverse proxy untuk aplikasi web (misalnya Next.js, Express, dsb) yang berjalan di Docker atau langsung di server dengan port tertentu.
1. Buat File Konfigurasi Nginx
Buat file baru di direktori konfigurasi Nginx (/etc/nginx/sites-available
):
sudo nano /etc/nginx/sites-available/your-domain.com
Ganti your-domain.com
dengan domain Anda (misalnya example.com
).
2. Tambahkan Konfigurasi Reverse Proxy
Contoh konfigurasi dasar:
server {
listen 80;
server_name your-domain.com www.your-domain.com;
location / {
proxy_pass http://localhost:PORT;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Keterangan:
- Ganti
PORT
dengan port aplikasi utama (misalnya Next.js:4000
). - Anda bisa menambahkan lebih banyak location sesuai kebutuhan.
3. Aktifkan Konfigurasi
Aktifkan konfigurasi dengan membuat symbolic link ke sites-enabled
:
sudo ln -s /etc/nginx/sites-available/your-domain.com /etc/nginx/sites-enabled/
4. Cek Konfigurasi
Periksa apakah konfigurasi valid:
sudo nginx -t
Jika hasilnya syntax is ok
dan test is successful
, lanjutkan.
5. Reload Nginx
Reload Nginx agar perubahan diterapkan:
sudo systemctl reload nginx
🚀 Selesai! Nginx sekarang berfungsi sebagai reverse proxy yang meneruskan permintaan dari domain Anda ke aplikasi yang berjalan di server (langsung atau via Docker).