إصدار nginx 1.17.0 و njs 0.3.2

مقدم من الإصدار الأول من الفرع الرئيسي الجديد nginx 1.17، والتي سيستمر من خلالها تطوير القدرات الجديدة (بالتوازي مع دعم مستقر فرع 1.16 يتم إجراء التغييرات المتعلقة بإزالة الأخطاء الجسيمة ونقاط الضعف فقط).

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

  • تمت إضافة دعم للمتغيرات في التوجيهات "limit_rate" و"limit_rate_after"، وكذلك في التوجيهات "proxy_upload_rate" و
    "proxy_download_rate" لوحدة الدفق؛

  • زيادة المتطلبات للحد الأدنى من الإصدار المدعوم من OpenSSL - 0.9.8؛
  • افتراضيًا، تم إنشاء وحدة ngx_http_postpone_filter_module؛
  • تم حل مشاكل التوجيه "include" الذي لا يعمل داخل الكتل "if" و"limit_except"؛
  • تم إصلاح الخلل عند معالجة قيم البايت "الفترة (من ... إلى)".

من بين التحسينات الهامة المتوقعة في الفرع 1.17، تم ذكر تنفيذ دعم البروتوكول كويك وHTTP/3.

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

يضيف الإصدار الجديد من njs دعمًا لقوالب السلسلة المحددة في المواصفات ECMAScript 6 تحديث. قوالب السلسلة هي عبارة عن سلسلة حرفية تسمح بتضمين التعبير. يتم تعريف التعبيرات في كتلة ${...} موضوعة داخل سطر، والتي يمكن أن تتضمن كلا من المتغيرات الفردية (${name}) والتعبيرات (${5 + a + b})). بالإضافة إلى ذلك، تمت إضافة دعم المجموعات المسماة إلى كائن RegExp، مما يسمح لك بربط أجزاء من سلسلة مطابقة بتعبير عادي بأسماء محددة بدلاً من الأرقام التسلسلية للمطابقات. تمت إضافة دعم للبناء باستخدام مكتبة GNU Readline.

المصدر: opennet.ru

إضافة تعليق