Skip to content

NGINX Extras Documentation

The NGINX Extras is the largest commercial collection of prebuilt dynamic NGINX modules on the Internet. Each module can be installed as a separate package.

The major benefit of packaged installations is security, maintainability, and reproducibility. No longer you have to manually compile anything when you need to update NGINX or modules. An update is just a yum update that takes seconds and no downtime whatsoever.

We currently support all major RPM-based distros, including CentOS/RHEL, as well as Amazon Linux and latest Fedora Linux.

All RHEL derivatives like Oracle Linux, AlmaLinux and Rocky Linux are supported as well.

Due to the extensive nature of our collection, it's easy to get lost in all the goodies and new NGINX directives.

This documentation mini-site brings you each module's installation instructions and added directives in a single place.

Getting started

Install repository configuration

sudo dnf -y install https://extras.getpagespeed.com/release-latest.rpm
sudo yum -y install https://extras.getpagespeed.com/release-latest.rpm
sudo yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum -y install https://extras.getpagespeed.com/release-latest.rpm
sudo amazon-linux-extras install epel

Once the repository configuration is installed, activate your subscription to the GetPageSpeed repository.

Subscribed? Proceed with installing the modules to build your ultimate high-performance web stack.

Install NGINX modules

Thanks to the nature of dynamic modules, you can install just the modules you want instead of using bloatware NGINX installation.

For example, to install NGINX and the PageSpeed module for it, run:

sudo yum -y install nginx nginx-module-pagespeed

Enable the module by adding the load_module ... directive that is shown after installation.

In case you missed it, refer to the documentation of respective module and look for load_module directive required to enable it.

To list available modules for installation, run:

sudo yum list available | grep nginx-module

To install the recommended group of modules for performance and security, you may want to run:

sudo yum -y groupinstall "nginx extras recommended"

This installs NGINX, and modules: PageSpeed, Brotli, Dynamic ETag, Immutable (performance); ModSecurity, Security Headers (security).

Upgrading modules

New NGINX releases require upgrading its modules. Thanks to the repository, you don't need to worry about recompiling anything. We ship updated NGINX and module packages, and you can simply run yum upgrade to get to the latest NGINX and module packages.

After updating a module package, to actually apply it at runtime, you have to run the binary upgrade routine. This can be done like this:

service nginx upgrade

This ensures that NGINX loads the updated module(s).

How to use this documentation

  • Use the search at the top rightmost. It's good for locating whether a feature you are after is available via a module
  • Just curious what's there? Look at the complete list of modules below, or in the left-side navigation.

Complete module list

