Nginx Nedir? Nasıl Kurulur?

Nginx, Igor Sysoev tarafından yazılmış, 2002 yılında resmi olmayan şekilde duyurulmuş ancak ilk resmi duyurusu 2004 yılı sonlarında olan açık kaynak kodlu bir web sunucusudur.

AA

Unix temelli sistemler (Linux, macOS), Windows, Solaris gibi bir çok işletim sistemi üzerinde çalışabilir. Nginx (Engine X)1, yüksek performans ve eş zamanlı çalışma kabiliyetinin yanı sıra düşük hafıza kullanımına odaklanmaktadır2. Diğer yandan, Reverse Proxy Server (Ters Vekil Sunucu), Load Balancing (Yük Dengeleyici) ve HTTP request caching imkanları sunmaktadır. Netcraft tarafından 2008 yılında yapılan araştırmada Nginx’in 1,018,503 domain tarafından kullanıldığı ve genel sıralamada 6. en popüler server olduğu saptanmış3. 2017 yılı başındaki verilere bakıldığında kullanım yoğunluğunun daha da genişlediği, Apache ile olan rekabetin daha da güçlendiği görülmektedir4 5.

Netcraft nginx

Haziran, 2020 verilerine göre Nginx, W3Techs tarafından erişilebilen tüm web sitelerinin 32,5%'i tarafından kullanılmaktadır6.

Yüksek trafikli ve yoğun isteğe sahip web siteleri için biçilmiş oldukça yüksek performan sunan Nginx7, single thread yanıt yapısıyla sayfa açılma hızında etkili bir artış sağlayabilmektedir. Bu işlemler kullanılan kaynaklar bazında Nginx diğer Apache ve Litespeed gibi web serverlarla karşılaştırıldığında çok daha az CPU kullanımına ihtiyaç duyar8. Bu nedenle Nginx VPS sunucular için de öncelikli olarak tercih edilmektedir.

Diğer yandan, Reverse Proxy işlemleri için Nginx ve Apache yetenekleri bir arada kullanılabilmektedir9.

Bu arada, Apache düzenlemelerinizin yer aldığı .htaccess içeriğini Ngix konfigürasyonuna dönüştürmek isterseniz winginx.com/en/htaccess sayfasını kullanabilirsiniz10.

Nginx Kurulumu

DigitalOcean hazır paketleri arasında yer alan LEMP ile kolaylıkla ngix server edinmeniz mümkün.

macOS Üzerinde Nginx Kurulumu

Homebrew ile kolaylıkla kurulum işlemini yürütebiliriz.

brew install nginx

Kurulumun tamamlanmasının ardından sunucuyu çalıştıralım.

sudo nginx

Her şey yolunda gitmişse artık internet tarayımız üzerinden http://localhost:8080 adresini görüntüleyebiliriz.

Ubuntu Üzerinde Nginx Kurulumu

Apt ile kolaylıkla paket kurulum işlemini gerçekleştirebiliriz.

sudo apt-get update
sudo apt-get install nginx

Kurulumun tamamlanmasının ardından port kontrolü yapmamız uygun olacaktır.

sudo ufw app list

Komut sonrasında erişilebilir uygulamalar listesi olarak şöyle bir dönüş almanız gerekecektir.

Nginx Full
Nginx HTTP
Nginx HTTPS
OpenSSH

Nginx HTTP ve Nginx HTTPS profilleri için izin oluşturalım ve ardından güncel listemizi görüntüleyelim. ufw komut kullanımı ve port işlemleri ile ilgili olarak UFW ve güvenlik Duvarı İşlemleri başlıklı yazıyı inceleyebilirsiniz.

sudo ufw allow 'Nginx HTTP'
sudo ufw allow 'Nginx HTTPS'
sudo ufw status

Sunucu durumunu kontrol edip eğer çalışmıyorsa sunucuyu başlatalım.

sudo systemctl status nginx
sudo systemctl start nginx

Bu işlemler esnasında bir hata söz konusu olmamış ise internet tarayımız üzerinden sunucu ip adresi üzerinden http://sunucu-ip-adresi:8080 sayfa görüntülemeye başlayabiliriz.