:8080 { root * /srv/fieldwork encode zstd gzip header { # The site has no inline scripts or styles, so a strict policy costs nothing. Content-Security-Policy "default-src 'self'; img-src 'self' data:; object-src 'none'; base-uri 'self'; form-action 'self'; frame-ancestors 'none'" X-Content-Type-Options nosniff Referrer-Policy strict-origin-when-cross-origin Permissions-Policy "camera=(), microphone=(), geolocation=()" -Server } # Files are not fingerprinted, so keep asset caching short; HTML must always revalidate. @assets path *.css *.js *.svg header @assets Cache-Control "public, max-age=300" @pages not path *.css *.js *.svg header @pages Cache-Control "no-cache" file_server }