Install & Use Guide — NGINXCACHE.COM · nginx-cyberpanel for Plesk
A product by CyberPanel.net · nginx acceleration for Plesk
NGINXCACHE.COM — nginx acceleration for Plesk Get a free license
Documentation

How to install and use CyberPanel nginx for Plesk

The installer is safe by default: it stages the extension and the correct nginx-cyberpanel binary but does not take over live traffic until you enable takeover from the Plesk UI.

CyberPanel nginx for Plesk is a Plesk extension and nginx replacement layer. It lets a Plesk server run nginx-cyberpanel on public ports 80 and 443, while Plesk continues managing domains, Apache configuration, vhosts, SSL certificates, PHP handlers, and WordPress cache signals.

The installer is safe by default. It installs the Plesk extension and stages the correct nginx-cyberpanel binary, but it does not take over live traffic automatically. You enable takeover later from the Plesk UI after checking status and diagnostics.

Requirements

  • A Plesk server with root SSH access.
  • x86_64 CPU architecture.
  • One of the supported Linux platforms listed below.
  • A maintenance window for the actual takeover step.

Supported platforms

PlatformBinary used by installer
Ubuntu 22, Ubuntu 24, Debian 12nginx-cyberpanel-1.0.0-x86_64-ubuntu
RHEL 9, AlmaLinux 9, Rocky 9nginx-cyberpanel-1.0.0-x86_64-rhel9
RHEL 8, AlmaLinux 8, Rocky 8nginx-cyberpanel-1.0.0-x86_64-rhel8

Step 1 — Install the extension

Log in to your Plesk server as root and run:

bash <(curl -sSL https://cyberpanel.net/nginx-plesk-install.sh)

The installer detects the OS and architecture, installs runtime libraries where needed, downloads the Plesk extension and the matching binary, installs the extension, copies the binary to /usr/local/sbin/nginx-cyberpanel, and leaves default Plesk Apache and nginx active. Expected state afterwards: installed-not-active.

Step 2 — Confirm Plesk is still serving sites

cat /etc/nginx-cyberpanel/state
systemctl is-active apache2 nginx nginx-cyberpanel
ss -ltnp 'sport = :80 or sport = :443 or sport = :7080 or sport = :7081'
curl -skI https://example.com/ | sed -n '1,10p'

Expected before takeover: state installed-not-active, Apache active, Plesk nginx active, nginx-cyberpanel inactive, server: nginx. Replace example.com with a domain hosted on your Plesk server.

Step 3 — Open the CyberPanel nginx extension

In Plesk go to Extensions > CyberPanel nginx. Tabs: Overview (takeover status, enable/disable/reload), Cache (purge globally or by URL), Config (synthesized config + toggles), SSL (Let's Encrypt issuance), Diagnose (takeover, cache, gzip, brotli, HTTP/2, LSCache, PID shim, Redis), and License.

Step 4 — Review diagnostics

Open the Diagnose tab before takeover. It checks takeover/service state, the cache directory at /var/cache/nginx-cyberpanel/lscache, gzip and brotli config, HTTP/2 on SSL listeners, LiteSpeed Cache plugin signal support, the Plesk PID shim, and the Redis object cache. Fix any reported problem before enabling takeover.

Step 5 — Enable takeover

When ready, click Extensions > CyberPanel nginx > Enable takeover. The helper validates the generated nginx configuration before changing services; if validation fails, Apache and Plesk nginx are left unchanged.

PortExpected owner during takeover
:80nginx-cyberpanel
:443nginx-cyberpanel
127.0.0.1:7080Apache backend
127.0.0.1:7081Apache SSL backend
:8443Plesk panel

Step 6 — Verify active takeover

cat /etc/nginx-cyberpanel/state
systemctl is-active apache2 nginx nginx-cyberpanel
curl -skI https://example.com/ | sed -n '1,10p'

Expected during takeover: state active, nginx-cyberpanel: active, server: nginx-cyberpanel/1.0.0, x-powered-by: CyberPanel-Nginx/1.0.0.

Using LiteSpeed Cache with WordPress

nginx-cyberpanel implements LiteSpeed Cache plugin signals: X-LiteSpeed-Cache-Control, X-LiteSpeed-Tag, X-LiteSpeed-Vary, PURGE support, and file-backed public cache storage. Test with a browser-like request:

curl -skI --compressed https://example.com/

A successful cached WordPress response shows x-litespeed-cache: hit,public.

Issuing SSL certificates

The SSL tab issues Let's Encrypt certificates for Plesk-managed domains. It normalizes domains to lowercase, strips trailing dots, validates domain and email syntax, rejects unmanaged domains before calling certbot/Plesk, and surfaces useful Let's Encrypt errors (DNS NXDOMAIN, domain not pointing to the server, rate limits, ACME validation detail).

Restoring default Plesk nginx and Apache

To uninstall and restore default Plesk behaviour:

bash <(curl -sSL https://cyberpanel.net/nginx-plesk-install.sh) --uninstall

After restore, public :80/:443 return to Plesk nginx and ports 7080/7081 to Apache.

Recommended rollout

  1. Run the one-line installer.
  2. Confirm Plesk is still serving sites with default nginx.
  3. Open the extension and review Diagnose.
  4. Enable takeover during a maintenance window.
  5. Verify public site headers and application behaviour.
  6. Test LSCache with curl --compressed.
  7. If needed, use restore controls or the uninstall command.

The install command is safe to run before the maintenance window because it does not switch traffic — the traffic switch happens only when the admin enables takeover. Release checksums for verifying downloads are on the changelog.