Ngnx bir HTTP ve ters proxy, eposta ve generic TCP/UDP proxy sunucusudur. İgır Sysoev tarafından geliştirilmiştir. Buradaki bilgileri https://nginx.org/en/ adresinden alınmıştır.

HTTP Sunucu Özellikleri

  • Statik ve indesk dsyalarının sunumu, otomatik indeksleme,
  • Hızlı reverse proxyleme
  • FastCGI, uwsgi, SCGI, and memcached sunucuları için önbellekleme desteği
  • Modüler mimari
  • SSL ve TLS SNI desteği
  • HTTP/2 desteği
  • İsim ve IP tabanlı sanal sunucular
  • Erişim log biçimlendirme, buffer kullanarak logyazımı, hızlı log döndürme
  • 3xx-5xx hata kodları yeniden yönlendirme;
  • Regular expression ile URI değiştirme
  • İstemci adresine göre farklı fonksiyonlar çalıştırma
  • İstemci adresine göre erişim kontrolü
  • Bir adresten aynı anda gelengelen bağlantı taleplerini sınırlama
  • IP tabanlı konumlandırma
  • Script desteği
  • PUT, DELETE, MKCOL, COPY, and MOVE mettotları
  • HTTP referer geçerleme
  • FLV ce MP4 streaming
  • Response hızı sınırlandırma
  • Perl desteği

e-Posta  Proxy Sunucusu Özellikleri

  • Dış HTTP yetkilendirme sunucusu kullanılarak kullanıcının IMAP ya da POP3’e yönlendirilmesi.
  • Dış HTTP yetkilendirme sunucusu kullanılarak kullanıcının yetkilendiirlmesi ve iç SMTP sunucuya yönlendirilmesi
  • Yetkilendirme metotları:
    • POP3: USER/PASS, APOP, AUTH LOGIN/PLAIN/CRAM-MD5;
    • IMAP: LOGIN, AUTH LOGIN/PLAIN/CRAM-MD5;
    • SMTP: AUTH LOGIN/PLAIN/CRAM-MD5;
  • SSL desteği;
  • STARTTLS and STLS support.

TCP/UDP Proxy Sunucusu Özellikleri

  •  TCP ve UDP için generic proxy;
  • TCP için SSL  TLS SNI desteği
  • Yük dengeleme ve hata toleransı
  • İstemci adresine göre erişim kontrolü
  • İstemci adresine göre farklı fonksiyonların icrası
  • Bir adresten aynı anda gelengelen bağlantı taleplerini sınırlama
  • Erişim log biçimlendirme, buffer kullanarak logyazımı, hızlı log döndürme
  • IP tabanlı konumlandırma
  • Script desteği

Mimari ve Genişletilebilirlik

  • Ana proses ve işçi proseslerden oluşur.
  • Esnek konfigürasyon
  • Yeniden konfigürasyon ya da güncellmede hizmet kesintisi yaşanmaz.
  • Reconfiguration and upgrade of an executable without interruption of the client servicing;
  • 10000 aktif olmayan HTTP bağlantısı hafızada yaklaşık 2.5MB yer kaplar
  • Veri kopyalama işlemleri en az seviyededir.

 

Test Edildiği İşletim Sistemleri

  • FreeBSD 3 — 11 / i386; FreeBSD 5 — 11 / amd64;
  • Linux 2.2 — 4 / i386; Linux 2.6 — 4 / amd64; Linux 3 nginScript.— 4 / armv6l, armv7l, aarch64, ppc64le;
  • Solaris 9 / i386, sun4u; Solaris 10 / i386, amd64, sun4v;
  • AIX 7.1 / powerpc;
  • HP-UX 11.31 / ia64;
  • macOS / ppc, i386;
  • Windows XP, Windows Server 2003.

Referans

https://nginx.org/en/