[general] #### Server # Listen on all interfaces, port 80 (matches previous nginx setup) host = "0.0.0.0" port = 80 # Root directory of the static site (Hugo `public/` output) root = "/public" # Number of worker threads (0 = auto-detect based on CPU cores) threads-multiplier = 1 # Log level log-level = "info" #### Performance / caching # On-the-fly gzip, brotli and zstd compression (replaces nginx `gzip on`) compression = true # Serve pre-compressed .gz/.br/.zst files from disk when present compression-static = true # Emit Cache-Control + ETag headers with sensible per-content-type defaults. # SWS applies long-lived caching to static assets (images, css, js, fonts) # and short/no-cache to HTML, replacing the manual nginx `expires 1y` blocks. cache-control-headers = true #### Routing # SPA-style fallback: serve index.html when a path is not found on disk, # mirroring the previous nginx `try_files $uri $uri/ /index.html`. page-fallback = "/public/index.html" #### Security # Opinionated security headers (safe defaults for a static site) security-headers = true # Health endpoint at /health for container/K8s liveness probes health = true