انتشار 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 ساخته شده است.
  • مشکلات مربوط به دستورالعمل «شامل» که در بلوک‌های «if» و «limit_except» کار نمی‌کند حل شده است.
  • رفع اشکال هنگام پردازش مقادیر بایت "محدوده".

از جمله پیشرفت های قابل توجه مورد انتظار در شاخه 1.17، اجرای پشتیبانی پروتکل ذکر شده است QUIC و HTTP/3.

علاوه بر این، می توان به آن اشاره کرد رها کردن njs 0.3.2، یک مفسر جاوا اسکریپت برای وب سرور nginx. مفسر njs استانداردهای ECMAScript را پیاده‌سازی می‌کند و به شما امکان می‌دهد توانایی nginx را برای پردازش درخواست‌ها با استفاده از اسکریپت‌های موجود در پیکربندی گسترش دهید. اسکریپت ها را می توان در یک فایل پیکربندی برای تعریف منطق پیشرفته برای پردازش درخواست ها، ایجاد پیکربندی، ایجاد پاسخ به صورت پویا، تغییر درخواست/پاسخ یا ایجاد سریع خرد برای حل مشکلات در برنامه های وب استفاده کرد.

نسخه جدید njs پشتیبانی از قالب های رشته ای تعریف شده در مشخصات را اضافه می کند ECMAScript 6. قالب‌های رشته‌ای رشته‌ای هستند که اجازه می‌دهند عبارت درونی شوند. عبارات در یک بلوک ${...} که در داخل یک خط قرار گرفته است، تعریف می‌شوند که می‌تواند شامل متغیرهای جداگانه (${name}) و عبارات (${5 + a + b}) باشد). علاوه بر این، پشتیبانی از گروه‌های نام‌گذاری‌شده به شی RegExp اضافه شده است، که به شما این امکان را می‌دهد که بخش‌هایی از یک رشته را که با یک عبارت منظم مطابقت داده شده است، به جای شماره‌های سریال مطابقت، با نام‌های خاص مرتبط کنید. پشتیبانی برای ساخت با کتابخانه Readline گنو اضافه شد.

منبع: opennet.ru

اضافه کردن نظر