Third-Party Modules#

Below are popular third-party nginx-compatible modules with brief descriptions. Package installation instructions are in the Third-Party Modules section.

Module

Description

Auth JWT

Adds JWT authentication for clients.

Auth LDAP

Adds support for LDAP authentication with multiple servers.

Auth PAM

Adds support for PAM authentication.

Auth SPNEGO

Adds support for SPNEGO and GSSAPI.

Auth TOTP

Adds TOTP-based one-time password authentication.

Brotli

Adds static and dynamic Brotli compression for responses.

Cache Purge

Allows purging content from FastCGI, proxy, SCGI, and uWSGI caches.

CGI

Adds support for CGI.

Combined Upstreams

Allows combining multiple server groups into one.

DAV Ext

Extends WebDAV support with PROPFIND and OPTIONS methods.

Dynamic Limit Req

Serves to dynamically block IP addresses and periodically unblock them.

Echo

Allows calling echo, sleep, time, exec and other shell commands in the configuration file.

Enhanced Memcached

Extends the capabilities of the built-in Memcached module.

Eval

Allows saving response bodies of subrequests into variables.

GeoIP2

Adds geolocation search in MaxMind GeoIP2 databases.

Headers More

Allows setting and clearing request and response headers.

HTTP Auth Radius

Adds support for Radius.

JWT

Lightweight alternative to Auth JWT.

Keyval

Allows using variables with values from key-value pairs.

Lua: http_lua_module, stream_lua_module

Allow using the Lua language in Angie configuration in the http and stream contexts, respectively.

ModSecurity

Adds a connector for using ModSecurity rules.

NJS: http_js, stream_js

Allow using njs, a subset of the JavaScript language, in Angie configuration in the http and stream contexts, respectively.

Also available is a lightweight version of the package named ...-njs-light; however, it is incompatible with the regular version and cannot be used simultaneously with it.

NDK

Adds the Nginx Development Kit (NDK) for developing new modules.

OpenTracing

Adds distributed OpenTracing request tracing in Angie; contains plugins for exporting data to Zipkin and DataDog.

OpenTelemetry

Allows sending telemetry data to the OpenTelemetry collector.

PostgreSQL

Includes direct support for PostgreSQL databases.

Redis2

Includes support for Redis 2.0 for HTTP upstreams.

RTMP

Includes support for RTMP for streaming and video-on-demand broadcasts.

Set Misc

Adds various set_xxx directives to the Rewrite module.

Subs

Allows replacing strings in HTTP response bodies using regular expressions.

TestCookie

Helps combat bots using a "challenge-response" mechanism based on cookies.

UnBrotli

Unpacks responses with Content-Encoding: br for clients that do not support Brotli encoding.

Upload

Adds multipart/form-data (RFC 1867) encoding for file uploads from the client, including resume capability.

VOD

Allows repackaging MP4 files for streaming via HLS, HDS, MSS, and DASH.

VTS: module-vts, module-sts, module-stream-sts

Include the three listed modules for traffic monitoring.

ZIP

Includes dynamic ZIP archive packaging.

Zstd

Includes Zstandard compression.