Skip to main content

NGINX Virtual Host: Host Multiple Domains on One Server


by Danila Vershinin, January 27, 2026

Learn how to configure NGINX virtual hosts (server blocks) to host multiple domains on one server. This guide covers basic setup, wildcard subdomains, server_name matching, default_server configuration, and SELinux considerations for Rocky Linux and RHEL systems.

Read More...

NGINX Timeout Directives: Complete Configuration Guide


by Danila Vershinin, January 26, 2026

Master all NGINX timeout directives including proxy_read_timeout, client_body_timeout, keepalive_timeout, and send_timeout. Learn when to use each, production-ready values, and how to diagnose timeout issues.

Read More...

NGINX Proxy Cache & Microcaching: Complete Guide


by Danila Vershinin,

Master NGINX proxy cache and microcaching to achieve up to 400x performance improvement. This comprehensive guide covers proxy_cache_path, proxy_cache_valid, thundering herd prevention with proxy_cache_lock, stale-while-revalidate patterns, and microcaching for dynamic content. Includes production-ready configurations tested on Rocky Linux and AlmaLinux.

Read More...

NGINX Rewrite Rules: The Complete Guide to URL Rewriting


by Danila Vershinin, January 25, 2026

Master NGINX rewrite rules and URL rewriting with this comprehensive guide. Learn the difference between return and rewrite directives, capturing groups, rewrite flags, and real-world SEO migration scenarios with tested configurations.

Read More...

NGINX Load Balancing: Complete Guide to Algorithms & Setup


by Danila Vershinin, January 23, 2026

Learn how NGINX load balancing works under the hood. This complete guide covers all load balancing algorithms including round-robin, least connections, IP hash, consistent hashing, and the Power of Two Choices, with production-ready configuration examples.

Read More...

504 Gateway Timeout NGINX: How to Fix It


by Danila Vershinin, January 22, 2026

Stop copy-pasting timeout fixes. Learn which NGINX directive actually causes 504 errors and how to fix it properly—whether you’re proxying to Varnish, Node.js, PHP-FPM, or any HTTP backend.

Read More...

How to Serve Localized NGINX Error Pages Based on Browser Language


by Danila Vershinin, January 20, 2026

Learn how to configure NGINX to serve localized 404 and 500 error pages based on the Accept-Language header. Complete guide with two methods: using the map directive and the accept-language module. Includes tested configurations for Rocky Linux 9 and AlmaLinux 10.

Read More...

How do I limit the usage of podman on Rocky Linux 8 to specific users / groups?


by Danila Vershinin, July 26, 2021

How to limit the users/groups who are able to use podman.

Read More...

Choosing your RHEL 8 clone after the death of CentOS


by Danila Vershinin, July 24, 2021

As CentOS is no longer an RHEL clone, companies seek another free clone of RHEL. What will it be? AlmaLinux, Rocky Linux, or Oracle Linux? We review these choices and give a recommendation.

Read More...

PHP CLI: Complete Guide to Running Scripts from Command Line


by Danila Vershinin, December 30, 2018

Learn how to run PHP scripts from the command line, schedule them with cron or systemd timers, configure memory limits, enable OPcache, and debug effectively on Rocky Linux, AlmaLinux, and RHEL.

Read More...