Skip to main content

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...

You’re renting your own kernel


by Danila Vershinin, August 3, 2026

CloudLinux is a good product. It is also a forked kernel you pay monthly to run on your own hardware. That is the whole conversation. When you install CloudLinux, you replace the in-tree AlmaLinux/RHEL kernel with theirs. From that day, every dnf upgrade, every kernel CVE, every security window is gated on their release cadence, […]

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...

The official Amplify app is now on iPhone


by Danila Vershinin, July 22, 2026

Uptime by GetPageSpeed is now the official iPhone app for Amplify, with servers, live NGINX graphs, alert rules, push notifications and Live Activities using your existing account.

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...

NGINX Microcaching: Varnish-Style Full-Page Caching Without a Third-Party Module


by Danila Vershinin, June 23, 2026

NGINX microcaching the Varnish way: serve dynamic pages from RAM via core proxy_cache on tmpfs, with stale-while-revalidate and request coalescing.

Read More...

Whitelist OpenAI IP Ranges in NGINX and fail2ban


by Danila Vershinin, June 2, 2026

If you want ChatGPT Search, GPTBot, and OpenAI’s on-demand fetcher to actually reach your content, the answer is not just “set Allow: / in robots.txt.” Modern NGINX deployments lean on rate limiting, GeoIP rules, and fail2ban; each of those will silently choke an OpenAI bot if you don’t deliberately whitelist OpenAI IP ranges in every […]

Read More...

NGINX limit_req Per Hour, Day, Week, Month with NGINX-MOD


by Danila Vershinin, May 4, 2026

Stock NGINX rejects rate=10r/h. The NGINX-MOD limit_req_rate patch adds hourly, daily, weekly, monthly, and yearly rate units so SREs can express quotas the way they actually talk about them.

Read More...