2015年 9月 の投稿一覧

HTTP/2 に対応した Nginx 1.9.5 がリリースされました。

2015年9月22日に HTTP/2 に対応した Nginx 1.9.5 がリリースされました。 今回は最新版のリリース内容をご案内します。
 

2015年9月22日に HTTP/2 に対応した Nginx 1.9.5 がリリースされました。

HTTP/2 への対応は、当初より2015年中の対応が予定されており、米国にて Nginx conf (9/22-9/24)が開催されたタイミングでのリリースとなりました。詳細を見ていきますと、SPDYモジュールを HTTP v2モジュールに置き換える形でのリリース内容となっています。

以下に日本語参考訳を掲載します。

  • HTTP/2 に対応したモジュール ngx_http_v2_module を追加(ngx_http_spdy_moduleからのリプレース)
  • 現在、”output_buffers” ディレクティブは、デフォルトでは二つのバッファを使用しています。
  • 現在、再帰サブリクエスト制限は、非同期サブリクエストです
  • 現在、キャッシュから応答を返すとき、全体のキャッシュキーをチェックします。
  • “header already sent” キャッシュを使用するとき、ログに警告が表示されることがあります。
    このバグは 1.7.5 から含まれていました。
  • CephFS および Linux の “timer_resolution” ディレクティブを使用する際に”writev() failed (4: Interrupted system call)” エラーがログに表示されることがあります。
  • 無効な構成での取り扱いを行うバグの修正
  • “sub_filter” ディレクティブを HTTP レベルで使用した場合、セグメンテーションフォールトがワーカープロセスで発生しました。このバグは 1.9.4 から含まれていました。

参考:HTTP/2 を有効にする方法

HTTP/2 を利用するには、下記のような設定が必要となります。

SSL / TLSで暗号化されていない場合はこのタイミングでセキュアな HTTPS に対応することが推奨されています。

server {
  listen 80;
  location / {
    return 301 https://$host$request_uri;
  }
}

HTTP/2 を有効にします

“listen” ディレクティブに http2 の項目を追加します。

server {
  listen 443 ssl http2 default_server;

  ssl_certificate server.crt;
  ssl_certificate_key server.key;
  …
}

※HTTP/2の「Server Push」機能は、このリリースではサポートされていません。

設定を反省させるために、nginx の再起動を行って下さい。

参考URL:https://www.nginx.com/blog/nginx-1-9-5/

リリース内容の原文は下記を参照ください。

Changes with nginx 1.9.5                                         22 Sep 2015

    *) Feature: the ngx_http_v2_module (replaces ngx_http_spdy_module).
       Thanks to Dropbox and Automattic for sponsoring this work.

    *) Change: now the "output_buffers" directive uses two buffers by
       default.

    *) Change: now nginx limits subrequests recursion, not simultaneous
       subrequests.

    *) Change: now nginx checks the whole cache key when returning a
       response from cache.
       Thanks to Gena Makhomed and Sergey Brester.

    *) Bugfix: "header already sent" alerts might appear in logs when using
       cache; the bug had appeared in 1.7.5.

    *) Bugfix: "writev() failed (4: Interrupted system call)" errors might
       appear in logs when using CephFS and the "timer_resolution" directive
       on Linux.

    *) Bugfix: in invalid configurations handling.
       Thanks to Markus Linnala.

    *) Bugfix: a segmentation fault occurred in a worker process if the
       "sub_filter" directive was used at http level; the bug had appeared
       in 1.9.4.

 

Nginx Changes

NGINX Plus Release 7 リリース

2015年9月16日にNGINX Plus Release 7 がリリースされました。 HTTP/2に対応するなどいくつかの機能追加が行われております。 本記事では主なアップデートをご紹介します。
 

米国時間の2015年9月16日に NGINX Plus Release 7 がリリースされました。

本バージョンから対応するHTTP/2は、2015年2月17日に承認され、2015年5月にRFC 7540として文書化された新しい規格です。今後のWebコンテンツには欠かせない技術にいち早く対応していますので、HTTP/2でのコンテンツを準備されている方は、ぜひこの機会に NGINX Plus をお試しください。

以下に NGINX Plus Release 7 での主な変更点をご案内します。
(各機能の詳細は別途記事を起こします。)

  • HTTP/2をフルサポート
  • スレッドプールとソケットシャーディングのパフォーマンスを最大9倍高速化
  • NTLMのサポートおよび新しいTCPのセキュリティ強化
  • チューニングやデバッグを支援する、監視および診断ツールの改善
  • NGINX Plusのステータスダッシュボードのユーザーインターフェース刷新(下記イメージ参照)

NP Dashboard

NP Dashboard2

 

 

Nginx Inc. は、以下URLにて Live status information のデモを公開しています。
http://demo.nginx.com/status.html

次回はHTTP/2のサポートなどより詳しい情報をご案内いたします。