Skip to main content

NGINX modules for Plesk — $5/mo, half the Plus price

A dozen sw-nginx-module-* packages built for Plesk's sw-nginx ABI. RTMP streaming, security headers, Brotli, dynamic ETag and more — installable with one yum install, enabled with one plesk sbin nginx_modules_ctl.

Dedicated Plesk tier · $5/mo · or $50/yr
Subscribe — $5/mo View Modules
12+
Plesk Modules
$5
Per Month
EL7-EL10
x86_64 + ARM64
2016
Since

What is NGINX Extras for Plesk?

A focused subscription channel for one audience: Plesk control-panel admins. The Plesk-shipped NGINX (sw-nginx) is a separate binary with its own ABI, so it cannot load the modules we build for stock NGINX. We solve that by maintaining a parallel build of every relevant module against sw-nginx, shipped under the sw- prefix.

The end result: extend the bare NGINX Plesk gave you into a modern application stack — without leaving the panel, recompiling anything, or disabling SELinux.

  • Dynamic modules — install only what you need, no bloatware
  • The largest pre-built collection of Plesk-compatible NGINX modules anywhere
  • SELinux stays enforcing — no compiled-install pitfalls
  • CDN-powered package delivery

Quick install example

# 1. Add the repository
sudo yum -y install \
  https://extras.getpagespeed.com/release-latest.rpm

# 2. Activate your subscription at
#    https://www.getpagespeed.com/plesk-subscribe

# 3. Install a module — e.g. Dynamic ETag
sudo yum -y install sw-nginx-module-dynamic-etag

# 4. Enable it via Plesk's supported command
sudo plesk sbin nginx_modules_ctl \
  --enable dynamic-etag

No compilation | SELinux enforcing | Plesk-safe

Featured Plesk-compatible NGINX modules

Each installable with one yum install sw-nginx-module-<handle> and enabled via plesk sbin nginx_modules_ctl.

Plus 10+ more sw-nginx modules

Specialised modules for streaming, load balancing, scripting, monitoring

sw-nginx-module-auth-pam

HTTP authentication via Linux PAM

sw-nginx-module-headers-more

Set, add, and clear arbitrary HTTP headers

sw-nginx-module-fancyindex

Stylish directory listings (custom templates)

sw-nginx-module-jpeg

On-the-fly JPEG overlays (logos, watermarks)

sw-nginx-module-immerse

Inline asset embedding for faster first paint

sw-nginx-module-postgres

Direct PostgreSQL query handling from NGINX

sw-nginx-module-stream-lua

Lua scripting for stream (L4) blocks

sw-nginx-module-sysguard

Reject requests when load/memory exceed thresholds

sw-nginx-module-upstream-fair

Fair load balancing across upstreams

sw-nginx-module-flv

Pseudo-streaming for FLV media

View the full sw-nginx-module list

NGINX modules for Plesk vs NGINX Plus

NGINX Plus is not Plesk-compatible. This is.

Feature NGINX Plus NGINX modules for Plesk
Plesk control-panel compatibility Not compatible Compatible — built for sw-nginx
Module count 32 50+ sw-nginx-module-* packages
Exclusive modules Dynamic ETag, Security Headers, Cache Purge
SELinux enforcing N/A on Plesk Yes — shipped contexts + companion SELinux RPMs
JWT authentication Yes Yes, via sw-nginx-module-jwt
RTMP / HLS streaming Yes, via sw-nginx-module-rtmp
Starting price $3,675+/yr per instance $5/mo per server

Get a module installed in under 3 minutes

From repo to enabled inside the Plesk-managed NGINX

1

Install the repository

Adds getpagespeed-extras-plesk as a yum source.

sudo yum -y install \
  https://extras.getpagespeed.com/release-latest.rpm
2

Activate the $5/mo Plesk tier

Enter the server's public IP at checkout.

Subscribe — /plesk-subscribe
3

Install & enable a module

Example: Dynamic ETag for conditional GET.

sudo yum -y install \
  sw-nginx-module-dynamic-etag

sudo plesk sbin nginx_modules_ctl \
  --enable dynamic-etag
Subscribe — $5/mo

$5/mo or $50/yr · cancel anytime

Where to put NGINX directives so Plesk does not eat them

The control panel rewrites parts of the NGINX configuration on routine actions. Where you place your directives decides whether they survive the next Plesk update.

Per-vhost (one website)

In the Plesk UI: Websites & Domains → pick the site → Hosting & DNSApache & nginx Settings → paste under Additional nginx directives. Plesk stores these in its own templates and reapplies them on every reconfig.

Globally inside http {}

Create /etc/nginx/conf.d/custom.conf. Plesk leaves conf.d/ alone; everything you put there is included in the main http {} block.

Globally outside http {} (e.g. RTMP)

Some modules (RTMP is the obvious one) need directives at the top level of nginx.conf, not inside http {}. Put those in /etc/nginx/modules.conf.d/zzz_custom.conf — the zzz_ prefix guarantees the file loads after NGINX has loaded the dynamic modules themselves, so the new directives are recognised.

Frequently asked questions

Everything Plesk admins ask before subscribing

Because it is a strictly narrower product. The Plesk channel ships only sw-nginx-module-* packages built for Plesk's sw-nginx ABI — about a dozen modules. The Plus tier opens our full extras repository (100+ modules, plus dependencies and tools), most of which cannot load in sw-nginx anyway.

Carving Plesk out as its own tier prices the actual delivered value rather than charging for shelf space you can't use.

Yes — keep the Plesk-shipped sw-nginx exactly as Plesk installed it. Our packages are add-on modules for that same sw-nginx, never replacements. Enable them via the supported Plesk command:

sudo plesk sbin nginx_modules_ctl --enable <module>

Plesk updates will not strip the modules; the install paths are designed to survive routine Plesk upgrades.

Yes — that is a key reason to use packaged modules instead of compiling your own. Every package ships with the right SELinux file contexts and (where needed) a matching *-selinux companion package. You should never have to set setenforce 0 or relabel files by hand.

Yes. We support the same RPM-based operating systems Plesk supports: RHEL, CentOS, AlmaLinux, Rocky Linux, CloudLinux, Amazon Linux, on EL7 / EL8 / EL9 / EL10. Both x86_64 and aarch64 (ARM64) builds are published.

No — the Plesk channel is RPM-only. We don't build sw-nginx-module-* packages for .deb-based Plesk hosts, so this tier delivers nothing on Ubuntu or Debian. If you run Plesk on Ubuntu/Debian and want extra nginx modules, the stock nginx modules from a regular Plus subscription are the right fit instead.

Drop your subscription and re-subscribe to the regular Plus tier at that point — the stock-nginx repo channel covers everything you would need. The Plesk tier is intentionally specific to sw-nginx; there is no point paying for it once you no longer run Plesk.

Per the IP address of the server you list at checkout — the same mechanism used by every other GetPageSpeed subscription. yum / dnf requests from that IP get authorised; everything else is rejected at the repository layer. No license keys, no JWT, no environment files.

Ready to extend Plesk's NGINX?

$5/mo or $50/yr · one IP per subscription · cancel anytime

Subscribe — /plesk-subscribe