nginx (mühərrik x) açıq mənbə, bir nəfərlik əks proxy və poçt proxy server, həmçinin Linux, BSD və Windows üçün yüksək performanslı və yüngül bir web (HTTP) serverdir əməliyyat sistemləri.
Bir baxışda xüsusiyyətləri
Önəmli məqamlara SCGI, FastCGI, uwsgi və memcached serverləri, modul arxitekturası, həmçinin TLS SNI və SSL dəstəyi ilə önbellekləmə, sürətləndirilmiş dəstəyi ilə sürətləndirilmiş tərs proksiya daxildir.
E-poçt proxy serverində SSL (Secure Sockets Layer), STLS, STARTTLS şifreli protokolları, IMAP, POP3 və SMTP üçün bir neçə identifikasiya metodları, POP3 və ya IMAP serverlərinə istifadəçi yönləndirilməsi, həmçinin istifadəçi identifikasiyası və əlaqə redirection . Digər maraqlı xüsusiyyətlər arasında, kqueue, sendfile, File AIO, DIRECTIO, qəbul filterləri və daha çox şeyləri dəstəkləmək olar.
FastCGI və ya proxied serverlər tərəfindən idarə edildikləri təqdirdə birdən çox sayda SSI daxilolmalarını tək bir veb səhifəsində eyni anda işləyə bilər. Əlavə olaraq, proqramın HTTP server bölməsi HTTP referer, MP4 və FLV axını, əlaqədar Perl, cavab dərəcəsinin məhdudlaşdırılması, 3xx-5xx səhv kodlarının istiqamətləndirilməsi, həmçinin boru olunmuş və saxlanılan keçidlərin dəstəklənməsini dəstəkləyir.
Dizayn və statik faylların serverləri
Proqram, həm endeks və statik fayllara xidmət edə bilər, istifadəçilərə xəta tolerantlığı və sadə yük balansı, XSLT, gzipping, SSI, şəkil transformasiyası, yığılmış cavablar və bayt aralıkları kimi müxtəlif filtreler təqdim edir.
Asan, mantiqlı və çevik konfiqurasiyanı təmin edən bir neçə tanınmış veb-sayt, istifadəçilərini yüksək keyfiyyətli və unikal məlumatlarla təmin etmək üçün nginx proqramından istifadə edir. Bunlar arasında Wordpress.com, Netflix və FastMail.FM qeyd etmək olar.
Dəstəklənən əməliyyat sistemləri
Hazırda nginx Linux 2.2-3 (32 bit), Linux 2.6-3 (64 bit), FreeBSD 3-10 (32 bit), FreeBSD 5-10 (64- Solaris 9 (32 bit), Solaris 10 (32 bit və 64 bit), AIX 7.1 (PowerPC), HP-UX 11.31 (IA64), Mac OS X (PowerPC və 32 bit), Windows XP və Windows Server 2003.
Bu sürümdə yeni :
- nginx-1.12.0 sabit versiyası buraxılmış, yeni xüsusiyyətləri və 1.11 .x anakart şöbəsi - dəyişənlərə dəstək və stream modulunda digər təkmilləşdirmələr, HTTP / 2 düzeltmeleri, müxtəlif növ SSL sertifikatlarının dəstəklənməsi, təkmilləşdirilmiş dinamik modul dəstəyi və daha çox.
- nginx-1.12.0 sabit versiyası çıxarılıb, xüsusiyyətləri və 1.11.x anakart şöbəsindən hata düzeltmelerini - dəyişənlərə dəstək və stream modulunda digər təkmilləşdirmələr, HTTP / 2 düzeltmelerini, müxtəlif SSL sertifikatlara dəstək, təkmilləşdirilmiş dinamik modul dəstəyi və daha çox daxil olmaqla.
- Təhlükəsizlik: DNS-server cavab mübadiləsi zamanı etibarsız göstərici sızması "qətnamə" işəgötürmə prosesində segmentatma fayının yaranmasına səbəb olmaq üçün DNS serverindən UDP paketlərini yarada bilən bir təcavüzkarın icazə verdiyi təlimat (CVE-2016-0742).
- Təhlükəsizlik: CNAME cavab işləməsi zamanı istifadə edildikdən sonra pulsuz vəziyyət ola bilər, əgər "resolver" (CVE-2016-0746) bir işçi prosesində seqmentləşdirmə səhvinə səbəb olmaq üçün adı qətnaməsini tetikleyebilen bir təcavüzkarın istifadəsinə dair direktiv istifadə edilmişdir.
- Təhlükəsizlik: CNAME həlli kifayət qədər məhdudlaşdırıldı, əgər "resolver" işəgötürmə proseslərində (CVE-2016-0747) həddindən artıq resurs istehlakına səbəb olmaq üçün özbaşına adın qətnaməsini tetikleyebilen bir təcavüzkarın icazə verdiyi təlimatdır.
- Bugfix: "proxy_protocol" & quot; "qulaq asmaq" parametri; ilk təlimatında "qulaq" deyilməmişsə, direktiv işə yaramadı. qulaq asmaq üçün direktiv.
- Bugfix: nginx bəzi köhnə Linux variantları ilə başlamamış ola bilər; səhv 1.7.11-də göründü.
- Bugfix: "try_files" işarəsi prosesində bir segmentasiya səhvi ola bilər. və "alias" nizamnamə ilə verilmiş bir yerin içərisində direktivlər istifadə edilmişdir; səhv 1.7.1-də göründü.
- Bugfix: "try_files" & quot; nizamnamədə verilmiş bir yuva içərisindəki "direktiv" yanlış şəkildə işləmişdirsə, "alias" xarici yerlərdə direktiv istifadə edilmişdir.
- Bugfix: "artıq gönderilen başlıq" önbellek istifadə edərkən siqnallar loglarda görünə bilər; səhv 1.7.5-də göründü.
- Bugfix: fərqli ssl_session_cache parametrləri müxtəlif virtual serverlərdə istifadə edildikdə, bir işçi prosesində bir segmentasiya səhvi ola bilər.
- Bugfix: "başa çatır" & quot; dəyişənləri istifadə edərkən direktiv işləməyəcək.
- Bugfix: nginx ngx_http_spdy_module ilə qurulursa SPDY protokolunu "spdy" kimi istifadə etmək olardı. "qulaq asmaq" parametri; direktiv göstərilməyib.
- 1.7.x ana hattı hash yükü balanslaşdırma metodu, backend SSL sertifikatının yoxlanılması, eksperimental mövzu hovuzları dəstəyi, proxy_request_buffering və daha çox daxil olmaqla, şöbə.
- Change: indi nginx əvvəlcədən xəbərdar olduğunu bilirsə, "if-Modified-Since", "If-Range", və s. müştəri tələbi üstbilgi satırlarını bir backendə ötürülür. (məsələn, proxy_cache_min_uses istifadə edərkən) önlənə bilməz.
- Change: indi proxy_cache_lock_timeout nginx bir önyükleme önbelleğe alma ilə bir sorğu göndərir; "proxy_cache_lock_age", "fastcgi_cache_lock_age", "scgi_cache_lock_age" və "uwsgi_cache_lock_age" və "uwsgi_cache_lock_age"
- Özellik: "proxy_ssl_certificate", "proxy_ssl_certificate_key", "proxy_ssl_password_file", "uwsgi_ssl_certificate", "uwsgi_ssl_certificate_key" & quot; ve & quot; uwsgi_ssl_password_file & quot; direktivlər. Piotr Sikora sayəsində.
- Feature: indi "X-Accel-Redirect" istifadə edərək, adlandırılmış bir yerə keçmək mümkündür. Toshikuni Fukayaya təşəkkür edirəm.
- Feature: indi "tcp_nodelay" direktiv SPDY əlaqələri ilə işləyir.
- Xüsusiyyət: Vim sintaksisində yüksək tapşırıqlar üzrə yeni direktivlər. Peter Wu sayəsində.
- Bugfix: nginx, "s-maxage" "Cache-Control" & quot; backend cavab başlığı xətti. Piotr Sikora sayəsində.
- Bugfix: ngx_http_spdy_module. Piotr Sikora sayəsində.
- Bugfix: "ssl_password_file" & quot; OpenSSL 0.9.8zc, 1.0.0o, 1.0.1j istifadə edərkən direktiv.
- Bugfix: xəbərdarlıqlar & quot; zaten gönderilen başlıq & quot; əgər "post_action" & quot; direktiv istifadə edilmişdir; səhv 1.5.4-də göründü.
- Bugfix: alertlər "http çıxış zənciri boşdur" əgər "postpone_output 0" & quot; SGK daxilində direktiv istifadə edildi.
- Bugfix: "proxy_cache_lock" & quot; SSİ subrequests ilə direktiv. Yichun Zhang sayəsində.
- Təhlükəsizlik: birdən çox "server" üçün paylaşılan bir SSL seansı cache və ya eyni TLS sessiya bilet açarı istifadə olunarsa, əlaqəli olmayan kontekstlərdə SSL sessiyalarını təkrar istifadə etmək mümkün idi. blokları (CVE-2014-3616). Antoine Delignat-Lavaud sayəsində.
- Bugfix: resolver istifadə edildikdə istəklər asmaq və DNS server səhv bir cavab qaytardı; səhv 1.5.8-də göründü.
- Bugfix: resolver istifadə olunduqda istəklər asılıdır və DNS sorğusu zamanı bir zaman aşımı baş verdi.
- 1.6.1 versiyasında :
- Təhlükəsizlik: STARTTLS əmrindən sonra pipelined əmrləri atılmadı SMTP proxy (CVE-2014-3556); səhv 1.5.6-da ortaya çıxmışdı. Chris Boulton sayəsində.
- Bugfix: $ uri dəyişən səhvləri 400 kodu ilə qaytararkən zibil ehtiva edə bilər. Sergey Bobrov sayəsində.
- Bugfix: "heç" & quot; "smtp_auth" parametresindeki parametre; direktiv; səhv 1.5.6-da ortaya çıxmışdı. Svyatoslav Nikolskiyə təşəkkür edirəm.
Sürüm 1.6.0'da nə yeni :
- Bu sabit versiya, müxtəlif SSL təkmilləşdirmələri, SPDY 3.1 dəstəyi, şərti istəklər ilə yaddaş yenidənqurma, auth istek modulu və daha çox daxil olmaqla, 1.5.x əsas şəffaflıq bir çox yeni xüsusiyyətləri birləşdirir.
- Təhlükəsizlik: bir yığın yaddaş arabellek taşması meydana gələ bilər 1.4.7 versiyasında ngx_http_spdy_module tərəfindən xüsusi hazırlanmış bir istifadəni işləyərkən işçi prosesi, potensial olaraq, özbaşına kodun icrasına (CVE-2014-0133) səbəb olur.
Argentinanın Buenos-Ayres şəhərindəki Fundacion Dr. Manuel Sadosky, Programa STIC'teki araştırmacı Lucas Molas'a teşekkürler. - Bugfix: "fastcgi_next_upstream" & quot; direktiv. Lucas Molas'a təşəkkür edirəm.
- Bugfix: "client_max_body_size" & quot; buraxılmış köçürmə şifrələməsini istifadə edərək istək orqanı oxuduğunda direktiv işləməyəcək; səhv 1.3.9-da ortaya çıxmışdı. Lucas Molas'a təşəkkür edirəm.
- Bugfix: WebSocket bağlantılarını proxying zaman işçi prosesində bir segmentasiya səhvi ola bilər.
- Bugfix: $ ssl_session_id değişkeni, yalnız bir oturum kimliği yerine serbest tam oturum içerdi. İvan Ristik sayəsində.
- Bugfix: təxirə salınmış qəbul istifadə olunduqda müştəri əlaqələri dərhal bağlana bilər; səhv 1.3.15-də göründü.
- Bugfix: siqnallar, "çıxışda sıfır ölçülü buf" proxying isə logs görünür bilər; səhv 1.3.9-da göründü.
- Bugfix: ngx_http_spdy_module istifadə olunduqda bir işçi prosesində bir segmentasiya səhvi ola bilər.
- Bugfix: seçilmiş, sorğu və ya / dev / poll üsulları istifadə edildikdə proxied WebSocket əlaqələri əl-ələ verildikdən sonra dayana bilər.
- Bugfix: yığılmış transfer kodlaşdırma istifadə edərək SSL bağlantısında müştəri istək orqanını oxuyarkən bir zaman aşımı ola bilər.
- Bugfix: nginx / Windows-də yaddaş sızması.
- Bu sürüm, sorğu satırında ayrıştırma üçün bir düzeltme təqdim edir Google Təhlükəsizlik Qrupunun (CVE-2013-4547) Ivan Fratric tərəfindən aşkar edilən nginx 0.8.41 - 1.5.6 zəifliyi.
- Təhlükəsizlik: xüsusi hazırlanmış bir sorğu işləyərkən işçi prosesində yığma əsaslı bir tampon daşması meydana çıxa bilər, potensial olaraq özbaşına kodun icrasına yol aça bilər (CVE-2013-2028); səhv 1.3.9-da ortaya çıxmışdı. Greg MacManus, iSIGHT Partners Labs sayəsində.
Sürüm 1.4.5-də yeni nə :
Sürüm 1.5.0'da nə yeni :
Sürüm 1.8.1'de yeni :
Sürüm 1.8.0'da :
1.7.8 versiyasında yeni :
Sürüm 1.6.2'de yeni :
Şərhlər tapılmadı