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
Configure a local HTTPS site, install the root certificate, and verify the connection
Cache a reverse proxy site
Cache public responses and verify a cache hit against a local upstream
Block IP addresses
Block connections by client IP and verify the result in the security log
Other default options
Select access log fields and read the v1.5.0 JSON log
Rate limit a web app
Limit new connections by client IP and verify burst handling and recovery
Reverse proxy samples
Choose a static site, HTTP proxy, or HTTPS proxy configuration for your app