nginx 1.16.0 發布

經過一年的發展 提出了 高效能 HTTP 伺服器和多協定代理伺服器的新穩定分支 nginx 1.16.0,吸收了主分支 1.15.x 中累積的變化。 未來,穩定分支1.16中的所有變更都將與消除嚴重錯誤和漏洞有關。 nginx 1.17的主分支即將形成,新功能的開發將在其中繼續進行。 對於沒有確保與第三方模組相容的任務的普通用戶來說, 建議 使用主分支,在此基礎上每三個月形成一次商業產品 Nginx Plus 版本。

1.15.x 上游分支開發過程中添加的最顯著的改進:

  • 新增了在 ' 指令中使用變數的功能ssl_certificate'我'ssl_證書_密鑰',可用於動態載入憑證;
  • 新增了從變數載入 SSL 憑證和金鑰而無需使用中間檔案的功能;
  • 在區塊“上游» 實作新指令 «隨機「,借助它,您可以透過隨機選擇伺服器來轉發連線來組織負載平衡;
  • 在模組中 ngx_stream_ssl_preread 變數實施 $ssl_preread_protocol,
    它指定客戶端支援的 SSL/TLS 協定的最高版本。 該變數允許 建立配置 在使用 http 和 Stream 模組代理流量時,透過一個網路連接埠使用各種帶或不帶 SSL 的協定進行存取。 例如,要透過一個連接埠組織透過 SSH 和 HTTPS 的訪問,可以預設將連接埠 443 轉送到 SSH,但如果定義了 SSL 版本,則轉送至 HTTPS。

  • 上游模組中新增了一個新變數“$upstream_bytes_sent”,顯示傳輸到群組伺服器的位元組數;
  • 至模組 在一個會話中,增加了處理來自客戶端的多個傳入 UDP 資料封包的能力;
  • 該指令“代理請求",指定從客戶端接收到的資料封包數量,達到該數量後,客戶端與現有 UDP 會話之間的綁定將會被刪除。 接收到指定數量的資料封包後,從同一客戶端接收到的下一個資料封包開始新的會話;
  • Listen 指令現在能夠指定連接埠範圍;
  • 新增指令“ssl_early_data» 啟用該模式 0-RTT 使用 TLSv1.3 時,它允許您保存先前協商的 TLS 連線參數,並在恢復先前建立的連線時將 RTT 數量減少到 2;
  • 新增了新指令來設定傳出連線的 keepalive(啟用或停用套接字的 SO_KEEPALIVE 選項):

  • 在指令中“限制_請求” 新增了一個新參數“delay”,該參數設定了延遲冗餘請求的限制;
  • 新指令「keepalive_timeout」和「keepalive_requests」已新增至「upstream」區塊中,以設定 Keepalive 的限制;
  • 「ssl」指令已被棄用,取而代之的是「listen」指令中的「ssl」參數。 現在,當在設定中使用帶有「ssl」參數的「listen」指令時,可以在配置測試階段偵測到遺失的 SSL 憑證;
  • 當使用reset_timedout_connection指令時,當逾時到期時,連線將關閉,並顯示444代碼;
  • SSL 錯誤「http 請求」、「https 代理請求」、「不支援的協定」和「版本太低」現在顯示在日誌中,等級為「info」而不是「crit」;
  • 使用Windows Vista及更高版本時增加了對Windows系統上poll方法的支援;
  • 使用的可能性 TLSv1.3 使用 BoringSSL 函式庫(而不僅僅是 OpenSSL)建置時。

來源: opennet.ru

添加評論