NGINX Reverse Proxy Nedir?
Bir gün web siteniz bir anda çok fazla ziyaretçi almaya başlar. Artık her şeyin hızla yüklenmesini, güvenli olmasını ve kullanıcılara kusursuz bir deneyim sunulmasını istersiniz. İşte burada devreye NGINX Reverse Proxy girer. Eğer bir web uygulamanız varsa ve bu uygulama farklı sunucularda çalışıyorsa, NGINX Reverse Proxy, kullanıcıların doğru sunucuya yönlendirilmesini sağlar. Amaç, sunucu yükünü dengeli bir şekilde dağıtmak, güvenliği artırmak ve performansı optimize etmektir.
Bu yazıda, NGINX Reverse Proxy nasıl kurulur ve yapılandırılır, adım adım anlatacağız. Hazır mısınız? O zaman başlayalım!
Adım 1: NGINX'i Kurma
Öncelikle, NGINX’in sisteminizde yüklü olması gerekir. Çoğu Linux dağıtımında, NGINX’i paket yöneticisi aracılığıyla kolayca yükleyebilirsiniz.
Ubuntu/Debian üzerinde NGINX kurulumu:
kopyalasudo apt update sudo apt install nginx
Kurulum tamamlandığında, NGINX servisi otomatik olarak başlar. Bunu kontrol etmek için aşağıdaki komutu kullanabilirsiniz:
kopyalasudo systemctl status nginx
Eğer "active (running)" görüyorsanız, NGINX başarıyla kuruldu demektir.
Adım 2: Reverse Proxy Yapılandırması
Şimdi asıl işleme geçiyoruz: Reverse Proxy yapılandırması. NGINX, istemciden gelen istekleri alıp doğru sunucuya yönlendirebilir. Bu işlem için NGINX yapılandırma dosyasına bazı ayarları eklemeniz gerekiyor.
NGINX yapılandırma dosyasını açalım:
kopyalasudo nano /etc/nginx/sites-available/default
Yapılandırma dosyasını açtıktan sonra, aşağıdaki kodları ekleyin:
kopyalaserver { listen 80; server_name ornekdomain.com; # Burada kendi domain adınızı yazın location / { proxy_pass http://localhost:8080; # Burada hedef sunucunun adresini yazın 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; } }
Yukarıdaki yapılandırma, gelen her isteği localhost:8080 adresine yönlendirecek şekilde ayarlanmıştır. Tabii, siz burada kendi web uygulamanızın portunu kullanmalısınız.
Adım 3: NGINX’i Yeniden Başlatma
Yapılandırma dosyasını kaydedip kapattıktan sonra, NGINX servisini yeniden başlatmamız gerekiyor ki, yeni yapılandırmalar geçerli olsun.
kopyalasudo systemctl restart nginx
Yeniden başlatma işlemi tamamlandıktan sonra, Reverse Proxy’nin çalışıp çalışmadığını kontrol edebiliriz.
Adım 4: Test Etme
Şimdi her şey hazır. Tarayıcınızı açıp, http://ornekdomain.com adresini yazın. Eğer her şey doğru yapılandırıldıysa, sizi localhost:8080 adresindeki uygulamanıza yönlendirecektir.
Eğer yönlendirme yapılmazsa, log dosyalarını kontrol etmek iyi bir fikir olabilir. NGINX loglarını incelemek için şu komutu kullanabilirsiniz:
kopyalasudo tail -f /var/log/nginx/error.log
Bu, olası hataları anlamanızı ve sorunu çözmenizi sağlar.
Adım 5: Güvenliği Artırmak İçin SSL/TLS Yapılandırması
Yönlendirmeleri daha güvenli hale getirmek için SSL/TLS yapılandırması eklemek her zaman iyi bir fikirdir. SSL sertifikası almak için Let’s Encrypt gibi ücretsiz çözümler kullanabilirsiniz.
Örnek bir SSL yapılandırması şöyle olabilir:
kopyalaserver { listen 443 ssl; server_name ornekdomain.com; ssl_certificate /etc/letsencrypt/live/ornekdomain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/ornekdomain.com/privkey.pem; location / { proxy_pass http://localhost:8080; 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; } }
SSL sertifikasını alıp bu yapılandırmayı ekledikten sonra, HTTPS üzerinden güvenli bağlantılar sağlanacaktır.
Sonuç
Ve işte NGINX Reverse Proxy yapılandırması bu kadar basit! Yük dengeleme, güvenlik artırma ve verimli yönlendirme sağlayarak web uygulamanızın performansını ciddi şekilde iyileştirebilirsiniz. Artık, tek bir sunucuya gelen yükü yönetmektense, birden fazla sunucuya yönlendirme yaparak sistemin genel verimliliğini arttırabilirsiniz.
Unutmayın, her şey doğru yapılandırıldığında web siteniz daha hızlı, güvenli ve kullanıcı dostu hale gelir. Yavaş yüklenen sayfalar veya kesintili erişim sorunları artık geçmişte kalacak!