Nginx Reverse Proxy Yapılandırması Nasıl Yapılır?
Blog Bilgileri
- Yazar: Fatih Kastalmiş
- E-Posta: fatih.kastalmis@gmail.com
- Kategori: Teknoloji
- Yayın Tarihi: 03 May 2025
Nginx Nedir, Kim Geliştirmiştir?
Nginx (Engine-X olarak telaffuz edilir), yüksek performanslı, düşük kaynak tüketimli ve ölçeklenebilir bir web sunucusu ve reverse proxy (ters vekil) yazılımıdır. 2000 li yılların başlarında, o dönemin web sunucularının yüksek trafik altında zorluk yaşaması üzerine geliştirilmeye başlanmıştır.
Nginx, ilk olarak Igor Sysoev isimli bir Rus yazılım mühendisi tarafından geliştirilmiştir. 2004 yılında açık kaynak olarak yayınlanan Nginx, kısa sürede popülerleşmiş ve günümüzde dünya genelinde milyonlarca web sitesinde kullanılmaktadır.
Başlıca kullanım alanları şunlardır:
- HTTP web sunucusu
- Reverse proxy (ters vekil)
- Load balancer (yük dengeleyici)
- Mail proxy
- Cache sunucusu
Nginx bu kadar tercih edilmesinin en büyük sebebi:
Yüksek trafikte dahi düşük bellek kullanımıyla stabil çalışmasıdır.
Reverse Proxy Nedir?
Reverse proxy, istemciden gelen istekleri alır ve bunları arka plandaki başka bir sunucuya yönlendirir. Böylece:
- Gerçek sunucu IP gizlenmiş olur,
- Trafik merkezi bir noktadan kontrol edilir,
- Güvenlik artar,
- Cache ile performans iyileştirmesi yapılabilir.
Neden Nginx Kullanmalıyız?
Nginx, hafif, hızlı ve yapılandırması kolay bir web sunucusudur. Aynı zamanda proxy görevini mükemmel şekilde yerine getirir. Özellikle yüksek trafikli sitelerde tercih edilir.
Adım Adım Nginx Reverse Proxy Kurulumu
💡Bu adımlar Ubuntu içindir. Farklı dağıtımlarda kurulum komutları değişebilir.
💡 Bu yazımda ben 84 numaralı portu kullanacağım, siz sisteminizde hangi port boşsa onu kullanabilirsiniz.
Eğer sunucunuzda bir güvenlik duvarı aktifse, seçtiğiniz portun (örneğin 84) açık olduğundan emin olun. UFW kullanıyorsanız şu komutla izin verebilirsiniz:
Aksi halde Nginx e dışarıdan erişim mümkün olmayabilir.
🔐 UFW (Uncomplicated Firewall), Ubuntu ve Debian tabanlı sistemlerde kullanılan basit ama etkili bir güvenlik duvarı aracıdır.
Ağ trafiğini kontrol etmek ve sadece izin verdiğiniz bağlantıların sunucunuza erişmesini sağlamak için kullanılır.
Nginx Kurulumu
İlk olarak Nginx sistemimize kurmamız gerekiyor. Ubuntu kullanıyorsanız terminale şu komutları yazabilirsiniz:
Konfigürasyon Dizini
Kurulum sonrası yapılandırma dosyaları genellikle şu dizinlerde yer alır:
Yeni bir reverse proxy yapılandırması oluşturmak için bir dosya oluşturalım:
Reverse Proxy Ayarları
listen 84; yazan yere istediğiniz bir portu yazabilirsiniz. Ben 84 kullandım, siz sisteminizde hangi port boşsa onu kullanın.
server_name seninsiten.com; Kendi domain adınızı buraya yazın
proxy_pass http://192.168.1.100:5000; Buraya yönlendirmek istediğiniz backend uygulamanın IP ve portu
Açıklama:
server_name: Domain adınız.proxy_pass: İsteklerin yönlendirileceği sunucu (IP veya domain).proxy_set_header: Doğru başlık bilgilerini iletmek için kullanılır.
Yapılandırmayı Etkinleştir
Yapılandırmayı Test Et
Herhangi bir hata olmadığından emin olmak için:
Her şey yolundaysa şu komutla Nginx yeniden başlatabilirsiniz:
Dikkat Edilmesi Gerekenler
💡Nginx çalışmıyorsa sudo systemctl status nginx komutuyla durumu kontrol edebilirsiniz.
- Üretim ortamına geçmeden önce konfigürasyonunuzu yedekleyin.
- Test ortamında denemeler yapmak en güvenli yoldur.
- Kötüye kullanım ve yasa dışı faaliyetlerden kesinlikle kaçının.
Sonuç
Nginx reverse proxy yapılandırması, web altyapınızı daha güvenli, daha hızlı ve daha esnek hale getirmek için oldukça etkili bir yöntemdir. İster mikroservis mimarisi kullanın, ister tek bir backend uygulamanız olsun, bu yöntem sayesinde sunucu yönetiminizi bir adım öteye taşıyabilirsiniz.
Hazırsan, bu yapılandırmayı kendi projen için hemen uygulamaya başlayabilirsin!
✨ Terminalini aç ve bu adımları kendi uygulamana entegre etmeye hemen başla! 🚀