Phiên bản nhánh chính của nginx 1.31.5 đã được phát hành, trong đó việc phát triển các tính năng mới vẫn đang tiếp tục. Song song với đó, nhánh ổn định 1.30.x cũng được hỗ trợ, chỉ thực hiện các thay đổi liên quan đến việc loại bỏ các lỗi và lỗ hổng nghiêm trọng. Trong tương lai, nhánh ổn định 1.31 sẽ được hình thành trên cơ sở nhánh chính 1.32.x. Mã dự án được viết bằng C và được phân phối theo giấy phép BSD.
Trong bản phát hành mới:
- Đã thêm API REST để quản lý từ xa, cho phép tải lại cấu hình từ xa, truy xuất dữ liệu cài đặt và xem trạng thái tiến trình xử lý. Hỗ trợ API được kích hoạt bằng tùy chọn biên dịch "--with-control-api" và đối số dòng lệnh "-l". Nên liên kết API với một socket Unix (nginx -l unix:/path/to/sock). Có thể sử dụng tiện ích Curl để truy cập API.
- Đã thêm khả năng sử dụng một biến bắt đầu bằng ký hiệu "$" làm giá trị của chỉ thị Location. Giá trị của biến này, được tính toán trong quá trình thực thi, sẽ xác định các điều kiện để vào khối Location. Các Location như vậy có thể được sử dụng trong các khối Location khác hoặc bản thân chúng có thể chứa các Location lồng nhau. map $arg_foo $pred { bar 1; qux 1; } location $pred { root html; }
- Module ngx_http_json_module đã được triển khai, cung cấp khả năng phân tích dữ liệu ở định dạng JSON, trích xuất các trường riêng lẻ từ JSON và sử dụng các trường này làm biến trong cấu hình nginx.
- Đã thêm chỉ thị "client_body_early_read", khi được kích hoạt, chỉ thị này sẽ khiến phần thân yêu cầu được đọc ngay sau khi nhận được các tiêu đề.
Njs 1.0.1, một mô-đun tích hợp trình thông dịch JavaScript vào máy chủ HTTP Nginx, hiện đã có sẵn. Njs cho phép sử dụng các tập lệnh JavaScript trong các tệp cấu hình để mở rộng khả năng của Nginx. Các tập lệnh có thể được sử dụng để định nghĩa logic xử lý yêu cầu nâng cao, tạo cấu hình, tạo phản hồi động, sửa đổi yêu cầu/phản hồi hoặc nhanh chóng tạo các đoạn mã giả để giải quyết sự cố trong các ứng dụng web. Mã nguồn dự án được viết bằng ngôn ngữ C và được phân phối theo giấy phép BSD.
Bản phát hành njs 1.0.1 khắc phục ba lỗ hổng: lỗi tràn bộ đệm trong hàm xml.exclusiveC14n (CVE-2026-78689), lỗi bỏ qua hạn chế truy cập thông qua js_access (CVE-2026-18329) và lỗi sập tiến trình worker do thao tác với ngx.fetch (CVE-2026-78222).
Nguồn: opennet.ru
