NGINX is an advanced Internet infrastructure software.

Nginxは9月22日(米国時間)、「NGINX Open Source 1.9.5 Released with HTTP/2 Support」において、Webサーバ「Nginx」の最新版となる「nginx 1.9.5」を発表した。この最新版にはHTTP/2通信を実現するためのngx_http_v2_moduleモジュールが含まれている。ngx_http_v2_moduleモジュールは従来のngx_http_spdy_moduleモジュールを置き換えるもの。

「nginx 1.9.5」の主な変更点は次のとおり。

  • ngx_http_spdy_moduleを置き換える形でngx_http_v2_moduleモジュールを導入
  • output_buffersディレクティブで2つのバッファの使用をデフォルト化
  • サブリクエストの再帰処理を制限するように設定を変更
  • キャッシュからレスポンスを返すときにキャッシュキーをチェックするように処理を変更
  • キャッシュを使っているときに"header already sent"アラートがログに残ってしまうバグを修正
  • LinuxでCephFSおよびtimer_resolutionディレクティブを使用していると"writev() failed (4: Interrupted system call)"というエラーがログに残ってしまうバグを修正
  • HTTPレベルでsub_filterディレクティブが使われている場合にワーカープロセスでセグメンテーションフォールが発生していたバグを修正

HTTP/2対応はすでにLiteSpeedが実現しており、Nginxはこれに続く形でHTTP/2をサポートしたWebサーバとなった。今回のリリースからSPDYのサポートは廃止されており、今後は替わりにHTTP/2を使う必要がある。HTTP/2を有効にするにはlistenディレクティブにhttpsパラメータとsslパラメータを使用するとともに、ssl_certificateディレクティブおよびssl_certificate_keyディレクティブを適切に設定する必要がある。