الإصدارات الجديدة من nginx 1.25.5 وشوكة FreeNginx 1.26.0

تم إصدار الفرع الرئيسي لـ nginx 1.25.5، والذي يستمر من خلاله تطوير الميزات الجديدة. يحتوي الفرع المستقر 1.24.x الذي تتم صيانته بالتوازي فقط على التغييرات المتعلقة بإزالة الأخطاء ونقاط الضعف الخطيرة. في المستقبل، استنادًا إلى الفرع الرئيسي 1.25.x، سيتم تشكيل فرع مستقر 1.26. كود المشروع مكتوب بلغة C ويتم توزيعه بموجب ترخيص BSD.

من بين التغييرات:

  • تمت إضافة دعم الخوادم الافتراضية إلى وحدة الدفق، والتي تم تحديد تكوينها في كتلة "الخادم { ... }" باستخدام التوجيه server_name. الخادم { اسم الخادم ~^(www\.)?(.+)$; proxy_pass www.$2:12345; }
  • تمت إضافة وحدة نمطية جديدة ngx_stream_pass_module، مصممة لإعادة توجيه الاتصالات المستلمة مباشرة إلى أي مقبس استماع مرتبط بوحدات مثل http، والدفق، والبريد. تيار { الخادم { الاستماع 12345 ssl؛ ssl_certificate domain.crt; ssl_certificate_key domain.key; تمرير 127.0.0.1:8000؛ } }
  • ينفذ توجيه الاستماع الخاص بوحدة الدفق دعم المعلمات "المؤجلة" (تمكين القبول المؤجل)، و"accept_filter" (يتم تطبيق مرشح الاتصال الوارد قبل استدعاء وظيفة القبول) و"setfib" (إعداد جدول التوجيه).
  • بالنسبة لبعض البنيات، تم تنفيذ الدعم لتحديد حجم الكتلة (خط ذاكرة التخزين المؤقت) المستخدم لنقل البيانات بين ذاكرة التخزين المؤقت لوحدة المعالجة المركزية والذاكرة.
  • في أنظمة Apple Silicon، تمت إضافة دعم لمدير حزم Homebrew.
  • تم حل مشكلات الترجمة المشتركة لنظام التشغيل Windows.
  • تم إصلاح الخلل الذي تسبب في إغلاق الاتصالات عند استخدام وضع 0-RTT في بروتوكول QUIC.

بالإضافة إلى ذلك، يمكننا ملاحظة نشر نسخة مستقرة من مشروع FreeNginx 1.26.0، الذي يعمل على تطوير شوكة Nginx. تم تطوير الشوكة بواسطة Maxim Dunin، أحد مطوري Nginx الرئيسيين. تم وضع FreeNginx كمشروع غير ربحي يوفر تطوير قاعدة كود Nginx دون تدخل الشركة. تم تصنيف الإصدار 1.26.0 كإصدار مستقر، ويتضمن تغييرات وإصلاحات من إصدارات الفرع الرئيسي لـ Nginx 1.25. من بين أشياء أخرى، يتضمن FreeNginx 1.26.0 دعمًا تجريبيًا لبروتوكول HTTP/3، وتحسينات لمواجهة هجمات DoS، وإصلاحات متعلقة بمعالجة الإدخال/الإخراج غير المتزامنة.

وفي الوقت نفسه، تم إصدار njs 0.8.4، وهو مترجم JavaScript لخادم الويب nginx. يطبق مترجم njs معايير ECMAScript ويسمح لك بتوسيع قدرة nginx على معالجة الطلبات باستخدام البرامج النصية في التكوين. يمكن استخدام البرامج النصية في ملف تكوين لتحديد المنطق المتقدم لمعالجة الطلبات، أو إنشاء تكوين، أو إنشاء استجابة ديناميكيًا، أو تعديل طلب/استجابة، أو إنشاء بذرة بسرعة لحل المشكلات في تطبيقات الويب. في الإصدار الجديد: تمت إضافة دعم محرك JavaScript QuickJS إلى واجهة سطر الأوامر (CLI)؛ تمت إضافة القدرة على ضبط رأس الخادم؛ تم تنفيذ فحص لتكرار المتغيرات التي تم تعيينها عبر js_set.

المصدر: opennet.ru

إضافة تعليق