關於nginx

簡介

Nginx (engine x) 是一個高性能的HTTP和反向代理web服務器,同時也提供了IMAP/POP3/SMTP服務和通用TCP / UDP代理服務器;
Nginx是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器和通用TCP / UDP代理服務器;

功能

基本的HTTP服務器功能

  • 提供靜態和索引文件,自動索引 ;
  • 帶有緩存的加速反向代理; 負載平衡和容錯 ;
  • 對FastCGI, uwsgi, SCGI和 memcached 服務器進行緩存的加速支持 ; 負載平衡和容錯 ;
  • 模塊化架構。過濾器包括 gzipping,字節範圍,分塊響應, XSLT, SSI和圖像轉換過濾器。如果由代理服務器或FastCGI / uwsgi / SCGI服務器處理單個頁面中的多個SSI包含,則可以並行處理;
  • SSL和TLS SNI支持;
  • 通過加權和基於依賴項的優先級 支持HTTP 2.0。

    其他HTTP服務器功能

  • 基於名稱和基於IP的虛擬服務器;
  • 管道連接支持;
  • 訪問日誌格式, 緩衝日誌寫入, 快速日誌循環和 syslog日誌 ;
  • 3xx-5xx錯誤代碼重定向;
  • 重寫模塊:使用正則表達式更改URI;
  • 根據客戶地址執行不同的功能 ;
  • 基於客戶端IP地址,密碼(HTTP基本身份驗證)和子請求結果的訪問控制 ;
  • FLV 和 MP4 流媒體;
  • 響應率限制 ;
  • 限制來自一個地址的同時連接或請求的數量 ;
  • 基於IP的地理位置;
  • 拆分測試 ;
  • 請求鏡像 ;
  • 嵌入式Perl ;
  • njs腳本語言。

    郵件代理服務器功能

  • 使用外部HTTP 身份驗證 服務器 將用戶重定向到 IMAP 或 POP3服務器
  • 使用外部HTTP 身份驗證 服務器的用戶身份 驗證以及到內部SMTP服務器的連接重定向 ;
  • 認證方式:
    • POP3:USER / PASS,APOP,AUTH LOGIN / PLAIN / CRAM-MD5;
    • IMAP:登錄,授權登錄/普通/ CRAM-MD5;
    • SMTP:AUTH LOGIN / PLAIN / CRAM-MD5;
  • SSL支持;
  • STARTTLS和STLS支持。

    TCP / UDP代理服務器功能

  • TCP和UDP的通用代理;
  • SSL和TLS SNI對TCP的支持;
  • 負載平衡和容錯 ;
  • 基於客戶地址的訪問控制 ;
  • 根據客戶地址執行不同的功能 ;
  • 限制 來自一個地址的同時連接數 ;
  • 訪問日誌格式, 緩衝日誌寫入, 快速日誌循環和 syslog日誌 ;
  • 基於IP的地理位置;
  • 拆分測試 ;
  • njs腳本語言。

    架構和可擴展性

  • 一個主進程和多個子進程;工作進程可以再任何用戶下運行;
  • 靈活的配置 ;
  • 重新配置 和升級可執行文件,而不會中斷客戶端服務;
  • 支持 kqueue(FreeBSD 4.1 +),epoll(Linux 2.6 +),/ dev / poll(Solaris 7 11/99 +),事件端口(Solaris 10),選擇和輪詢;
  • 支持各種隊列功能,包括EV_CLEAR,EV_DISABLE(用於臨時禁用事件),NOTE_LOWAT,EV_EOF,可用數據數,錯誤代碼;
  • 支持各種epoll功能,包括EPOLLRDHUP(Linux 2.6.17 +,glibc 2.8+)和EPOLLEXCLUSIVE(Linux 4.5 +,glibc 2.24+);
  • sendfile(FreeBSD 3.1 +,Linux 2.2 +,macOS 10.5 +),sendfile64(Linux 2.4.21+)和sendfilev(Solaris 8 7/01 +)支持;
  • 文件AIO (FreeBSD 4.3+,Linux 2.6.22+);
  • DIRECTIO (FreeBSD 4.4 +,Linux 2.4 +,Solaris 2.6 +,macOS);
  • 接受過濾器(FreeBSD 4.1+,NetBSD 5.0+)和TCP_DEFER_ACCEPT(Linux 2.4+) 支持 ;
  • 10,000個不活動的HTTP保持活動連接大約需要2.5M內存;
  • 數據複製操作保持最少。

    適用平臺

  • FreeBSD 3 — 12 / i386; FreeBSD 5 — 12 / amd64; FreeBSD 11 / ppc;
  • FreeBSD 12 / ppc64;
  • Linux 2.2-4 / i386;Linux 2.6-5 / amd64; Linux 3-4 / armv6l,armv7l,aarch64,ppc64le;
  • Solaris 9 / i386,sun4u; Solaris 10 / i386,amd64,sun4v; Solaris 11 / x86;
  • AIX 7.1 / PowerPC;
  • HP-UX 11.31 / ia64;
  • macOS / ppc,i386,x86_64;
  • Windows XP,Windows Server 2003,Windows 7,Windows 10。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章