Package Name Description
nginx-module-accept-language NGINX Accept-Language module
nginx-module-ajp Support AJP protocol proxy with NGINX
nginx-module-array-var Array-typed variables for NGINX
nginx-module-auth-digest Digest Authentication for NGINX
nginx-module-auth-ldap LDAP Authentication module for nginx
nginx-module-auth-pam PAM authentication dynamic module for NGINX
nginx-module-auth-totp Time-based one-time password (TOTP) authentication for NGINX
nginx-module-aws-auth NGINX module to proxy to authenticated AWS services
nginx-module-bot-verifier A search index bot verification module for NGINX
nginx-module-brotli NGINX Brotli dynamic modules
nginx-module-cache-purge NGINX Cache Purge module
nginx-module-captcha NGINX Captcha Module
nginx-module-combined-upstreams NGINX Combined Upstreams module
nginx-module-concat HTTP Concatenation module for NGINX
nginx-module-cookie-flag NGINX cookie flag module
nginx-module-cookie-limit NGINX module to limit the number of malicious ip forged cookies
nginx-module-coolkit NGINX CoolKit Module
nginx-module-dav-ext NGINX WebDAV PROPFIND,OPTIONS,LOCK,UNLOCK support
nginx-module-doh NGINX module for serving DNS-over-HTTPS (DOH) requests
nginx-module-dynamic-etag NGINX module for adding ETag to dynamic content
nginx-module-dynamic-limit-req NGINX module to dynamically lock IP and release it periodically
nginx-module-echo nginx Echo module
nginx-module-encrypted-session Encrypt and decrypt NGINX variable values
nginx-module-execute NGINX Execute module
nginx-module-f4fhds NGINX module for Adobe f4f format
nginx-module-fancyindex NGINX Fancy Index module
nginx-module-flv Media streaming server based on nginx-module-rtmp
nginx-module-form-input NGINX form input module
nginx-module-geoip2 NGINX GeoIP2 module
nginx-module-geoip NGINX GeoIP dynamic modules
nginx-module-google NGINX Module for Google Mirror creation
nginx-module-graphite An NGINX module for collecting stats into Graphite
nginx-module-headers-more NGINX Headers More dynamic module
nginx-module-hmac-secure-link Alternative NGINX HMAC Secure Link module with support for OpenSSL hashes
nginx-module-html-sanitize NGINX module to sanitize HTML 5 with whitelisted elements, attributes and CSS
nginx-module-iconv NGINX iconv module
nginx-module-image-filter NGINX image filter dynamic module
nginx-module-immutable NGINX module for setting immutable caching on static assets
nginx-module-ipscrub IP address anonymizer module for NGINX
nginx-module-jpeg NGINX JPEG filter module
nginx-module-js-challenge NGINX Javascript challenge module
nginx-module-json-var NGINX JSON variables module
nginx-module-json NGINX JSON module
nginx-module-jwt NGINX JWT Module
nginx-module-length-hiding NGINX Length Hiding Filter Module
nginx-module-let NGINX let module
nginx-module-live-common Kaltura Media Framework Common NGINX Module
nginx-module-log-zmq ZeroMQ logger module for NGINX
nginx-module-lua Lua scripting support for NGINX
nginx-module-markdown Markdown-to-html NGINX module
nginx-module-memc Extended version of the standard NGINX memcached module
nginx-module-naxsi NGINX Anti XSS & SQL Injection module
nginx-module-nchan Scalable, flexible pub/sub server for the modern web
nginx-module-ndk Nginx Development Kit
nginx-module-njs NGINX njs dynamic modules
nginx-module-ntlm NTLM NGINX Module
nginx-module-pagespeed PageSpeed dynamic module for NGINX
nginx-module-passenger Passenger module
nginx-module-perl NGINX Perl dynamic module
nginx-module-phantom-token Phantom Token NGINX Module
nginx-module-postgres PostgreSQL module for NGINX
nginx-module-pta Period of Time Authentication module for NGINX
nginx-module-push-stream NGINX push stream module
nginx-module-rdns NGINX HTTP rDNS module
nginx-module-redis2 NGINX upstream module for the Redis 2.0 protocol
nginx-module-rtmp NGINX RTMP module
nginx-module-secure-token Secure token module for NGINX
nginx-module-security-headers NGINX module for sending security headers
nginx-module-security ModSecurity v3 Nginx Connector
nginx-module-set-misc NGINX Set-Misc module
nginx-module-shibboleth Shibboleth Auth Request module for NGINX
nginx-module-slowfs NGINX SlowFS Cache Module
nginx-module-small-light Dynamic image transformation module For NGINX
nginx-module-spnego-http-auth Nginx module for HTTP SPNEGO auth
nginx-module-srcache Transparent subrequest-based caching layout for arbitrary NGINX locations
nginx-module-srt Nginx SRT Module
nginx-module-statsd NGINX module for sending stats to statsd
nginx-module-sticky NGINX sticky cookie module
nginx-module-stream-lua Lua scripting support for NGINX streams
nginx-module-stream-sts Nginx stream server traffic status core module
nginx-module-stream-upsync NGINX module for syncing stream backends from consul or etcd
nginx-module-sts Nginx stream server traffic status module
nginx-module-substitutions String substitutions module for nginx
nginx-module-sysguard NGINX sysguard module
nginx-module-testcookie NGINX testcookie robot mitigation module
nginx-module-traffic-accounting Monitor the incoming and outgoing traffic metrics in realtime for NGINX
nginx-module-ts NGINX MPEG-TS Live Module
nginx-module-unbrotli Decompresses Brotli-encoded responses for clients that do not support it
nginx-module-untar NGINX HTTP Untar Module
nginx-module-upload NGINX module for handling file uploads
nginx-module-upstream-fair The fair load balancer module for NGINX
nginx-module-upstream-jdomain Asynchronous domain name resolution module for NGINX upstream
nginx-module-upsync NGINX module for syncing upstreams from consul or etcd
nginx-module-vod NGINX-based VOD Packager
nginx-module-vts NGINX virtual host traffic status module
nginx-module-webp NGINX WebP module
nginx-module-xslt NGINX XSLT dynamic module
nginx-module-xss Native cross-site scripting support in NGINX
nginx-module-zip Streaming ZIP archiver for NGINX
nginx-module-zstd NGINX module for the Zstandard compression