nginx 1.17.1 および njs 0.3.3 のリリース

利用可能 アップストリームリリース nginx 1.17.1、その中で新しい機能の開発が続けられます (並行して安定したサポートが行われます) ブランチ1.16 重大なエラーと脆弱性の排除に関連する変更のみが行われます。

メイン 変更:

  • ディレクティブが追加されました limit_req_dry_run試行モードをアクティブにします。このモードでは、リクエスト処理の強度に制限は適用されません (レート制限なし)。ただし、共有メモリ内の制限を超えるリクエストの数は引き続き考慮されます。
  • 「upstream」設定ブロックで「upstream」ディレクティブを使用する場合ハッシュ» クライアントとサーバーのバインディングを使用して負荷分散を構成する場合、空のキー値を指定すると、均一分散モード (ラウンドロビン) がアクティブになります。
  • 「image_filter」ディレクティブとキャッシュを組み合わせて使用​​し、「error_page」ディレクティブを使用して 415 エラー コード ハンドラーをリダイレクトすると、ワークフローがクラッシュする問題を修正しました。
  • 組み込みの Perl インタープリターを使用するときに発生するワークフローのクラッシュを修正しました。

さらに、注目できるのは、 問題 njs 0.3.3、nginx Web サーバー用の JavaScript インタープリター。 njs インタープリターは ECMAScript 標準を実装しており、構成内のスクリプトを使用して nginx のリクエストを処理する機能を拡張できます。 構成ファイル内でスクリプトを使用すると、リクエストの処理、構成の生成、応答の動的生成、リクエスト/応答の変更、Web アプリケーションの問題を解決するためのスタブの迅速な作成などの高度なロジックを定義できます。

njs の新しいリリースでは、ファジング テスト中に特定された問題が修正されています。 現在のプロセスのパラメータと環境変数 (process.pid、process.env.HOME など) を含むグローバル変数「process」を実装しました。 すべての組み込みプロパティとメソッドに書き込むことができます。 Array.prototype.fill() の実装を追加しました。 ECMAScript 5 で提案されている構文のサポートが実装されました ゲッター и セッター オブジェクトのプロパティを関数にバインドするには、次のようにします。

var o = {a:2};
Object.defineProperty(o, 'b', {get:function(){return 2*this.a}});

出所: オープンネット.ru

コメントを追加します