NGINX Certificate Compression: RFC 8879 for Every Browser
by Danila Vershinin, August 29, 2026
NGINX certificate compression (RFC 8879) shrinks the TLS handshake by around 20% on every fresh connection, and it takes one directive. The catch is packaging: your distribution’s NGINX is too old to have the directive, and its OpenSSL was built without the brotli algorithm that Chrome is the only browser to ask for. Measured, and with the one directive that stops NGINX from starting.
Read More...NGINX Post-Quantum TLS: X25519MLKEM768 with OpenSSL 3.5
by Danila Vershinin,
Our RPM and DEB builds now link OpenSSL 3.5, so hybrid post-quantum key exchange with X25519MLKEM768 works out of the box on every platform we package for — from RHEL 8 to Ubuntu 20.04. Here is how to verify it, and the one common hardening directive that silently turns it off.
Read More...Encrypted Client Hello in NGINX: Now Shipping in Our RPMs and DEBs
by Danila Vershinin, August 25, 2026
Server-side ECH (RFC 9849) is live in our stock NGINX, NGINX-MOD and EDGE packages, on RPM and DEB alike, built on OpenSSL 3.5 LTS with the DEfO backport. Here is what it hides, what it does not, and how to run it with automatic key rotation.
Read More...NGINX ESI: Replace Varnish for Magento 2
by Danila Vershinin, August 24, 2026
Replace Varnish with NGINX ESI for Magento 2. See the tested configuration, selective X-Magento-Tags purge, gzip-safe stitching, and benchmarks against Varnish OSS.
Read More...NGINX Early Hints: HTTP 103 Benchmarked on Enterprise Linux
by Danila Vershinin, August 11, 2026
NGINX early hints support arrived in 1.29.0, but every stock Enterprise Linux, Debian and Ubuntu package still ships something older. We install a current NGINX from GetPageSpeed, configure the safe HTTP/2 gate, and benchmark what HTTP 103 does to LCP with interleaved arms and an A/A noise control.
Read More...Serve WP Rocket Cache Directly from Nginx Without PHP
by Danila Vershinin, August 6, 2026
Serve WP Rocket Cache Directly from Nginx Without PHP WP Rocket writes cached pages as static HTML files. On a typical Nginx setup, a request still passes through PHP-FPM before that cached file reaches the visitor. That extra hop is unnecessary. Nginx can locate and serve the existing WP Rocket cache file directly. PHP-FPM, WordPress, […]
Read More...NGINX Variables: Scope, Handlers, and Common Pitfalls
by Danila Vershinin, July 25, 2026
How NGINX variables really work: per-request containers, get handlers, lazy-and-cached map values, the empty-versus-not-found distinction, and subrequest isolation, with runnable, curl-verified examples using the echo, set-misc, lua, and array-var modules.
Read More...Migrate From the ondrej nginx PPA to GetPageSpeed
by Danila Vershinin, July 5, 2026
The ondrej/nginx PPA deprecated its module packages at NGINX 1.28. Here is how to migrate to the GetPageSpeed APT repository and keep Brotli, Lua, ModSecurity and 100+ other modules on Debian and Ubuntu.
Read More...NGINX ACME Module: Let’s Encrypt SSL Without Certbot
by Danila Vershinin, June 29, 2026
Issue and auto-renew Let’s Encrypt certificates directly inside NGINX with the nginx-module-acme module. No certbot, no cron jobs, no downtime, no Python.
Read More...NGINX Abuse Guard Module: Auto-Ban Scanners and Bots
by Danila Vershinin, June 26, 2026
Stop vulnerability scanners and brute-force bots automatically. The NGINX abuse guard module bans clients by their 404 and 403 error rate, in-worker, with no fail2ban or log shipping.
Read More...