İçeriğe geç
parazade

Nginx Nedir?

Yayın: · Son güncelleme:

Nginx Nedir? Kısaca

Nginx (engine-x diye okunur), web sitelerini sunmak, gelen istekleri arka uygulamalara iletmek ve yükü sunucular arasında dağıtmak için kullanılan açık kaynaklı, yüksek performanslı bir web sunucusudur.

Nginx nedir?
İçindekiler
  1. Nginx nedir?
  2. Ne işe yarar?
  3. Nginx ne demek, nasıl yapılandırılır?

Nginx, ziyaretçiden gelen HTTP isteklerini karşılayan ve cevabı gönderen bir web sunucusu yazılımıdır. Aynı anda çok sayıda bağlantıyı az bellekle yönetebildiği için yoğun trafikli sitelerde yaygın biçimde tercih edilir.

Nginx nedir?

Yazılım, 2000'li yılların başında Igor Sysoev tarafından aynı anda binlerce bağlantıyı verimli yönetme sorununa çözüm olarak geliştirildi. Her bağlantı için ayrı süreç açmak yerine olay güdümlü bir yapı kullanır. Bu sayede binlerce eşzamanlı ziyaretçi, sunucunun belleğini hızla tüketmez.

Ne işe yarar?

Üç ana rolü vardır ve çoğu zaman aynı anda üstlenir:

  • Web sunucusu: HTML, CSS, görsel gibi statik dosyaları hızla sunar.
  • Reverse proxy: İstekleri arkadaki Node.js, Python ya da PHP uygulamasına iletir.
  • Yük dengeleyici: Trafiği birden fazla uygulama sunucusuna dağıtır.

Ayrıca HTTPS sertifikasını yönetebilir, sık istenen yanıtları önbelleğe alabilir ve belirli IP'lerden gelen aşırı istekleri sınırlayabilir.

Nginx ne demek, nasıl yapılandırılır?

Ayarlar düz metin yapılandırma dosyalarında tutulur. Varsayımsal basit bir örnek:

server {
    listen 80;
    server_name ornek.com;
    location / {
        proxy_pass http://127.0.0.1:3000;
    }
}

Bu blok, ornek.com'a gelen istekleri aynı makinede 3000 portunda çalışan uygulamaya iletir. Değişiklikten sonra nginx -t komutuyla yapılandırmayı test edip ardından yeniden yüklemek, küçük bir yazım hatasının siteyi kapatmasını önler. Apache ile karşılaştırıldığında Nginx statik içerikte ve çok sayıda bağlantıda genellikle daha az kaynak harcar.

Sıkça Sorulan Sorular

Nginx ne demek, nasıl okunur?

Nginx, "engine-x" şeklinde okunur ve bir web sunucusu yazılımının adıdır. Kelime anlamından çok, yazılımın kendisini ifade eder.

Nginx ücretsiz mi?

Açık kaynaklı sürümü ücretsizdir ve çoğu ihtiyacı karşılar. Ek yönetim ve destek özellikleri sunan ticari bir sürümü de bulunur.

İlgili terimler

Web Sunucusu(Web Server)Web sunucusu, tarayıcılardan HTTP veya HTTPS üzerinden gelen istekleri karşılayan ve karşılığında web sayfası, görsel ya da veri gönderen yazılımdır. Bu yazılımın çalıştığı bilgisayara da web sunucusu denir.Reverse ProxyReverse proxy (ters vekil sunucu), ziyaretçilerden gelen istekleri karşılayıp arkadaki bir ya da birden fazla sunucuya ileten ve cevabı ziyaretçiye geri döndüren aracı sunucudur.Yük Dengeleme(Load Balancing)Yük dengeleme (load balancing), gelen trafiği birden fazla sunucu arasında dağıtarak hiçbir sunucunun aşırı yüklenmemesini ve hizmetin kesintisiz sürmesini sağlayan yöntemdir.LinuxLinux, Linus Torvalds'ın 1991'de geliştirmeye başladığı açık kaynaklı bir işletim sistemi çekirdeğidir. Gündelik dilde bu çekirdek üzerine kurulu Ubuntu, Debian gibi işletim sistemlerinin tamamı için kullanılır.HTTPHTTP (Hypertext Transfer Protocol), tarayıcı gibi istemciler ile web sunucuları arasında web sayfası, görsel ve veri alışverişini düzenleyen iletişim protokolüdür. İstek ve yanıt mantığıyla çalışır.Yazılım(Software)Yazılım, bir bilgisayarın ya da akıllı cihazın ne yapacağını adım adım tarif eden programların, verilerin ve talimatların bütünüdür. Donanım fiziksel parçaları, yazılım ise bu parçaları çalıştıran mantığı ifade eder.Node.jsNode.js, JavaScript kodunu tarayıcı dışında, yani sunucuda ve bilgisayarda çalıştırmayı sağlayan açık kaynaklı bir çalışma ortamıdır. Chrome'un V8 motorunu kullanır ve web sunucuları, API'ler ve komut satırı araçları için yaygındır.