Appearance
Nginx Reverse Proxy Kurulumu
Bu rehber, Ubuntu (Linux) VPS veya dedicated sunucuda Nginx kullanarak reverse proxy kurulumu adımlarını içerir.
Reverse proxy, kendi alan adını kullanarak Node.js uygulamanı (panel, dashboard, API vb.) yayına almanı sağlar. Daha kolay bir seçenek için Cloudflare Tüneller Rehberine göz atabilirsin.
DANGER
Bu rehber sadece VPS veya dedicated sunucular içindir. Paylaşımlı hostinglerde çalışmaz.
Reverse Proxy Nedir?
Kısaca, bir sunucu tarayıcıdan gelen istekleri arka plandaki uygulamaya yönlendirir. Mesela kullanıcı https://alanadi.com
'a girdiğinde, bu istek aslında localhost:3000
'daki botuna yönlendirilir.
Avantajları:
- Alan adını kullanabilirsin.
- HTTPS bağlantısı sağlar.
- Güvenlik ve hız iyileşir.
Gerekli Şartlar:
- Ubuntu VPS / Dedicated sunucu
localhost:3000
'da çalışan bir Node.js uygulaması (Pizza panel, bot dashboard vs.)
Adım 1: Nginx Kurulumu
bash
sudo apt update && sudo apt install nginx -y
sudo systemctl enable --now nginx
Tarayıcıdan sunucu IP'ni aç, "Welcome to nginx" yazısı görmelisin.
Adım 2: Dosyalarını Sunucuya Yükle
- FileZilla ya da WinSCP ile sunucuna bağlan.
- Ürün klasörünü
/home/pizza
gibi bir dizine koy.
Adım 3: Nginx Yapılandırması
bash
sudo nano /etc/nginx/sites-available/alanadi.com
Aşağıdaki örneği düzenle:
nginx
server {
listen 80;
server_name alanadi.com www.alanadi.com;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Real-IP $remote_addr;
}
error_page 502 /502.html;
location = /502.html {
root /home/pizza;
}
}
Kaydet (CTRL+O
, Enter, CTRL+X
)
Adım 4: Yapılandırmayı Aktifleştir
bash
sudo ln -s /etc/nginx/sites-available/alanadi.com /etc/nginx/sites-enabled/
sudo rm /etc/nginx/sites-enabled/default
Adım 5: Nginx Test ve Yeniden Başlatma
bash
sudo nginx -t && sudo systemctl reload nginx
Adım 6: Alan Adı Yönlendirmesi
Alan adının kontrol paneline girip bir A kaydı ekle:
- Name: @ (veya boş)
- Value: VPS IP adresin
Adım 7: Uygulamada config.yml
Ayarı
yaml
Secure: false # HTTPS aktif değilse false kalmalı
trustProxy: true # Reverse proxy kullanıyorsan true
URL ve callback adreslerinin domain ile aynı olduğuna emin ol.
SSL Kurulumu (HTTPS Etkinleştirme)
SSL ile HTTPS aktif hale gelir. Daha güvenlidir.
bash
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d alanadi.com -d www.alanadi.com
- Geçerli bir e-mail gir.
- Terms of Service kabul et.
- 2 yazarak HTTP'den HTTPS'e yönlendirme seç.
Birden Fazla Uygulama Hostlama
Her uygulama farklı port kullanmalı:
- pizza.com → localhost:3000
- panel.pizza.com → localhost:3001
Her biri için ayrı Nginx dosyası oluştur ve server_name
'i doğru gir.
TIP
Tebrikler! Artık Pizza panelini / bot dashboard'unu alan adından çalıştırıyorsun. SSL, yönlendirme ve proxy düzgün çalışıyor.