إصدار nginx 1.19.3 و njs 0.4.4

تشكلت الافراج عن المنبع nginx 1.19.3، حيث يستمر تطوير القدرات الجديدة (بالتوازي مع دعم مستقر فرع 1.18 يتم إجراء التغييرات المتعلقة بإزالة الأخطاء الجسيمة ونقاط الضعف فقط).

رئيسي التغييرات:

  • يتم تضمين الوحدة ngx_stream_set_module، والذي يسمح لك بتعيين قيمة لمتغير

    الخادم {
    12345 الاستماع.
    تعيين $ صحيح 1؛
    }

  • تمت إضافة التوجيه proxy_cookie_flags لتحديد علامات لملفات تعريف الارتباط في اتصالات الوكيل. على سبيل المثال، لإضافة علامة "httponly" إلى ملف تعريف الارتباط "one"، وعلامتي "nosecure" و"samesite=strict" لجميع ملفات تعريف الارتباط الأخرى، يمكنك استخدام البنية التالية:

    proxy_cookie_flags واحد httponly؛
    proxy_cookie_flags ~ noscure Samesite=strict;

  • توجيه مماثل userid_flags لإضافة العلامات إلى ملف تعريف الارتباط يتم أيضًا تنفيذه لوحدة ngx_http_userid.

معا وقع قضية إن جي إس 0.4.4، مترجم جافا سكريبت لخادم الويب nginx. يطبق مترجم njs معايير ECMAScript ويسمح لك بتوسيع قدرة nginx على معالجة الطلبات باستخدام البرامج النصية في التكوين. يمكن استخدام البرامج النصية في ملف تكوين لتحديد المنطق المتقدم لمعالجة الطلبات، أو إنشاء تكوين، أو إنشاء استجابة ديناميكيًا، أو تعديل طلب/استجابة، أو إنشاء بذرة بسرعة لحل المشكلات في تطبيقات الويب. في النسخة الجديدة:

  • تمت إضافة دعم للفصل المرئي للأرقام في الأرقام (على سبيل المثال، "1_000").
  • تم تنفيذ الطرق المفقودة لـ %TypedArray%.prototype: every(), filter(), find(), findIndex(), forEach(), include(), IndexOf(), lastIndexOf(), الخريطة(), تقليل(), تقليل اليمين ()، عكس ()، بعض ().
  • تم تنفيذ الطرق المفقودة لـ %TypedArray%: from(), of().
  • تم تنفيذ كائن DataView.

    : >> (New DataView(buf.buffer)).getUint16()
    : 32974

  • تم تنفيذ كائن المخزن المؤقت.

    : >> فار buf = Buffer.from([0x80,206,177,206,178])
    : غير معرف
    : >> buf.slice(1).toString()
    : 'ألفا بيتا'
    : >> buf.toString('base64')
    : 'gM6xzrI='

  • تمت إضافة دعم كائن Buffer إلى أساليب "crypto" و"fs"، والتأكد من قيام fs.readFile() وHash.prototype.digest() وHmac.prototype.digest() بإرجاع مثيل لكائن Buffer.
  • تمت إضافة دعم ArrayBuffer إلى طريقة TextDecoder.prototype.decode() .

المصدر: opennet.ru

إضافة تعليق