Skip to content
Article Issue #5230

Nginx

What to know

Nginx (pronounced 'engine-x') is an open-source web server, reverse proxy, load balancer, and HTTP cache created by Igor Sysoev in 2004; Nginx uses a master process and multiple worker processes; Nginx configuration syntax has a learning curve, and SSL certificate renewal via Certbot requires cron scheduling, making Caddy or Traefik more beginner-friendly alternatives for new self-hosters

Nginx, WikiWalls Glossary illustration

« Back to Glossary Index

Nginx (pronounced ‘engine-x’) is an open-source web server, reverse proxy, load balancer, and HTTP cache created by Igor Sysoev in 2004. It is designed around an asynchronous, event-driven architecture that handles large numbers of concurrent connections with low memory usage, making it the dominant web server on the internet by volume. In self-hosted and homelab contexts, Nginx is most commonly used as a reverse proxy that terminates HTTPS and routes requests to containerized backend applications.

How it works

Nginx uses a master process and multiple worker processes. Each worker handles thousands of connections using non-blocking I/O and an event loop (epoll on Linux), avoiding the per-connection thread overhead of older Apache-style architectures. Configuration is declarative: server blocks define virtual hosts, and location blocks define routing rules and proxy targets. For reverse proxy use, the proxy_pass directive forwards matched requests to an upstream service, with options for buffering, header manipulation, timeouts, and upstream load balancing.

Key facts

  • Market share: Nginx serves over 30 percent of the top 1 million websites and is the most deployed web server in Docker environments
  • vs. Caddy: Nginx requires manual Let’s Encrypt configuration (typically via Certbot); Caddy automates TLS certificate provisioning with zero config
  • Nginx Proxy Manager: A GUI wrapper around Nginx specifically designed for self-hosters who want reverse proxy management without editing configuration files directly

For builders

Nginx configuration syntax has a learning curve, and SSL certificate renewal via Certbot requires cron scheduling, making Caddy or Traefik more beginner-friendly alternatives for new self-hosters. However, Nginx’s stability, performance, and documentation breadth make it the right choice for builders who want fine-grained control over routing rules, rate limiting, or custom response headers. Nginx Proxy Manager offers a middle ground with a web UI for those who want Nginx’s power without the configuration file gymnastics.

Sources

« Back to Definition Index
Administrator · 41 published guides · Joined 2016

Welcome to wikiwalls

The WikiWalls Journal · Free, weekly

One careful fix in your inbox each Wednesday.

No affiliate links inside the diagnosis. No sponsored "top 10". One careful fix per week — unsubscribe in one click.

No tracking pixels · No spam · Edited by a human.