Tutorials
Start with the basics, then work through static hosting, reverse proxying, HTTPS, caching and access control.
Basic configuration
Tray menu, config file location and overall structure
Publish a local static site
Deploy a static website on Windows or Linux
Publish a single page app
Fall back unmatched routes to index.html with the try module
Reverse proxy a site
Forward a public domain to an upstream service with proxy_pass
Reverse proxy a WebSocket service
Proxy a Streamlit app with a WebSocket endpoint, no extra options needed
Publish multiple sites
Split site configs into conf.d with http.include
Configure redirects
Use rewrite to redirect requests, including HTTP to HTTPS
Serve a site over HTTPS
Install the root certificate and serve a site over HTTPS
Cache a reverse proxy site
Store upstream responses with proxy_cache
Block IP addresses
Deny clients with the http.blaklist option
Other default options
Control access log fields with log_split and log_format
Rate limit a web app
Throttle requests with the http.servers_limit option
Reverse proxy samples
Reference configurations for common upstream services