Nginx - Nowoczesny serwer HTTP i FastCGI
nginx [engine x] jest serwerem HTTP oraz serwerem proxy IMAP/POP3 tworzonym przez Igora Sysoeva. Serwer ten wykorzystywany jest na wielu Rosyjskich portalach internetowych poddawanych dużemu obciążeniu. Nginx wydawany jest na licencji BSD. Wg. raportu netcraft z grudnia 2006 serwer nginx wykorzystywany był na 114160 domenach, lighttpd na 178619. Nginx wykorzystywany jest na rambler.ru czy na blog.zabiello.com :nice: Niniejsza dokumentacja to tłumaczenie anglojęzycznej wiki oraz innych artykułów dostępnych w sieci.
- Instalacja Nginx
- Przykładowe konfiguracje Nginx
- Monitoring statystyk serwera Nginx za pomocą rrdtool
- Główny moduł HTTP Nginx
- Moduł Zdarzeń HTTP Nginx
- Moduł HTTP Nginxa
- ngx_http_access_module
- ngx_http_auth_basic_module
- ngx_http_autoindex_module
- ngx_http_browser_module
- ngx_http_charset_module
- ngx_http_dav_module
- ngx_http_fastcgi_module
- ngx_http_flv_module
- ngx_http_gzip_module
- ngx_http_headers_module
- ngx_http_index_module
- ngx_http_upstream
- ngx_http_memcached_module
- ngx_http_rewrite_module
Podstawowe funkcjonalności HTTP
- Obsługa statycznych plików, plików index i autoindeksowanie
- Przyśpieszone reverse proxy bez keszowania, prosty load balancing
- Wsparcie dla FastCGI bez keszowania z load balancing
- Budowa modularna, filtry (m.in. gzip, byte ranges, chunked responses, SSI)
- Wsparcie dla SSL
Funkcjonalności proxy IMAP/POP3
- Przekierowanie użytkownika do aplikacji IMAP/POP3 z wykorzystaniem zewnętrznego serwera uwierzytelniania HTTP
- Uwierzytelnianie: IMAP LOGIN, POP3 USER/PASS, APOP, AUTH LOGIN PLAIN CRAM-MD5
- Wsparcie dla SSL i STARTTLS
Wspierane systemy operacyjne i platformy
- FreeBSD 3.x, 4.x, 5.x, 6.x dla i386. FreeBSD 5.x, 6.x dla amd64
- Linux 2.2, 2.4, 2.6 dla i386. Linux 2.6 dla amd64
- Solaris 9 dla i386, sun4u; Solaris 10 dla i386
- MacOS X (10.4) dla ppc
Architektury i Skalowalność
- Jeden główny proces i kilka procesów sług (workers) nieuprzywilejowanego użytkownika
- Wsparcie dla kqueue (liczne funkcjonalności) (FreeBSD 4.1+), epoll (Linux 2.6+), rt signals (Linux 2.2.19+), /dev/poll (Solaris 7 11/99+), event ports (Solaris 10) i select
- Wsparcie sendfile (FreeBSD 3.1+), sendfile (Linux 2.2+), sendfile64 (Linux 2.4.21+) i sendfilev (Solaris 8 7/01+)
- Wsparcie accept-filter (FreeBSD 4.1+) i TCP_DEFER_ACCEPT (Linux 2.4+)
- 10 000 nieaktywnych połączeń HTTP keep-alive zajmuje około 2.5 MB RAM
- Zminimalizowana ilość operacji kopiowania danych
Inne Funkcjonalności
- Serwery wirtualne bazujące na IP i nazwie
- Wsparcie połączeń keep-alive i pipeline
- Elastyczna konfiguracja
- Aktualizacja i rekonfiguracja bez zaburzenia pracy procesów
- Przekierowania dla błędów 3XX-5XX
- Moduł Rewrite
- Kontrola dostępu na bazie IP i prostego uwierzytelniania HTTP
- Metody PUT, DELETE i MKCOL
- Streaming FLV (strumieniowa transmisja FLV)
- Ograniczanie prędkości
- Ograniczanie ilości równoczesnych połączeń z jednego adresu
RkBlog